pub struct VecChunkCursor<K, V, T, R> { /* private fields */ }Expand description
A cursor over a VecChunk, tracking the current key and (key, val)
group starts as indices into the flat vector.
Trait Implementations§
Source§impl<K, V, T, R> Cursor for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> Cursor for VecChunkCursor<K, V, T, R>
Source§type KeyContainer = <Vector<((K, V), T, R)> as Layout>::KeyContainer
type KeyContainer = <Vector<((K, V), T, R)> as Layout>::KeyContainer
Container for update keys.
Source§type Key<'a> = <<Vector<((K, V), T, R)> as Layout>::KeyContainer as BatchContainer>::ReadItem<'a>
type Key<'a> = <<Vector<((K, V), T, R)> as Layout>::KeyContainer as BatchContainer>::ReadItem<'a>
Alias for a borrowed key.
Source§type ValContainer = <Vector<((K, V), T, R)> as Layout>::ValContainer
type ValContainer = <Vector<((K, V), T, R)> as Layout>::ValContainer
Container for update vals.
Source§type Val<'a> = <<Vector<((K, V), T, R)> as Layout>::ValContainer as BatchContainer>::ReadItem<'a>
type Val<'a> = <<Vector<((K, V), T, R)> as Layout>::ValContainer as BatchContainer>::ReadItem<'a>
Alias for a borrowed val.
Source§type ValOwn = <<Vector<((K, V), T, R)> as Layout>::ValContainer as BatchContainer>::Owned
type ValOwn = <<Vector<((K, V), T, R)> as Layout>::ValContainer as BatchContainer>::Owned
Alias for an owned val.
Source§type TimeContainer = <Vector<((K, V), T, R)> as Layout>::TimeContainer
type TimeContainer = <Vector<((K, V), T, R)> as Layout>::TimeContainer
Container for times.
Source§type TimeGat<'a> = <<Vector<((K, V), T, R)> as Layout>::TimeContainer as BatchContainer>::ReadItem<'a>
type TimeGat<'a> = <<Vector<((K, V), T, R)> as Layout>::TimeContainer as BatchContainer>::ReadItem<'a>
Alias for a borrowed time.
Source§type Time = <<Vector<((K, V), T, R)> as Layout>::TimeContainer as BatchContainer>::Owned
type Time = <<Vector<((K, V), T, R)> as Layout>::TimeContainer as BatchContainer>::Owned
Alias for an owned time.
Source§type DiffContainer = <Vector<((K, V), T, R)> as Layout>::DiffContainer
type DiffContainer = <Vector<((K, V), T, R)> as Layout>::DiffContainer
Container for diffs.
Source§type DiffGat<'a> = <<Vector<((K, V), T, R)> as Layout>::DiffContainer as BatchContainer>::ReadItem<'a>
type DiffGat<'a> = <<Vector<((K, V), T, R)> as Layout>::DiffContainer as BatchContainer>::ReadItem<'a>
Alias for a borrowed diff.
Source§type Diff = <<Vector<((K, V), T, R)> as Layout>::DiffContainer as BatchContainer>::Owned
type Diff = <<Vector<((K, V), T, R)> as Layout>::DiffContainer as BatchContainer>::Owned
Alias for an owned diff.
Source§fn key_valid(&self, s: &Self::Storage) -> bool
fn key_valid(&self, s: &Self::Storage) -> bool
Indicates if the current key is valid. Read more
Source§fn val_valid(&self, s: &Self::Storage) -> bool
fn val_valid(&self, s: &Self::Storage) -> bool
Indicates if the current value is valid. Read more
Source§fn key<'a>(&self, s: &'a Self::Storage) -> &'a K
fn key<'a>(&self, s: &'a Self::Storage) -> &'a K
A reference to the current key. Asserts if invalid.
Source§fn val<'a>(&self, s: &'a Self::Storage) -> &'a V
fn val<'a>(&self, s: &'a Self::Storage) -> &'a V
A reference to the current value. Asserts if invalid.
Source§fn get_key<'a>(&self, s: &'a Self::Storage) -> Option<&'a K>
fn get_key<'a>(&self, s: &'a Self::Storage) -> Option<&'a K>
Returns a reference to the current key, if valid.
Source§fn get_val<'a>(&self, s: &'a Self::Storage) -> Option<&'a V>
fn get_val<'a>(&self, s: &'a Self::Storage) -> Option<&'a V>
Returns a reference to the current value, if valid.
Source§fn map_times<L: FnMut(&T, &R)>(&mut self, s: &Self::Storage, logic: L)
fn map_times<L: FnMut(&T, &R)>(&mut self, s: &Self::Storage, logic: L)
Applies
logic to each pair of time and difference. Intended for mutation of the
closure’s scope.Source§fn seek_val(&mut self, s: &Self::Storage, val: &V)
fn seek_val(&mut self, s: &Self::Storage, val: &V)
Advances the cursor to the specified value.
Source§fn rewind_keys(&mut self, _s: &Self::Storage)
fn rewind_keys(&mut self, _s: &Self::Storage)
Rewinds the cursor to the first key.
Source§fn rewind_vals(&mut self, _s: &Self::Storage)
fn rewind_vals(&mut self, _s: &Self::Storage)
Rewinds the cursor to the first value for current key.
Source§fn owned_time(time: Self::TimeGat<'_>) -> Self::Time
fn owned_time(time: Self::TimeGat<'_>) -> Self::Time
Construct an owned time from a reference.
Source§fn owned_diff(diff: Self::DiffGat<'_>) -> Self::Diff
fn owned_diff(diff: Self::DiffGat<'_>) -> Self::Diff
Construct an owned diff from a reference.
Source§fn clone_time_onto(time: Self::TimeGat<'_>, onto: &mut Self::Time)
fn clone_time_onto(time: Self::TimeGat<'_>, onto: &mut Self::Time)
Clones a reference time onto an owned time.
Auto Trait Implementations§
impl<K, V, T, R> Freeze for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> RefUnwindSafe for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> Send for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> Sync for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> Unpin for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> UnsafeUnpin for VecChunkCursor<K, V, T, R>
impl<K, V, T, R> UnwindSafe for VecChunkCursor<K, V, T, R>
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.