Struct amadeus::par_stream::Chain[][src]

#[must_use]
pub struct Chain<A, B> { /* fields omitted */ }

Implementations

impl<A, B> Chain<A, B>[src]

pub fn new(a: A, b: B) -> Chain<A, B>[src]

Constructs a new Chain.

Trait Implementations

impl<A, B> DistributedStream for Chain<A, B> where
    A: DistributedStream,
    B: DistributedStream<Item = <A as DistributedStream>::Item>, 
[src]

type Item = <A as DistributedStream>::Item

type Task = ChainTask<<A as DistributedStream>::Task, <B as DistributedStream>::Task>

pub fn size_hint(&self) -> (usize, Option<usize>)[src]

pub fn next_task(
    self: Pin<&mut Chain<A, B>>,
    cx: &mut Context<'_>
) -> Poll<Option<<Chain<A, B> as DistributedStream>::Task>>
[src]

#[must_use]
fn reduce<'life0, 'async_trait, P, B, R1, R2, R3>(
    self,
    pool: &'life0 P,
    reduce_a: R1,
    reduce_b: R2,
    reduce_c: R3
) -> Pin<Box<dyn Future<Output = B> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    B: 'async_trait,
    P: ProcessPool + 'async_trait,
    R1: ReducerSend<Self::Item> + Clone + ProcessSend + 'static + 'async_trait,
    R2: ReducerProcessSend<<R1 as ReducerSend<Self::Item>>::Done> + Clone + ProcessSend + 'static + 'async_trait,
    R3: Reducer<<R2 as ReducerProcessSend<<R1 as ReducerSend<Self::Item>>::Done>>::Done, Done = B> + 'async_trait,
    Self::Task: 'static, 
[src]

#[must_use]
fn pipe<'life0, 'async_trait, P, DistSink, A>(
    self,
    pool: &'life0 P,
    sink: DistSink
) -> Pin<Box<dyn Future<Output = A> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    DistSink: DistributedSink<Self::Item, Done = A> + 'async_trait,
    A: 'async_trait,
    P: ProcessPool + 'async_trait,
    <<DistSink as DistributedSink<Self::Item>>::Pipe as DistributedPipe<Self::Item>>::Task: 'static,
    <DistSink as DistributedSink<Self::Item>>::ReduceA: 'static,
    <DistSink as DistributedSink<Self::Item>>::ReduceB: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn fork<'life0, 'async_trait, P, DistSinkA, DistSinkB, A, B>(
    self,
    pool: &'life0 P,
    sink_a: DistSinkA,
    sink_b: DistSinkB
) -> Pin<Box<dyn Future<Output = (A, B)> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    A: 'async_trait,
    B: 'async_trait,
    P: ProcessPool + 'async_trait,
    DistSinkA: DistributedSink<Self::Item, Done = A> + 'async_trait,
    DistSinkB: for<'a> DistributedSink<&'a Self::Item, Done = B> + 'static + 'async_trait,
    <<DistSinkA as DistributedSink<Self::Item>>::Pipe as DistributedPipe<Self::Item>>::Task: 'static,
    <DistSinkA as DistributedSink<Self::Item>>::ReduceA: 'static,
    <DistSinkA as DistributedSink<Self::Item>>::ReduceB: 'static,
    <DistSinkB as DistributedSink<&'static Self::Item>>::ReduceA: 'static,
    <DistSinkB as DistributedSink<&'static Self::Item>>::ReduceB: 'static,
    <<DistSinkB as DistributedSink<&'static Self::Item>>::Pipe as DistributedPipe<&'static Self::Item>>::Task: 'static,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn group_by<'life0, 'async_trait, P, S, A, B>(
    self,
    pool: &'life0 P,
    sink: S
) -> Pin<Box<dyn Future<Output = IndexMap<A, <S as DistributedSink<B>>::Done, RandomState>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: DistributedStream<Item = (A, B)> + 'async_trait,
    S: DistributedSink<B> + 'async_trait,
    A: Eq + Hash + ProcessSend + 'static + 'async_trait,
    B: 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    <<S as DistributedSink<B>>::Pipe as DistributedPipe<B>>::Task: Clone,
    <<S as DistributedSink<B>>::Pipe as DistributedPipe<B>>::Task: ProcessSend,
    <<S as DistributedSink<B>>::Pipe as DistributedPipe<B>>::Task: 'static,
    <S as DistributedSink<B>>::ReduceA: 'static,
    <S as DistributedSink<B>>::ReduceB: 'static,
    <S as DistributedSink<B>>::ReduceC: Clone,
    <S as DistributedSink<B>>::Done: ProcessSend,
    <S as DistributedSink<B>>::Done: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn collect<'life0, 'async_trait, P, B>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = B> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    B: FromDistributedStream<Self::Item> + 'async_trait,
    P: ProcessPool + 'async_trait,
    <B as FromDistributedStream<Self::Item>>::ReduceA: ProcessSend,
    <B as FromDistributedStream<Self::Item>>::ReduceA: 'static,
    <B as FromDistributedStream<Self::Item>>::ReduceB: ProcessSend,
    <B as FromDistributedStream<Self::Item>>::ReduceB: 'static,
    Self::Task: 'static, 
