[][src]Enum cqrs_core::Precondition

pub enum Precondition {
    New,
    Exists,
    ExpectedVersion(Version),
}

A precondition that must be upheld for a command to be executed or for events to be persisted.

Variants

New

Requires that the target aggregate must not have had any events previously applied to it.

Exists

Requires that the target event at least exist, whether as a snapshot, or as having had at least one event applied.

ExpectedVersion(Version)

Requires that the target aggregate have the exact version specified.

Methods

impl Precondition[src]

pub fn verify(self, current_version: Option<Version>) -> Result<(), Self>[src]

Verifies that the precondition holds, given the current_version. If the precondition is violated, an error is returned with the precondition.

Trait Implementations

impl Eq for Precondition[src]

impl Copy for Precondition[src]

impl PartialEq<Precondition> for Precondition[src]

impl From<Version> for Precondition[src]

impl Clone for Precondition[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Display for Precondition[src]

impl Debug for Precondition[src]

impl Hash for Precondition[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

Auto Trait Implementations

Blanket Implementations

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From for T[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

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

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

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

The type returned in the event of a conversion error.