Struct redb::ReadTransaction
source · pub struct ReadTransaction { /* private fields */ }
Expand description
A read-only transaction
Read-only transactions may exist concurrently with writes
Implementations§
source§impl ReadTransaction
impl ReadTransaction
sourcepub fn open_table<K: Key + 'static, V: Value + 'static>(
&self,
definition: TableDefinition<'_, K, V>,
) -> Result<ReadOnlyTable<K, V>, TableError>
pub fn open_table<K: Key + 'static, V: Value + 'static>( &self, definition: TableDefinition<'_, K, V>, ) -> Result<ReadOnlyTable<K, V>, TableError>
Open the given table
sourcepub fn open_untyped_table(
&self,
handle: impl TableHandle,
) -> Result<ReadOnlyUntypedTable, TableError>
pub fn open_untyped_table( &self, handle: impl TableHandle, ) -> Result<ReadOnlyUntypedTable, TableError>
Open the given table without a type
sourcepub fn open_multimap_table<K: Key + 'static, V: Key + 'static>(
&self,
definition: MultimapTableDefinition<'_, K, V>,
) -> Result<ReadOnlyMultimapTable<K, V>, TableError>
pub fn open_multimap_table<K: Key + 'static, V: Key + 'static>( &self, definition: MultimapTableDefinition<'_, K, V>, ) -> Result<ReadOnlyMultimapTable<K, V>, TableError>
Open the given table
sourcepub fn open_untyped_multimap_table(
&self,
handle: impl MultimapTableHandle,
) -> Result<ReadOnlyUntypedMultimapTable, TableError>
pub fn open_untyped_multimap_table( &self, handle: impl MultimapTableHandle, ) -> Result<ReadOnlyUntypedMultimapTable, TableError>
Open the given table without a type
sourcepub fn list_tables(&self) -> Result<impl Iterator<Item = UntypedTableHandle>>
pub fn list_tables(&self) -> Result<impl Iterator<Item = UntypedTableHandle>>
List all the tables
sourcepub fn list_multimap_tables(
&self,
) -> Result<impl Iterator<Item = UntypedMultimapTableHandle>>
pub fn list_multimap_tables( &self, ) -> Result<impl Iterator<Item = UntypedMultimapTableHandle>>
List all the multimap tables
sourcepub fn close(self) -> Result<(), TransactionError>
pub fn close(self) -> Result<(), TransactionError>
Close the transaction
Transactions are automatically closed when they and all objects referencing them have been dropped, so this method does not normally need to be called. This method can be used to ensure that there are no outstanding objects remaining.
Returns ReadTransactionStillInUse
error if a table or other object retrieved from the transaction still references this transaction
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ReadTransaction
impl !RefUnwindSafe for ReadTransaction
impl Send for ReadTransaction
impl Sync for ReadTransaction
impl Unpin for ReadTransaction
impl !UnwindSafe for ReadTransaction
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