pub struct ChunkBatch<C: Chunk> {
pub chunks: Vec<C>,
pub description: Description<C::Time>,
}Expand description
A batch is a Chunk sequence plus a Description.
Fields§
§chunks: Vec<C>Ordered, consolidated chunks; their concatenation is the batch.
description: Description<C::Time>The lower, upper, and since frontiers of the batch.
Implementations§
Source§impl<C: Chunk> ChunkBatch<C>
impl<C: Chunk> ChunkBatch<C>
Sourcepub fn new(chunks: Vec<C>, description: Description<C::Time>) -> Self
pub fn new(chunks: Vec<C>, description: Description<C::Time>) -> Self
Assemble a batch from ordered chunks.
Trait Implementations§
Source§impl<C: Chunk + Default + 'static> Batch for ChunkBatch<C>
impl<C: Chunk + Default + 'static> Batch for ChunkBatch<C>
Source§type Merger = ChunkBatchMerger<C>
type Merger = ChunkBatchMerger<C>
A type used to progressively merge batches.
Source§fn empty(lower: Antichain<Self::Time>, upper: Antichain<Self::Time>) -> Self
fn empty(lower: Antichain<Self::Time>, upper: Antichain<Self::Time>) -> Self
Produce an empty batch over the indicated interval.
Source§fn begin_merge(
&self,
other: &Self,
compaction_frontier: AntichainRef<'_, Self::Time>,
) -> Self::Merger
fn begin_merge( &self, other: &Self, compaction_frontier: AntichainRef<'_, Self::Time>, ) -> Self::Merger
Initiates the merging of consecutive batches. Read more
Source§impl<C: Chunk> BatchReader for ChunkBatch<C>
impl<C: Chunk> BatchReader for ChunkBatch<C>
Source§fn description(&self) -> &Description<Self::Time>
fn description(&self) -> &Description<Self::Time>
Describes the times of the updates in the batch.
Source§impl<C> Merger<ChunkBatch<C>> for ChunkBatchMerger<C>
impl<C> Merger<ChunkBatch<C>> for ChunkBatchMerger<C>
Source§fn new(
source1: &ChunkBatch<C>,
source2: &ChunkBatch<C>,
frontier: AntichainRef<'_, C::Time>,
) -> Self
fn new( source1: &ChunkBatch<C>, source2: &ChunkBatch<C>, frontier: AntichainRef<'_, C::Time>, ) -> Self
Creates a new merger to merge the supplied batches, optionally compacting
up to the supplied frontier.
Source§fn work(
&mut self,
source1: &ChunkBatch<C>,
source2: &ChunkBatch<C>,
fuel: &mut isize,
)
fn work( &mut self, source1: &ChunkBatch<C>, source2: &ChunkBatch<C>, fuel: &mut isize, )
Perform some amount of work, decrementing
fuel. Read moreSource§fn done(self) -> ChunkBatch<C>
fn done(self) -> ChunkBatch<C>
Extracts merged results. Read more
Auto Trait Implementations§
impl<C> Freeze for ChunkBatch<C>
impl<C> RefUnwindSafe for ChunkBatch<C>
impl<C> Send for ChunkBatch<C>where
C: Send,
impl<C> Sync for ChunkBatch<C>
impl<C> Unpin for ChunkBatch<C>
impl<C> UnsafeUnpin for ChunkBatch<C>
impl<C> UnwindSafe for ChunkBatch<C>
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.