Struct differential_dataflow::trace::implementations::ord::OrdKeyBatch
source · pub struct OrdKeyBatch<K: Ord, T: Lattice, R> {
pub layer: OrderedLayer<K, OrderedLeaf<T, R>>,
pub desc: Description<T>,
}Expand description
An immutable collection of update tuples, from a contiguous interval of logical times.
Fields
layer: OrderedLayer<K, OrderedLeaf<T, R>>Where all the dataz is.
desc: Description<T>Description of the update times this layer represents.
Trait Implementations
sourceimpl<K: Ord, T: Lattice, R> Abomonation for OrdKeyBatch<K, T, R>where
OrderedLayer<K, OrderedLeaf<T, R>>: Abomonation,
K: Abomonation,
T: Abomonation,
R: Abomonation,
Description<T>: Abomonation,
impl<K: Ord, T: Lattice, R> Abomonation for OrdKeyBatch<K, T, R>where
OrderedLayer<K, OrderedLeaf<T, R>>: Abomonation,
K: Abomonation,
T: Abomonation,
R: Abomonation,
Description<T>: Abomonation,
sourceimpl<K, T, R> Batch<K, (), T, R> for OrdKeyBatch<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
impl<K, T, R> Batch<K, (), T, R> for OrdKeyBatch<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
type Batcher = MergeBatcher<K, (), T, R, OrdKeyBatch<K, T, R>>
type Batcher = MergeBatcher<K, (), T, R, OrdKeyBatch<K, T, R>>
A type used to assemble batches from disordered updates.
type Builder = OrdKeyBuilder<K, T, R>
type Builder = OrdKeyBuilder<K, T, R>
A type used to assemble batches from ordered update sequences.
type Merger = OrdKeyMerger<K, T, R>
type Merger = OrdKeyMerger<K, T, R>
A type used to progressively merge batches.
sourcefn begin_merge(&self, other: &Self) -> Self::Merger
fn begin_merge(&self, other: &Self) -> Self::Merger
Initiates the merging of consecutive batches. Read more
sourceimpl<K, T, R> BatchReader<K, (), T, R> for OrdKeyBatch<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
impl<K, T, R> BatchReader<K, (), T, R> for OrdKeyBatch<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
type Cursor = OrdKeyCursor<T, R>
type Cursor = OrdKeyCursor<T, R>
The type used to enumerate the batch’s contents.
sourcefn description(&self) -> &Description<T>
fn description(&self) -> &Description<T>
Describes the times of the updates in the batch.
sourceimpl<K, T, R> Builder<K, (), T, R, OrdKeyBatch<K, T, R>> for OrdKeyBuilder<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
impl<K, T, R> Builder<K, (), T, R, OrdKeyBatch<K, T, R>> for OrdKeyBuilder<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
sourcefn with_capacity(cap: usize) -> Self
fn with_capacity(cap: usize) -> Self
Allocates an empty builder with some capacity.
sourcefn done(self, lower: &[T], upper: &[T], since: &[T]) -> OrdKeyBatch<K, T, R>
fn done(self, lower: &[T], upper: &[T], since: &[T]) -> OrdKeyBatch<K, T, R>
Completes building and returns the batch.
sourcefn extend<I: Iterator<Item = (K, V, T, R)>>(&mut self, iter: I)
fn extend<I: Iterator<Item = (K, V, T, R)>>(&mut self, iter: I)
Adds an ordered sequence of elements to the batch.
sourceimpl<K, T, R> Merger<K, (), T, R, OrdKeyBatch<K, T, R>> for OrdKeyMerger<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
impl<K, T, R> Merger<K, (), T, R, OrdKeyBatch<K, T, R>> for OrdKeyMerger<K, T, R>where
K: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
sourcefn new(batch1: &OrdKeyBatch<K, T, R>, batch2: &OrdKeyBatch<K, T, R>) -> Self
fn new(batch1: &OrdKeyBatch<K, T, R>, batch2: &OrdKeyBatch<K, T, R>) -> Self
Creates a new merger to merge the supplied batches.
sourcefn done(self) -> OrdKeyBatch<K, T, R>
fn done(self) -> OrdKeyBatch<K, T, R>
Extracts merged results. Read more
sourcefn work(
&mut self,
source1: &OrdKeyBatch<K, T, R>,
source2: &OrdKeyBatch<K, T, R>,
frontier: &Option<Vec<T>>,
fuel: &mut usize
)
fn work(
&mut self,
source1: &OrdKeyBatch<K, T, R>,
source2: &OrdKeyBatch<K, T, R>,
frontier: &Option<Vec<T>>,
fuel: &mut usize
)
Perform some amount of work, decrementing
fuel. Read moreAuto Trait Implementations
impl<K, T, R> RefUnwindSafe for OrdKeyBatch<K, T, R>where
K: RefUnwindSafe,
R: RefUnwindSafe,
T: RefUnwindSafe,
impl<K, T, R> Send for OrdKeyBatch<K, T, R>where
K: Send,
R: Send,
T: Send,
impl<K, T, R> Sync for OrdKeyBatch<K, T, R>where
K: Sync,
R: Sync,
T: Sync,
impl<K, T, R> Unpin for OrdKeyBatch<K, T, R>where
K: Unpin,
R: Unpin,
T: Unpin,
impl<K, T, R> UnwindSafe for OrdKeyBatch<K, T, R>where
K: UnwindSafe,
R: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more