pub struct ConditionEval<'a, S> {
pub state: &'a S,
pub values: &'a ValueStore,
pub conditions: &'a ConditionMap<S>,
pub source_skipped: bool,
pub source_errored: bool,
}Expand description
Evaluation context handed to conditions when a source node completes (or fails).
Conditions never mutate anything; they read the consumer state and the value store, plus two engine-computed flags describing how the source node’s execution went.
Fields§
§state: &'a SThe branch state produced by the source node’s execution (pre-merge).
values: &'a ValueStoreThe engine-owned value store, after the source’s outputs were written.
conditions: &'a ConditionMap<S>Named condition registry for Condition::Named resolution.
source_skipped: booltrue when the source node’s execution was bypassed by BspSkip propagation or
any value it produced carries the skip marker (dataflow profile).
source_errored: booltrue when evaluation happens in the error context: the source node failed and
its recovery policy routed the failure to error edges instead of aborting the run.
Auto Trait Implementations§
impl<'a, S> !RefUnwindSafe for ConditionEval<'a, S>
impl<'a, S> !UnwindSafe for ConditionEval<'a, S>
impl<'a, S> Freeze for ConditionEval<'a, S>
impl<'a, S> Send for ConditionEval<'a, S>
impl<'a, S> Sync for ConditionEval<'a, S>
impl<'a, S> Unpin for ConditionEval<'a, S>
impl<'a, S> UnsafeUnpin for ConditionEval<'a, S>where
&'a S: UnsafeUnpin,
&'a HashMap<String, Arc<dyn Fn(&S, &ValueStore) -> bool + Send + Sync>>: UnsafeUnpin,
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