[src]

fn inspect<F>(self, f: F) -> Inspect<Self, F> where
    F: FnMut<(&Self::Item,), Output = ()> + Clone + ProcessSend + 'static, 
[src]

fn update<F>(self, f: F) -> Update<Self, F> where
    F: FnMut<(&mut Self::Item,), Output = ()> + Clone + ProcessSend + 'static, 
[src]

fn map<B, F>(self, f: F) -> Map<Self, F> where
    F: FnMut<(Self::Item,), Output = B> + Clone + ProcessSend + 'static, 
[src]

fn flat_map<B, F>(self, f: F) -> FlatMap<Self, F> where
    F: FnMut<(Self::Item,), Output = B> + Clone + ProcessSend + 'static,
    B: Stream, 
[src]

fn filter<F>(self, f: F) -> Filter<Self, F> where
    F: FnMut<(&Self::Item,), Output = bool> + Clone + ProcessSend + 'static, 
[src]

fn left_join<K, V1, V2>(
    self,
    right: impl IntoIterator<Item = (K, V2)>
) -> LeftJoin<Self, K, V1, V2> where
    Self: DistributedStream<Item = (K, V1)>,
    K: Eq + Hash + Clone + ProcessSend + 'static,
    V1: 'static,
    V2: Clone + ProcessSend + 'static, 
[src]

fn inner_join<K, V1, V2>(
    self,
    right: impl IntoIterator<Item = (K, V2)>
) -> InnerJoin<Self, K, V1, V2> where
    Self: DistributedStream<Item = (K, V1)>,
    K: Eq + Hash + Clone + ProcessSend + 'static,
    V1: 'static,
    V2: Clone + ProcessSend + 'static, 
[src]

fn chain<C>(
    self,
    chain: C
) -> Chain<Self, <C as IntoDistributedStream>::DistStream> where
    C: IntoDistributedStream<Item = Self::Item>, 
[src]

#[must_use]
fn for_each<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(Self::Item,), Output = ()> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn fold<'life0, 'async_trait, P, ID, F, B>(
    self,
    pool: &'life0 P,
    identity: ID,
    op: F
) -> Pin<Box<dyn Future<Output = B> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(B, Either<Self::Item, B>), Output = B> + Clone + ProcessSend + 'static + 'async_trait,
    B: ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    ID: FnMut<(), Output = B> + Clone + ProcessSend + 'static + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn histogram<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = Vec<(Self::Item, usize), Global>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: Hash,
    Self::Item: Ord,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn sort_n_by<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    n: usize,
    cmp: F
) -> Pin<Box<dyn Future<Output = Sort<Self::Item, F>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: Fn<(&Self::Item, &Self::Item), Output = Ordering> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: Clone,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn count<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = usize> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn sum<'life0, 'async_trait, P, S>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = S> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    S: Sum<Self::Item> + Sum<S> + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn mean<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = f64> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: DistributedStream<Item = f64> + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn stddev<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = f64> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: DistributedStream<Item = f64> + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn combine<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(Self::Item, Self::Item), Output = Self::Item> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn max<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: Ord,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn max_by<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(&Self::Item, &Self::Item), Output = Ordering> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn max_by_key<'life0, 'async_trait, P, F, B>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(&Self::Item,), Output = B> + Clone + ProcessSend + 'static + 'async_trait,
    B: Ord + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn min<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: Ord,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn min_by<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(&Self::Item, &Self::Item), Output = Ordering> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn min_by_key<'life0, 'async_trait, P, F, B>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(&Self::Item,), Output = B> + Clone + ProcessSend + 'static + 'async_trait,
    B: Ord + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn most_frequent<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P,
    n: usize,
    probability: f64,
    tolerance: f64
) -> Pin<Box<dyn Future<Output = Top<Self::Item, usize>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: Hash,
    Self::Item: Eq,
    Self::Item: Clone,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn most_distinct<'life0, 'async_trait, P, A, B>(
    self,
    pool: &'life0 P,
    n: usize,
    probability: f64,
    tolerance: f64,
    error_rate: f64
) -> Pin<Box<dyn Future<Output = Top<A, HyperLogLogMagnitude<B>>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: DistributedStream<Item = (A, B)> + 'async_trait,
    A: Hash + Eq + Clone + ProcessSend + 'static + 'async_trait,
    B: Hash + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Task: 'static, 
