]> gitweb.factorcode.org Git - factor.git/commitdiff
contrib/sequences: add ?head-slice, ?tail-slice, etc
authorchris.double <chris.double@double.co.nz>
Sun, 8 Oct 2006 10:44:34 +0000 (10:44 +0000)
committerchris.double <chris.double@double.co.nz>
Sun, 8 Oct 2006 10:44:34 +0000 (10:44 +0000)
contrib/sequences.factor

index 4980022008c1bf3cb0c4583d005d39395511a180..5ec775dad5e7d29f56a13c2c7b0e478517577bbd 100644 (file)
@@ -39,4 +39,13 @@ IN: sequences-contrib
 : trim* ( seq quot -- newseq ) [ (ltrim*) ] keep rtrim* ;
 : trim ( seq -- newseq ) [ blank? ] trim* ;
 
+: ?head-slice ( seq begin -- newseq ? )
+  2dup head? [ length tail-slice t ] [ drop f ] if ;
+
+: ?tail-slice ( seq end -- newseq ? )
+  2dup tail? [ length head-slice* t ] [ drop f ] if ;
+
+: unclip-slice ( seq -- rest first )
+  dup 1 tail-slice swap first ;
+
 PROVIDE: contrib/sequences ;