FilterIterator

FilterIterator: FilterIterator, hasValue, value, increment, map, chain, toList

struct FilterIterator<Input, It, Predicate>: Iterator<Input&>

FilterIterator

FilterIterator(It source, Predicate include)

Initializes an iterator keeping the source's matching elements.

hasValue

bool hasValue()

Returns true if there are more matching elements.

value

Input& value()

Returns the next matching element.

increment

void increment()

Advances past the current element.

map

MappedIterator<Output, Input, FilterIterator<Input, It, Predicate>, Output(Input&)> map<Output>(Output(Input&) transform)

Lazily transforms the elements.

MappedIterator<Output, Input, FilterIterator<Input, It, Predicate>, Output(T)> map<Output, T: Copyable>(Output(T) transform)

Lazily transforms the elements.

chain

ChainIterator<Input, FilterIterator<Input, It, Predicate>, Other> chain<Other>(Other other)

Lazily appends another iterator's elements.

toList

List<Input> toList()

Collects the remaining elements into a list.