pub enum SettlementObserverStatus {
NotRegistered,
Skipped {
reason: SettlementSkipReason,
},
Observed {
outcome: SettlementOutcome,
},
HookFailed {
class: SettlementFailureClass,
reason: SettlementFailureReason,
},
}Expand description
Status the kernel records for each settlement observer invocation.
Settlement runs post-dispatch: regardless of which variant lands, the receipt has already been signed and persisted. The variants document only what the observer slot did with the hook’s return, not whether the receipt committed (it always committed).
Variants§
NotRegistered
No settlement hook is registered on this kernel; the observation was not produced.
Skipped
The receipt requires no settlement work.
Fields
§
reason: SettlementSkipReasonObserved
The hook accepted the observation and returned an outcome classification. The downstream lifecycle is then driven by the retry policy and dead-letter machinery.
Fields
§
outcome: SettlementOutcomeHookFailed
Observation construction or the hook returned a typed failure.
Implementations§
Source§impl SettlementObserverStatus
impl SettlementObserverStatus
pub const fn skipped(reason: SettlementSkipReason) -> Self
pub fn hook_failed(err: &SettlementHookError) -> Self
Trait Implementations§
Source§impl Clone for SettlementObserverStatus
impl Clone for SettlementObserverStatus
Source§fn clone(&self) -> SettlementObserverStatus
fn clone(&self) -> SettlementObserverStatus
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SettlementObserverStatus
impl Debug for SettlementObserverStatus
impl Eq for SettlementObserverStatus
Source§impl PartialEq for SettlementObserverStatus
impl PartialEq for SettlementObserverStatus
impl StructuralPartialEq for SettlementObserverStatus
Auto Trait Implementations§
impl Freeze for SettlementObserverStatus
impl RefUnwindSafe for SettlementObserverStatus
impl Send for SettlementObserverStatus
impl Sync for SettlementObserverStatus
impl Unpin for SettlementObserverStatus
impl UnsafeUnpin for SettlementObserverStatus
impl UnwindSafe for SettlementObserverStatus
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more