[][src]Struct thingvellir::Commit

pub struct Commit<Data>(_, _);

Specifies how the execute_mut should be committed to the upstream.

This allows you to control the durability of your data mutation.

Implementations

impl<Data> Commit<Data>[src]

pub fn immediately(data: Data) -> Self[src]

Persist the item immediately. The execution future will not resolve until your write has been been acknowledged by the upstream layer.

pub fn default(data: Data) -> Self[src]

Persist the data, using the default persistence policy for the service.

pub fn within(data: Data, duration: Duration) -> Self[src]

Ensure that the data is persisted within a given duration.

pub unsafe fn noop(data: Data) -> Self[src]

The mutation resulted in a no-op. Do not try to persist the data in any way.

Safety

This function is unsafe, as it's up to you to make sure to only call this if and only if the data truly did not change. Since you're getting a &mut to the data, this contract cannot be statically enforced. So, it's up to you to use correctly.

Auto Trait Implementations

impl<Data> RefUnwindSafe for Commit<Data> where
    Data: RefUnwindSafe

impl<Data> Send for Commit<Data> where
    Data: Send

impl<Data> Sync for Commit<Data> where
    Data: Sync

impl<Data> Unpin for Commit<Data> where
    Data: Unpin

impl<Data> UnwindSafe for Commit<Data> where
    Data: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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