[src]

#[must_use]
fn sample_unstable<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P,
    samples: usize
) -> Pin<Box<dyn Future<Output = SampleUnstable<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: ProcessSend,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn all<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = bool> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(Self::Item,), Output = bool> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn any<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = bool> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut<(Self::Item,), Output = bool> + Clone + ProcessSend + 'static + 'async_trait,
    P: ProcessPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

impl<A, B> ParallelStream for Chain<A, B> where
    A: ParallelStream,
    B: ParallelStream<Item = <A as ParallelStream>::Item>, 
[src]

type Item = <A as ParallelStream>::Item

type Task = ChainTask<<A as ParallelStream>::Task, <B as ParallelStream>::Task>

pub fn size_hint(&self) -> (usize, Option<usize>)[src]

pub fn next_task(
    self: Pin<&mut Chain<A, B>>,
    cx: &mut Context<'_>
) -> Poll<Option<<Chain<A, B> as ParallelStream>::Task>>
[src]

#[must_use]
fn reduce<'life0, 'async_trait, P, B, R1, R3>(
    self,
    pool: &'life0 P,
    reduce_a: R1,
    reduce_c: R3
) -> Pin<Box<dyn Future<Output = B> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    B: 'async_trait,
    P: ThreadPool + 'async_trait,
    R1: ReducerSend<Self::Item> + Clone + Send + 'static + 'async_trait,
    R3: Reducer<<R1 as ReducerSend<Self::Item>>::Done, Done = B> + 'async_trait,
    Self::Task: 'static, 
[src]

#[must_use]
fn pipe<'life0, 'async_trait, P, ParSink, A>(
    self,
    pool: &'life0 P,
    sink: ParSink
) -> Pin<Box<dyn Future<Output = A> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    ParSink: ParallelSink<Self::Item, Done = A> + 'async_trait,
    A: 'async_trait,
    P: ThreadPool + 'async_trait,
    <<ParSink as ParallelSink<Self::Item>>::Pipe as ParallelPipe<Self::Item>>::Task: 'static,
    <ParSink as ParallelSink<Self::Item>>::ReduceA: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn fork<'life0, 'async_trait, P, ParSinkA, ParSinkB, A, B>(
    self,
    pool: &'life0 P,
    sink_a: ParSinkA,
    sink_b: ParSinkB
) -> Pin<Box<dyn Future<Output = (A, B)> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    A: 'async_trait,
    B: 'async_trait,
    P: ThreadPool + 'async_trait,
    ParSinkA: ParallelSink<Self::Item, Done = A> + 'async_trait,
    ParSinkB: for<'a> ParallelSink<&'a Self::Item, Done = B> + 'static + 'async_trait,
    <<ParSinkA as ParallelSink<Self::Item>>::Pipe as ParallelPipe<Self::Item>>::Task: 'static,
    <ParSinkA as ParallelSink<Self::Item>>::ReduceA: 'static,
    <ParSinkB as ParallelSink<&'static Self::Item>>::ReduceA: 'static,
    <<ParSinkB as ParallelSink<&'static Self::Item>>::Pipe as ParallelPipe<&'static Self::Item>>::Task: 'static,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn group_by<'life0, 'async_trait, P, S, A, B>(
    self,
    pool: &'life0 P,
    sink: S
) -> Pin<Box<dyn Future<Output = IndexMap<A, <S as ParallelSink<B>>::Done, RandomState>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: ParallelStream<Item = (A, B)> + 'async_trait,
    S: ParallelSink<B> + 'async_trait,
    A: Eq + Hash + Send + 'static + 'async_trait,
    B: 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    <<S as ParallelSink<B>>::Pipe as ParallelPipe<B>>::Task: Clone,
    <<S as ParallelSink<B>>::Pipe as ParallelPipe<B>>::Task: Send,
    <<S as ParallelSink<B>>::Pipe as ParallelPipe<B>>::Task: 'static,
    <S as ParallelSink<B>>::ReduceA: 'static,
    <S as ParallelSink<B>>::ReduceC: Clone,
    <S as ParallelSink<B>>::Done: Send,
    <S as ParallelSink<B>>::Done: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn collect<'life0, 'async_trait, P, B>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = B> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    B: FromParallelStream<Self::Item> + 'async_trait,
    P: ThreadPool + 'async_trait,
    <B as FromParallelStream<Self::Item>>::ReduceA: Send,
    <B as FromParallelStream<Self::Item>>::ReduceA: 'static,
    Self::Task: 'static, 
