pub struct StoredBufferedCommit { /* private fields */ }Expand description
Entity representing a buffered commit.
There should always exist either 0 or 1 of these in the store per conversation. Commits are buffered if not all proposals they reference have yet been received.
We don’t automatically zeroize on drop because the commit data is still encrypted at this point; it is not risky to leave it in memory.
Implementations§
Trait Implementations§
Source§impl BorrowPrimaryKey for StoredBufferedCommit
impl BorrowPrimaryKey for StoredBufferedCommit
type BorrowedPrimaryKey = [u8]
Source§fn borrow_primary_key(&self) -> &Self::BorrowedPrimaryKey
fn borrow_primary_key(&self) -> &Self::BorrowedPrimaryKey
Borrow this entity’s primary key without copying any data. Read more
Source§impl Clone for StoredBufferedCommit
impl Clone for StoredBufferedCommit
Source§fn clone(&self) -> StoredBufferedCommit
fn clone(&self) -> StoredBufferedCommit
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StoredBufferedCommit
impl Debug for StoredBufferedCommit
Source§impl<'de> Deserialize<'de> for StoredBufferedCommit
impl<'de> Deserialize<'de> for StoredBufferedCommit
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Entity for StoredBufferedCommit
impl Entity for StoredBufferedCommit
Source§const COLLECTION_NAME: &'static str = "mls_buffered_commits"
const COLLECTION_NAME: &'static str = "mls_buffered_commits"
The table name for this entity
Source§fn get(
conn: &Connection,
key: &Self::PrimaryKey,
) -> CryptoKeystoreResult<Option<Self>>
fn get( conn: &Connection, key: &Self::PrimaryKey, ) -> CryptoKeystoreResult<Option<Self>>
Get an entity by its primary key. Read more
Source§fn count(conn: &Connection) -> CryptoKeystoreResult<u32>
fn count(conn: &Connection) -> CryptoKeystoreResult<u32>
Count the number of entities of this type in the database.
Source§fn load_all(conn: &Connection) -> CryptoKeystoreResult<Vec<Self>>
fn load_all(conn: &Connection) -> CryptoKeystoreResult<Vec<Self>>
Retrieve all entities of this type from the database.
Source§impl EntityDatabaseMutation for StoredBufferedCommit
impl EntityDatabaseMutation for StoredBufferedCommit
Source§type AutoGeneratedFields = ()
type AutoGeneratedFields = ()
The
pre_save method might generate or update some fields of the item. The canonical example is an updated_at
field. Read moreSource§fn save(&self, tx: &Transaction<'_>) -> CryptoKeystoreResult<()>
fn save(&self, tx: &Transaction<'_>) -> CryptoKeystoreResult<()>
Use the transaction’s interface to save this entity to the database
Source§fn count(tx: &Transaction<'_>) -> CryptoKeystoreResult<u32>
fn count(tx: &Transaction<'_>) -> CryptoKeystoreResult<u32>
Use the transaction’s interface to count the number of entities of this type in the database.
Source§fn delete(
tx: &Transaction<'_>,
id: &Self::PrimaryKey,
) -> CryptoKeystoreResult<bool>
fn delete( tx: &Transaction<'_>, id: &Self::PrimaryKey, ) -> CryptoKeystoreResult<bool>
Use the transaction’s inteface to delete this entity from the database. Read more
Source§fn pre_save(&mut self) -> CryptoKeystoreResult<Self::AutoGeneratedFields>
fn pre_save(&mut self) -> CryptoKeystoreResult<Self::AutoGeneratedFields>
Adjust self before saving. Read more
Source§impl EntityDeleteBorrowed for StoredBufferedCommit
impl EntityDeleteBorrowed for StoredBufferedCommit
Source§fn delete_borrowed(
tx: &Transaction<'_>,
id: &<Self as BorrowPrimaryKey>::BorrowedPrimaryKey,
) -> CryptoKeystoreResult<bool>
fn delete_borrowed( tx: &Transaction<'_>, id: &<Self as BorrowPrimaryKey>::BorrowedPrimaryKey, ) -> CryptoKeystoreResult<bool>
Delete an entity by a borrowed form of its primary key.
Source§impl EntityGetBorrowed for StoredBufferedCommit
impl EntityGetBorrowed for StoredBufferedCommit
Source§fn get_borrowed(
conn: &Connection,
key: &Self::BorrowedPrimaryKey,
) -> CryptoKeystoreResult<Option<Self>>where
for<'pk> &'pk Self::BorrowedPrimaryKey: KeyType,
fn get_borrowed(
conn: &Connection,
key: &Self::BorrowedPrimaryKey,
) -> CryptoKeystoreResult<Option<Self>>where
for<'pk> &'pk Self::BorrowedPrimaryKey: KeyType,
Get an entity by a borrowed form of its primary key.
Source§impl PartialEq for StoredBufferedCommit
impl PartialEq for StoredBufferedCommit
Source§fn eq(&self, other: &StoredBufferedCommit) -> bool
fn eq(&self, other: &StoredBufferedCommit) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PrimaryKey for StoredBufferedCommit
impl PrimaryKey for StoredBufferedCommit
Source§type PrimaryKey = Vec<u8>
type PrimaryKey = Vec<u8>
Each distinct
PrimaryKey uniquely identifies either 0 or 1 instance. Read moreSource§fn primary_key(&self) -> Self::PrimaryKey
fn primary_key(&self) -> Self::PrimaryKey
Get this entity’s primary key. Read more
Source§impl Serialize for StoredBufferedCommit
impl Serialize for StoredBufferedCommit
Source§impl ToValue for StoredBufferedCommit
impl ToValue for StoredBufferedCommit
Source§impl Zeroize for StoredBufferedCommit
impl Zeroize for StoredBufferedCommit
impl Eq for StoredBufferedCommit
impl StructuralPartialEq for StoredBufferedCommit
Auto Trait Implementations§
impl Freeze for StoredBufferedCommit
impl RefUnwindSafe for StoredBufferedCommit
impl Send for StoredBufferedCommit
impl Sync for StoredBufferedCommit
impl Unpin for StoredBufferedCommit
impl UnsafeUnpin for StoredBufferedCommit
impl UnwindSafe for StoredBufferedCommit
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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