Struct differential_dataflow::trace::implementations::ord::OrdValBatch
source · pub struct OrdValBatch<K: Ord, V: Ord, T: Lattice, R> {
pub layer: OrderedLayer<K, OrderedLayer<V, 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, OrderedLayer<V, OrderedLeaf<T, R>>>Where all the dataz is.
desc: Description<T>Description of the update times this layer represents.
Trait Implementations
sourceimpl<K: Ord, V: Ord, T: Lattice, R> Abomonation for OrdValBatch<K, V, T, R>where
OrderedLayer<K, OrderedLayer<V, OrderedLeaf<T, R>>>: Abomonation,
K: Abomonation,
V: Abomonation,
T: Abomonation,
R: Abomonation,
Description<T>: Abomonation,
impl<K: Ord, V: Ord, T: Lattice, R> Abomonation for OrdValBatch<K, V, T, R>where
OrderedLayer<K, OrderedLayer<V, OrderedLeaf<T, R>>>: Abomonation,
K: Abomonation,
V: Abomonation,
T: Abomonation,
R: Abomonation,
Description<T>: Abomonation,
sourceimpl<K, V, T, R> Batch<K, V, T, R> for OrdValBatch<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + Debug + 'static,
R: Diff,
impl<K, V, T, R> Batch<K, V, T, R> for OrdValBatch<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + Debug + 'static,
R: Diff,
type Batcher = MergeBatcher<K, V, T, R, OrdValBatch<K, V, T, R>>
type Batcher = MergeBatcher<K, V, T, R, OrdValBatch<K, V, T, R>>
A type used to assemble batches from disordered updates.
type Builder = OrdValBuilder<K, V, T, R>
type Builder = OrdValBuilder<K, V, T, R>
A type used to assemble batches from ordered update sequences.
type Merger = OrdValMerger<K, V, T, R>
type Merger = OrdValMerger<K, V, 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, V, T, R> BatchReader<K, V, T, R> for OrdValBatch<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
impl<K, V, T, R> BatchReader<K, V, T, R> for OrdValBatch<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + 'static,
R: Diff,
type Cursor = OrdValCursor<V, T, R>
type Cursor = OrdValCursor<V, 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, V, T, R> Builder<K, V, T, R, OrdValBatch<K, V, T, R>> for OrdValBuilder<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + Debug + 'static,
R: Diff,
impl<K, V, T, R> Builder<K, V, T, R, OrdValBatch<K, V, T, R>> for OrdValBuilder<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + Debug + 'static,
R: Diff,
sourcefn with_capacity(cap: usize) -> Self
fn with_capacity(cap: usize) -> Self
Allocates an empty builder with some capacity.
sourcefn push(&mut self, (key, val, time, diff): (K, V, T, R))
fn push(&mut self, (key, val, time, diff): (K, V, T, R))
Adds an element to the batch.
sourcefn done(self, lower: &[T], upper: &[T], since: &[T]) -> OrdValBatch<K, V, T, R>
fn done(self, lower: &[T], upper: &[T], since: &[T]) -> OrdValBatch<K, V, 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: Debug + Ord, V: Debug + Ord, T: Debug + Lattice, R: Debug> Debug for OrdValBatch<K, V, T, R>
impl<K: Debug + Ord, V: Debug + Ord, T: Debug + Lattice, R: Debug> Debug for OrdValBatch<K, V, T, R>
sourceimpl<K, V, T, R> Merger<K, V, T, R, OrdValBatch<K, V, T, R>> for OrdValMerger<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + Debug + 'static,
R: Diff,
impl<K, V, T, R> Merger<K, V, T, R, OrdValBatch<K, V, T, R>> for OrdValMerger<K, V, T, R>where
K: Ord + Clone + 'static,
V: Ord + Clone + 'static,
T: Lattice + Ord + Clone + Debug + 'static,
R: Diff,
sourcefn new(
batch1: &OrdValBatch<K, V, T, R>,
batch2: &OrdValBatch<K, V, T, R>
) -> Self
fn new(
batch1: &OrdValBatch<K, V, T, R>,
batch2: &OrdValBatch<K, V, T, R>
) -> Self
Creates a new merger to merge the supplied batches.
sourcefn done(self) -> OrdValBatch<K, V, T, R>
fn done(self) -> OrdValBatch<K, V, T, R>
Extracts merged results. Read more
sourcefn work(
&mut self,
source1: &OrdValBatch<K, V, T, R>,
source2: &OrdValBatch<K, V, T, R>,
frontier: &Option<Vec<T>>,
fuel: &mut usize
)
fn work(
&mut self,
source1: &OrdValBatch<K, V, T, R>,
source2: &OrdValBatch<K, V, T, R>,
frontier: &Option<Vec<T>>,
fuel: &mut usize
)
Perform some amount of work, decrementing
fuel. Read moreAuto Trait Implementations
impl<K, V, T, R> RefUnwindSafe for OrdValBatch<K, V, T, R>where
K: RefUnwindSafe,
R: RefUnwindSafe,
T: RefUnwindSafe,
V: RefUnwindSafe,
impl<K, V, T, R> Send for OrdValBatch<K, V, T, R>where
K: Send,
R: Send,
T: Send,
V: Send,
impl<K, V, T, R> Sync for OrdValBatch<K, V, T, R>where
K: Sync,
R: Sync,
T: Sync,
V: Sync,
impl<K, V, T, R> Unpin for OrdValBatch<K, V, T, R>where
K: Unpin,
R: Unpin,
T: Unpin,
V: Unpin,
impl<K, V, T, R> UnwindSafe for OrdValBatch<K, V, T, R>where
K: UnwindSafe,
R: UnwindSafe,
T: UnwindSafe,
V: 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