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

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

Associated Types

type Item

type Async: PipeTaskAsync<Source, Item = Self::Item>

Loading content...

Required methods

fn into_async(self) -> Self::Async

Loading content...

Implementations on Foreign Types

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

type Item = Sum0

type Async = AsyncTuple0<Source>

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

type Item = Sum1<C0::Item>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<A: PipeTask<Source>, B: PipeTask<Source, Item = A::Item>, Source> PipeTask<Source> for Sum2<A, B>[src]

type Item = A::Item

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

Loading content...

Implementors

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

type Item = T

type Async = ClonedTask<C::Async>

impl<A: PipeTask<Source>, B: PipeTask<A::Item>, Source> PipeTask<Source> for JoinTask<A, B>[src]

type Item = B::Item

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

impl<C: PipeTask<Source>, F, Fut, Source> PipeTask<Source> for FilterTask<C, F> where
    F: FnMut(&C::Item) -> Fut + Clone,
    Fut: Future<Output = bool>, 
[src]

type Item = C::Item

type Async = FilterStreamTaskAsync<C::Async, F, Self::Item, Fut>

impl<C: PipeTask<Source>, F, R, Source> PipeTask<Source> for MapTask<C, F> where
    F: FnMut(C::Item) -> R + Clone
[src]

type Item = R

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

impl<C: PipeTask<Source>, F, Source> PipeTask<Source> for InspectTask<C, F> where
    F: FnMut(&C::Item) + Clone
[src]

type Item = C::Item

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

impl<C: PipeTask<Source>, F, Source> PipeTask<Source> for UpdateTask<C, F> where
    F: FnMut(&mut <C as PipeTask<Source>>::Item) + Clone
[src]

type Item = C::Item

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

impl<C: PipeTask<Source>, F: FnMut(C::Item) -> R + Clone, R: Stream, Source> PipeTask<Source> for FlatMapTask<C, F>[src]

type Item = R::Item

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

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

type Item = Item

type Async = IdentityTask

Loading content...