#[repr(u8)]pub enum MultiStore {
Standard(StandardMultiStore),
}Variants§
Standard(StandardMultiStore)
Implementations§
Source§impl MultiStore
impl MultiStore
pub fn standard(config: MultiStoreConfig) -> Self
Source§impl MultiStore
impl MultiStore
pub fn testing_memory() -> Self
pub fn testing_memory_with_eventbus(event_bus: EventBus) -> Self
Sourcepub fn hot(&self) -> Option<&HotStorage>
pub fn hot(&self) -> Option<&HotStorage>
Get access to the hot storage tier.
Returns None if the hot tier is not configured.
Source§impl MultiStore
impl MultiStore
Sourcepub fn range(
&self,
range: EncodedKeyRange,
version: CommitVersion,
batch_size: usize,
) -> MultiVersionRangeIterator<'_>
pub fn range( &self, range: EncodedKeyRange, version: CommitVersion, batch_size: usize, ) -> MultiVersionRangeIterator<'_>
Create an iterator for forward range queries.
This properly handles high version density by scanning until batch_size unique logical keys are collected. The iterator yields individual entries and maintains cursor state internally.
Sourcepub fn range_rev(
&self,
range: EncodedKeyRange,
version: CommitVersion,
batch_size: usize,
) -> MultiVersionRangeIterator<'_>
pub fn range_rev( &self, range: EncodedKeyRange, version: CommitVersion, batch_size: usize, ) -> MultiVersionRangeIterator<'_>
Create an iterator for reverse range queries.
This properly handles high version density by scanning until batch_size unique logical keys are collected. The iterator yields individual entries in reverse key order and maintains cursor state internally.
Trait Implementations§
Source§impl Clone for MultiStore
impl Clone for MultiStore
Source§fn clone(&self) -> MultiStore
fn clone(&self) -> MultiStore
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl MultiVersionCommit for MultiStore
impl MultiVersionCommit for MultiStore
Source§impl MultiVersionContains for MultiStore
impl MultiVersionContains for MultiStore
Source§fn contains(&self, key: &EncodedKey, version: CommitVersion) -> Result<bool>
fn contains(&self, key: &EncodedKey, version: CommitVersion) -> Result<bool>
Check if a key exists at a specific version.
Source§impl MultiVersionGet for MultiStore
impl MultiVersionGet for MultiStore
Source§fn get(
&self,
key: &EncodedKey,
version: CommitVersion,
) -> Result<Option<MultiVersionValues>>
fn get( &self, key: &EncodedKey, version: CommitVersion, ) -> Result<Option<MultiVersionValues>>
Get the value for a key at a specific version.
Source§impl MultiVersionGetPrevious for MultiStore
impl MultiVersionGetPrevious for MultiStore
Source§fn get_previous_version(
&self,
key: &EncodedKey,
before_version: CommitVersion,
) -> Result<Option<MultiVersionValues>>
fn get_previous_version( &self, key: &EncodedKey, before_version: CommitVersion, ) -> Result<Option<MultiVersionValues>>
Get the previous version of a key before the given version. Read more
impl MultiVersionStore for MultiStore
Auto Trait Implementations§
impl Freeze for MultiStore
impl !RefUnwindSafe for MultiStore
impl Send for MultiStore
impl Sync for MultiStore
impl Unpin for MultiStore
impl UnsafeUnpin for MultiStore
impl !UnwindSafe for MultiStore
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more