Struct akd::storage::memory::AsyncInMemoryDatabase
source · pub struct AsyncInMemoryDatabase { /* private fields */ }
Expand description
This struct represents a basic in-memory database.
Implementations§
Trait Implementations§
source§impl Clone for AsyncInMemoryDatabase
impl Clone for AsyncInMemoryDatabase
source§fn clone(&self) -> AsyncInMemoryDatabase
fn clone(&self) -> AsyncInMemoryDatabase
Returns a copy 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 Database for AsyncInMemoryDatabase
impl Database for AsyncInMemoryDatabase
source§fn get<'life0, 'life1, 'async_trait, St>(
&'life0 self,
id: &'life1 St::StorageKey
) -> Pin<Box<dyn Future<Output = Result<DbRecord, StorageError>> + Send + 'async_trait>>where
St: 'async_trait + Storable,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get<'life0, 'life1, 'async_trait, St>(
&'life0 self,
id: &'life1 St::StorageKey
) -> Pin<Box<dyn Future<Output = Result<DbRecord, StorageError>> + Send + 'async_trait>>where
St: 'async_trait + Storable,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieve a stored record from the data layer
source§fn batch_get<'life0, 'life1, 'async_trait, St>(
&'life0 self,
ids: &'life1 [St::StorageKey]
) -> Pin<Box<dyn Future<Output = Result<Vec<DbRecord>, StorageError>> + Send + 'async_trait>>where
St: 'async_trait + Storable,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn batch_get<'life0, 'life1, 'async_trait, St>(
&'life0 self,
ids: &'life1 [St::StorageKey]
) -> Pin<Box<dyn Future<Output = Result<Vec<DbRecord>, StorageError>> + Send + 'async_trait>>where
St: 'async_trait + Storable,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieve a batch of records by id
source§fn get_user_data<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 AkdLabel
) -> Pin<Box<dyn Future<Output = Result<KeyData, StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_data<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 AkdLabel
) -> Pin<Box<dyn Future<Output = Result<KeyData, StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieve the user data for a given user
source§fn get_user_state<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 AkdLabel,
flag: ValueStateRetrievalFlag
) -> Pin<Box<dyn Future<Output = Result<ValueState, StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_state<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 AkdLabel,
flag: ValueStateRetrievalFlag
) -> Pin<Box<dyn Future<Output = Result<ValueState, StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieve a specific state for a given user
source§fn set<'life0, 'async_trait>(
&'life0 self,
record: DbRecord
) -> Pin<Box<dyn Future<Output = Result<(), StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn set<'life0, 'async_trait>(
&'life0 self,
record: DbRecord
) -> Pin<Box<dyn Future<Output = Result<(), StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Set a record in the database
source§fn batch_set<'life0, 'async_trait>(
&'life0 self,
records: Vec<DbRecord>,
_state: DbSetState
) -> Pin<Box<dyn Future<Output = Result<(), StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn batch_set<'life0, 'async_trait>(
&'life0 self,
records: Vec<DbRecord>,
_state: DbSetState
) -> Pin<Box<dyn Future<Output = Result<(), StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Set multiple records in the database with a minimal set of operations
source§fn get_user_state_versions<'life0, 'life1, 'async_trait>(
&'life0 self,
keys: &'life1 [AkdLabel],
flag: ValueStateRetrievalFlag
) -> Pin<Box<dyn Future<Output = Result<HashMap<AkdLabel, (u64, AkdValue)>, StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_state_versions<'life0, 'life1, 'async_trait>(
&'life0 self,
keys: &'life1 [AkdLabel],
flag: ValueStateRetrievalFlag
) -> Pin<Box<dyn Future<Output = Result<HashMap<AkdLabel, (u64, AkdValue)>, StorageError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieve the user -> state version mapping in bulk. This is the same as get_user_states but with less data retrieved from the storage layer
source§impl Debug for AsyncInMemoryDatabase
impl Debug for AsyncInMemoryDatabase
source§impl Default for AsyncInMemoryDatabase
impl Default for AsyncInMemoryDatabase
source§fn default() -> AsyncInMemoryDatabase
fn default() -> AsyncInMemoryDatabase
Returns the “default value” for a type. Read more
source§impl StorageUtil for AsyncInMemoryDatabase
impl StorageUtil for AsyncInMemoryDatabase
source§fn batch_get_type_direct<'life0, 'async_trait, St>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Vec<DbRecord>, StorageError>> + Send + 'async_trait>>where
St: 'async_trait + Storable,
Self: 'async_trait,
'life0: 'async_trait,
fn batch_get_type_direct<'life0, 'async_trait, St>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Vec<DbRecord>, StorageError>> + Send + 'async_trait>>where
St: 'async_trait + Storable,
Self: 'async_trait,
'life0: 'async_trait,
Retrieves all stored records of a given type from the data layer, ignoring any caching or transaction pending