Module structs
The concrete iterator types.
Structs
- Batching A “meta iterator adaptor”. Its closure receives a reference to the iterator and may pick off as many elements as it likes, to produce the next iterator element.
- Chunk An iterator for the elements in a single chunk.
-
ChunkBy
ChunkByis the storage for the lazy grouping operation. - Chunks An iterator that yields the Chunk iterators.
- CircularTupleWindows An iterator over all windows, wrapping back to the first elements when the window would otherwise exceed the length of the iterator, producing tuples of a specific size.
-
CombinationsWithReplacement
An iterator to iterate through all the
n-length combinations in an iterator, with replacement. -
ExactlyOneError
Iterator returned for the error case of
Itertools::exactly_one()This iterator yields exactly the same elements as the input iterator. -
FilterMapOk
An iterator adapter to filter and apply a transformation on values within a nested
Result::Ok. -
FilterOk
An iterator adapter to filter values within a nested
Result::Ok. -
FlattenOk
An iterator adaptor that flattens
Result::Okvalues and allowsResult::Errvalues through unchanged. -
Format
Format all iterator elements lazily, separated by
sep. -
FormatWith
Format all iterator elements lazily, separated by
sep. - Group An iterator for the elements in a single group.
-
GroupingMap
GroupingMapis an intermediate struct for efficient group-and-fold operations. It groups elements by their key and at the same time fold each group using some aggregating operation. - Groups An iterator that yields the Group iterators.
- Interleave An iterator adaptor that alternates elements from two iterators until both run out.
- InterleaveShortest An iterator adaptor that alternates elements from the two iterators until one of them runs out.
- IntersperseWith An iterator adaptor to insert a particular value created by a function between each element of the adapted iterator.
-
IntoChunks
ChunkLazyis the storage for a lazy chunking operation. - Iterate An iterator that infinitely applies function to value and yields results.
- KMergeBy An iterator adaptor that merges an abitrary number of base iterators according to an ordering function.
- MergeBy An iterator adaptor that merges the two base iterators in ascending order. If both base iterators are sorted (ascending), the result is sorted.
-
MultiPeek
See [
multipeek()] for more information. -
MultiProduct
An iterator adaptor that iterates over the cartesian product of
multiple iterators of type
I. - PadUsing An iterator adaptor that pads a sequence to a minimum length by filling missing elements using a closure.
-
PeekNth
See [
peek_nth()] for more information. -
PeekingTakeWhile
An iterator adaptor that takes items while a closure returns
true. -
Permutations
An iterator adaptor that iterates through all the
k-permutations of the elements from an iterator. - Positions An iterator adapter to get the positions of each element that matches a predicate.
- Powerset An iterator to iterate through the powerset of the elements from an iterator.
-
ProcessResults
An iterator that produces only the
Tvalues as long as the inner iterator producesOk(T). -
Product
An iterator adaptor that iterates over the cartesian product of
the element sets of two iterators
IandJ. - PutBack An iterator adaptor that allows putting back a single item to the front of the iterator.
- PutBackN An iterator adaptor that allows putting multiple items in front of the iterator.
-
RcIter
A wrapper for
Rc<RefCell<I>>, that implements theIteratortrait. - RepeatN An iterator that produces n repetitions of an element.
-
TakeWhileInclusive
An iterator adaptor that consumes elements while the given predicate is
true, including the element for which the predicate first returnedfalse. -
TakeWhileRef
An iterator adaptor that borrows from a
Clone-able iterator to only pick off elements while the predicate returnstrue. - Tee One half of an iterator pair where both return the same elements.
- TupleBuffer An iterator over a incomplete tuple.
-
TupleCombinations
An iterator to iterate through all combinations in a
Clone-able iterator that produces tuples of a specific size. - TupleWindows An iterator over all contiguous windows that produces tuples of a specific size.
- Tuples An iterator that groups the items in tuples of a specific size.
-
Unfold
See
unfoldfor more information. - Unique An iterator adapter to filter out duplicate elements.
- UniqueBy An iterator adapter to filter out duplicate elements.
- Update An iterator adapter to apply a mutating function to each element before yielding it.
-
WhileSome
An iterator adaptor that filters
Option<A>iterator elements and producesA. Stops on the firstNoneencountered. -
WithPosition
An iterator adaptor that wraps each element in an
Position. -
Zip
See
multizipfor more information. - ZipEq An iterator which iterates two other iterators simultaneously and panic if they have different lengths.
-
ZipLongest
An iterator which iterates two other iterators simultaneously
and wraps the elements in
EitherOrBoth.
Type Aliases
-
ArrayCombinations
Iterator for const generic combinations returned by
.array_combinations() - Coalesce An iterator adaptor that may join together adjacent elements.
-
Combinations
Iterator for
Vecvalued combinations returned by.combinations() -
ConsTuples
An iterator that maps an iterator of tuples like
((A, B), C)to an iterator of(A, B, C). - Dedup An iterator adaptor that removes repeated duplicates.
- DedupBy An iterator adaptor that removes repeated duplicates, determining equality using a comparison function.
- DedupByWithCount An iterator adaptor that removes repeated duplicates, while keeping a count of how many repeated elements were present. This will determine equality using a comparison function.
- DedupWithCount An iterator adaptor that removes repeated duplicates, while keeping a count of how many repeated elements were present.
- Duplicates An iterator adapter to filter out duplicate elements.
- DuplicatesBy An iterator adapter to filter for duplicate elements.
-
GroupBy
See
ChunkBy. -
GroupingMapBy
GroupingMapByis an intermediate struct for efficient group-and-fold operations. - Intersperse An iterator adaptor to insert a particular value between each element of the adapted iterator.
- KMerge An iterator adaptor that merges an abitrary number of base iterators in ascending order. If all base iterators are sorted (ascending), the result is sorted.
-
MapInto
An iterator adapter to apply
Intoconversion to each element. -
MapOk
An iterator adapter to apply a transformation within a nested
Result::Ok. - Merge An iterator adaptor that merges the two base iterators in ascending order. If both base iterators are sorted (ascending), the result is sorted.
- MergeJoinBy An iterator adaptor that merge-joins items from the two base iterators in ascending order.