pub enum NodeObservation {
Untouched,
Select {
saw_true: bool,
saw_false: bool,
},
Compare {
saw_true: bool,
saw_false: bool,
},
Clamp {
peak_fraction_of_bound: f32,
hops_at_bound: u32,
hops: u32,
},
}Expand description
What one AST node did across a run.
Variants§
Untouched
Never evaluated — either not a comparison/select()/clamp(), or inside
a branch the run never took.
Select
A select() condition: did it ever go each way?
Fields
Compare
A comparison operator (> < >= <= == !=), wherever it sits in the tree.
Same two-valued shape as Select — deliberately, so the
reporting logic is shared (ADR-0043). A comparison that is the direct
condition of a select() is still observed here; it is reporting that
suppresses it, because the select() names it in better words.
Fields
Clamp
A clamp(): how close the inner value came to the upper bound, and how
long it sat there. The two are opposite ends of one measurement
(ADR-0062). A peak below 1.0 across a whole run means the bound never
bit at this stimulus — the ceiling is decorative and the parameter’s real
range is narrower than the preset reads. An occupancy near 1.0 means
the opposite and worse thing: the bound bit and never let go, so the
binding is an arithmetic expression that has become a constant.
Implementations§
Trait Implementations§
Source§impl Clone for NodeObservation
impl Clone for NodeObservation
Source§fn clone(&self) -> NodeObservation
fn clone(&self) -> NodeObservation
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for NodeObservation
impl Debug for NodeObservation
Source§impl Default for NodeObservation
impl Default for NodeObservation
Source§fn default() -> NodeObservation
fn default() -> NodeObservation
Source§impl PartialEq for NodeObservation
impl PartialEq for NodeObservation
Source§fn eq(&self, other: &NodeObservation) -> bool
fn eq(&self, other: &NodeObservation) -> bool
self and other values to be equal, and is used by ==.