Skip to main content

IntoIter

Struct IntoIter 

1.0.0 ยท Source
pub struct IntoIter<A> { /* private fields */ }
Expand description

An iterator over the value in Some variant of an Option.

The iterator yields one value if the Option is a Some, otherwise none.

This struct is created by the Option::into_iter function.

Trait Implementationsยง

1.0.0 ยท Sourceยง

impl<A> Clone for IntoIter<A>
where A: Clone,

Sourceยง

fn clone(&self) -> IntoIter<A> โ“˜

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
1.0.0 ยท Sourceยง

impl<A> Debug for IntoIter<A>
where A: Debug,

Sourceยง

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
1.0.0 ยท Sourceยง

impl<A> DoubleEndedIterator for IntoIter<A>

Sourceยง

fn next_back(&mut self) -> Option<A>

Removes and returns an element from the end of the iterator. Read more
Sourceยง

fn next_chunk_back<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 #98326)
Advances from the back of the iterator and returns an array containing the next N values in sequence. Read more
Sourceยง

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZero<usize>>

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_advance_by #77404)
Advances the iterator from the back by n elements. Read more
1.37.0 (const: unstable) ยท Sourceยง

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 (const: unstable) ยท Sourceยง

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> R
where Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes elements starting from the back of the iterator. Read more
1.27.0 (const: unstable) ยท Sourceยง

fn rfold<B, F>(self, init: B, f: F) -> B
where Self: Sized, F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iteratorโ€™s elements to a single, final value, starting from the back. Read more
1.27.0 (const: unstable) ยท Sourceยง

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>
where Self: Sized, P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
1.0.0 ยท Sourceยง

impl<A> ExactSizeIterator for IntoIter<A>

1.0.0 ยท Sourceยง

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
Sourceยง

fn is_empty(&self) -> bool

