pub enum Version {
Initial,
Number(EventNumber),
}Expand description
An aggregate version.
Variants§
Initial
The version of an aggregate that has not had any events applied to it.
Number(EventNumber)
The version of the last event applied to the aggregate.
Implementations§
Source§impl Version
impl Version
Sourcepub fn new(number: u64) -> Self
pub fn new(number: u64) -> Self
Creates a new Version from a number.
The number 0 gets interpreted as being Version::Initial, while any other number is interpreted as the
latest event number applied.
Sourcepub fn next_event(self) -> EventNumber
pub fn next_event(self) -> EventNumber
Returns the next event number in the sequence.
Sourcepub fn event_number(self) -> Option<EventNumber>
pub fn event_number(self) -> Option<EventNumber>
Gets the version number as an EventNumber, returning None if the current verison is Version::Initial.
Trait Implementations§
Source§impl From<EventNumber> for Version
impl From<EventNumber> for Version
Source§fn from(event_number: EventNumber) -> Self
fn from(event_number: EventNumber) -> Self
Converts to this type from the input type.
Source§impl From<Version> for Precondition
impl From<Version> for Precondition
Source§impl Ord for Version
impl Ord for Version
Source§impl PartialOrd for Version
impl PartialOrd for Version
impl Copy for Version
impl Eq for Version
impl StructuralPartialEq for Version
Auto Trait Implementations§
impl Freeze for Version
impl RefUnwindSafe for Version
impl Send for Version
impl Sync for Version
impl Unpin for Version
impl UnwindSafe for Version
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