pub enum ExternalEffectSettlement {
NotStarted,
Running,
Succeeded,
Failed,
InterruptedUnknown,
}Expand description
Durable settlement state for an external effect attempt.
InterruptedUnknown is the fail-closed state for a process/network/external
mutation that may have executed but whose result was not durably committed.
Such work must be reconciled explicitly; automatic replay is unsafe.
Variants§
Implementations§
Source§impl ExternalEffectSettlement
impl ExternalEffectSettlement
pub fn may_have_executed(self) -> bool
Sourcepub fn allows_automatic_non_idempotent_replay(self) -> bool
pub fn allows_automatic_non_idempotent_replay(self) -> bool
Whether recovery may automatically execute the same non-idempotent
effect again. Only a durably known NotStarted attempt is safe by
default; callers may layer a stronger idempotency contract separately.
pub fn requires_reconciliation(self) -> bool
Trait Implementations§
Source§impl Clone for ExternalEffectSettlement
impl Clone for ExternalEffectSettlement
impl Copy for ExternalEffectSettlement
Source§impl Debug for ExternalEffectSettlement
impl Debug for ExternalEffectSettlement
Source§impl<'de> Deserialize<'de> for ExternalEffectSettlement
impl<'de> Deserialize<'de> for ExternalEffectSettlement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ExternalEffectSettlement
Source§impl PartialEq for ExternalEffectSettlement
impl PartialEq for ExternalEffectSettlement
Source§impl Serialize for ExternalEffectSettlement
impl Serialize for ExternalEffectSettlement
impl StructuralPartialEq for ExternalEffectSettlement
Auto Trait Implementations§
impl Freeze for ExternalEffectSettlement
impl RefUnwindSafe for ExternalEffectSettlement
impl Send for ExternalEffectSettlement
impl Sync for ExternalEffectSettlement
impl Unpin for ExternalEffectSettlement
impl UnsafeUnpin for ExternalEffectSettlement
impl UnwindSafe for ExternalEffectSettlement
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