[src]

fn inspect<F>(self, f: F) -> Inspect<Self, F> where
    F: FnMut(&Self::Item) + Clone + Send + 'static, 
[src]

fn update<F>(self, f: F) -> Update<Self, F> where
    F: FnMut(&mut Self::Item) + Clone + Send + 'static, 
[src]

fn map<B, F>(self, f: F) -> Map<Self, F> where
    F: FnMut(Self::Item) -> B + Clone + Send + 'static, 
[src]

fn flat_map<B, F>(self, f: F) -> FlatMap<Self, F> where
    F: FnMut(Self::Item) -> B + Clone + Send + 'static,
    B: Stream, 
[src]

fn filter<F>(self, f: F) -> Filter<Self, F> where
    F: FnMut(&Self::Item) -> bool + Clone + Send + 'static, 
[src]

fn left_join<K, V1, V2>(
    self,
    right: impl IntoIterator<Item = (K, V2)>
) -> LeftJoin<Self, K, V1, V2> where
    Self: ParallelStream<Item = (K, V1)>,
    K: Eq + Hash + Clone + Send + 'static,
    V1: 'static,
    V2: Clone + Send + 'static, 
[src]

fn inner_join<K, V1, V2>(
    self,
    right: impl IntoIterator<Item = (K, V2)>
) -> InnerJoin<Self, K, V1, V2> where
    Self: ParallelStream<Item = (K, V1)>,
    K: Eq + Hash + Clone + Send + 'static,
    V1: 'static,
    V2: Clone + Send + 'static, 
[src]

fn chain<C>(self, chain: C) -> Chain<Self, <C as IntoParallelStream>::ParStream> where
    C: IntoParallelStream<Item = Self::Item>, 
[src]

#[must_use]
fn for_each<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(Self::Item) + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn fold<'life0, 'async_trait, P, ID, F, B>(
    self,
    pool: &'life0 P,
    identity: ID,
    op: F
) -> Pin<Box<dyn Future<Output = B> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(B, Either<Self::Item, B>) -> B + Clone + Send + 'static + 'async_trait,
    B: Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    ID: FnMut() -> B + Clone + Send + 'static + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn histogram<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = Vec<(Self::Item, usize), Global>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Hash,
    Self::Item: Ord,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn sort_n_by<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    n: usize,
    cmp: F
) -> Pin<Box<dyn Future<Output = Sort<Self::Item, F>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: Fn(&Self::Item, &Self::Item) -> Ordering + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Clone,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn count<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = usize> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn sum<'life0, 'async_trait, P, S>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = S> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    S: Sum<Self::Item> + Sum<S> + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn mean<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = f64> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: ParallelStream<Item = f64> + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn stddev<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = f64> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: ParallelStream<Item = f64> + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn combine<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(Self::Item, Self::Item) -> Self::Item + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn max<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Ord,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn max_by<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(&Self::Item, &Self::Item) -> Ordering + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn max_by_key<'life0, 'async_trait, P, F, B>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(&Self::Item) -> B + Clone + Send + 'static + 'async_trait,
    B: Ord + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn min<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Ord,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn min_by<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(&Self::Item, &Self::Item) -> Ordering + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn min_by_key<'life0, 'async_trait, P, F, B>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = Option<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(&Self::Item) -> B + Clone + Send + 'static + 'async_trait,
    B: Ord + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn most_frequent<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P,
    n: usize,
    probability: f64,
    tolerance: f64
) -> Pin<Box<dyn Future<Output = Top<Self::Item, usize>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Hash,
    Self::Item: Eq,
    Self::Item: Clone,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn most_distinct<'life0, 'async_trait, P, A, B>(
    self,
    pool: &'life0 P,
    n: usize,
    probability: f64,
    tolerance: f64,
    error_rate: f64
) -> Pin<Box<dyn Future<Output = Top<A, HyperLogLogMagnitude<B>>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: ParallelStream<Item = (A, B)> + 'async_trait,
    A: Hash + Eq + Clone + Send + 'static + 'async_trait,
    B: Hash + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Task: 'static, 
[src]

