[][src]Trait amadeus_core::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 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 SumReducer<A, B> where
    A: 'static,
    B: Sum<A> + Sum + ProcessSend
[src]

type Output = B

impl<A, B, F> ReducerA for CombineReducer<A, B, F> where
    A: 'static,
    Option<B>: From<A>,
    F: Combiner<B> + ProcessSend,
    B: ProcessSend
[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,
    ID: FnMut() -> B + Clone + ProcessSend,
    F: FnMut(B, Either<A, B>) -> B + Clone + ProcessSend,
    B: ProcessSend
[src]

type Output = B

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

type Output = T

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

type Output = (A::Output,)

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

type Output = (A::Output, B::Output)

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

type Output = (A::Output, B::Output, C::Output)

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

type Output = (A::Output, B::Output, C::Output, D::Output)

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

type Output = (A::Output, B::Output, C::Output, D::Output, E::Output)

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

type Output = (A::Output, B::Output, C::Output, D::Output, E::Output, F::Output)

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

type Output = (A::Output, B::Output, C::Output, D::Output, E::Output, F::Output, G::Output)

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

type Output = (A::Output, B::Output, C::Output, D::Output, E::Output, F::Output, G::Output, H::Output)

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

type Output = B

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

type Output = Option<R::Output>

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

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

Loading content...