Struct LoadedRun
pub struct LoadedRun {Show 21 fields
pub id: Name,
pub wtype: Name,
pub version: u32,
pub codec: u8,
pub parent: Option<ParentRef>,
pub started_ms: u64,
pub deadline_ms: u64,
pub last_lsn: Lsn,
pub done: Option<(Status, u64)>,
pub result: Option<Payload>,
pub blob: Option<BlobRef>,
pub blob_chain: u64,
pub blob_depth: u8,
pub journal: Vec<u8>,
pub journal_records: u32,
pub policy: u8,
pub from: Option<Origin>,
pub updates: Vec<UpdateSlot>,
pub awaiting: FxHashMap<Seq, u32>,
pub attrs: Vec<Payload>,
pub streams: bool,
/* private fields */
}Expand description
A run held in memory.
Fields§
§id: Name§wtype: Name§version: u32§codec: u8§parent: Option<ParentRef>§started_ms: u64§deadline_ms: u64§last_lsn: Lsn§done: Option<(Status, u64)>§result: Option<Payload>§blob: Option<BlobRef>Journal prefix stored in the run store, if any: its newest frame.
blob_chain: u64Bytes of blob and the frames it extends (see
crate::store::StoreEntry::Delta), and how many frames it extends.
blob_depth: u8§journal: Vec<u8>Canonical records after blob.
journal_records: u32§policy: u8§from: Option<Origin>§updates: Vec<UpdateSlot>Accepted updates by ordinal, and their IDs.
awaiting: FxHashMap<Seq, u32>Async completions whose token is out: seq → attempt.
attrs: Vec<Payload>Search attribute objects in the order they were set.
streams: boolThe journal holds stream records (Chunk, StreamEnd), which a
finished run’s summary keeps.
Implementations§
§impl LoadedRun
impl LoadedRun
pub fn is_done(&self) -> bool
pub fn has_queued_events(&self) -> bool
pub fn has_queued_events(&self) -> bool
Whether an event for the run (a fired timer, an offered signal) is still queued for the host. Such a run is about to continue: parking it now would drop the fired timer, which only its event delivers.
pub fn armed_timers(&self) -> impl Iterator<Item = (Seq, TimerKind, u64)> + '_
pub fn armed_timers(&self) -> impl Iterator<Item = (Seq, TimerKind, u64)> + '_
Nothing can make progress without an outside event: every pending operation is a timer or a wait.
pub fn waiting_on(&self) -> impl Iterator<Item = (Seq, &str)> + '_
pub fn pending_children(&self) -> &[Seq]
pub fn buffered_signals(&self) -> usize
pub fn update(&self, id: &str) -> Option<(u64, &UpdateSlot)>
pub fn update(&self, id: &str) -> Option<(u64, &UpdateSlot)>
The accepted update with this ID, if any: its ordinal and slot.