]> gitweb.factorcode.org Git - factor.git/blobdiff - extra/modern/slices/slices.factor
factor: trim some using lists
[factor.git] / extra / modern / slices / slices.factor
index 54b90c8472aacfd35d3245b45b8c7b9eb13fa337..8d3d9da8d0b3f27b4b97efc634469738baddc1cc 100644 (file)
@@ -1,8 +1,7 @@
 ! Copyright (C) 2016 Doug Coleman.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors assocs combinators.extras kernel math sequences
-sequences.deep sequences.extras sequences.private strings
-unicode ;
+sequences.deep sequences.extras strings unicode ;
 IN: modern.slices
 
 : >strings ( seq -- str )
@@ -182,7 +181,7 @@ ERROR: expected-sequence-error expected actual ;
 ERROR: subseq-expected-but-got-eof n string expected ;
 
 :: slice-til-string ( n string search --  n' string payload end-string )
-    search string n subseq-start-from :> n'
+    n string search subseq-index-from :> n'
     n' [ n string search subseq-expected-but-got-eof ] unless
     n' search length + string
     n n' string ?<slice>
@@ -206,8 +205,8 @@ ERROR: subseq-expected-but-got-eof n string expected ;
 : rewind-slice ( n string slice -- n' string )
     2nip [ from>> ] [ seq>> ] bi ; inline
 
-:: take-from? ( n seq subseq -- n'/f seq  ? )
-    subseq seq n pick length (subseq-start-from) 2nip [
+:: take-from? ( n seq subseq -- n'/f seq ? )
+    n seq subseq subseq-starts-at? [
         n subseq length +
         seq
         t