pub struct AstChildren<'a, N> { /* private fields */ }Trait Implementations§
Source§impl<'a, N: Debug> Debug for AstChildren<'a, N>
 
impl<'a, N: Debug> Debug for AstChildren<'a, N>
Source§impl<'a, N: AstNode<'a>> Iterator for AstChildren<'a, N>
 
impl<'a, N: AstNode<'a>> Iterator for AstChildren<'a, N>
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 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
1.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 
nth 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.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 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.0.0 · 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
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 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 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
Auto Trait Implementations§
impl<'a, N> Freeze for AstChildren<'a, N>
impl<'a, N> !RefUnwindSafe for AstChildren<'a, N>
impl<'a, N> Send for AstChildren<'a, N>where
    N: Send,
impl<'a, N> Sync for AstChildren<'a, N>where
    N: Sync,
impl<'a, N> Unpin for AstChildren<'a, N>where
    N: Unpin,
impl<'a, N> !UnwindSafe for AstChildren<'a, N>
Blanket Implementations§
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> 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,
Source§impl<I> IteratorRandom for Iwhere
    I: Iterator,
 
impl<I> IteratorRandom for Iwhere
    I: Iterator,
Source§fn choose<R>(self, rng: &mut R) -> Option<Self::Item>
 
fn choose<R>(self, rng: &mut R) -> Option<Self::Item>
Choose one element at random from the iterator. If you have a slice,
it’s significantly faster to call the 
choose or choose_mut
functions using the slice instead. Read moreSource§impl<T> Itertools for T
 
impl<T> Itertools for T
Source§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
Source§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
Source§fn intersperse(self, element: Self::Item) -> Intersperse<Self>
 
fn intersperse(self, element: Self::Item) -> Intersperse<Self>
An iterator adaptor to insert a particular value
between each element of the adapted iterator. Read more
Source§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
Source§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
Source§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
Source§fn group_by<K, F>(self, key: F) -> GroupBy<K, Self, F>
 
fn group_by<K, F>(self, key: F) -> GroupBy<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
Source§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
Source§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 4). Read more
Source§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 4). Read more
Source§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
Source§fn step(self, n: usize) -> Step<Self>where
    Self: Sized,
 
fn step(self, n: usize) -> Step<Self>where
    Self: Sized,
Return an iterator adaptor that steps 
n elements in the base iterator
for each iteration. Read moreSource§fn map_results<F, T, U, E>(self, f: F) -> MapResults<Self, F>
 
fn map_results<F, T, U, E>(self, f: F) -> MapResults<Self, F>
Return an iterator adaptor that applies the provided closure
to every 
Result::Ok value. Result::Err values are
unchanged. Read moreSource§fn merge<J>(self, other: J) -> Merge<Self, <J as IntoIterator>::IntoIter>
 
fn merge<J>(self, other: J) -> Merge<Self, <J as IntoIterator>::IntoIter>
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
Source§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>
Return an iterator adaptor that merges the two base iterators in order.
This is much like 
.merge() but allows for a custom ordering. Read moreSource§fn merge_join_by<J, F>(
    self,
    other: J,
    cmp_fn: F,
) -> MergeJoinBy<Self, <J as IntoIterator>::IntoIter, F>
 
fn merge_join_by<J, F>( self, other: J, cmp_fn: F, ) -> MergeJoinBy<Self, <J as IntoIterator>::IntoIter, F>
Create an iterator that merges items from both this and the specified
iterator in ascending order. Read more
Source§fn kmerge(self) -> KMerge<<Self::Item as IntoIterator>::IntoIter>
 
fn kmerge(self) -> KMerge<<Self::Item as IntoIterator>::IntoIter>
Return an iterator adaptor that flattens an iterator of iterators by
merging them in ascending order. Read more
Source§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
Source§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 moreSource§fn multi_cartesian_product(
    self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter>where
    Self: Sized + Iterator,
    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 + Iterator,
    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 moreSource§fn coalesce<F>(self, f: F) -> Coalesce<Self, F>
 
fn coalesce<F>(self, f: F) -> Coalesce<Self, F>
Return an iterator adaptor that uses the passed-in closure to
optionally merge together consecutive elements. Read more
Source§fn dedup(self) -> Dedup<Self>
 
fn dedup(self) -> Dedup<Self>
Remove duplicates from sections of consecutive identical elements.
If the iterator is sorted, all elements will be unique. Read more
Source§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
Source§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
Source§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 moreSource§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 moreSource§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 moreSource§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
Source§fn combinations(self, n: usize) -> Combinations<Self>
 
fn combinations(self, n: usize) -> Combinations<Self>
Return an iterator adaptor that iterates over the 
n-length combinations of
the elements from an iterator. Read moreSource§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 moreSource§fn flatten(self) -> Flatten<Self, <Self::Item as IntoIterator>::IntoIter>
 
fn flatten(self) -> Flatten<Self, <Self::Item as IntoIterator>::IntoIter>
Flatten an iterator of iterables into a single combined sequence of all
the elements in the iterables. Read more
Source§fn with_position(self) -> WithPosition<Self>where
    Self: Sized,
 
fn with_position(self) -> WithPosition<Self>where
    Self: Sized,
Return an iterator adaptor that wraps each element in a 
Position to
ease special-case handling of the first or last elements. Read moreSource§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
Source§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
Source§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 4). Read more
Source§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 4). Read more
Source§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
Source§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 moreSource§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 moreSource§fn foreach<F>(self, f: F)
 
fn foreach<F>(self, f: F)
Run the closure 
f eagerly on each element of the iterator. Read moreSource§fn concat(self) -> Self::Item
 
fn concat(self) -> Self::Item
Combine all an iterator’s elements into one element by using 
Extend. Read moreSource§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 .collect(),
for convenience.Source§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 moreSource§fn join(&mut self, sep: &str) -> String
 
fn join(&mut self, sep: &str) -> String
Combine all iterator elements into one String, seperated by 
sep. Read moreSource§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 moreSource§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 moreSource§fn fold_results<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
 
fn fold_results<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
Fold 
Result values from an iterator. Read moreSource§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 moreSource§fn fold1<F>(self, f: F) -> Option<Self::Item>
 
fn fold1<F>(self, f: F) -> Option<Self::Item>
Accumulator of the elements in the iterator. Read more
Source§fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
 
fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
Accumulate the elements in the iterator in a tree-like manner. Read more
Source§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
Source§fn sorted(self) -> Vec<Self::Item>
 
fn sorted(self) -> Vec<Self::Item>
Collect all iterator elements into a sorted vector in ascending order. Read more
Source§fn sorted_by<F>(self, cmp: F) -> Vec<Self::Item>
 
fn sorted_by<F>(self, cmp: F) -> Vec<Self::Item>
Collect all iterator elements into a sorted vector. Read more
Source§fn sorted_by_key<K, F>(self, f: F) -> Vec<Self::Item>
 
fn sorted_by_key<K, F>(self, f: F) -> Vec<Self::Item>
Collect all iterator elements into a sorted vector. Read more
Source§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 moreSource§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 Vecs of values. Keys and values
are taken from (Key, Value) tuple pairs yielded by the input iterator. Read moreSource§fn minmax(self) -> MinMaxResult<Self::Item>
 
fn minmax(self) -> MinMaxResult<Self::Item>
Return the minimum and maximum elements in the iterator. Read more
Source§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