Struct rayon::iter::positions::PositionsConsumer
source · struct PositionsConsumer<'p, C, P> {
base: C,
predicate: &'p P,
offset: usize,
}
Expand description
//////////////////////////////////////////////////////////////////////// Consumer implementation
Fields§
§base: C
§predicate: &'p P
§offset: usize
Implementations§
Trait Implementations§
source§impl<'p, T, C, P> Consumer<T> for PositionsConsumer<'p, C, P>
impl<'p, T, C, P> Consumer<T> for PositionsConsumer<'p, C, P>
§type Folder = PositionsFolder<'p, <C as Consumer<usize>>::Folder, P>
type Folder = PositionsFolder<'p, <C as Consumer<usize>>::Folder, P>
The type of folder that this consumer can be converted into.
§type Reducer = <C as Consumer<usize>>::Reducer
type Reducer = <C as Consumer<usize>>::Reducer
The type of reducer that is produced if this consumer is split.
§type Result = <C as Consumer<usize>>::Result
type Result = <C as Consumer<usize>>::Result
The type of result that this consumer will ultimately produce.
source§fn split_at(self, index: usize) -> (Self, Self, C::Reducer)
fn split_at(self, index: usize) -> (Self, Self, C::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.source§fn into_folder(self) -> Self::Folder
fn into_folder(self) -> Self::Folder
Convert the consumer into a folder that can consume items
sequentially, eventually producing a final result.
Auto Trait Implementations§
impl<'p, C, P> Freeze for PositionsConsumer<'p, C, P>where
C: Freeze,
impl<'p, C, P> RefUnwindSafe for PositionsConsumer<'p, C, P>where
C: RefUnwindSafe,
P: RefUnwindSafe,
impl<'p, C, P> Send for PositionsConsumer<'p, C, P>
impl<'p, C, P> Sync for PositionsConsumer<'p, C, P>
impl<'p, C, P> Unpin for PositionsConsumer<'p, C, P>where
C: Unpin,
impl<'p, C, P> UnwindSafe for PositionsConsumer<'p, C, P>where
C: UnwindSafe,
P: RefUnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more