pub struct SwitchBuild<Prev, Next1>
where Prev: PusheratorBuild, Next1: Pusherator,
{ /* private fields */ }

Implementations§

source§

impl<Prev, Next1, Item2> SwitchBuild<Prev, Next1>
where Prev: PusheratorBuild<ItemOut = Either<Next1::Item, Item2>>, Next1: Pusherator,

source

pub fn new(prev: Prev, next1: Next1) -> Self

Trait Implementations§

source§

impl<Prev, Next1, Item2> PusheratorBuild for SwitchBuild<Prev, Next1>
where Prev: PusheratorBuild<ItemOut = Either<Next1::Item, Item2>>, Next1: Pusherator,

§

type ItemOut = Item2

§

type Output<Next: Pusherator<Item = Self::ItemOut>> = <Prev as PusheratorBuild>::Output<Switch<Next1, Next>>

source§

fn push_to<Next>(self, input: Next) -> Self::Output<Next>
where Next: Pusherator<Item = Self::ItemOut>,

source§

fn map<Func, Out>(self, func: Func) -> MapBuild<Self, Func>
where Self: Sized, Func: FnMut(Self::ItemOut) -> Out,

source§

fn inspect<Func>(self, func: Func) -> InspectBuild<Self, Func>
where Self: Sized, Func: FnMut(&Self::ItemOut),

source§

fn filter<Func>(self, func: Func) -> FilterBuild<Self, Func>
where Self: Sized, Func: FnMut(&Self::ItemOut) -> bool,

source§

fn unzip<Next1, Item2>(self, next1: Next1) -> UnzipBuild<Self, Next1>
where Self: Sized + PusheratorBuild<ItemOut = (Next1::Item, Item2)>, Next1: Pusherator,

source§

fn switch<Next1, Item2>(self, next1: Next1) -> SwitchBuild<Self, Next1>
where Self: Sized + PusheratorBuild<ItemOut = Either<Next1::Item, Item2>>, Next1: Pusherator,

source§

fn for_each<Func>( self, func: Func ) -> Self::Output<ForEach<Func, Self::ItemOut>>
where Self: Sized, Func: FnMut(Self::ItemOut),

source§

fn demux<Func, Nexts>( self, func: Func, nexts: Nexts ) -> Self::Output<Demux<Func, Nexts, Self::ItemOut>>
where Self: Sized, Nexts: PusheratorList, Func: FnMut(Self::ItemOut, &mut Nexts),

Auto Trait Implementations§

§

impl<Prev, Next1> Freeze for SwitchBuild<Prev, Next1>
where Prev: Freeze, Next1: Freeze,

§

impl<Prev, Next1> RefUnwindSafe for SwitchBuild<Prev, Next1>
where Prev: RefUnwindSafe, Next1: RefUnwindSafe,

§

impl<Prev, Next1> Send for SwitchBuild<Prev, Next1>
where Prev: Send, Next1: Send,

§

impl<Prev, Next1> Sync for SwitchBuild<Prev, Next1>
where Prev: Sync, Next1: Sync,

§

impl<Prev, Next1> Unpin for SwitchBuild<Prev, Next1>
where Prev: Unpin, Next1: Unpin,

§

impl<Prev, Next1> UnwindSafe for SwitchBuild<Prev, Next1>
where Prev: UnwindSafe, Next1: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.