[][src]Trait amadeus::dist_iter::ReducerA

pub trait ReducerA: Reducer<Output = Self::Output> + ProcessSend {
    type Output: ProcessSend;
}

Associated Types

Loading content...

Implementors

impl ReducerA for BoolAndReducer[src]

type Output = bool

impl ReducerA for BoolOrReducer[src]

type Output = bool

impl ReducerA for ReduceA0[src]

type Output = ()

impl<A> ReducerA for CountReducer<A> where
    A: 'static, 
[src]

type Output = usize

impl<A> ReducerA for MostFrequentReducer<A> where
    A: Clone + Hash + Eq + ProcessSend
[src]

type Output = Top<A, usize>

impl<A> ReducerA for ReduceA1<A> where
    A: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output,)

impl<A> ReducerA for SampleUnstableReducer<A> where
    A: ProcessSend
[src]

impl<A, B> ReducerA for MostDistinctReducer<A, B> where
    A: Clone + Hash + Eq + ProcessSend,
    B: Hash + 'static, 
[src]

impl<A, B> ReducerA for ReduceA2<A, B> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output)

impl<A, B> ReducerA for SumReducer<A, B> where
    A: 'static,
    B: Sum<A> + Sum<B> + ProcessSend
[src]

type Output = B

impl<A, B, C> ReducerA for ReduceA3<A, B, C> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    C: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend,
    <C as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output, <C as Reducer>::Output)

impl<A, B, C, D> ReducerA for ReduceA4<A, B, C, D> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    C: Reducer + ProcessSend,
    D: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend,
    <C as Reducer>::Output: ProcessSend,
    <D as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output, <C as Reducer>::Output, <D as Reducer>::Output)

impl<A, B, C, D, E> ReducerA for ReduceA5<A, B, C, D, E> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    C: Reducer + ProcessSend,
    D: Reducer + ProcessSend,
    E: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend,
    <C as Reducer>::Output: ProcessSend,
    <D as Reducer>::Output: ProcessSend,
    <E as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output, <C as Reducer>::Output, <D as Reducer>::Output, <E as Reducer>::Output)

impl<A, B, C, D, E, F> ReducerA for ReduceA6<A, B, C, D, E, F> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    C: Reducer + ProcessSend,
    D: Reducer + ProcessSend,
    E: Reducer + ProcessSend,
    F: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend,
    <C as Reducer>::Output: ProcessSend,
    <D as Reducer>::Output: ProcessSend,
    <E as Reducer>::Output: ProcessSend,
    <F as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output, <C as Reducer>::Output, <D as Reducer>::Output, <E as Reducer>::Output, <F as Reducer>::Output)

impl<A, B, C, D, E, F, G> ReducerA for ReduceA7<A, B, C, D, E, F, G> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    C: Reducer + ProcessSend,
    D: Reducer + ProcessSend,
    E: Reducer + ProcessSend,
    F: Reducer + ProcessSend,
    G: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend,
    <C as Reducer>::Output: ProcessSend,
    <D as Reducer>::Output: ProcessSend,
    <E as Reducer>::Output: ProcessSend,
    <F as Reducer>::Output: ProcessSend,
    <G as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output, <C as Reducer>::Output, <D as Reducer>::Output, <E as Reducer>::Output, <F as Reducer>::Output, <G as Reducer>::Output)

impl<A, B, C, D, E, F, G, H> ReducerA for ReduceA8<A, B, C, D, E, F, G, H> where
    A: Reducer + ProcessSend,
    B: Reducer + ProcessSend,
    C: Reducer + ProcessSend,
    D: Reducer + ProcessSend,
    E: Reducer + ProcessSend,
    F: Reducer + ProcessSend,
    G: Reducer + ProcessSend,
    H: Reducer + ProcessSend,
    <A as Reducer>::Output: ProcessSend,
    <B as Reducer>::Output: ProcessSend,
    <C as Reducer>::Output: ProcessSend,
    <D as Reducer>::Output: ProcessSend,
    <E as Reducer>::Output: ProcessSend,
    <F as Reducer>::Output: ProcessSend,
    <G as Reducer>::Output: ProcessSend,
    <H as Reducer>::Output: ProcessSend
[src]

type Output = (<A as Reducer>::Output, <B as Reducer>::Output, <C as Reducer>::Output, <D as Reducer>::Output, <E as Reducer>::Output, <F as Reducer>::Output, <G as Reducer>::Output, <H as Reducer>::Output)

impl<A, B, F> ReducerA for CombineReducer<A, B, F> where
    A: 'static,
    B: ProcessSend,
    F: Combiner<B> + ProcessSend,
    Option<B>: From<A>, 
[src]

type Output = Option<B>

impl<A, F> ReducerA for AllReducer<A, F> where
    A: 'static,
    F: FnMut(A) -> bool + ProcessSend
[src]

type Output = bool

impl<A, F> ReducerA for AnyReducer<A, F> where
    A: 'static,
    F: FnMut(A) -> bool + ProcessSend
[src]

type Output = bool

impl<A, F> ReducerA for ForEachReducer<A, F> where
    A: 'static,
    F: FnMut(A) + Clone + ProcessSend
[src]

type Output = ()

impl<A, ID, F, B> ReducerA for FoldReducerA<A, ID, F, B> where
    A: 'static,
    B: ProcessSend,
    F: FnMut(B, Either<A, B>) -> B + Clone + ProcessSend,
    ID: FnMut() -> B + Clone + ProcessSend
[src]

type Output = B

impl<A, T> ReducerA for PushReducer<A, T> where
    A: 'static,
    T: Push<A> + ProcessSend
[src]

type Output = T

impl<R> ReducerA for OptionReducer<R> where
    R: Reducer + ProcessSend,
    <R as Reducer>::Output: ProcessSend
[src]

type Output = Option<<R as Reducer>::Output>

impl<R, B> ReducerA for NonzeroReducer<R> where
    B: ProcessSend,
    R: Reducer<Output = Zeroable<B>> + ProcessSend
[src]

type Output = B

impl<R, E> ReducerA for ResultReducer<R, E> where
    E: ProcessSend,
    R: Reducer + ProcessSend,
    <R as Reducer>::Output: ProcessSend
[src]

type Output = Result<<R as Reducer>::Output, E>

Loading content...