#[must_use]
fn sample_unstable<'life0, 'async_trait, P>(
    self,
    pool: &'life0 P,
    samples: usize
) -> Pin<Box<dyn Future<Output = SampleUnstable<Self::Item>> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: Send,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn all<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = bool> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(Self::Item) -> bool + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

#[must_use]
fn any<'life0, 'async_trait, P, F>(
    self,
    pool: &'life0 P,
    f: F
) -> Pin<Box<dyn Future<Output = bool> + 'async_trait, Global>> where
    'life0: 'async_trait,
    Self: 'async_trait,
    F: FnMut(Self::Item) -> bool + Clone + Send + 'static + 'async_trait,
    P: ThreadPool + 'async_trait,
    Self::Item: 'static,
    Self::Task: 'static, 
[src]

impl<'pin, A, B> Unpin for Chain<A, B> where
    __Chain<'pin, A, B>: Unpin
[src]

impl<A, B> UnsafeUnpin for Chain<A, B>[src]

Auto Trait Implementations

impl<A, B> RefUnwindSafe for Chain<A, B> where
    A: RefUnwindSafe,
    B: RefUnwindSafe

impl<A, B> Send for Chain<A, B> where
    A: Send,
    B: Send

impl<A, B> Sync for Chain<A, B> where
    A: Sync,
    B: Sync

impl<A, B> UnwindSafe for Chain<A, B> where
    A: UnwindSafe,
    B: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<A, B> Downcast<A> for B where
    A: DowncastFrom<B>, 
[src]

pub fn downcast(self) -> Result<A, DowncastError>[src]

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> IntoDistributedStream for T where
    T: DistributedStream
[src]

type DistStream = T

type Item = <T as DistributedStream>::Item

pub fn into_dist_stream(self) -> <T as IntoDistributedStream>::DistStream[src]

fn par_stream_mut(&mut self) -> <&mut Self as IntoDistributedStream>::DistStream where
    &'a mut Self: for<'a> IntoDistributedStream
[src]

fn dist_stream(&self) -> <&Self as IntoDistributedStream>::DistStream where
    &'a Self: for<'a> IntoDistributedStream
[src]

impl<T> IntoParallelStream for T where
    T: ParallelStream
[src]

type ParStream = T

type Item = <T as ParallelStream>::Item

pub fn into_par_stream(self) -> <T as IntoParallelStream>::ParStream[src]

fn par_stream_mut(&mut self) -> <&mut Self as IntoParallelStream>::ParStream where
    &'a mut Self: for<'a> IntoParallelStream
[src]

fn par_stream(&self) -> <&Self as IntoParallelStream>::ParStream where
    &'a Self: for<'a> IntoParallelStream
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> Type for T where
    T: ?Sized
[src]

pub default fn meta(self: *const T) -> <T as Type>::Meta[src]

Retrieve TraitObject, Slice or Concrete meta data respectively for a type

pub default fn data(self: *const T) -> *const ()[src]

Retrieve pointer to the data

pub default fn data_mut(self: *mut T) -> *mut ()[src]

Retrieve mut pointer to the data

pub default fn dangling(t: <T as Type>::Meta) -> NonNull<T>[src]

Create a dangling non-null *const Self with the provided Self::Meta.

pub default fn fatten(thin: *mut (), t: <T as Type>::Meta) -> *mut T[src]

Create a *mut Self with the provided Self::Meta.

const METATYPE: MetaType[src]

Enum describing whether a type is TraitObject, Slice or Concrete.

type Meta: 'static

Type of metadata for type.

fn meta_type(self: *const Self) -> MetaType[src]

Helper method describing whether a type is TraitObject, Slice or Concrete.

impl<T> Type for T[src]

pub const METATYPE: MetaType[src]

Enum describing whether a type is TraitObject, Slice or Concrete.

type Meta = Concrete

Type of metadata for type.

pub fn meta(self: *const T) -> <T as Type>::Meta[src]

Retrieve TraitObject, Slice or Concrete meta data respectively for a type

pub fn data(self: *const T) -> *const ()[src]

Retrieve pointer to the data

pub fn data_mut(self: *mut T) -> *mut ()[src]

Retrieve mut pointer to the data

pub fn dangling(_t: <T as Type>::Meta) -> NonNull<T>[src]

Create a dangling non-null *const Self with the provided Self::Meta.

pub fn fatten(thin: *mut (), _t: <T as Type>::Meta) -> *mut T[src]

Create a *mut Self with the provided Self::Meta.

fn meta_type(self: *const Self) -> MetaType[src]

Helper method describing whether a type is TraitObject, Slice or Concrete.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V