BloomFilter.st
changeset 4801 08db5e0efb14
parent 4800 a6cbf556cfd1
child 4974 33b7c4e3a597
--- a/BloomFilter.st	Sun Feb 10 14:39:41 2019 +0100
+++ b/BloomFilter.st	Sun Feb 10 14:42:44 2019 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 2019 by Claus Gittinger
               All Rights Reserved
@@ -123,7 +125,7 @@
     "Created: / 10-02-2019 / 14:13:05 / Claus Gittinger"
 ! !
 
-!BloomFilter methodsFor:'adding & removing'!
+!BloomFilter methodsFor:'adding'!
 
 add:aString
     "add the arguemnt, aString to the set"
@@ -145,24 +147,14 @@
     ].
 
     "Created: / 10-02-2019 / 14:16:29 / Claus Gittinger"
-!
+! !
 
-includes:aString
-    "returns false, if the arguemnt, aString is definitly NOT in the set.
-     However, it may return true as a false positive"
-     
-    |mod|
+!BloomFilter methodsFor:'blocked'!
 
-    mod := bits size.
-    hashingBlocks do:[:each |
-        |h|
-        
-        h := each value:aString.
-        (bits at:(h \\ mod)+1) == 0 ifTrue:[^ false].
-    ].
-    ^ true
+do:aBlock
+    self shouldNotImplement
 
-    "Created: / 10-02-2019 / 14:16:59 / Claus Gittinger"
+    "Created: / 10-02-2019 / 14:40:17 / Claus Gittinger"
 !
 
 remove:aString
@@ -183,6 +175,26 @@
     "Created: / 10-02-2019 / 14:15:10 / Claus Gittinger"
 ! !
 
+!BloomFilter methodsFor:'queries'!
+
+includes:aString
+    "returns false, if the arguemnt, aString is definitly NOT in the set.
+     However, it may return true as a false positive"
+     
+    |mod|
+
+    mod := bits size.
+    hashingBlocks do:[:each |
+        |h|
+        
+        h := each value:aString.
+        (bits at:(h \\ mod)+1) == 0 ifTrue:[^ false].
+    ].
+    ^ true
+
+    "Created: / 10-02-2019 / 14:16:59 / Claus Gittinger"
+! !
+
 !BloomFilter class methodsFor:'documentation'!
 
 version_CVS