pub struct DraftExecutor<S> { /* private fields */ }Expand description
Lys’s executor over the existing target owner’s atomic operation.
Trait Implementations§
Source§impl<S: AtomicDraftStore> Executor for DraftExecutor<S>
impl<S: AtomicDraftStore> Executor for DraftExecutor<S>
Source§type Error = DraftError
type Error = DraftError
A product storage or execution failure.
Source§fn receipt(&self, draft: &str) -> Result<Option<Execution>, DraftError>
fn receipt(&self, draft: &str) -> Result<Option<Execution>, DraftError>
Read the committed outcome before attempting execution. Read more
Source§fn execute_and_record(
&mut self,
draft: &ApprovedDraft,
) -> Result<Execution, DraftError>
fn execute_and_record( &mut self, draft: &ApprovedDraft, ) -> Result<Execution, DraftError>
Atomically apply and record once per draft id; concurrent calls return the same receipt.
A stored id with another digest must be refused without applying anything. Read more
Auto Trait Implementations§
impl<S> Freeze for DraftExecutor<S>where
S: Freeze,
impl<S> RefUnwindSafe for DraftExecutor<S>where
S: RefUnwindSafe,
impl<S> Send for DraftExecutor<S>where
S: Send,
impl<S> Sync for DraftExecutor<S>where
S: Sync,
impl<S> Unpin for DraftExecutor<S>where
S: Unpin,
impl<S> UnsafeUnpin for DraftExecutor<S>where
S: UnsafeUnpin,
impl<S> UnwindSafe for DraftExecutor<S>where
S: UnwindSafe,
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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