[−][src]Trait amadeus::FromDistributedStream
Associated Types
type ReduceAFactory: Factory + ProcessSend + Clone
type ReduceBFactory: Factory
type ReduceA: ReducerSend + Send
type ReduceB: ReducerProcessSend + ProcessSend
type ReduceC: Reducer
Required methods
fn reducers() -> (Self::ReduceAFactory, Self::ReduceBFactory, Self::ReduceC)
Implementations on Foreign Types
impl<T> FromDistributedStream<T> for VecDeque<T> where
T: ProcessSend + 'static,
[src]
T: ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<VecDeque<T> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<VecDeque<T> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, Vec<T>>
type ReduceB = ExtendReducer<Vec<T>, Vec<T>>
type ReduceC = IntoReducer<ExtendReducer<Vec<T>, Vec<T>>, VecDeque<T>>
fn reducers(
) -> (<VecDeque<T> as FromDistributedStream<T>>::ReduceAFactory, <VecDeque<T> as FromDistributedStream<T>>::ReduceBFactory, <VecDeque<T> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<VecDeque<T> as FromDistributedStream<T>>::ReduceAFactory, <VecDeque<T> as FromDistributedStream<T>>::ReduceBFactory, <VecDeque<T> as FromDistributedStream<T>>::ReduceC)
impl<T, C, E> FromDistributedStream<Result<T, E>> for Result<C, E> where
C: FromDistributedStream<T>,
E: ProcessSend + 'static,
[src]
C: FromDistributedStream<T>,
E: ProcessSend + 'static,
type ReduceAFactory = ResultReducerFactory<<C as FromDistributedStream<T>>::ReduceAFactory, E>
type ReduceBFactory = ResultReducerFactory<<C as FromDistributedStream<T>>::ReduceBFactory, E>
type ReduceA = ResultReducer<<C as FromDistributedStream<T>>::ReduceA, E>
type ReduceB = ResultReducer<<C as FromDistributedStream<T>>::ReduceB, E>
type ReduceC = ResultReducer<<C as FromDistributedStream<T>>::ReduceC, E>
fn reducers(
) -> (<Result<C, E> as FromDistributedStream<Result<T, E>>>::ReduceAFactory, <Result<C, E> as FromDistributedStream<Result<T, E>>>::ReduceBFactory, <Result<C, E> as FromDistributedStream<Result<T, E>>>::ReduceC)
[src]
) -> (<Result<C, E> as FromDistributedStream<Result<T, E>>>::ReduceAFactory, <Result<C, E> as FromDistributedStream<Result<T, E>>>::ReduceBFactory, <Result<C, E> as FromDistributedStream<Result<T, E>>>::ReduceC)
impl FromDistributedStream<char> for String
[src]
type ReduceAFactory = DefaultReducerFactory<<String as FromDistributedStream<char>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<String as FromDistributedStream<char>>::ReduceB>
type ReduceA = PushReducer<char, String>
type ReduceB = PushReducer<String, String>
type ReduceC = PushReducer<String, String>
fn reducers(
) -> (<String as FromDistributedStream<char>>::ReduceAFactory, <String as FromDistributedStream<char>>::ReduceBFactory, <String as FromDistributedStream<char>>::ReduceC)
[src]
) -> (<String as FromDistributedStream<char>>::ReduceAFactory, <String as FromDistributedStream<char>>::ReduceBFactory, <String as FromDistributedStream<char>>::ReduceC)
impl<T> FromDistributedStream<T> for BinaryHeap<T> where
T: Ord + ProcessSend + 'static,
[src]
T: Ord + ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<BinaryHeap<T> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<BinaryHeap<T> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, Vec<T>>
type ReduceB = ExtendReducer<Vec<T>, Vec<T>>
type ReduceC = IntoReducer<ExtendReducer<Vec<T>, Vec<T>>, BinaryHeap<T>>
fn reducers(
) -> (<BinaryHeap<T> as FromDistributedStream<T>>::ReduceAFactory, <BinaryHeap<T> as FromDistributedStream<T>>::ReduceBFactory, <BinaryHeap<T> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<BinaryHeap<T> as FromDistributedStream<T>>::ReduceAFactory, <BinaryHeap<T> as FromDistributedStream<T>>::ReduceBFactory, <BinaryHeap<T> as FromDistributedStream<T>>::ReduceC)
impl FromDistributedStream<()> for ()
[src]
type ReduceAFactory = DefaultReducerFactory<<() as FromDistributedStream<()>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<() as FromDistributedStream<()>>::ReduceB>
type ReduceA = PushReducer<(), ()>
type ReduceB = PushReducer<(), ()>
type ReduceC = PushReducer<(), ()>
fn reducers(
) -> (<() as FromDistributedStream<()>>::ReduceAFactory, <() as FromDistributedStream<()>>::ReduceBFactory, <() as FromDistributedStream<()>>::ReduceC)
[src]
) -> (<() as FromDistributedStream<()>>::ReduceAFactory, <() as FromDistributedStream<()>>::ReduceBFactory, <() as FromDistributedStream<()>>::ReduceC)
impl<T, S> FromDistributedStream<T> for HashSet<T, S> where
S: BuildHasher + Default + Send + 'static,
T: Eq + Hash + ProcessSend + 'static,
[src]
S: BuildHasher + Default + Send + 'static,
T: Eq + Hash + ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<HashSet<T, S> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<HashSet<T, S> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, HashSet<T, S>>
type ReduceB = ExtendReducer<HashSet<T, S>, HashSet<T, S>>
type ReduceC = ExtendReducer<HashSet<T, S>, HashSet<T, S>>
fn reducers(
) -> (<HashSet<T, S> as FromDistributedStream<T>>::ReduceAFactory, <HashSet<T, S> as FromDistributedStream<T>>::ReduceBFactory, <HashSet<T, S> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<HashSet<T, S> as FromDistributedStream<T>>::ReduceAFactory, <HashSet<T, S> as FromDistributedStream<T>>::ReduceBFactory, <HashSet<T, S> as FromDistributedStream<T>>::ReduceC)
impl FromDistributedStream<String> for String
[src]
type ReduceAFactory = DefaultReducerFactory<<String as FromDistributedStream<String>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<String as FromDistributedStream<String>>::ReduceB>
type ReduceA = PushReducer<String, String>
type ReduceB = PushReducer<String, String>
type ReduceC = PushReducer<String, String>
fn reducers(
) -> (<String as FromDistributedStream<String>>::ReduceAFactory, <String as FromDistributedStream<String>>::ReduceBFactory, <String as FromDistributedStream<String>>::ReduceC)
[src]
) -> (<String as FromDistributedStream<String>>::ReduceAFactory, <String as FromDistributedStream<String>>::ReduceBFactory, <String as FromDistributedStream<String>>::ReduceC)
impl<T> FromDistributedStream<T> for LinkedList<T> where
T: ProcessSend + 'static,
[src]
T: ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<LinkedList<T> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<LinkedList<T> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, LinkedList<T>>
type ReduceB = ExtendReducer<LinkedList<T>, LinkedList<T>>
type ReduceC = ExtendReducer<LinkedList<T>, LinkedList<T>>
fn reducers(
) -> (<LinkedList<T> as FromDistributedStream<T>>::ReduceAFactory, <LinkedList<T> as FromDistributedStream<T>>::ReduceBFactory, <LinkedList<T> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<LinkedList<T> as FromDistributedStream<T>>::ReduceAFactory, <LinkedList<T> as FromDistributedStream<T>>::ReduceBFactory, <LinkedList<T> as FromDistributedStream<T>>::ReduceC)
impl<K, V, S> FromDistributedStream<(K, V)> for HashMap<K, V, S> where
K: Eq + Hash + ProcessSend + 'static,
S: BuildHasher + Default + Send + 'static,
V: ProcessSend + 'static,
[src]
K: Eq + Hash + ProcessSend + 'static,
S: BuildHasher + Default + Send + 'static,
V: ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceB>
type ReduceA = PushReducer<(K, V), HashMap<K, V, S>>
type ReduceB = ExtendReducer<HashMap<K, V, S>, HashMap<K, V, S>>
type ReduceC = ExtendReducer<HashMap<K, V, S>, HashMap<K, V, S>>
fn reducers(
) -> (<HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceAFactory, <HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceBFactory, <HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceC)
[src]
) -> (<HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceAFactory, <HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceBFactory, <HashMap<K, V, S> as FromDistributedStream<(K, V)>>::ReduceC)
impl<T> FromDistributedStream<T> for BTreeSet<T> where
T: Ord + ProcessSend + 'static,
[src]
T: Ord + ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<BTreeSet<T> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<BTreeSet<T> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, BTreeSet<T>>
type ReduceB = ExtendReducer<BTreeSet<T>, BTreeSet<T>>
type ReduceC = ExtendReducer<BTreeSet<T>, BTreeSet<T>>
fn reducers(
) -> (<BTreeSet<T> as FromDistributedStream<T>>::ReduceAFactory, <BTreeSet<T> as FromDistributedStream<T>>::ReduceBFactory, <BTreeSet<T> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<BTreeSet<T> as FromDistributedStream<T>>::ReduceAFactory, <BTreeSet<T> as FromDistributedStream<T>>::ReduceBFactory, <BTreeSet<T> as FromDistributedStream<T>>::ReduceC)
impl<K, V> FromDistributedStream<(K, V)> for BTreeMap<K, V> where
K: Ord + ProcessSend + 'static,
V: ProcessSend + 'static,
[src]
K: Ord + ProcessSend + 'static,
V: ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceB>
type ReduceA = PushReducer<(K, V), BTreeMap<K, V>>
type ReduceB = ExtendReducer<BTreeMap<K, V>, BTreeMap<K, V>>
type ReduceC = ExtendReducer<BTreeMap<K, V>, BTreeMap<K, V>>
fn reducers(
) -> (<BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceAFactory, <BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceBFactory, <BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceC)
[src]
) -> (<BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceAFactory, <BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceBFactory, <BTreeMap<K, V> as FromDistributedStream<(K, V)>>::ReduceC)
impl<T, C> FromDistributedStream<Option<T>> for Option<C> where
C: FromDistributedStream<T>,
[src]
C: FromDistributedStream<T>,
type ReduceAFactory = OptionReducerFactory<<C as FromDistributedStream<T>>::ReduceAFactory>
type ReduceBFactory = OptionReducerFactory<<C as FromDistributedStream<T>>::ReduceBFactory>
type ReduceA = OptionReducer<<C as FromDistributedStream<T>>::ReduceA>
type ReduceB = OptionReducer<<C as FromDistributedStream<T>>::ReduceB>
type ReduceC = OptionReducer<<C as FromDistributedStream<T>>::ReduceC>
fn reducers(
) -> (<Option<C> as FromDistributedStream<Option<T>>>::ReduceAFactory, <Option<C> as FromDistributedStream<Option<T>>>::ReduceBFactory, <Option<C> as FromDistributedStream<Option<T>>>::ReduceC)
[src]
) -> (<Option<C> as FromDistributedStream<Option<T>>>::ReduceAFactory, <Option<C> as FromDistributedStream<Option<T>>>::ReduceBFactory, <Option<C> as FromDistributedStream<Option<T>>>::ReduceC)
impl<T> FromDistributedStream<T> for Vec<T> where
T: ProcessSend + 'static,
[src]
T: ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<Vec<T> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<Vec<T> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, Vec<T>>
type ReduceB = ExtendReducer<Vec<T>, Vec<T>>
type ReduceC = ExtendReducer<Vec<T>, Vec<T>>
fn reducers(
) -> (<Vec<T> as FromDistributedStream<T>>::ReduceAFactory, <Vec<T> as FromDistributedStream<T>>::ReduceBFactory, <Vec<T> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<Vec<T> as FromDistributedStream<T>>::ReduceAFactory, <Vec<T> as FromDistributedStream<T>>::ReduceBFactory, <Vec<T> as FromDistributedStream<T>>::ReduceC)
Implementors
impl<T> FromDistributedStream<T> for List<T> where
T: Data + ProcessSend + 'static,
[src]
T: Data + ProcessSend + 'static,
type ReduceAFactory = DefaultReducerFactory<<List<T> as FromDistributedStream<T>>::ReduceA>
type ReduceBFactory = DefaultReducerFactory<<List<T> as FromDistributedStream<T>>::ReduceB>
type ReduceA = PushReducer<T, List<T>>
type ReduceB = ExtendReducer<List<T>, List<T>>
type ReduceC = ExtendReducer<List<T>, List<T>>
fn reducers(
) -> (<List<T> as FromDistributedStream<T>>::ReduceAFactory, <List<T> as FromDistributedStream<T>>::ReduceBFactory, <List<T> as FromDistributedStream<T>>::ReduceC)
[src]
) -> (<List<T> as FromDistributedStream<T>>::ReduceAFactory, <List<T> as FromDistributedStream<T>>::ReduceBFactory, <List<T> as FromDistributedStream<T>>::ReduceC)