Struct TransactionWeak

Source
pub struct TransactionWeak<'t, S> { /* private fields */ }
Expand description

This is the weak version of TransactionMut.

The reason that it is called weak is because TransactionWeak can not guarantee that TableRows prove the existence of their particular row.

TransactionWeak is useful because it allowes deleting rows.

Implementations§

Source§

impl<'t, S: 'static> TransactionWeak<'t, S>

Source

pub fn try_delete<T: Table<Schema = S>>( &mut self, val: TableRow<'t, T>, ) -> Result<bool, T::Referer>

Try to delete a row from the database.

This will return an Err if there is a row that references the row that is being deleted. When this method returns Ok it will contain a bool that is either

  • true if the row was just deleted.
  • false if the row was deleted previously in this transaction.
Source

pub fn delete<T: Table<Referer = Infallible, Schema = S>>( &mut self, val: TableRow<'t, T>, ) -> bool

Delete a row from the database.

This is the infallible version of TransactionWeak::try_delete.

To be able to use this method you have to mark the table as #[no_reference] in the schema.

Source

pub fn commit(self)

Make the changes made in this TransactionWeak permanent.

If the TransactionWeak is dropped without calling this function, then the changes are rolled back.

Auto Trait Implementations§

§

impl<'t, S> Freeze for TransactionWeak<'t, S>

§

impl<'t, S> !RefUnwindSafe for TransactionWeak<'t, S>

§

impl<'t, S> !Send for TransactionWeak<'t, S>

§

impl<'t, S> !Sync for TransactionWeak<'t, S>

§

impl<'t, S> Unpin for TransactionWeak<'t, S>

§

impl<'t, S> !UnwindSafe for TransactionWeak<'t, S>

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> Same for T

Source§

type Output = T

Should always be Self
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V