Enum stry_common::utils::iter::ChainIfElse[][src]

pub enum ChainIfElse<O, I, E> where
    O: IntoIterator,
    I: IntoIterator<Item = O::Item>,
    E: IntoIterator<Item = O::Item>, 
{ If(O::IntoIter, I::IntoIter), Else(O::IntoIter, E::IntoIter), }

An iterator that conditionally chains together other iterators.

This enum is created by the IteratorExt::chain_if_else and IteratorExt::chain_if_else_with functions.

Variants

If(O::IntoIter, I::IntoIter)
Else(O::IntoIter, E::IntoIter)

Trait Implementations

impl<O, I, E> Iterator for ChainIfElse<O, I, E> where
    O: IntoIterator,
    I: IntoIterator<Item = O::Item>,
    E: IntoIterator<Item = O::Item>, 
[src]

type Item = O::Item

The type of the elements being iterated over.

Auto Trait Implementations

impl<O, I, E> RefUnwindSafe for ChainIfElse<O, I, E> where
    <E as IntoIterator>::IntoIter: RefUnwindSafe,
    <I as IntoIterator>::IntoIter: RefUnwindSafe,
    <O as IntoIterator>::IntoIter: RefUnwindSafe

impl<O, I, E> Send for ChainIfElse<O, I, E> where
    <E as IntoIterator>::IntoIter: Send,
    <I as IntoIterator>::IntoIter: Send,
    <O as IntoIterator>::IntoIter: Send

impl<O, I, E> Sync for ChainIfElse<O, I, E> where
    <E as IntoIterator>::IntoIter: Sync,
    <I as IntoIterator>::IntoIter: Sync,
    <O as IntoIterator>::IntoIter: Sync

impl<O, I, E> Unpin for ChainIfElse<O, I, E> where
    <E as IntoIterator>::IntoIter: Unpin,
    <I as IntoIterator>::IntoIter: Unpin,
    <O as IntoIterator>::IntoIter: Unpin

impl<O, I, E> UnwindSafe for ChainIfElse<O, I, E> where
    <E as IntoIterator>::IntoIter: UnwindSafe,
    <I as IntoIterator>::IntoIter: UnwindSafe,
    <O as IntoIterator>::IntoIter: UnwindSafe

Blanket Implementations

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

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

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

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

impl<T, U> Into<U> for T where
    U: From<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<I> IteratorRandom for I where
    I: Iterator
[src]

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<V, T> VZip<V> for T where
    V: MultiLane<T>,