[][src]Trait amadeus_core::par_pipe::PipeTaskAsync

#[must_use]pub trait PipeTaskAsync<Source> {
    type Item;
    fn poll_run(
        self: Pin<&mut Self>,
        cx: &mut Context,
        stream: Pin<&mut impl Stream<Item = Source>>,
        sink: Pin<&mut impl Sink<Item = Self::Item>>
    ) -> Poll<()>; }

Associated Types

type Item

Loading content...

Required methods

fn poll_run(
    self: Pin<&mut Self>,
    cx: &mut Context,
    stream: Pin<&mut impl Stream<Item = Source>>,
    sink: Pin<&mut impl Sink<Item = Self::Item>>
) -> Poll<()>

Loading content...

Implementations on Foreign Types

impl<P, Source> PipeTaskAsync<Source> for Pin<P> where
    P: DerefMut + Unpin,
    P::Target: PipeTaskAsync<Source>, 
[src]

type Item = <P::Target as PipeTaskAsync<Source>>::Item

impl<'_, T: ?Sized, Source> PipeTaskAsync<Source> for &'_ mut T where
    T: PipeTaskAsync<Source> + Unpin
[src]

type Item = T::Item

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

type Item = A::Item

Loading content...

Implementors

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

type Item = T

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

type Item = B::Item

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

type Item = C::Item

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

type Item = R

impl<C: PipeTaskAsync<Source>, F, R: Stream, Source> PipeTaskAsync<Source> for FlatMapStreamTaskAsync<C, F, R> where
    F: FnMut(<C as PipeTaskAsync<Source>>::Item) -> R + Clone
[src]

type Item = R::Item

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

type Item = C::Item

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

type Item = C::Item

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

type Item = Item

impl<Source> PipeTaskAsync<Source> for AsyncTuple0<Source> where
    Source: , 
[src]

type Item = Sum0

impl<Source, C0: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple1<Source, C0> where
    Source: , 
[src]

type Item = Sum1<C0::Item>

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple2<Source, C0, C1> where
    Source: Copy
[src]

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

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>, C2: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple3<Source, C0, C1, C2> where
    Source: Copy
[src]

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

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>, C2: PipeTaskAsync<Source>, C3: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple4<Source, C0, C1, C2, C3> where
    Source: Copy
[src]

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

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>, C2: PipeTaskAsync<Source>, C3: PipeTaskAsync<Source>, C4: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple5<Source, C0, C1, C2, C3, C4> where
    Source: Copy
[src]

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

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>, C2: PipeTaskAsync<Source>, C3: PipeTaskAsync<Source>, C4: PipeTaskAsync<Source>, C5: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple6<Source, 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>

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>, C2: PipeTaskAsync<Source>, C3: PipeTaskAsync<Source>, C4: PipeTaskAsync<Source>, C5: PipeTaskAsync<Source>, C6: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple7<Source, 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>

impl<Source, C0: PipeTaskAsync<Source>, C1: PipeTaskAsync<Source>, C2: PipeTaskAsync<Source>, C3: PipeTaskAsync<Source>, C4: PipeTaskAsync<Source>, C5: PipeTaskAsync<Source>, C6: PipeTaskAsync<Source>, C7: PipeTaskAsync<Source>> PipeTaskAsync<Source> for AsyncTuple8<Source, 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>

Loading content...