pub trait IDatabaseTransactionOpsCoreTyped<'a> {
// Required methods
fn get_value<'life0, 'life1, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = Option<K::Value>> + Send + 'async_trait>>
where K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn insert_entry<'life0, 'life1, 'life2, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
value: &'life2 K::Value,
) -> Pin<Box<dyn Future<Output = Option<K::Value>> + Send + 'async_trait>>
where K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
K::Value: MaybeSend + MaybeSync,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn insert_new_entry<'life0, 'life1, 'life2, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
value: &'life2 K::Value,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
K::Value: MaybeSend + MaybeSync,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn find_by_range<'life0, 'async_trait, K>(
&'life0 mut self,
key_range: Range<K>,
) -> Pin<Box<dyn Future<Output = Pin<Box<dyn Stream<Item = (K, K::Value)> + Send + '_>>> + Send + 'async_trait>>
where K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
K::Value: MaybeSend + MaybeSync,
Self: 'async_trait,
'life0: 'async_trait;
fn find_by_prefix<'life0, 'life1, 'async_trait, KP>(
&'life0 mut self,
key_prefix: &'life1 KP,
) -> Pin<Box<dyn Future<Output = Pin<Box<dyn Stream<Item = (KP::Record, <<KP as DatabaseLookup>::Record as DatabaseRecord>::Value)> + Send + '_>>> + Send + 'async_trait>>
where KP: DatabaseLookup + MaybeSend + MaybeSync + 'async_trait,
KP::Record: DatabaseKey,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn find_by_prefix_sorted_descending<'life0, 'life1, 'async_trait, KP>(
&'life0 mut self,
key_prefix: &'life1 KP,
) -> Pin<Box<dyn Future<Output = Pin<Box<dyn Stream<Item = (KP::Record, <<KP as DatabaseLookup>::Record as DatabaseRecord>::Value)> + Send + '_>>> + Send + 'async_trait>>
where KP: DatabaseLookup + MaybeSend + MaybeSync + 'async_trait,
KP::Record: DatabaseKey,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn remove_entry<'life0, 'life1, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = Option<K::Value>> + Send + 'async_trait>>
where K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn remove_by_prefix<'life0, 'life1, 'async_trait, KP>(
&'life0 mut self,
key_prefix: &'life1 KP,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where KP: DatabaseLookup + MaybeSend + MaybeSync + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
}
Expand description
Like IDatabaseTransactionOpsCore
, but typed
Implemented via blanket impl for everything that implements
IDatabaseTransactionOpsCore
that has decoders (implements
WithDecoders
).
Required Methods§
fn get_value<'life0, 'life1, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = Option<K::Value>> + Send + 'async_trait>>where
K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn insert_entry<'life0, 'life1, 'life2, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
value: &'life2 K::Value,
) -> Pin<Box<dyn Future<Output = Option<K::Value>> + Send + 'async_trait>>where
K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
K::Value: MaybeSend + MaybeSync,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn insert_new_entry<'life0, 'life1, 'life2, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
value: &'life2 K::Value,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
K::Value: MaybeSend + MaybeSync,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn find_by_range<'life0, 'async_trait, K>(
&'life0 mut self,
key_range: Range<K>,
) -> Pin<Box<dyn Future<Output = Pin<Box<dyn Stream<Item = (K, K::Value)> + Send + '_>>> + Send + 'async_trait>>where
K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
K::Value: MaybeSend + MaybeSync,
Self: 'async_trait,
'life0: 'async_trait,
fn find_by_prefix<'life0, 'life1, 'async_trait, KP>(
&'life0 mut self,
key_prefix: &'life1 KP,
) -> Pin<Box<dyn Future<Output = Pin<Box<dyn Stream<Item = (KP::Record, <<KP as DatabaseLookup>::Record as DatabaseRecord>::Value)> + Send + '_>>> + Send + 'async_trait>>where
KP: DatabaseLookup + MaybeSend + MaybeSync + 'async_trait,
KP::Record: DatabaseKey,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn find_by_prefix_sorted_descending<'life0, 'life1, 'async_trait, KP>(
&'life0 mut self,
key_prefix: &'life1 KP,
) -> Pin<Box<dyn Future<Output = Pin<Box<dyn Stream<Item = (KP::Record, <<KP as DatabaseLookup>::Record as DatabaseRecord>::Value)> + Send + '_>>> + Send + 'async_trait>>where
KP: DatabaseLookup + MaybeSend + MaybeSync + 'async_trait,
KP::Record: DatabaseKey,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_entry<'life0, 'life1, 'async_trait, K>(
&'life0 mut self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = Option<K::Value>> + Send + 'async_trait>>where
K: DatabaseKey + DatabaseRecord + MaybeSend + MaybeSync + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_by_prefix<'life0, 'life1, 'async_trait, KP>(
&'life0 mut self,
key_prefix: &'life1 KP,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
KP: DatabaseLookup + MaybeSend + MaybeSync + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.