From 5fe3bcff4d4ae6ae8977bcdad500bd5c1a611382 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Tue, 28 Jul 2009 11:14:57 -0500 Subject: [PATCH] Faster bit-array equality, add bit-set-subset? word --- basis/bit-arrays/bit-arrays.factor | 2 +- basis/bit-sets/bit-sets.factor | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/basis/bit-arrays/bit-arrays.factor b/basis/bit-arrays/bit-arrays.factor index 17c391636f..42655aceb8 100644 --- a/basis/bit-arrays/bit-arrays.factor +++ b/basis/bit-arrays/bit-arrays.factor @@ -61,7 +61,7 @@ M: bit-array like drop dup bit-array? [ >bit-array ] unless ; M: bit-array new-sequence drop ; M: bit-array equal? - over bit-array? [ sequence= ] [ 2drop f ] if ; + over bit-array? [ [ underlying>> ] bi@ sequence= ] [ 2drop f ] if ; M: bit-array resize [ drop ] [ diff --git a/basis/bit-sets/bit-sets.factor b/basis/bit-sets/bit-sets.factor index 0e97968965..34b7f13dc2 100644 --- a/basis/bit-sets/bit-sets.factor +++ b/basis/bit-sets/bit-sets.factor @@ -26,4 +26,6 @@ HINTS: bit-set-intersect bit-array bit-array ; : bit-set-diff ( seq1 seq2 -- seq ) [ bitnot bitand ] bit-set-map ; -HINTS: bit-set-diff bit-array bit-array ; \ No newline at end of file +HINTS: bit-set-diff bit-array bit-array ; + +: bit-set-subset? ( seq1 seq2 -- ? ) dupd bit-set-intersect = ; \ No newline at end of file