pub enum Execution<A: Aggregate, P, const N: usize> {
Ignored,
Executed {
position: P,
events: Events<EventOf<A>, N>,
},
}Expand description
Outcome of one CommandRepository::execute — the aggregate-side dual of
Reaction.
Two variants, exactly mirroring Handle::handle’s own Option: a no-op
decision persists nothing and has no position; an accepted command’s events
are durable and carry the $all position they landed at.
#[must_use]: the Executed position is the read-your-writes token — a
caller that reads its own write back needs it (#330).
Variants§
Ignored
Handle::handle returned Ok(None) — accepted, decided nothing.
No append was issued, so root keeps its version, no GlobalSeq
is burned, and there is no position. Read the unchanged state off root.
Executed
The command was accepted and its events are durable.
Trait Implementations§
Auto Trait Implementations§
impl<A, P, const N: usize> Freeze for Execution<A, P, N>
impl<A, P, const N: usize> RefUnwindSafe for Execution<A, P, N>
impl<A, P, const N: usize> Send for Execution<A, P, N>where
P: Send,
impl<A, P, const N: usize> Sync for Execution<A, P, N>where
P: Sync,
impl<A, P, const N: usize> Unpin for Execution<A, P, N>
impl<A, P, const N: usize> UnsafeUnpin for Execution<A, P, N>
impl<A, P, const N: usize> UnwindSafe for Execution<A, P, N>
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.