An iterator that links two iterators together, in a chain.
An iterator that clones the elements of an underlying iterator.
An iterator that copies the elements of an underlying iterator.
An iterator that repeats endlessly.
An iterator that yields nothing.
An iterator that yields the current count and the element during iteration.
An iterator that filters the elements of iter
with predicate
.
An iterator that uses f
to both filter and map elements from iter
.
An iterator that maps each element to an iterator, and yields the elements
of the produced iterators.
An iterator that flattens one level of nesting in an iterator of things
that can be turned into iterators.
An iterator where each iteration calls the provided closure F: FnMut() -> Option<T>
.
An iterator that yields None
forever after the underlying iterator
yields None
once.
An iterator that calls a function with a reference to each element before
yielding it.
An iterator that maps the values of iter
with f
.
An iterator that only accepts elements while predicate
returns Some(_)
.
An iterator that yields an element exactly once.
An iterator that yields a single element of type A
by
applying the provided closure F: FnOnce() -> A
.
An iterator with a peek()
that returns an optional reference to the next
element.
An iterator that repeats an element endlessly.
An iterator that repeats elements of type A
endlessly by
applying the provided closure F: FnMut() -> A
.
A double-ended iterator with the direction inverted.
An iterator to maintain state while iterating another iterator.
An iterator that skips over n
elements of iter
.
An iterator that rejects elements while predicate
returns true
.
An iterator for stepping iterators by a custom amount.
A new iterator where each successive item is computed based on the preceding one.
An iterator that only iterates over the first n
iterations of iter
.
An iterator that only accepts elements while predicate
returns true
.
An iterator that iterates two other iterators simultaneously.
An iterator over N
elements of the iterator at a time.
Like Iterator::by_ref
, but requiring Sized
so it can forward generics.
An iterator adapter that places a separator between all elements.
An iterator adapter that places a separator between all elements.
An iterator over the mapped windows of another iterator.
An iterator that repeats an element an exact number of times.
Creates an iterator that yields nothing.
Creates a new iterator where each iteration calls the provided closure
F: FnMut() -> Option<T>
.
Creates an iterator that yields an element exactly once.
Creates an iterator that lazily generates a value exactly once by invoking
the provided closure.
Creates a new iterator that endlessly repeats a single element.
Creates a new iterator that repeats elements of type A
endlessly by
applying the provided closure, the repeater, F: FnMut() -> A
.
Creates a new iterator where each successive item is computed based on the preceding one.
Converts the arguments to iterators and zips them.
Converts the arguments to iterators and links them together, in a chain.
Creates a new iterator where each iteration calls the provided coroutine.
Creates a new iterator that repeats a single element a given number of times.