[][src]Struct itertools::structs::ExactlyOneError

pub struct ExactlyOneError<I> where
    I: Iterator
{ /* fields omitted */ }

Iterator returned for the error case of IterTools::exactly_one() This iterator yields exactly the same elements as the input iterator.

During the execution of exactly_one the iterator must be mutated. This wrapper effectively "restores" the state of the input iterator when it's handed back.

This is very similar to PutBackN except this iterator only supports 0-2 elements and does not use a Vec.

Trait Implementations

impl<I> Iterator for ExactlyOneError<I> where
    I: Iterator
[src]

type Item = I::Item

The type of the elements being iterated over.

impl<I> ExactSizeIterator for ExactlyOneError<I> where
    I: ExactSizeIterator
[src]

impl<I: Clone> Clone for ExactlyOneError<I> where
    I: Iterator,
    I::Item: Clone,
    I::Item: Clone
[src]

impl<I: Debug> Debug for ExactlyOneError<I> where
    I: Iterator,
    I::Item: Debug,
    I::Item: Debug
[src]

Auto Trait Implementations

impl<I> Send for ExactlyOneError<I> where
    I: Send,
    <I as Iterator>::Item: Send

impl<I> Sync for ExactlyOneError<I> where
    I: Sync,
    <I as Iterator>::Item: Sync

impl<I> Unpin for ExactlyOneError<I> where
    I: Unpin,
    <I as Iterator>::Item: Unpin

impl<I> UnwindSafe for ExactlyOneError<I> where
    I: UnwindSafe,
    <I as Iterator>::Item: UnwindSafe

impl<I> RefUnwindSafe for ExactlyOneError<I> where
    I: RefUnwindSafe,
    <I as Iterator>::Item: RefUnwindSafe

Blanket Implementations

impl<T> Itertools for T where
    T: Iterator + ?Sized
[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]