pub enum StaticSensitivity {
Implicit {
reads: Vec<SymbolKey>,
},
Explicit {
edges: Vec<(SymbolKey, EdgeKind)>,
},
None,
}Expand description
(NL-037, NL-038 — Task 7 populates the None case only; Task 8 is where
always_comb/always_latch get a real Implicit and always_ff/plain
always @(...) get a real Explicit.) A process’s static wake
condition.
Variants§
Implicit
always_comb/always_latch (Task 8): the procedure’s own read-set,
via the same ReadSetLattice/run_dataflow machinery assign
statements use (Decision 1).
Explicit
always_ff/plain always @(posedge/negedge ...) (Task 8): the
explicit edge-sensitivity list.
None
initial/final (Task 7, NL-037): no sensitivity at all — these
run once, at time zero / end-of-simulation, never re-triggered by a
signal change. Also the placeholder Task 7 leaves on
always/always_comb/always_latch/always_ff process kinds
until Task 8 fills in their real Implicit/Explicit derivation
(documented per call site — see build_processes).
Trait Implementations§
Source§impl Clone for StaticSensitivity
impl Clone for StaticSensitivity
Source§impl Debug for StaticSensitivity
impl Debug for StaticSensitivity
Source§impl Default for StaticSensitivity
impl Default for StaticSensitivity
impl Eq for StaticSensitivity
Source§impl PartialEq for StaticSensitivity
impl PartialEq for StaticSensitivity
impl StructuralPartialEq for StaticSensitivity
Auto Trait Implementations§
impl Freeze for StaticSensitivity
impl RefUnwindSafe for StaticSensitivity
impl Send for StaticSensitivity
impl Sync for StaticSensitivity
impl Unpin for StaticSensitivity
impl UnsafeUnpin for StaticSensitivity
impl UnwindSafe for StaticSensitivity
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.