pub struct OrdKeyBuilder<L: Layout, CI> { /* private fields */ }
Expand description

A builder for creating layers from unsorted update tuples.

Trait Implementations§

source§

impl<L, CI> Builder for OrdKeyBuilder<L, CI>
where L: Layout, CI: for<'a> BuilderInput<L::KeyContainer, L::ValContainer, Time = <L::Target as Update>::Time, Diff = <L::Target as Update>::Diff>, for<'a> L::KeyContainer: PushInto<CI::Key<'a>>, for<'a> <L::TimeContainer as BatchContainer>::ReadItem<'a>: IntoOwned<'a, Owned = <L::Target as Update>::Time>, for<'a> <L::DiffContainer as BatchContainer>::ReadItem<'a>: IntoOwned<'a, Owned = <L::Target as Update>::Diff>,

§

type Input = CI

Input item type.
§

type Time = <<L as Layout>::Target as Update>::Time

Timestamp type.
§

type Output = OrdKeyBatch<L>

Output batch type.
source§

fn with_capacity(keys: usize, _vals: usize, upds: usize) -> Self

Allocates an empty builder with capacity for the specified keys, values, and updates. Read more
source§

fn push(&mut self, chunk: &mut Self::Input)

Adds a chunk of elements to the batch. Read more
source§

fn done(self, description: Description<Self::Time>) -> OrdKeyBatch<L>

Completes building and returns the batch.
source§

fn seal( chain: &mut Vec<Self::Input>, description: Description<Self::Time>, ) -> Self::Output

Builds a batch from a chain of updates corresponding to the indicated lower and upper bounds. Read more
source§

fn new() -> Self

Allocates an empty builder. Read more

Auto Trait Implementations§

§

impl<L, CI> Freeze for OrdKeyBuilder<L, CI>

§

impl<L, CI> RefUnwindSafe for OrdKeyBuilder<L, CI>

§

impl<L, CI> Send for OrdKeyBuilder<L, CI>
where <L as Layout>::KeyContainer: Send, <L as Layout>::OffsetContainer: Send, <L as Layout>::TimeContainer: Send, <L as Layout>::DiffContainer: Send, CI: Send, <<L as Layout>::Target as Update>::Diff: Send,

§

impl<L, CI> Sync for OrdKeyBuilder<L, CI>
where <L as Layout>::KeyContainer: Sync, <L as Layout>::OffsetContainer: Sync, <L as Layout>::TimeContainer: Sync, <L as Layout>::DiffContainer: Sync, CI: Sync, <<L as Layout>::Target as Update>::Time: Sync, <<L as Layout>::Target as Update>::Diff: Sync,

§

impl<L, CI> Unpin for OrdKeyBuilder<L, CI>
where <L as Layout>::KeyContainer: Unpin, <L as Layout>::OffsetContainer: Unpin, <L as Layout>::TimeContainer: Unpin, <L as Layout>::DiffContainer: Unpin, CI: Unpin, <<L as Layout>::Target as Update>::Time: Unpin, <<L as Layout>::Target as Update>::Diff: Unpin,

§

impl<L, CI> UnwindSafe for OrdKeyBuilder<L, CI>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CopyAs<T> for T

source§

fn copy_as(self) -> T

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<'a, S, T> Semigroup<&'a S> for T
where T: Semigroup<S>,

source§

fn plus_equals(&mut self, rhs: &&'a S)

The method of std::ops::AddAssign, for types that do not implement AddAssign.
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.