trim-head-slice ( ... seq quot: ( ... elt -- ... ? ) -- ... slice )
Factor handbook » The language » Collections » Sequence operations » Trimming sequences

Prev:trim-slice ( ... seq quot: ( ... elt -- ... ? ) -- ... slice )
Next:trim-tail-slice ( ... seq quot: ( ... elt -- ... ? ) -- ... slice )


Vocabulary
sequences

Inputs
seqa sequence
quota quotation


Outputs
slicea slice


Word description
Removes elements starting from the left side of a sequence if they match a predicate. Once an element does not match, the test stops and the rest of the sequence is left on the stack as a slice.

Examples
USING: prettyprint math sequences ; { 0 0 1 2 3 0 0 } [ zero? ] trim-head-slice .
T{ slice { from 2 } { to 7 } { seq { 0 0 1 2 3 0 0 } } }


See also
trim, trim-slice, trim-head, trim-tail, trim-tail-slice

Definition


: trim-head-slice
( ... seq quot: ( ... elt -- ... ? ) -- ... slice )
(trim-head) tail-slice ; inline