pub struct Intersperse<I>{ /* private fields */ }
๐ฌThis is a nightly-only experimental API. (
iter_intersperse
)Expand description
An iterator adapter that places a separator between all elements.
This struct
is created by Iterator::intersperse
. See its documentation
for more information.
Trait Implementationsยง
Sourceยงimpl<I> Clone for Intersperse<I>
impl<I> Clone for Intersperse<I>
1.0.0 ยท Sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSourceยงimpl<I> Debug for Intersperse<I>
impl<I> Debug for Intersperse<I>
Sourceยงimpl<I> Iterator for Intersperse<I>
impl<I> Iterator for Intersperse<I>
Sourceยงfn next(&mut self) -> Option<<Intersperse<I> as Iterator>::Item>
fn next(&mut self) -> Option<<Intersperse<I> as Iterator>::Item>
Advances the iterator and returns the next value. Read more
Sourceยงfn size_hint(&self) -> (usize, Option<usize>)
fn size_hint(&self) -> (usize, Option<usize>)
Returns the bounds on the remaining length of the iterator. Read more
Sourceยงfn fold<B, F>(self, init: B, f: F) -> B
fn fold<B, F>(self, init: B, f: F) -> B
Folds every element into an accumulator by applying an operation,
returning the final result. Read more
Sourceยงfn next_chunk<const N: usize>(
&mut self,
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where
Self: Sized,
fn next_chunk<const N: usize>(
&mut self,
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where
Self: Sized,
๐ฌThis is a nightly-only experimental API. (
iter_next_chunk
)Advances the iterator and returns an array containing the next
N
values. Read more1.0.0 ยท Sourceยงfn count(self) -> usizewhere
Self: Sized,
fn count(self) -> usizewhere
Self: Sized,
Consumes the iterator, counting the number of iterations and returning it. Read more
1.0.0 ยท Sourceยงfn last(self) -> Option<Self::Item>where
Self: Sized,
fn last(self) -> Option<Self::Item>where
Self: Sized,
Consumes the iterator, returning the last element. Read more
Sourceยงfn advance_by(&mut self, n: usize) -> Result<(), NonZero<usize>>
fn advance_by(&mut self, n: usize) -> Result<(), NonZero<usize>>
๐ฌThis is a nightly-only experimental API. (
iter_advance_by
)Advances the iterator by
n
elements. Read more1.0.0 ยท Sourceยงfn nth(&mut self, n: usize) -> Option<Self::Item>
fn nth(&mut self, n: usize) -> Option<Self::Item>
Returns the
n
th element of the iterator. Read more1.28.0 ยท Sourceยงfn step_by(self, step: usize) -> StepBy<Self> โwhere
Self: Sized,
fn step_by(self, step: usize) -> StepBy<Self> โwhere
Self: Sized,
Creates an iterator starting at the same point, but stepping by
the given amount at each iteration. Read more
1.0.0 ยท Sourceยงfn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter> โ
fn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter> โ
Takes two iterators and creates a new iterator over both in sequence. Read more
1.0.0 ยท Sourceยงfn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter> โwhere
Self: Sized,
U: IntoIterator,
fn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter> โwhere
Self: Sized,
U: IntoIterator,
โZips upโ two iterators into a single iterator of pairs. Read more
Sourceยงfn intersperse(self, separator: Self::Item) -> Intersperse<Self> โ
fn intersperse(self, separator: Self::Item) -> Intersperse<Self> โ
๐ฌThis is a nightly-only experimental API. (
iter_intersperse
)Creates a new iterator which places a copy of
separator
between adjacent
items of the original iterator. Read moreSourceยงfn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> โ
fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> โ
๐ฌThis is a nightly-only experimental API. (
iter_intersperse
)Creates a new iterator which places an item generated by
separator
between adjacent items of the original iterator. Read more1.0.0 ยท Sourceยงfn map<B, F>(self, f: F) -> Map<Self, F> โ
fn map<B, F>(self, f: F) -> Map<Self, F> โ
Takes a closure and creates an iterator which calls that closure on each
element. Read more
1.21.0 ยท Sourceยงfn for_each<F>(self, f: F)
fn for_each<F>(self, f: F)
Calls a closure on each element of an iterator. Read more
1.0.0 ยท Sourceยงfn filter<P>(self, predicate: P) -> Filter<Self, P> โ
fn filter<P>(self, predicate: P) -> Filter<Self, P> โ
Creates an iterator which uses a closure to determine if an element
should be yielded. Read more
1.0.0 ยท Sourceยงfn filter_map<B, F>(self, f: F) -> FilterMap<Self, F> โ
fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F> โ
Creates an iterator that both filters and maps. Read more
1.0.0 ยท Sourceยงfn enumerate(self) -> Enumerate<Self> โwhere
Self: Sized,
fn enumerate(self) -> Enumerate<Self> โwhere
Self: Sized,
Creates an iterator which gives the current iteration count as well as
the next value. Read more
1.0.0 ยท Sourceยงfn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P> โ
fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P> โ
1.0.0 ยท Sourceยงfn take_while<P>(self, predicate: P) -> TakeWhile<Self, P> โ
fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P> โ
Creates an iterator that yields elements based on a predicate. Read more
1.57.0 ยท Sourceยงfn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P> โ
fn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P> โ
Creates an iterator that both yields elements based on a predicate and maps. Read more
1.0.0 ยท Sourceยงfn skip(self, n: usize) -> Skip<Self> โwhere
Self: Sized,
fn skip(self, n: usize) -> Skip<Self> โwhere
Self: Sized,
Creates an iterator that skips the first
n
elements. Read more1.0.0 ยท Sourceยงfn take(self, n: usize) -> Take<Self> โwhere
Self: Sized,
fn take(self, n: usize) -> Take<Self> โwhere
Self: Sized,
Creates an iterator that yields the first
n
elements, or fewer
if the underlying iterator ends sooner. Read more1.0.0 ยท Sourceยงfn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F> โ
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F> โ
Creates an iterator that works like map, but flattens nested structure. Read more
1.29.0 ยท Sourceยงfn flatten(self) -> Flatten<Self> โ
fn flatten(self) -> Flatten<Self> โ
Creates an iterator that flattens nested structure. Read more
Sourceยงfn map_windows<F, R, const N: usize>(self, f: F) -> MapWindows<Self, F, N> โ
fn map_windows<F, R, const N: usize>(self, f: F) -> MapWindows<Self, F, N> โ
๐ฌThis is a nightly-only experimental API. (
iter_map_windows
)Calls the given function
f
for each contiguous window of size N
over
self
and returns an iterator over the outputs of f
. Like slice::windows()
,
the windows during mapping overlap as well. Read more1.0.0 ยท Sourceยงfn inspect<F>(self, f: F) -> Inspect<Self, F> โ
fn inspect<F>(self, f: F) -> Inspect<Self, F> โ
Does something with each element of an iterator, passing the value on. Read more
1.0.0 ยท Sourceยงfn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Creates a โby referenceโ adapter for this instance of
Iterator
. Read moreSourceยงfn try_collect<B>(
&mut self,
) -> <<Self::Item as Try>::Residual as Residual<B>>::TryType
fn try_collect<B>( &mut self, ) -> <<Self::Item as Try>::Residual as Residual<B>>::TryType
๐ฌThis is a nightly-only experimental API. (
iterator_try_collect
)Fallibly transforms an iterator into a collection, short circuiting if
a failure is encountered. Read more
Sourceยงfn collect_into<E>(self, collection: &mut E) -> &mut E
fn collect_into<E>(self, collection: &mut E) -> &mut E
๐ฌThis is a nightly-only experimental API. (
iter_collect_into
)Collects all the items from an iterator into a collection. Read more
1.0.0 ยท Sourceยงfn partition<B, F>(self, f: F) -> (B, B)
fn partition<B, F>(self, f: F) -> (B, B)
Consumes an iterator, creating two collections from it. Read more
Sourceยงfn partition_in_place<'a, T, P>(self, predicate: P) -> usize
fn partition_in_place<'a, T, P>(self, predicate: P) -> usize
๐ฌThis is a nightly-only experimental API. (
iter_partition_in_place
)Reorders the elements of this iterator in-place according to the given predicate,
such that all those that return
true
precede all those that return false
.
Returns the number of true
elements found. Read moreSourceยงfn is_partitioned<P>(self, predicate: P) -> bool
fn is_partitioned<P>(self, predicate: P) -> bool
๐ฌThis is a nightly-only experimental API. (
iter_is_partitioned
)Checks if the elements of this iterator are partitioned according to the given predicate,
such that all those that return
true
precede all those that return false
. Read more1.27.0 ยท Sourceยงfn try_fold<B, F, R>(&mut self, init: B, f: F) -> R
fn try_fold<B, F, R>(&mut self, init: B, f: F) -> R
An iterator method that applies a function as long as it returns
successfully, producing a single, final value. Read more
1.27.0 ยท Sourceยงfn try_for_each<F, R>(&mut self, f: F) -> R
fn try_for_each<F, R>(&mut self, f: F) -> R
An iterator method that applies a fallible function to each item in the
iterator, stopping at the first error and returning that error. Read more
1.51.0 ยท Sourceยงfn reduce<F>(self, f: F) -> Option<Self::Item>
fn reduce<F>(self, f: F) -> Option<Self::Item>
Reduces the elements to a single one, by repeatedly applying a reducing
operation. Read more
Sourceยงfn try_reduce<R>(
&mut self,
f: impl FnMut(Self::Item, Self::Item) -> R,
) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryType
fn try_reduce<R>( &mut self, f: impl FnMut(Self::Item, Self::Item) -> R, ) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryType
๐ฌThis is a nightly-only experimental API. (
iterator_try_reduce
)Reduces the elements to a single one by repeatedly applying a reducing operation. If the
closure returns a failure, the failure is propagated back to the caller immediately. Read more
1.0.0 ยท Sourceยงfn all<F>(&mut self, f: F) -> bool
fn all<F>(&mut self, f: F) -> bool
Tests if every element of the iterator matches a predicate. Read more
1.0.0 ยท Sourceยงfn any<F>(&mut self, f: F) -> bool
fn any<F>(&mut self, f: F) -> bool
Tests if any element of the iterator matches a predicate. Read more
1.0.0 ยท Sourceยงfn find<P>(&mut self, predicate: P) -> Option<Self::Item>
fn find<P>(&mut self, predicate: P) -> Option<Self::Item>
Searches for an element of an iterator that satisfies a predicate. Read more
1.30.0 ยท Sourceยงfn find_map<B, F>(&mut self, f: F) -> Option<B>
fn find_map<B, F>(&mut self, f: F) -> Option<B>
Applies function to the elements of iterator and returns
the first non-none result. Read more
Sourceยงfn try_find<R>(
&mut self,
f: impl FnMut(&Self::Item) -> R,
) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryType
fn try_find<R>( &mut self, f: impl FnMut(&Self::Item) -> R, ) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryType
๐ฌThis is a nightly-only experimental API. (
try_find
)Applies function to the elements of iterator and returns
the first true result or the first error. Read more
1.0.0 ยท Sourceยงfn position<P>(&mut self, predicate: P) -> Option<usize>
fn position<P>(&mut self, predicate: P) -> Option<usize>
Searches for an element in an iterator, returning its index. Read more
1.0.0 ยท Sourceยงfn rposition<P>(&mut self, predicate: P) -> Option<usize>
fn rposition<P>(&mut self, predicate: P) -> Option<usize>
Searches for an element in an iterator from the right, returning its
index. Read more
1.0.0 ยท Sourceยงfn max(self) -> Option<Self::Item>
fn max(self) -> Option<Self::Item>
Returns the maximum element of an iterator. Read more
1.0.0 ยท Sourceยงfn min(self) -> Option<Self::Item>
fn min(self) -> Option<Self::Item>
Returns the minimum element of an iterator. Read more
1.6.0 ยท Sourceยงfn max_by_key<B, F>(self, f: F) -> Option<Self::Item>
fn max_by_key<B, F>(self, f: F) -> Option<Self::Item>
Returns the element that gives the maximum value from the
specified function. Read more
1.15.0 ยท Sourceยงfn max_by<F>(self, compare: F) -> Option<Self::Item>
fn max_by<F>(self, compare: F) -> Option<Self::Item>
Returns the element that gives the maximum value with respect to the
specified comparison function. Read more
1.6.0 ยท Sourceยงfn min_by_key<B, F>(self, f: F) -> Option<Self::Item>
fn min_by_key<B, F>(self, f: F) -> Option<Self::Item>
Returns the element that gives the minimum value from the
specified function. Read more
1.15.0 ยท Sourceยงfn min_by<F>(self, compare: F) -> Option<Self::Item>
fn min_by<F>(self, compare: F) -> Option<Self::Item>
Returns the element that gives the minimum value with respect to the
specified comparison function. Read more
1.0.0 ยท Sourceยงfn rev(self) -> Rev<Self> โwhere
Self: Sized + DoubleEndedIterator,
fn rev(self) -> Rev<Self> โwhere
Self: Sized + DoubleEndedIterator,
Reverses an iteratorโs direction. Read more
1.0.0 ยท Sourceยงfn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)
fn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)
Converts an iterator of pairs into a pair of containers. Read more
1.36.0 ยท Sourceยงfn copied<'a, T>(self) -> Copied<Self> โ
fn copied<'a, T>(self) -> Copied<Self> โ
Creates an iterator which copies all of its elements. Read more
Sourceยงfn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N> โwhere
Self: Sized,
fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N> โwhere
Self: Sized,
๐ฌThis is a nightly-only experimental API. (
iter_array_chunks
)Returns an iterator over
N
elements of the iterator at a time. Read more1.11.0 ยท Sourceยงfn product<P>(self) -> P
fn product<P>(self) -> P
Iterates over the entire iterator, multiplying all the elements Read more
Sourceยงfn cmp_by<I, F>(self, other: I, cmp: F) -> Ordering
fn cmp_by<I, F>(self, other: I, cmp: F) -> Ordering
๐ฌThis is a nightly-only experimental API. (
iter_order_by
)Lexicographically compares the elements of this
Iterator
with those
of another with respect to the specified comparison function. Read more1.5.0 ยท Sourceยงfn partial_cmp<I>(self, other: I) -> Option<Ordering>
fn partial_cmp<I>(self, other: I) -> Option<Ordering>
Lexicographically compares the
PartialOrd
elements of
this Iterator
with those of another. The comparison works like short-circuit
evaluation, returning a result without comparing the remaining elements.
As soon as an order can be determined, the evaluation stops and a result is returned. Read moreSourceยงfn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
Self: Sized,
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
fn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
Self: Sized,
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
๐ฌThis is a nightly-only experimental API. (
iter_order_by
)Lexicographically compares the elements of this
Iterator
with those
of another with respect to the specified comparison function. Read moreSourceยงfn eq_by<I, F>(self, other: I, eq: F) -> bool
fn eq_by<I, F>(self, other: I, eq: F) -> bool
๐ฌThis is a nightly-only experimental API. (
iter_order_by
)1.5.0 ยท Sourceยงfn lt<I>(self, other: I) -> bool
fn lt<I>(self, other: I) -> bool
Determines if the elements of this
Iterator
are lexicographically
less than those of another. Read more1.5.0 ยท Sourceยงfn le<I>(self, other: I) -> bool
fn le<I>(self, other: I) -> bool
Determines if the elements of this
Iterator
are lexicographically
less or equal to those of another. Read more1.5.0 ยท Sourceยงfn gt<I>(self, other: I) -> bool
fn gt<I>(self, other: I) -> bool
Determines if the elements of this
Iterator
are lexicographically
greater than those of another. Read more1.5.0 ยท Sourceยงfn ge<I>(self, other: I) -> bool
fn ge<I>(self, other: I) -> bool
Determines if the elements of this
Iterator
are lexicographically
greater than or equal to those of another. Read more1.82.0 ยท Sourceยงfn is_sorted(self) -> bool
fn is_sorted(self) -> bool
Checks if the elements of this iterator are sorted. Read more
1.82.0 ยท Sourceยงfn is_sorted_by<F>(self, compare: F) -> bool
fn is_sorted_by<F>(self, compare: F) -> bool
Checks if the elements of this iterator are sorted using the given comparator function. Read more
1.82.0 ยท Sourceยงfn is_sorted_by_key<F, K>(self, f: F) -> bool
fn is_sorted_by_key<F, K>(self, f: F) -> bool
Checks if the elements of this iterator are sorted using the given key extraction
function. Read more
impl<I> FusedIterator for Intersperse<I>
Auto Trait Implementationsยง
impl<I> Freeze for Intersperse<I>
impl<I> RefUnwindSafe for Intersperse<I>
impl<I> Send for Intersperse<I>
impl<I> Sync for Intersperse<I>
impl<I> Unpin for Intersperse<I>
impl<I> UnwindSafe for Intersperse<I>
Blanket Implementationsยง
ยงimpl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
ยงimpl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Sourceยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
ยงimpl<'e, I, E> EmitAndCount for I
impl<'e, I, E> EmitAndCount for I
ยงimpl<T> FutureExt for T
impl<T> FutureExt for T
ยงfn with_context(self, otel_cx: Context) -> WithContext<Self> โ
fn with_context(self, otel_cx: Context) -> WithContext<Self> โ
ยงfn with_current_context(self) -> WithContext<Self> โ
fn with_current_context(self) -> WithContext<Self> โ
ยงimpl<T> Instrument for T
impl<T> Instrument for T
ยงfn instrument(self, span: Span) -> Instrumented<Self> โ
fn instrument(self, span: Span) -> Instrumented<Self> โ
ยงfn in_current_span(self) -> Instrumented<Self> โ
fn in_current_span(self) -> Instrumented<Self> โ
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self> โ
fn into_either(self, into_left: bool) -> Either<Self, Self> โ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self> โ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> โ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSourceยงimpl<I> IntoIterator for Iwhere
I: Iterator,
impl<I> IntoIterator for Iwhere
I: Iterator,
ยงimpl<'a, I, M, Request> IteratorMatcherExt<'a, M, Request> for I
impl<'a, I, M, Request> IteratorMatcherExt<'a, M, Request> for I
ยงfn matches_and(
self,
ext: Option<&mut Extensions>,
ctx: &Context,
request: &Request,
) -> bool
fn matches_and( self, ext: Option<&mut Extensions>, ctx: &Context, request: &Request, ) -> bool
Matches in case all
Matcher
elements match for the given Request
within the specified crate::Context
.ยงfn matches_or(
self,
ext: Option<&mut Extensions>,
ctx: &Context,
request: &Request,
) -> bool
fn matches_or( self, ext: Option<&mut Extensions>, ctx: &Context, request: &Request, ) -> bool
Matches in case any of the
Matcher
elements match for the given Request
within the specified crate::Context
.Sourceยงimpl<I> IteratorRandom for Iwhere
I: Iterator,
impl<I> IteratorRandom for Iwhere
I: Iterator,
Sourceยงfn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>
fn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>
Uniformly sample one element (stable) Read more
ยงimpl<T> Itertools for T
impl<T> Itertools for T
ยงfn interleave<J>(
self,
other: J,
) -> Interleave<Self, <J as IntoIterator>::IntoIter> โ
fn interleave<J>( self, other: J, ) -> Interleave<Self, <J as IntoIterator>::IntoIter> โ
Alternate elements from two iterators until both have run out. Read more
ยงfn interleave_shortest<J>(
self,
other: J,
) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> โ
fn interleave_shortest<J>( self, other: J, ) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> โ
Alternate elements from two iterators until at least one of them has run
out. Read more
ยงfn intersperse(
self,
element: Self::Item,
) -> IntersperseWith<Self, IntersperseElementSimple<Self::Item>> โ
fn intersperse( self, element: Self::Item, ) -> IntersperseWith<Self, IntersperseElementSimple<Self::Item>> โ
An iterator adaptor to insert a particular value
between each element of the adapted iterator. Read more
ยงfn intersperse_with<F>(self, element: F) -> IntersperseWith<Self, F> โ
fn intersperse_with<F>(self, element: F) -> IntersperseWith<Self, F> โ
An iterator adaptor to insert a particular value created by a function
between each element of the adapted iterator. Read more
ยงfn get<R>(self, index: R) -> <R as IteratorIndex<Self>>::Outputwhere
Self: Sized,
R: IteratorIndex<Self>,
fn get<R>(self, index: R) -> <R as IteratorIndex<Self>>::Outputwhere
Self: Sized,
R: IteratorIndex<Self>,
Returns an iterator over a subsection of the iterator. Read more
ยงfn zip_longest<J>(
self,
other: J,
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> โwhere
J: IntoIterator,
Self: Sized,
fn zip_longest<J>(
self,
other: J,
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> โwhere
J: IntoIterator,
Self: Sized,
Create an iterator which iterates over both this and the specified
iterator simultaneously, yielding pairs of two optional elements. Read more
ยงfn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> โwhere
J: IntoIterator,
Self: Sized,
fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> โwhere
J: IntoIterator,
Self: Sized,
Create an iterator which iterates over both this and the specified
iterator simultaneously, yielding pairs of elements. Read more
ยงfn batching<B, F>(self, f: F) -> Batching<Self, F> โ
fn batching<B, F>(self, f: F) -> Batching<Self, F> โ
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. Read more
ยงfn chunk_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
fn chunk_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
Return an iterable that can group iterator elements.
Consecutive elements that map to the same key (โrunsโ), are assigned
to the same group. Read more
ยงfn group_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
fn group_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
๐Deprecated since 0.13.0: Use .chunk_by() instead
See
.chunk_by()
.ยงfn chunks(self, size: usize) -> IntoChunks<Self>where
Self: Sized,
fn chunks(self, size: usize) -> IntoChunks<Self>where
Self: Sized,
Return an iterable that can chunk the iterator. Read more
ยงfn tuple_windows<T>(self) -> TupleWindows<Self, T> โ
fn tuple_windows<T>(self) -> TupleWindows<Self, T> โ
Return an iterator over all contiguous windows producing tuples of
a specific size (up to 12). Read more
ยงfn circular_tuple_windows<T>(self) -> CircularTupleWindows<Self, T> โ
fn circular_tuple_windows<T>(self) -> CircularTupleWindows<Self, T> โ
Return 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 (up to 12). Read more
ยงfn tuples<T>(self) -> Tuples<Self, T> โ
fn tuples<T>(self) -> Tuples<Self, T> โ
Return an iterator that groups the items in tuples of a specific size
(up to 12). Read more
ยงfn tee(self) -> (Tee<Self>, Tee<Self>)
fn tee(self) -> (Tee<Self>, Tee<Self>)
Split into an iterator pair that both yield all elements from
the original iterator. Read more
ยงfn map_ok<F, T, U, E>(self, f: F) -> MapSpecialCase<Self, MapSpecialCaseFnOk<F>>
fn map_ok<F, T, U, E>(self, f: F) -> MapSpecialCase<Self, MapSpecialCaseFnOk<F>>
Return an iterator adaptor that applies the provided closure
to every
Result::Ok
value. Result::Err
values are
unchanged. Read moreยงfn filter_ok<F, T, E>(self, f: F) -> FilterOk<Self, F> โ
fn filter_ok<F, T, E>(self, f: F) -> FilterOk<Self, F> โ
Return an iterator adaptor that filters every
Result::Ok
value with the provided closure. Result::Err
values are
unchanged. Read moreยงfn filter_map_ok<F, T, U, E>(self, f: F) -> FilterMapOk<Self, F> โ
fn filter_map_ok<F, T, U, E>(self, f: F) -> FilterMapOk<Self, F> โ
Return an iterator adaptor that filters and transforms every
Result::Ok
value with the provided closure. Result::Err
values are unchanged. Read moreยงfn flatten_ok<T, E>(self) -> FlattenOk<Self, T, E> โ
fn flatten_ok<T, E>(self) -> FlattenOk<Self, T, E> โ
Return an iterator adaptor that flattens every
Result::Ok
value into
a series of Result::Ok
values. Result::Err
values are unchanged. Read moreยงfn process_results<F, T, E, R>(self, processor: F) -> Result<R, E>
fn process_results<F, T, E, R>(self, processor: F) -> Result<R, E>
โLiftโ a function of the values of the current iterator so as to process
an iterator of
Result
values instead. Read moreยงfn merge<J>(
self,
other: J,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> โ
fn merge<J>( self, other: J, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> โ
Return an iterator adaptor that merges the two base iterators in
ascending order. If both base iterators are sorted (ascending), the
result is sorted. Read more
ยงfn merge_by<J, F>(
self,
other: J,
is_first: F,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, F> โ
fn merge_by<J, F>( self, other: J, is_first: F, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, F> โ
ยงfn merge_join_by<J, F, T>(
self,
other: J,
cmp_fn: F,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeFuncLR<F, <F as FuncLR<Self::Item, <<J as IntoIterator>::IntoIter as Iterator>::Item>>::T>> โ
fn merge_join_by<J, F, T>( self, other: J, cmp_fn: F, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeFuncLR<F, <F as FuncLR<Self::Item, <<J as IntoIterator>::IntoIter as Iterator>::Item>>::T>> โ
Create an iterator that merges items from both this and the specified
iterator in ascending order. Read more
ยงfn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> โ
fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> โ
Return an iterator adaptor that flattens an iterator of iterators by
merging them in ascending order. Read more
ยงfn kmerge_by<F>(
self,
first: F,
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> โwhere
Self: Sized,
Self::Item: IntoIterator,
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
fn kmerge_by<F>(
self,
first: F,
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> โwhere
Self: Sized,
Self::Item: IntoIterator,
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
Return an iterator adaptor that flattens an iterator of iterators by
merging them according to the given closure. Read more
ยงfn cartesian_product<J>(
self,
other: J,
) -> Product<Self, <J as IntoIterator>::IntoIter> โ
fn cartesian_product<J>( self, other: J, ) -> Product<Self, <J as IntoIterator>::IntoIter> โ
Return an iterator adaptor that iterates over the cartesian product of
the element sets of two iterators
self
and J
. Read moreยงfn multi_cartesian_product(
self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> โwhere
Self: Sized,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
fn multi_cartesian_product(
self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> โwhere
Self: Sized,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
Return an iterator adaptor that iterates over the cartesian product of
all subiterators returned by meta-iterator
self
. Read moreยงfn coalesce<F>(self, f: F) -> CoalesceBy<Self, F, NoCount>
fn coalesce<F>(self, f: F) -> CoalesceBy<Self, F, NoCount>
Return an iterator adaptor that uses the passed-in closure to
optionally merge together consecutive elements. Read more
ยงfn dedup(self) -> CoalesceBy<Self, DedupPred2CoalescePred<DedupEq>, NoCount>
fn dedup(self) -> CoalesceBy<Self, DedupPred2CoalescePred<DedupEq>, NoCount>
Remove duplicates from sections of consecutive identical elements.
If the iterator is sorted, all elements will be unique. Read more
ยงfn dedup_by<Cmp>(
self,
cmp: Cmp,
) -> CoalesceBy<Self, DedupPred2CoalescePred<Cmp>, NoCount>
fn dedup_by<Cmp>( self, cmp: Cmp, ) -> CoalesceBy<Self, DedupPred2CoalescePred<Cmp>, NoCount>
Remove duplicates from sections of consecutive identical elements,
determining equality using a comparison function.
If the iterator is sorted, all elements will be unique. Read more
ยงfn dedup_with_count(
self,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<DedupEq>, WithCount>where
Self: Sized,
fn dedup_with_count(
self,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<DedupEq>, WithCount>where
Self: Sized,
Remove duplicates from sections of consecutive identical elements, while keeping a count of
how many repeated elements were present.
If the iterator is sorted, all elements will be unique. Read more
ยงfn dedup_by_with_count<Cmp>(
self,
cmp: Cmp,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<Cmp>, WithCount>
fn dedup_by_with_count<Cmp>( self, cmp: Cmp, ) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<Cmp>, WithCount>
Remove duplicates from sections of consecutive identical elements, while keeping a count of
how many repeated elements were present.
This will determine equality using a comparison function.
If the iterator is sorted, all elements will be unique. Read more
ยงfn duplicates(self) -> DuplicatesBy<Self, Self::Item, ById>
fn duplicates(self) -> DuplicatesBy<Self, Self::Item, ById>
Return an iterator adaptor that produces elements that appear more than once during the
iteration. Duplicates are detected using hash and equality. Read more
ยงfn duplicates_by<V, F>(self, f: F) -> DuplicatesBy<Self, V, ByFn<F>>
fn duplicates_by<V, F>(self, f: F) -> DuplicatesBy<Self, V, ByFn<F>>
Return an iterator adaptor that produces elements that appear more than once during the
iteration. Duplicates are detected using hash and equality. Read more
ยงfn unique(self) -> Unique<Self> โ
fn unique(self) -> Unique<Self> โ
Return an iterator adaptor that filters out elements that have
already been produced once during the iteration. Duplicates
are detected using hash and equality. Read more
ยงfn unique_by<V, F>(self, f: F) -> UniqueBy<Self, V, F> โ
fn unique_by<V, F>(self, f: F) -> UniqueBy<Self, V, F> โ
Return an iterator adaptor that filters out elements that have
already been produced once during the iteration. Read more
ยงfn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> โ
fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> โ
Return an iterator adaptor that borrows from this iterator and
takes items while the closure
accept
returns true
. Read moreยงfn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> โ
fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> โ
Return an iterator adaptor that borrows from a
Clone
-able iterator
to only pick off elements while the predicate accept
returns true
. Read moreยงfn take_while_inclusive<F>(self, accept: F) -> TakeWhileInclusive<Self, F> โ
fn take_while_inclusive<F>(self, accept: F) -> TakeWhileInclusive<Self, F> โ
Returns an iterator adaptor that consumes elements while the given
predicate is
true
, including the element for which the predicate
first returned false
. Read moreยงfn while_some<A>(self) -> WhileSome<Self> โ
fn while_some<A>(self) -> WhileSome<Self> โ
Return an iterator adaptor that filters
Option<A>
iterator elements
and produces A
. Stops on the first None
encountered. Read moreยงfn tuple_combinations<T>(self) -> TupleCombinations<Self, T> โ
fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> โ
Return an iterator adaptor that iterates over the combinations of the
elements from an iterator. Read more
ยงfn array_combinations<const K: usize>(
self,
) -> CombinationsGeneric<Self, [usize; K]>
fn array_combinations<const K: usize>( self, ) -> CombinationsGeneric<Self, [usize; K]>
Return an iterator adaptor that iterates over the combinations of the
elements from an iterator. Read more
ยงfn combinations(self, k: usize) -> CombinationsGeneric<Self, Vec<usize>>
fn combinations(self, k: usize) -> CombinationsGeneric<Self, Vec<usize>>
Return an iterator adaptor that iterates over the
k
-length combinations of
the elements from an iterator. Read moreยงfn combinations_with_replacement(
self,
k: usize,
) -> CombinationsWithReplacement<Self> โ
fn combinations_with_replacement( self, k: usize, ) -> CombinationsWithReplacement<Self> โ
Return an iterator that iterates over the
k
-length combinations of
the elements from an iterator, with replacement. Read moreยงfn permutations(self, k: usize) -> Permutations<Self> โ
fn permutations(self, k: usize) -> Permutations<Self> โ
Return an iterator adaptor that iterates over all k-permutations of the
elements from an iterator. Read more
ยงfn powerset(self) -> Powerset<Self> โ
fn powerset(self) -> Powerset<Self> โ
Return an iterator that iterates through the powerset of the elements from an
iterator. Read more
ยงfn pad_using<F>(self, min: usize, f: F) -> PadUsing<Self, F> โ
fn pad_using<F>(self, min: usize, f: F) -> PadUsing<Self, F> โ
Return an iterator adaptor that pads the sequence to a minimum length of
min
by filling missing elements using a closure f
. Read moreยงfn with_position(self) -> WithPosition<Self> โwhere
Self: Sized,
fn with_position(self) -> WithPosition<Self> โwhere
Self: Sized,
Return an iterator adaptor that combines each element with a
Position
to
ease special-case handling of the first or last elements. Read moreยงfn positions<P>(self, predicate: P) -> Positions<Self, P> โ
fn positions<P>(self, predicate: P) -> Positions<Self, P> โ
Return an iterator adaptor that yields the indices of all elements
satisfying a predicate, counted from the start of the iterator. Read more
ยงfn update<F>(self, updater: F) -> Update<Self, F> โ
fn update<F>(self, updater: F) -> Update<Self, F> โ
Return an iterator adaptor that applies a mutating function
to each element before yielding it. Read more
ยงfn next_array<const N: usize>(&mut self) -> Option<[Self::Item; N]>where
Self: Sized,
fn next_array<const N: usize>(&mut self) -> Option<[Self::Item; N]>where
Self: Sized,
Advances the iterator and returns the next items grouped in an array of
a specific size. Read more
ยงfn collect_array<const N: usize>(self) -> Option<[Self::Item; N]>where
Self: Sized,
fn collect_array<const N: usize>(self) -> Option<[Self::Item; N]>where
Self: Sized,
Collects all items from the iterator into an array of a specific size. Read more
ยงfn next_tuple<T>(&mut self) -> Option<T>
fn next_tuple<T>(&mut self) -> Option<T>
Advances the iterator and returns the next items grouped in a tuple of
a specific size (up to 12). Read more
ยงfn collect_tuple<T>(self) -> Option<T>
fn collect_tuple<T>(self) -> Option<T>
Collects all items from the iterator into a tuple of a specific size
(up to 12). Read more
ยงfn find_position<P>(&mut self, pred: P) -> Option<(usize, Self::Item)>
fn find_position<P>(&mut self, pred: P) -> Option<(usize, Self::Item)>
Find the position and value of the first element satisfying a predicate. Read more
ยงfn find_or_last<P>(self, predicate: P) -> Option<Self::Item>
fn find_or_last<P>(self, predicate: P) -> Option<Self::Item>
Find the value of the first element satisfying a predicate or return the last element, if any. Read more
ยงfn find_or_first<P>(self, predicate: P) -> Option<Self::Item>
fn find_or_first<P>(self, predicate: P) -> Option<Self::Item>
Find the value of the first element satisfying a predicate or return the first element, if any. Read more
ยงfn contains<Q>(&mut self, query: &Q) -> bool
fn contains<Q>(&mut self, query: &Q) -> bool
Returns
true
if the given item is present in this iterator. Read moreยงfn all_equal_value(
&mut self,
) -> Result<Self::Item, Option<(Self::Item, Self::Item)>>
fn all_equal_value( &mut self, ) -> Result<Self::Item, Option<(Self::Item, Self::Item)>>
If there are elements and they are all equal, return a single copy of that element.
If there are no elements, return an Error containing None.
If there are elements and they are not all equal, return a tuple containing the first
two non-equal elements found. Read more
ยงfn all_unique(&mut self) -> bool
fn all_unique(&mut self) -> bool
Check whether all elements are unique (non equal). Read more
ยงfn dropping(self, n: usize) -> Selfwhere
Self: Sized,
fn dropping(self, n: usize) -> Selfwhere
Self: Sized,
Consume the first
n
elements from the iterator eagerly,
and return the same iterator again. Read moreยงfn dropping_back(self, n: usize) -> Selfwhere
Self: Sized + DoubleEndedIterator,
fn dropping_back(self, n: usize) -> Selfwhere
Self: Sized + DoubleEndedIterator,
Consume the last
n
elements from the iterator eagerly,
and return the same iterator again. Read moreยงfn collect_vec(self) -> Vec<Self::Item>where
Self: Sized,
fn collect_vec(self) -> Vec<Self::Item>where
Self: Sized,
.collect_vec()
is simply a type specialization of Iterator::collect
,
for convenience.ยงfn try_collect<T, U, E>(self) -> Result<U, E>
fn try_collect<T, U, E>(self) -> Result<U, E>
ยงfn set_from<'a, A, J>(&mut self, from: J) -> usize
fn set_from<'a, A, J>(&mut self, from: J) -> usize
Assign to each reference in
self
from the from
iterator,
stopping at the shortest of the two iterators. Read moreยงfn format(self, sep: &str) -> Format<'_, Self>where
Self: Sized,
fn format(self, sep: &str) -> Format<'_, Self>where
Self: Sized,
Format all iterator elements, separated by
sep
. Read moreยงfn format_with<F>(self, sep: &str, format: F) -> FormatWith<'_, Self, F>
fn format_with<F>(self, sep: &str, format: F) -> FormatWith<'_, Self, F>
Format all iterator elements, separated by
sep
. Read moreยงfn fold_ok<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
fn fold_ok<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
Fold
Result
values from an iterator. Read moreยงfn fold_options<A, B, F>(&mut self, start: B, f: F) -> Option<B>
fn fold_options<A, B, F>(&mut self, start: B, f: F) -> Option<B>
Fold
Option
values from an iterator. Read moreยงfn fold1<F>(self, f: F) -> Option<Self::Item>
fn fold1<F>(self, f: F) -> Option<Self::Item>
๐Deprecated since 0.10.2: Use
Iterator::reduce
insteadAccumulator of the elements in the iterator. Read more
ยงfn tree_reduce<F>(self, f: F) -> Option<Self::Item>
fn tree_reduce<F>(self, f: F) -> Option<Self::Item>
Accumulate the elements in the iterator in a tree-like manner. Read more
ยงfn tree_fold1<F>(self, f: F) -> Option<Self::Item>
fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
๐Deprecated since 0.13.0: Use .tree_reduce() instead
See
.tree_reduce()
.ยงfn fold_while<B, F>(&mut self, init: B, f: F) -> FoldWhile<B>
fn fold_while<B, F>(&mut self, init: B, f: F) -> FoldWhile<B>
An iterator method that applies a function, producing a single, final value. Read more
ยงfn product1<P>(self) -> Option<P>
fn product1<P>(self) -> Option<P>
Iterate over the entire iterator and multiply all the elements. Read more
ยงfn sorted_unstable(self) -> IntoIter<Self::Item> โ
fn sorted_unstable(self) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. Read more
ยงfn sorted_unstable_by<F>(self, cmp: F) -> IntoIter<Self::Item> โ
fn sorted_unstable_by<F>(self, cmp: F) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. Read more
ยงfn sorted_unstable_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> โ
fn sorted_unstable_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. Read more
ยงfn sorted(self) -> IntoIter<Self::Item> โ
fn sorted(self) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. Read more
ยงfn sorted_by<F>(self, cmp: F) -> IntoIter<Self::Item> โ
fn sorted_by<F>(self, cmp: F) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. Read more
ยงfn sorted_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> โ
fn sorted_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. Read more
ยงfn sorted_by_cached_key<K, F>(self, f: F) -> IntoIter<Self::Item> โ
fn sorted_by_cached_key<K, F>(self, f: F) -> IntoIter<Self::Item> โ
Sort all iterator elements into a new iterator in ascending order. The key function is
called exactly once per key. Read more
ยงfn k_smallest(self, k: usize) -> IntoIter<Self::Item> โ
fn k_smallest(self, k: usize) -> IntoIter<Self::Item> โ
Sort the k smallest elements into a new iterator, in ascending order. Read more
ยงfn k_smallest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
fn k_smallest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
Sort the k smallest elements into a new iterator using the provided comparison. Read more
ยงfn k_smallest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> โ
fn k_smallest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> โ
Return the elements producing the k smallest outputs of the provided function. Read more
ยงfn k_smallest_relaxed(self, k: usize) -> IntoIter<Self::Item> โ
fn k_smallest_relaxed(self, k: usize) -> IntoIter<Self::Item> โ
Sort the k smallest elements into a new iterator, in ascending order, relaxing the amount of memory required. Read more
ยงfn k_smallest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
fn k_smallest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
Sort the k smallest elements into a new iterator using the provided comparison, relaxing the amount of memory required. Read more
ยงfn k_smallest_relaxed_by_key<F, K>(
self,
k: usize,
key: F,
) -> IntoIter<Self::Item> โ
fn k_smallest_relaxed_by_key<F, K>( self, k: usize, key: F, ) -> IntoIter<Self::Item> โ
Return the elements producing the k smallest outputs of the provided function, relaxing the amount of memory required. Read more
ยงfn k_largest(self, k: usize) -> IntoIter<Self::Item> โ
fn k_largest(self, k: usize) -> IntoIter<Self::Item> โ
Sort the k largest elements into a new iterator, in descending order. Read more
ยงfn k_largest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
fn k_largest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
Sort the k largest elements into a new iterator using the provided comparison. Read more
ยงfn k_largest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> โ
fn k_largest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> โ
Return the elements producing the k largest outputs of the provided function. Read more
ยงfn k_largest_relaxed(self, k: usize) -> IntoIter<Self::Item> โ
fn k_largest_relaxed(self, k: usize) -> IntoIter<Self::Item> โ
Sort the k largest elements into a new iterator, in descending order, relaxing the amount of memory required. Read more
ยงfn k_largest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
fn k_largest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> โ
Sort the k largest elements into a new iterator using the provided comparison, relaxing the amount of memory required. Read more
ยงfn k_largest_relaxed_by_key<F, K>(
self,
k: usize,
key: F,
) -> IntoIter<Self::Item> โ
fn k_largest_relaxed_by_key<F, K>( self, k: usize, key: F, ) -> IntoIter<Self::Item> โ
Return the elements producing the k largest outputs of the provided function, relaxing the amount of memory required. Read more
ยงfn tail(self, n: usize) -> IntoIter<Self::Item> โwhere
Self: Sized,
fn tail(self, n: usize) -> IntoIter<Self::Item> โwhere
Self: Sized,
Consumes the iterator and return an iterator of the last
n
elements. Read moreยงfn partition_map<A, B, F, L, R>(self, predicate: F) -> (A, B)
fn partition_map<A, B, F, L, R>(self, predicate: F) -> (A, B)
Collect all iterator elements into one of two
partitions. Unlike
Iterator::partition
, each partition may
have a distinct type. Read moreยงfn partition_result<A, B, T, E>(self) -> (A, B)
fn partition_result<A, B, T, E>(self) -> (A, B)
Partition a sequence of
Result
s into one list of all the Ok
elements
and another list of all the Err
elements. Read moreยงfn into_group_map<K, V>(self) -> HashMap<K, Vec<V>>
fn into_group_map<K, V>(self) -> HashMap<K, Vec<V>>
Return a
HashMap
of keys mapped to Vec
s of values. Keys and values
are taken from (Key, Value)
tuple pairs yielded by the input iterator. Read moreยงfn into_group_map_by<K, V, F>(self, f: F) -> HashMap<K, Vec<V>>
fn into_group_map_by<K, V, F>(self, f: F) -> HashMap<K, Vec<V>>
Return a
HashMap
of keys mapped to Vec
s of values. The key is specified
in the closure. The values are taken from the input iterator. Read moreยงfn into_grouping_map<K, V>(self) -> GroupingMap<Self>
fn into_grouping_map<K, V>(self) -> GroupingMap<Self>
Constructs a
GroupingMap
to be used later with one of the efficient
group-and-fold operations it allows to perform. Read moreยงfn into_grouping_map_by<K, V, F>(
self,
key_mapper: F,
) -> GroupingMap<MapSpecialCase<Self, GroupingMapFn<F>>>
fn into_grouping_map_by<K, V, F>( self, key_mapper: F, ) -> GroupingMap<MapSpecialCase<Self, GroupingMapFn<F>>>
Constructs a
GroupingMap
to be used later with one of the efficient
group-and-fold operations it allows to perform. Read moreยงfn min_set_by<F>(self, compare: F) -> Vec<Self::Item>
fn min_set_by<F>(self, compare: F) -> Vec<Self::Item>
Return all minimum elements of an iterator, as determined by
the specified function. Read more
ยงfn min_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
fn min_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
Return all minimum elements of an iterator, as determined by
the specified function. Read more
ยงfn max_set_by<F>(self, compare: F) -> Vec<Self::Item>
fn max_set_by<F>(self, compare: F) -> Vec<Self::Item>
Return all maximum elements of an iterator, as determined by
the specified function. Read more
ยงfn max_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
fn max_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
Return all maximum elements of an iterator, as determined by
the specified function. Read more
ยงfn minmax(self) -> MinMaxResult<Self::Item>
fn minmax(self) -> MinMaxResult<Self::Item>
Return the minimum and maximum elements in the iterator. Read more
ยงfn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item>
fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item>
Return the minimum and maximum element of an iterator, as determined by
the specified function. Read more
ยงfn minmax_by<F>(self, compare: F) -> MinMaxResult<Self::Item>
fn minmax_by<F>(self, compare: F) -> MinMaxResult<Self::Item>
Return the minimum and maximum element of an iterator, as determined by
the specified comparison function. Read more
ยงfn position_max(self) -> Option<usize>
fn position_max(self) -> Option<usize>
Return the position of the maximum element in the iterator. Read more
ยงfn position_max_by_key<K, F>(self, key: F) -> Option<usize>
fn position_max_by_key<K, F>(self, key: F) -> Option<usize>
Return the position of the maximum element in the iterator, as
determined by the specified function. Read more
ยงfn position_max_by<F>(self, compare: F) -> Option<usize>
fn position_max_by<F>(self, compare: F) -> Option<usize>
Return the position of the maximum element in the iterator, as
determined by the specified comparison function. Read more
ยงfn position_min(self) -> Option<usize>
fn position_min(self) -> Option<usize>
Return the position of the minimum element in the iterator. Read more
ยงfn position_min_by_key<K, F>(self, key: F) -> Option<usize>
fn position_min_by_key<K, F>(self, key: F) -> Option<usize>
Return the position of the minimum element in the iterator, as
determined by the specified function. Read more
ยงfn position_min_by<F>(self, compare: F) -> Option<usize>
fn position_min_by<F>(self, compare: F) -> Option<usize>
Return the position of the minimum element in the iterator, as
determined by the specified comparison function. Read more
ยงfn position_minmax(self) -> MinMaxResult<usize>
fn position_minmax(self) -> MinMaxResult<usize>
Return the positions of the minimum and maximum elements in
the iterator. Read more
ยงfn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize>
fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize>
Return the postions of the minimum and maximum elements of an
iterator, as determined by the specified function. Read more
ยงfn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize>
fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize>
Return the postions of the minimum and maximum elements of an
iterator, as determined by the specified comparison function. Read more
ยงfn exactly_one(self) -> Result<Self::Item, ExactlyOneError<Self>>where
Self: Sized,
fn exactly_one(self) -> Result<Self::Item, ExactlyOneError<Self>>where
Self: Sized,
If the iterator yields exactly one element, that element will be returned, otherwise
an error will be returned containing an iterator that has the same output as the input
iterator. Read more
ยงfn at_most_one(self) -> Result<Option<Self::Item>, ExactlyOneError<Self>>where
Self: Sized,
fn at_most_one(self) -> Result<Option<Self::Item>, ExactlyOneError<Self>>where
Self: Sized,
If the iterator yields no elements,
Ok(None)
will be returned. If the iterator yields
exactly one element, that element will be returned, otherwise an error will be returned
containing an iterator that has the same output as the input iterator. Read moreยงfn multipeek(self) -> MultiPeek<Self> โwhere
Self: Sized,
fn multipeek(self) -> MultiPeek<Self> โwhere
Self: Sized,
An iterator adaptor that allows the user to peek at multiple
.next()
values without advancing the base iterator. Read moreยงfn counts(self) -> HashMap<Self::Item, usize>
fn counts(self) -> HashMap<Self::Item, usize>
Collect the items in this iterator and return a
HashMap
which
contains each item that appears in the iterator and the number
of times it appears. Read moreยงfn counts_by<K, F>(self, f: F) -> HashMap<K, usize>
fn counts_by<K, F>(self, f: F) -> HashMap<K, usize>
Collect the items in this iterator and return a
HashMap
which
contains each item that appears in the iterator and the number
of times it appears,
determining identity using a keying function. Read moreยงfn multiunzip<FromI>(self) -> FromIwhere
Self: Sized + MultiUnzip<FromI>,
fn multiunzip<FromI>(self) -> FromIwhere
Self: Sized + MultiUnzip<FromI>,
Converts an iterator of tuples into a tuple of containers. Read more
ยงimpl<IT> MultiUnzip<()> for IT
impl<IT> MultiUnzip<()> for IT
ยงfn multiunzip(self)
fn multiunzip(self)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA> MultiUnzip<(FromA,)> for IT
impl<IT, A, FromA> MultiUnzip<(FromA,)> for IT
ยงfn multiunzip(self) -> (FromA,)
fn multiunzip(self) -> (FromA,)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB> MultiUnzip<(FromA, FromB)> for IT
impl<IT, A, FromA, B, FromB> MultiUnzip<(FromA, FromB)> for IT
ยงfn multiunzip(self) -> (FromA, FromB)
fn multiunzip(self) -> (FromA, FromB)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC> MultiUnzip<(FromA, FromB, FromC)> for IT
impl<IT, A, FromA, B, FromB, C, FromC> MultiUnzip<(FromA, FromB, FromC)> for IT
ยงfn multiunzip(self) -> (FromA, FromB, FromC)
fn multiunzip(self) -> (FromA, FromB, FromC)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD> MultiUnzip<(FromA, FromB, FromC, FromD)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD> MultiUnzip<(FromA, FromB, FromC, FromD)> for IT
ยงfn multiunzip(self) -> (FromA, FromB, FromC, FromD)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE> MultiUnzip<(FromA, FromB, FromC, FromD, FromE)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE> MultiUnzip<(FromA, FromB, FromC, FromD, FromE)> for IT
ยงfn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF)> for IT
ยงfn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG)> for IT
ยงfn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)> for IT
ยงfn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
ยงfn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
ยงfn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
ยงfn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)
Unzip this iterator into multiple collections.
ยงimpl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK, L, FromL> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K, L)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
FromL: Default + Extend<L>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK, L, FromL> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K, L)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
FromL: Default + Extend<L>,
ยงfn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)
Unzip this iterator into multiple collections.
ยงimpl<T> Pointable for T
impl<T> Pointable for T
ยงimpl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
ยงfn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy
that returns Action::Follow
only if self
and other
return
Action::Follow
. Read moreยงimpl<T, U> RamaTryInto<U> for Twhere
U: RamaTryFrom<T>,
impl<T, U> RamaTryInto<U> for Twhere
U: RamaTryFrom<T>,
type Error = <U as RamaTryFrom<T>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T>>::Error>
ยงimpl<T, U> RamaTryInto<U> for Twhere
U: RamaTryFrom<T>,
impl<T, U> RamaTryInto<U> for Twhere
U: RamaTryFrom<T>,
type Error = <U as RamaTryFrom<T>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T>>::Error>
ยงimpl<I> UnicodeNormalization<I> for I
impl<I> UnicodeNormalization<I> for I
ยงfn nfd(self) -> Decompositions<I> โ
fn nfd(self) -> Decompositions<I> โ
Returns an iterator over the string in Unicode Normalization Form D
(canonical decomposition).
ยงfn nfkd(self) -> Decompositions<I> โ
fn nfkd(self) -> Decompositions<I> โ
Returns an iterator over the string in Unicode Normalization Form KD
(compatibility decomposition).
ยงfn nfc(self) -> Recompositions<I> โ
fn nfc(self) -> Recompositions<I> โ
An Iterator over the string in Unicode Normalization Form C
(canonical decomposition followed by canonical composition).
ยงfn nfkc(self) -> Recompositions<I> โ
fn nfkc(self) -> Recompositions<I> โ
An Iterator over the string in Unicode Normalization Form KC
(compatibility decomposition followed by canonical composition).
ยงfn cjk_compat_variants(self) -> Replacements<I> โ
fn cjk_compat_variants(self) -> Replacements<I> โ
A transformation which replaces CJK Compatibility Ideograph codepoints
with normal forms using Standardized Variation Sequences. This is not
part of the canonical or compatibility decomposition algorithms, but
performing it before those algorithms produces normalized output which
better preserves the intent of the original text. Read more
ยงfn stream_safe(self) -> StreamSafe<I> โ
fn stream_safe(self) -> StreamSafe<I> โ
An Iterator over the string with Conjoining Grapheme Joiner characters
inserted according to the Stream-Safe Text Process (UAX15-D4)