pub enum RedeliveredFire {
WakeOwed,
NotOwed,
RefusedTerminal,
}Expand description
The recorder seam’s answer to a REDELIVERY of an already-recorded timer
fire (EngineHandle::record_redelivered_timer_fire).
A redelivery NEVER appends: the fire it re-serves is durable by
definition (the caller observed TimerFired as the timer’s disposition),
so the only question is whether a live wake is still owed — and answering
it through the generic append path would let a timer re-armed since the
caller’s observation record a PREMATURE TimerFired for the new arming.
Variants§
WakeOwed
The timer’s last event in the active segment is still the recorded fire being redelivered. The recorder’s tracked head was reconciled forward to the durable head (the aion#145 sequence repair), and the caller must deliver the owed mailbox wake.
NotOwed
The timer has moved on since the caller’s observation — re-armed to a new arming, or cancelled. Nothing was appended, nothing reconciled, and no wake is owed: the workflow demonstrably ran past the recorded fire to move the timer, so the wake it once owed was consumed.
RefusedTerminal
The active run already recorded a terminal. Nothing was appended and no wake may follow — a wake would reschedule a terminated run.
Trait Implementations§
Source§impl Clone for RedeliveredFire
impl Clone for RedeliveredFire
Source§fn clone(&self) -> RedeliveredFire
fn clone(&self) -> RedeliveredFire
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for RedeliveredFire
Source§impl Debug for RedeliveredFire
impl Debug for RedeliveredFire
impl Eq for RedeliveredFire
Source§impl PartialEq for RedeliveredFire
impl PartialEq for RedeliveredFire
impl StructuralPartialEq for RedeliveredFire
Auto Trait Implementations§
impl Freeze for RedeliveredFire
impl RefUnwindSafe for RedeliveredFire
impl Send for RedeliveredFire
impl Sync for RedeliveredFire
impl Unpin for RedeliveredFire
impl UnsafeUnpin for RedeliveredFire
impl UnwindSafe for RedeliveredFire
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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§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
key and return true if they are equal.