redb

Struct 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

Source

pub fn open_table<K: Key + 'static, V: Value + 'static>( &self, definition: TableDefinition<'_, K, V>, ) -> Result<ReadOnlyTable<K, V>, TableError>

Open the given table

Source

pub fn open_untyped_table( &self, handle: impl TableHandle, ) -> Result<ReadOnlyUntypedTable, TableError>

Open the given table without a type

Source

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

Source

pub fn open_untyped_multimap_table( &self, handle: impl MultimapTableHandle, ) -> Result<ReadOnlyUntypedMultimapTable, TableError>

Open the given table without a type

Source

pub fn list_tables(&self) -> Result<impl Iterator<Item = UntypedTableHandle>>

List all the tables

Source

pub fn list_multimap_tables( &self, ) -> Result<impl Iterator<Item = UntypedMultimapTableHandle>>

List all the multimap tables

Source

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§

Source§

impl Debug for ReadTransaction

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 144 bytes