SplitScript reference / Iterator / filter

Iterator.filter

Method

T.filter(predicate: (Item) -> bool) -> FilterIterator<T, Item> where T: Iterator

Lazily retains the remaining items accepted by a predicate.

Advancing the returned iterator advances the source until either an accepted item or End is reached.

Parameters

  • predicate: Predicate deciding whether an item is yielded.

Effects: pure

Runtime behavior: available everywhere; synchronous

Examples

Keep even values

let evens = [1, 2, 3, 4].iterator().filter(value => value % 2 == 0)
for value in evens {
    print(value)
}