//! Transaction management traits.
usecrate::error::Result;usecrate::types::TxnMode;/// A manager for creating and committing transactions.
////// This trait is generic over the transaction type it manages.
pubtraitTxnManager<'a, T> {/// Begins a new transaction in the specified mode.
fnbegin(&'aself, mode: TxnMode)->Result<T>;/// Commits a transaction, applying its changes to the store.
fncommit(&'aself, txn: T)->Result<()>;/// Rolls back a transaction, discarding its changes.
fnrollback(&'aself, txn: T)->Result<()>;}