]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/hash-sets/sequences/sequences.factor
basis/extra: builder fixes for recent cleanups
[factor.git] / basis / hash-sets / sequences / sequences.factor
index 55a30f49cb49d3cdd89bf52ae95a63e91ce5009c..4aca2d290c2757c244719cc04d76e0435cea4be6 100644 (file)
@@ -1,14 +1,15 @@
 ! Copyright (C) 2013 John Benediktsson
 ! See http://factorcode.org/license.txt for BSD license
 
-USING: accessors combinators hash-sets hash-sets.wrapped kernel
-parser sequences sets vocabs.loader ;
+USING: accessors hash-sets hash-sets.wrapped kernel math parser
+sequences vocabs.loader ;
 
 IN: hash-sets.sequences
 
-ERROR: not-a-sequence object ;
+<PRIVATE
 
-TUPLE: sequence-wrapper < wrapped-key ;
+TUPLE: sequence-wrapper
+    { underlying sequence read-only } ;
 
 C: <sequence-wrapper> sequence-wrapper
 
@@ -20,13 +21,14 @@ M: sequence-wrapper equal?
 M: sequence-wrapper hashcode*
     underlying>> [ sequence-hashcode ] recursive-hashcode ; inline
 
+PRIVATE>
+
 TUPLE: sequence-hash-set < wrapped-hash-set ;
 
 : <sequence-hash-set> ( n -- shash-set )
     <hash-set> sequence-hash-set boa ; inline
 
-M: sequence-hash-set wrap-key
-    drop dup sequence? [ <sequence-wrapper> ] [ not-a-sequence ] if ;
+M: sequence-hash-set wrap-key drop <sequence-wrapper> ;
 
 M: sequence-hash-set clone
     underlying>> clone sequence-hash-set boa ; inline