Struct rayon::par_iter::fold::FoldConsumer
[−]
[src]
pub struct FoldConsumer<'c, C, IDENTITY: 'c, FOLD_OP: 'c> { /* fields omitted */ }
Trait Implementations
impl<'r, U, T, C, IDENTITY, FOLD_OP> Consumer<T> for FoldConsumer<'r, C, IDENTITY, FOLD_OP> where C: Consumer<U>,
FOLD_OP: Fn(U, T) -> U + Sync,
IDENTITY: Fn() -> U + Sync,
U: Send
[src]
FOLD_OP: Fn(U, T) -> U + Sync,
IDENTITY: Fn() -> U + Sync,
U: Send
type Folder = FoldFolder<'r, C::Folder, U, FOLD_OP>
type Reducer = C::Reducer
type Result = C::Result
fn cost(&mut self, cost: f64) -> f64
If it costs producer_cost
to produce the items we will consume, returns cost adjusted to account for consuming them. Read more
fn split_at(self, index: usize) -> (Self, Self, Self::Reducer)
Divide the consumer into two consumers, one processing items 0..index
and one processing items from index..
. Also produces a reducer that can be used to reduce the results at the end. Read more
fn into_folder(self) -> Self::Folder
Convert the consumer into a folder that can consume items sequentially, eventually producing a final result. Read more
fn weighted(&self) -> bool
Reports whether the consumer has explicit weights.
fn full(&self) -> bool
Hint whether this Consumer
would like to stop processing further items, e.g. if a search has been completed. Read more
impl<'r, U, ITEM, C, IDENTITY, FOLD_OP> UnindexedConsumer<ITEM> for FoldConsumer<'r, C, IDENTITY, FOLD_OP> where C: UnindexedConsumer<U>,
FOLD_OP: Fn(U, ITEM) -> U + Sync,
IDENTITY: Fn() -> U + Sync,
U: Send
[src]
FOLD_OP: Fn(U, ITEM) -> U + Sync,
IDENTITY: Fn() -> U + Sync,
U: Send