pub struct MemoryStore { /* private fields */ }
Expand description
An in-memory only store that will forget all the E2EE key once it’s dropped.
Implementations§
Source§impl MemoryStore
impl MemoryStore
Trait Implementations§
Source§impl CryptoStore for MemoryStore
impl CryptoStore for MemoryStore
Source§type Error = Infallible
type Error = Infallible
The error type used by this crypto store.
Source§fn load_account<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<Account>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn load_account<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<Account>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Load an account that was previously stored.
Source§fn load_identity<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<PrivateCrossSigningIdentity>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn load_identity<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<PrivateCrossSigningIdentity>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Try to load a private cross signing identity, if one is stored.
Source§fn next_batch_token<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn next_batch_token<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Load the next-batch token for a to-device query, if any.
Source§fn save_pending_changes<'life0, 'async_trait>(
&'life0 self,
changes: PendingChanges,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn save_pending_changes<'life0, 'async_trait>(
&'life0 self,
changes: PendingChanges,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Save the set of changes to the store. Read more
Source§fn save_changes<'life0, 'async_trait>(
&'life0 self,
changes: Changes,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn save_changes<'life0, 'async_trait>(
&'life0 self,
changes: Changes,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Save the set of changes to the store. Read more
Source§fn save_inbound_group_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
sessions: Vec<InboundGroupSession>,
backed_up_to_version: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn save_inbound_group_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
sessions: Vec<InboundGroupSession>,
backed_up_to_version: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Save a list of inbound group sessions to the store. Read more
Source§fn get_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
sender_key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<Session>>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
sender_key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<Session>>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get all the sessions that belong to the given sender key. Read more
Source§fn get_inbound_group_session<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
session_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_inbound_group_session<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
session_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Get the inbound group session from our store. Read more
Source§fn get_withheld_info<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
session_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<RoomKeyWithheldEvent>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_withheld_info<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
session_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<RoomKeyWithheldEvent>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Get withheld info for this key.
Allows to know if the session was not sent on purpose.
This only returns withheld info sent by the owner of the group session,
not the one you can get from a response to a key request from
another of your device.
Source§fn get_inbound_group_sessions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_inbound_group_sessions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all the inbound group sessions we have stored.
Source§fn inbound_group_session_counts<'life0, 'life1, 'async_trait>(
&'life0 self,
backup_version: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<RoomKeyCounts, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn inbound_group_session_counts<'life0, 'life1, 'async_trait>(
&'life0 self,
backup_version: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<RoomKeyCounts, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the number inbound group sessions we have and how many of them are
backed up.
Source§fn get_inbound_group_sessions_for_device_batch<'life0, 'async_trait>(
&'life0 self,
sender_key: Curve25519PublicKey,
sender_data_type: SenderDataType,
after_session_id: Option<String>,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_inbound_group_sessions_for_device_batch<'life0, 'async_trait>(
&'life0 self,
sender_key: Curve25519PublicKey,
sender_data_type: SenderDataType,
after_session_id: Option<String>,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a batch of inbound group sessions for the device with the supplied
curve key, whose sender data is of the supplied type. Read more
Source§fn inbound_group_sessions_for_backup<'life0, 'life1, 'async_trait>(
&'life0 self,
backup_version: &'life1 str,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn inbound_group_sessions_for_backup<'life0, 'life1, 'async_trait>(
&'life0 self,
backup_version: &'life1 str,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Return a batch of [‘InboundGroupSession’] (“room keys”) that have not
yet been backed up in the supplied backup version. Read more
Source§fn mark_inbound_group_sessions_as_backed_up<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
backup_version: &'life1 str,
room_and_session_ids: &'life2 [(&'life3 RoomId, &'life4 str)],
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn mark_inbound_group_sessions_as_backed_up<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
backup_version: &'life1 str,
room_and_session_ids: &'life2 [(&'life3 RoomId, &'life4 str)],
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Store the fact that the supplied sessions were backed up into the backup
with version
backup_version
. Read moreSource§fn reset_backup_state<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn reset_backup_state<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Reset the backup state of all the stored inbound group sessions. Read more
Source§fn load_backup_keys<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<BackupKeys, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn load_backup_keys<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<BackupKeys, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get the backup keys we have stored.
Source§fn get_outbound_group_session<'life0, 'life1, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
) -> Pin<Box<dyn Future<Output = Result<Option<OutboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_outbound_group_session<'life0, 'life1, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
) -> Pin<Box<dyn Future<Output = Result<Option<OutboundGroupSession>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the outbound group session we have stored that is used for the
given room.
Source§fn load_tracked_users<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TrackedUser>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn load_tracked_users<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TrackedUser>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Provide the list of users whose devices we are keeping track of, and
whether they are considered dirty/outdated.
Source§fn save_tracked_users<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
tracked_users: &'life1 [(&'life2 UserId, bool)],
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn save_tracked_users<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
tracked_users: &'life1 [(&'life2 UserId, bool)],
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Update the list of users whose devices we are keeping track of, and
whether they are considered dirty/outdated. Read more
Source§fn get_device<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
device_id: &'life2 DeviceId,
) -> Pin<Box<dyn Future<Output = Result<Option<DeviceData>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_device<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
device_id: &'life2 DeviceId,
) -> Pin<Box<dyn Future<Output = Result<Option<DeviceData>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Get the device for the given user with the given device ID. Read more
Source§fn get_user_devices<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
) -> Pin<Box<dyn Future<Output = Result<HashMap<OwnedDeviceId, DeviceData>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_devices<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
) -> Pin<Box<dyn Future<Output = Result<HashMap<OwnedDeviceId, DeviceData>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get all the devices of the given user. Read more
Source§fn get_own_device<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<DeviceData, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_own_device<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<DeviceData, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get the device for the current client. Read more
Source§fn get_user_identity<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
) -> Pin<Box<dyn Future<Output = Result<Option<UserIdentityData>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_identity<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
) -> Pin<Box<dyn Future<Output = Result<Option<UserIdentityData>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the user identity that is attached to the given user id. Read more
Source§fn is_message_known<'life0, 'life1, 'async_trait>(
&'life0 self,
message_hash: &'life1 OlmMessageHash,
) -> Pin<Box<dyn Future<Output = Result<bool, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn is_message_known<'life0, 'life1, 'async_trait>(
&'life0 self,
message_hash: &'life1 OlmMessageHash,
) -> Pin<Box<dyn Future<Output = Result<bool, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Check if a hash for an Olm message stored in the database.
Source§fn get_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId,
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId,
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get an outgoing secret request that we created that matches the given
request id. Read more
Source§fn get_secret_request_by_info<'life0, 'life1, 'async_trait>(
&'life0 self,
key_info: &'life1 SecretInfo,
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_secret_request_by_info<'life0, 'life1, 'async_trait>(
&'life0 self,
key_info: &'life1 SecretInfo,
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get an outgoing key request that we created that matches the given
requested key info. Read more
Source§fn get_unsent_secret_requests<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<GossipRequest>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_unsent_secret_requests<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<GossipRequest>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all outgoing secret requests that we have in the store.
Source§fn delete_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Delete an outgoing key request that we created that matches the given
request id. Read more
Source§fn get_secrets_from_inbox<'life0, 'life1, 'async_trait>(
&'life0 self,
secret_name: &'life1 SecretName,
) -> Pin<Box<dyn Future<Output = Result<Vec<GossippedSecret>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_secrets_from_inbox<'life0, 'life1, 'async_trait>(
&'life0 self,
secret_name: &'life1 SecretName,
) -> Pin<Box<dyn Future<Output = Result<Vec<GossippedSecret>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get all the secrets with the given
SecretName
we have currently
stored.Source§fn delete_secrets_from_inbox<'life0, 'life1, 'async_trait>(
&'life0 self,
secret_name: &'life1 SecretName,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_secrets_from_inbox<'life0, 'life1, 'async_trait>(
&'life0 self,
secret_name: &'life1 SecretName,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Delete all the secrets with the given
SecretName
we have currently
stored.Source§fn get_room_settings<'life0, 'life1, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
) -> Pin<Box<dyn Future<Output = Result<Option<RoomSettings>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_room_settings<'life0, 'life1, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
) -> Pin<Box<dyn Future<Output = Result<Option<RoomSettings>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the room settings, such as the encryption algorithm or whether to
encrypt only for trusted devices. Read more
Source§fn get_custom_value<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_custom_value<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get arbitrary data from the store Read more
Source§fn set_custom_value<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
value: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_custom_value<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
value: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Put arbitrary data into the store Read more
Source§fn remove_custom_value<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_custom_value<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Remove arbitrary data into the store Read more
Source§fn try_take_leased_lock<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
lease_duration_ms: u32,
key: &'life1 str,
holder: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<bool, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn try_take_leased_lock<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
lease_duration_ms: u32,
key: &'life1 str,
holder: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<bool, Infallible>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Try to take a leased lock. Read more
Source§impl Debug for MemoryStore
impl Debug for MemoryStore
Auto Trait Implementations§
impl !Freeze for MemoryStore
impl !RefUnwindSafe for MemoryStore
impl Send for MemoryStore
impl Sync for MemoryStore
impl Unpin for MemoryStore
impl UnwindSafe for MemoryStore
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, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
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> IntoCryptoStore for Twhere
T: CryptoStore + 'static,
impl<T> IntoCryptoStore for Twhere
T: CryptoStore + 'static,
fn into_crypto_store(self) -> Arc<dyn CryptoStore<Error = CryptoStoreError>>
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