pub trait BatcherStorage<T: Timestamp>: Default + Sized {
// Required methods
fn len(&self) -> usize;
fn merge(self, other: Self) -> Self;
fn split(&mut self, frontier: AntichainRef<'_, T>) -> Self;
fn lower(&self, frontier: &mut Antichain<T>);
}Expand description
A type that can be used as storage within a merge batcher.
Required Methods§
Sourcefn merge(self, other: Self) -> Self
fn merge(self, other: Self) -> Self
Merges two storage containers into one.
This is expected to consolidate updates as it goes.
Sourcefn split(&mut self, frontier: AntichainRef<'_, T>) -> Self
fn split(&mut self, frontier: AntichainRef<'_, T>) -> Self
Extracts elements not greater or equal to the frontier.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.