[][src]Trait amadeus::par_sink::ReducerAsync

#[must_use]pub trait ReducerAsync<Source>: Sink<Source> {
    type Output;
    fn output(
        self: Pin<&'a mut Self>
    ) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>; }

Associated Types

type Output

Loading content...

Required methods

fn output(
    self: Pin<&'a mut Self>
) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>

Loading content...

Implementations on Foreign Types

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

type Output = <<P as Deref>::Target as ReducerAsync<Source>>::Output

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

type Output = <T as ReducerAsync<Source>>::Output

Loading content...

Implementors

impl ReducerAsync<Sum0> for ReduceA0Async[src]

type Output = ()

impl ReducerAsync<bool> for BoolAndReducerAsync[src]

type Output = bool

impl ReducerAsync<bool> for BoolOrReducerAsync[src]

type Output = bool

impl ReducerAsync<()> for ReduceC0Async[src]

type Output = ()

impl<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7> ReducerAsync<Sum8<S0, S1, S2, S3, S4, S5, S6, S7>> for ReduceA8Async<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>,
    F: ReducerAsync<S5>,
    G: ReducerAsync<S6>,
    H: ReducerAsync<S7>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output, <F as ReducerAsync<S5>>::Output, <G as ReducerAsync<S6>>::Output, <H as ReducerAsync<S7>>::Output)

impl<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7> ReducerAsync<(S0, S1, S2, S3, S4, S5, S6, S7)> for ReduceC8Async<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>,
    F: ReducerAsync<S5>,
    G: ReducerAsync<S6>,
    H: ReducerAsync<S7>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output, <F as ReducerAsync<S5>>::Output, <G as ReducerAsync<S6>>::Output, <H as ReducerAsync<S7>>::Output)

impl<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6> ReducerAsync<Sum7<S0, S1, S2, S3, S4, S5, S6>> for ReduceA7Async<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>,
    F: ReducerAsync<S5>,
    G: ReducerAsync<S6>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output, <F as ReducerAsync<S5>>::Output, <G as ReducerAsync<S6>>::Output)

impl<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6> ReducerAsync<(S0, S1, S2, S3, S4, S5, S6)> for ReduceC7Async<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>,
    F: ReducerAsync<S5>,
    G: ReducerAsync<S6>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output, <F as ReducerAsync<S5>>::Output, <G as ReducerAsync<S6>>::Output)

impl<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5> ReducerAsync<Sum6<S0, S1, S2, S3, S4, S5>> for ReduceA6Async<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>,
    F: ReducerAsync<S5>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output, <F as ReducerAsync<S5>>::Output)

impl<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5> ReducerAsync<(S0, S1, S2, S3, S4, S5)> for ReduceC6Async<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>,
    F: ReducerAsync<S5>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output, <F as ReducerAsync<S5>>::Output)

impl<A, B, C, D, E, S0, S1, S2, S3, S4> ReducerAsync<Sum5<S0, S1, S2, S3, S4>> for ReduceA5Async<A, B, C, D, E, S0, S1, S2, S3, S4> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output)

impl<A, B, C, D, E, S0, S1, S2, S3, S4> ReducerAsync<(S0, S1, S2, S3, S4)> for ReduceC5Async<A, B, C, D, E, S0, S1, S2, S3, S4> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>,
    E: ReducerAsync<S4>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output, <E as ReducerAsync<S4>>::Output)

impl<A, B, C, D, S0, S1, S2, S3> ReducerAsync<Sum4<S0, S1, S2, S3>> for ReduceA4Async<A, B, C, D, S0, S1, S2, S3> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output)

impl<A, B, C, D, S0, S1, S2, S3> ReducerAsync<(S0, S1, S2, S3)> for ReduceC4Async<A, B, C, D, S0, S1, S2, S3> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>,
    D: ReducerAsync<S3>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output, <D as ReducerAsync<S3>>::Output)

impl<A, B, C, S0, S1, S2> ReducerAsync<Sum3<S0, S1, S2>> for ReduceA3Async<A, B, C, S0, S1, S2> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output)

impl<A, B, C, S0, S1, S2> ReducerAsync<(S0, S1, S2)> for ReduceC3Async<A, B, C, S0, S1, S2> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>,
    C: ReducerAsync<S2>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output, <C as ReducerAsync<S2>>::Output)

impl<A, B, S0, S1> ReducerAsync<Sum2<S0, S1>> for ReduceA2Async<A, B, S0, S1> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output)

impl<A, B, S0, S1> ReducerAsync<(S0, S1)> for ReduceC2Async<A, B, S0, S1> where
    A: ReducerAsync<S0>,
    B: ReducerAsync<S1>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output, <B as ReducerAsync<S1>>::Output)

impl<A, C> ReducerAsync<A> for FolderSyncReducerAsync<A, C, <C as FolderSync<A>>::Output> where
    C: FolderSync<A>, 
[src]

type Output = <C as FolderSync<A>>::Output

impl<A, F> ReducerAsync<A> for AllReducerAsync<A, F> where
    F: FnMut<(A,), Output = bool>, 
[src]

type Output = bool

impl<A, F> ReducerAsync<A> for AnyReducerAsync<A, F> where
    F: FnMut<(A,), Output = bool>, 
[src]

type Output = bool

impl<A, F> ReducerAsync<A> for ForEachReducer<A, F> where
    F: FnMut<(A,), Output = ()> + Clone
[src]

type Output = ()

impl<A, S0> ReducerAsync<Sum1<S0>> for ReduceA1Async<A, S0> where
    A: ReducerAsync<S0>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output,)

impl<A, S0> ReducerAsync<(S0,)> for ReduceC1Async<A, S0> where
    A: ReducerAsync<S0>, 
[src]

type Output = (<A as ReducerAsync<S0>>::Output,)

impl<A, T> ReducerAsync<A> for PushReducerAsync<A, T> where
    T: Extend<A>, 
[src]

type Output = T

impl<A, T, B> ReducerAsync<A> for ExtendReducerAsync<A, T> where
    A: IntoIterator<Item = B>,
    T: Extend<B>, 
[src]

type Output = T

impl<P, R, T, U> ReducerAsync<(T, U)> for GroupByReducerAAsync<P, R, <R as Reducer<<P as Pipe<U>>::Item>>::Async, T, U> where
    P: Pipe<U>,
    R: Reducer<<P as Pipe<U>>::Item> + Clone,
    T: Eq + Hash
[src]

type Output = HashMap<T, <R as Reducer<<P as Pipe<U>>::Item>>::Output, RandomState>

impl<R, E, Item> ReducerAsync<Result<Item, E>> for ResultReducerAsync<R, E> where
    R: ReducerAsync<Item>, 
[src]

type Output = Result<<R as ReducerAsync<Item>>::Output, E>

impl<R, Item> ReducerAsync<Option<Item>> for OptionReducerAsync<R> where
    R: ReducerAsync<Item>, 
[src]

type Output = Option<<R as ReducerAsync<Item>>::Output>

impl<R, T, Item> ReducerAsync<Item> for IntoReducerAsync<R, T> where
    R: ReducerAsync<Item>,
    <R as ReducerAsync<Item>>::Output: Into<T>, 
[src]

type Output = T

impl<R, T, U> ReducerAsync<HashMap<T, U, RandomState>> for GroupByReducerBAsync<R, <R as Reducer<U>>::Async, T, U> where
    R: Reducer<U> + Clone,
    T: Eq + Hash
[src]

type Output = HashMap<T, <R as Reducer<U>>::Output, RandomState>

Loading content...