pub struct MergeBatcher<Chu, M: Extractor, S> { /* private fields */ }Expand description
Creates batches from chunks of sorted, consolidated tuples.
Chunking input is Chu’s business, merging chunks is M’s, and sealing the extracted chain
into a batch is S’s; the batcher’s own work is the carve-by-frontier over its
MergeLadder.
Implementations§
Trait Implementations§
Source§impl<C, Chu, M, S> Batcher<C> for MergeBatcher<Chu, M, S>
impl<C, Chu, M, S> Batcher<C> for MergeBatcher<Chu, M, S>
Source§impl<Chu, M, S> Extract for MergeBatcher<Chu, M, S>
impl<Chu, M, S> Extract for MergeBatcher<Chu, M, S>
Source§fn extract<'a>(
&'a mut self,
upper: AntichainRef<'_, M::Time>,
) -> (Option<S::Output>, AntichainRef<'a, M::Time>)
fn extract<'a>( &'a mut self, upper: AntichainRef<'_, M::Time>, ) -> (Option<S::Output>, AntichainRef<'a, M::Time>)
Extracts the updates
upper unblocks as a batch, and lower bounds the times of those retained. Read moreAuto Trait Implementations§
impl<Chu, M, S> !RefUnwindSafe for MergeBatcher<Chu, M, S>
impl<Chu, M, S> !Send for MergeBatcher<Chu, M, S>
impl<Chu, M, S> !Sync for MergeBatcher<Chu, M, S>
impl<Chu, M, S> !UnwindSafe for MergeBatcher<Chu, M, S>
impl<Chu, M, S> Freeze for MergeBatcher<Chu, M, S>where
Chu: Freeze,
MergeLadder<M>: Freeze,
Antichain<<M as Extractor>::Time>: Freeze,
PhantomData<S>: Freeze,
impl<Chu, M, S> Unpin for MergeBatcher<Chu, M, S>where
Chu: Unpin,
MergeLadder<M>: Unpin,
Antichain<<M as Extractor>::Time>: Unpin,
PhantomData<S>: Unpin,
impl<Chu, M, S> UnsafeUnpin for MergeBatcher<Chu, M, S>where
Chu: UnsafeUnpin,
MergeLadder<M>: UnsafeUnpin,
Antichain<<M as Extractor>::Time>: UnsafeUnpin,
PhantomData<S>: UnsafeUnpin,
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 moreSource§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
Source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign, for types that do not implement AddAssign.