๐Ÿ”ฌThis is a nightly-only experimental API. (exact_size_is_empty #35428)
Returns true if the iterator is empty. Read more
1.26.0 ยท Sourceยง

impl<A> FusedIterator for IntoIter<A>

1.0.0 (const: unstable) ยท Sourceยง

impl<A> Iterator for IntoIter<A>

Sourceยง

type Item = A

The type of the elements being iterated over.
Sourceยง

fn next(&mut self) -> Option<A>

Advances the iterator and returns the next value. Read more
Sourceยง

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
Sourceยง

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 #98326)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn count(self) -> usize
where Self: Sized,

Consumes the iterator, counting the number of iterations and returning it. Read more
1.0.0 (const: unstable) ยท Sourceยง

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>>

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_advance_by #77404)
Advances the iterator by n elements. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn nth(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element of the iterator. Read more
1.28.0 (const: unstable) ยท Sourceยง

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 (const: unstable) ยท Sourceยง

fn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter> โ“˜
where Self: Sized, U: IntoIterator<Item = Self::Item>,

Takes two iterators and creates a new iterator over both in sequence. Read more
1.0.0 (const: unstable) ยท Sourceยง

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> โ“˜
where Self: Sized, Self::Item: Clone,

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_intersperse #79524)
Creates a new iterator which places a copy of separator between items of the original iterator. Read more
Sourceยง

fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> โ“˜
where Self: Sized, G: FnMut() -> Self::Item,

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_intersperse #79524)
Creates a new iterator which places an item generated by separator between items of the original iterator. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn map<B, F>(self, f: F) -> Map<Self, F> โ“˜
where Self: Sized, F: FnMut(Self::Item) -> B,

Takes a closure and creates an iterator which calls that closure on each element. Read more
1.21.0 (const: unstable) ยท Sourceยง

fn for_each<F>(self, f: F)
where Self: Sized, F: FnMut(Self::Item),

Calls a closure on each element of an iterator. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn filter<P>(self, predicate: P) -> Filter<Self, P> โ“˜
where Self: Sized, P: FnMut(&Self::Item) -> bool,

Creates an iterator which uses a closure to determine if an element should be yielded. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F> โ“˜
where Self: Sized, F: FnMut(Self::Item) -> Option<B>,

Creates an iterator that both filters and maps. Read more
1.0.0 (const: unstable) ยท Sourceยง

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 (const: unstable) ยท Sourceยง

fn peekable(self) -> Peekable<Self> โ“˜
where Self: Sized,

Creates an iterator which can use the peek and peek_mut methods to look at the next element of the iterator without consuming it. See their documentation for more information. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P> โ“˜
where Self: Sized, P: FnMut(&Self::Item) -> bool,

Creates an iterator that skips elements based on a predicate. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P> โ“˜
where Self: Sized, P: FnMut(&Self::Item) -> bool,

Creates an iterator that yields elements based on a predicate. Read more
1.57.0 (const: unstable) ยท Sourceยง

fn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P> โ“˜
where Self: Sized, P: FnMut(Self::Item) -> Option<B>,

Creates an iterator that both yields elements based on a predicate and maps. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn skip(self, n: usize) -> Skip<Self> โ“˜
where Self: Sized,

Creates an iterator that skips the first n elements. Read more
1.0.0 (const: unstable) ยท Sourceยง

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 more
1.0.0 (const: unstable) ยท Sourceยง

fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F> โ“˜
where Self: Sized, F: FnMut(&mut St, Self::Item) -> Option<B>,

An iterator adapter which, like fold, holds internal state, but unlike fold, produces a new iterator. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F> โ“˜
where Self: Sized, U: IntoIterator, F: FnMut(Self::Item) -> U,

Creates an iterator that works like map, but flattens nested structure. Read more
1.29.0 (const: unstable) ยท Sourceยง

fn flatten(self) -> Flatten<Self> โ“˜
where Self: Sized, Self::Item: IntoIterator,

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> โ“˜
where Self: Sized, F: FnMut(&[Self::Item; N]) -> R,

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_map_windows #87155)
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 more
1.0.0 (const: unstable) ยท Sourceยง

fn fuse(self) -> Fuse<Self> โ“˜
where Self: Sized,

Creates an iterator which ends after the first None. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn inspect<F>(self, f: F) -> Inspect<Self, F> โ“˜
where Self: Sized, F: FnMut(&Self::Item),

Does something with each element of an iterator, passing the value on. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a โ€œby referenceโ€ adapter for this instance of Iterator. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn collect<B>(self) -> B
where B: FromIterator<Self::Item>, Self: Sized,

Transforms an iterator into a collection. Read more
Sourceยง

fn try_collect<B>( &mut self, ) -> <<Self::Item as Try>::Residual as Residual<B>>::TryType
where Self: Sized, Self::Item: Try, <Self::Item as Try>::Residual: Residual<B>, B: FromIterator<<Self::Item as Try>::Output>,

๐Ÿ”ฌThis is a nightly-only experimental API. (iterator_try_collect #94047)
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
where E: Extend<Self::Item>, Self: Sized,

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_collect_into #94780)
Collects all the items from an iterator into a collection. Read more
1.0.0 (const: unstable) ยท Sourceยง

fn partition<B, F>(self, f: F) -> (B, B)
where Self: Sized, B: Default + Extend<Self::Item>, F: FnMut(&Self::Item) -> bool,

Consumes an iterator, creating two collections from it. Read more
Sourceยง

fn partition_in_place<'a, T, P>(self, predicate: P) -> usize
where T: 'a, Self: Sized + DoubleEndedIterator<Item = &'a mut T>, P: FnMut(&T) -> bool,

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_partition_in_place #62543)
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 more
Sourceยง

fn is_partitioned<P>(self, predicate: P) -> bool
where Self: Sized, P: FnMut(Self::Item) -> bool,

๐Ÿ”ฌThis is a nightly-only experimental API. (iter_is_partitioned #62544)
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 more
1.27.0 (const: unstable) ยท Sourceยง

fn try_fold<B, F, R>(&mut self, init: B, f: F) -> R
where Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

An iterator method that applies a function as long as it returns successfully, producing a single, final value. Read more
1.27.0 (const: unstable) ยท Sourceยง

fn try_for_each<F, R>(&mut self, f: F) -> R
where Self: Sized, F: FnMut(Self::Item) -> R, R: Try<Output = ()>,

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 (const: unstable) ยท Sourceยง

fn fold<B, F>(self, init: B, f: F) -> B
where Self: Sized, F: FnMut(B, Self::Item) -> B,

Folds every element into an accumulator by applying an operation, returning the final result. Read more
1.51.0 (const: unstable) ยท Sourceยง

fn reduce<F>(self, f: F) -> Option<Self::Item>
where Self: Sized, F: FnMut(Self::Item, Self::Item) -> Self::