pub struct HazardSpec {
pub key: &'static str,
pub ftti_ms: u32,
pub settle_ms: u32,
pub monitors: &'static [HazardMonitorSpec],
pub sink: u16,
pub reaction_id: u16,
pub rungs: &'static [RungSpec],
pub cell: &'static HazardCell,
}Expand description
One contracted hazard (contracts.hazards), lowered by the bake.
Fields§
§key: &'static strThe hazard’s contract key (<scope>/<name>), the report key.
ftti_ms: u32Declared ftti_ms; 0 = none declared.
settle_ms: u32The reacting path’s safe_state.settle_ms, added to the reaction
time as play_launch adds it; 0 = none.
monitors: &'static [HazardMonitorSpec]The faults the hazard covers; any one of them is the hazard.
sink: u16Rate-table row of the safe_state.emits publisher, or NO_SINK.
reaction_id: u16phase-462 W3c – the id the reaction hook receives when this hazard is DETECTED (the reacting path’s, in the model’s one reaction id space shared with supervised routes); 0 = no safe-state entry to start.
rungs: &'static [RungSpec]play_launch phase 96 W4.2 (phase 85 D4) – the hazard’s ladder, top rung first. Empty: no rung route is monitored.
cell: &'static HazardCellThe observer’s state.
Trait Implementations§
Source§impl Clone for HazardSpec
impl Clone for HazardSpec
Source§fn clone(&self) -> HazardSpec
fn clone(&self) -> HazardSpec
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 moreimpl Copy for HazardSpec
Auto Trait Implementations§
impl Freeze for HazardSpec
impl RefUnwindSafe for HazardSpec
impl Send for HazardSpec
impl Sync for HazardSpec
impl Unpin for HazardSpec
impl UnsafeUnpin for HazardSpec
impl UnwindSafe for HazardSpec
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