pub trait StorageAdapter: Send + Sync {
// Required methods
fn get(&self, key: &str) -> StorageResult<Option<String>>;
fn put(&self, key: &str, value: String) -> StorageResult<()>;
fn del(&self, key: &str) -> StorageResult<()>;
fn list(&self, prefix: &str) -> StorageResult<Vec<String>>;
// Provided methods
fn put_preserved(&self, key: &str, value: String) -> StorageResult<()> { ... }
fn put_checkpoint(
&self,
key: &str,
value: &StorageCheckpoint,
) -> StorageResult<()> { ... }
}Required Methods§
fn get(&self, key: &str) -> StorageResult<Option<String>>
fn put(&self, key: &str, value: String) -> StorageResult<()>
fn del(&self, key: &str) -> StorageResult<()>
fn list(&self, prefix: &str) -> StorageResult<Vec<String>>
Provided Methods§
Sourcefn put_preserved(&self, key: &str, value: String) -> StorageResult<()>
fn put_preserved(&self, key: &str, value: String) -> StorageResult<()>
Preserve a migration input before a later checkpoint can replace it. Buffered adapters must commit this write before returning success.
fn put_checkpoint( &self, key: &str, value: &StorageCheckpoint, ) -> StorageResult<()>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".