pub trait OccurrenceStorage: Send + Sync {
// Required methods
fn read(
&self,
operation: &mut KeyValueReadScope<'_>,
) -> StorageBackendResult<()>;
fn mutate(
&self,
operation: &mut KeyValueMutation<'_>,
) -> StorageBackendResult<()>;
}Expand description
Storage for the ordered occurrence format. A provider may project these keys from native rows instead of storing independent byte values. The reader must include the requested table’s occurrence namespaces, preserve controlled reads and retained snapshots, and invoke each callback exactly once. Predecessor namespaces require existence checks and atomic retirement during source rebuilds, not value decoding. Mutations publish all projected changes atomically with the original read preconditions.
Required Methods§
fn read( &self, operation: &mut KeyValueReadScope<'_>, ) -> StorageBackendResult<()>
fn mutate( &self, operation: &mut KeyValueMutation<'_>, ) -> StorageBackendResult<()>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".