]> gitweb.factorcode.org Git - factor.git/commitdiff
bit-arrays: specialize set-bits and clear-bits
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 17 Jul 2009 04:49:13 +0000 (23:49 -0500)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 17 Jul 2009 04:49:13 +0000 (23:49 -0500)
basis/bit-arrays/bit-arrays.factor

index be8c434e36918c9f60b937fcf4d263042515394c..17c391636fcd76bd89e815615f950ce6a1122a35 100644 (file)
@@ -42,9 +42,13 @@ M: bit-array set-nth-unsafe
     [ byte/bit set-bit ] 2keep
     swap n>byte set-alien-unsigned-1 ;
 
-: clear-bits ( bit-array -- ) 0 (set-bits) ;
+GENERIC: clear-bits ( bit-array -- )
 
-: set-bits ( bit-array -- ) -1 (set-bits) ;
+M: bit-array clear-bits 0 (set-bits) ;
+
+GENERIC: set-bits ( bit-array -- )
+
+M: bit-array set-bits -1 (set-bits) ;
 
 M: bit-array clone
     [ length>> ] [ underlying>> clone ] bi bit-array boa ;