[][src]Trait amadeus_core::par_pipe::PipeTask

#[must_use]pub trait PipeTask<Input> {
    type Output;
    type Async: Pipe<Input, Output = Self::Output>;
    fn into_async(self) -> Self::Async;
}

Associated Types

type Output

type Async: Pipe<Input, Output = Self::Output>

Loading content...

Required methods

fn into_async(self) -> Self::Async

Loading content...

Implementations on Foreign Types

impl<Input> PipeTask<Input> for () where
    Input: , 
[src]

type Output = Sum0

type Async = AsyncTuple0<Input>

impl<Input, C0: PipeTask<Input>> PipeTask<Input> for (C0,) where
    Input: , 
[src]

type Output = Sum1<C0::Output>

type Async = AsyncTuple1<Input, C0::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>> PipeTask<Input> for (C0, C1) where
    Input: Copy
[src]

type Output = Sum2<C0::Output, C1::Output>

type Async = AsyncTuple2<Input, C0::Async, C1::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>, C2: PipeTask<Input>> PipeTask<Input> for (C0, C1, C2) where
    Input: Copy
[src]

type Output = Sum3<C0::Output, C1::Output, C2::Output>

type Async = AsyncTuple3<Input, C0::Async, C1::Async, C2::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>, C2: PipeTask<Input>, C3: PipeTask<Input>> PipeTask<Input> for (C0, C1, C2, C3) where
    Input: Copy
[src]

type Output = Sum4<C0::Output, C1::Output, C2::Output, C3::Output>

type Async = AsyncTuple4<Input, C0::Async, C1::Async, C2::Async, C3::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>, C2: PipeTask<Input>, C3: PipeTask<Input>, C4: PipeTask<Input>> PipeTask<Input> for (C0, C1, C2, C3, C4) where
    Input: Copy
[src]

type Output = Sum5<C0::Output, C1::Output, C2::Output, C3::Output, C4::Output>

type Async = AsyncTuple5<Input, C0::Async, C1::Async, C2::Async, C3::Async, C4::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>, C2: PipeTask<Input>, C3: PipeTask<Input>, C4: PipeTask<Input>, C5: PipeTask<Input>> PipeTask<Input> for (C0, C1, C2, C3, C4, C5) where
    Input: Copy
[src]

type Output = Sum6<C0::Output, C1::Output, C2::Output, C3::Output, C4::Output, C5::Output>

type Async = AsyncTuple6<Input, C0::Async, C1::Async, C2::Async, C3::Async, C4::Async, C5::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>, C2: PipeTask<Input>, C3: PipeTask<Input>, C4: PipeTask<Input>, C5: PipeTask<Input>, C6: PipeTask<Input>> PipeTask<Input> for (C0, C1, C2, C3, C4, C5, C6) where
    Input: Copy
[src]

type Output = Sum7<C0::Output, C1::Output, C2::Output, C3::Output, C4::Output, C5::Output, C6::Output>

type Async = AsyncTuple7<Input, C0::Async, C1::Async, C2::Async, C3::Async, C4::Async, C5::Async, C6::Async>

impl<Input, C0: PipeTask<Input>, C1: PipeTask<Input>, C2: PipeTask<Input>, C3: PipeTask<Input>, C4: PipeTask<Input>, C5: PipeTask<Input>, C6: PipeTask<Input>, C7: PipeTask<Input>> PipeTask<Input> for (C0, C1, C2, C3, C4, C5, C6, C7) where
    Input: Copy
[src]

type Output = Sum8<C0::Output, C1::Output, C2::Output, C3::Output, C4::Output, C5::Output, C6::Output, C7::Output>

type Async = AsyncTuple8<Input, C0::Async, C1::Async, C2::Async, C3::Async, C4::Async, C5::Async, C6::Async, C7::Async>

impl<A: PipeTask<Input>, B: PipeTask<Input, Output = A::Output>, Input> PipeTask<Input> for Sum2<A, B>[src]

type Output = A::Output

type Async = Sum2<A::Async, B::Async>

Loading content...

Implementors

impl<'a, C, Input, T: 'a> PipeTask<&'a Input> for ClonedTask<C> where
    C: PipeTask<&'a Input, Output = &'a T>,
    T: Clone
[src]

type Output = T

type Async = ClonedTask<C::Async>

impl<C: PipeTask<Input>, F, Input> PipeTask<Input> for FilterTask<C, F> where
    F: for<'a> FnMut<(&'a C::Output,), Output = bool>, 
[src]

type Output = C::Output

type Async = Filter<C::Async, F>

impl<C: PipeTask<Input>, F, Input> PipeTask<Input> for InspectTask<C, F> where
    F: for<'a> FnMut<(&'a C::Output,), Output = ()> + Clone
[src]

type Output = C::Output

type Async = InspectTask<C::Async, F>

impl<C: PipeTask<Input>, F, Input> PipeTask<Input> for UpdateTask<C, F> where
    F: for<'a> FnMut<(&'a mut <C as PipeTask<Input>>::Output,), Output = ()> + Clone
[src]

type Output = C::Output

type Async = UpdateTask<C::Async, F>

impl<C: PipeTask<Input>, F, R, Input> PipeTask<Input> for MapTask<C, F> where
    F: FnMut<(C::Output,), Output = R> + Clone
[src]

type Output = R

type Async = Map<C::Async, F>

impl<C: PipeTask<Input>, F: FnMut<(C::Output,), Output = R> + Clone, R: Stream, Input> PipeTask<Input> for FlatMapTask<C, F>[src]

type Output = R::Item

type Async = FlatMap<C::Async, F, R>

impl<Item> PipeTask<Item> for IdentityTask[src]

type Output = Item

type Async = IdentityTask

Loading content...