pub enum EffectValue<T> {
None,
Value(T),
ContextualLink(ContextoidId, ContextoidId),
RelayTo(usize, Box<PropagatingEffect<T>>),
Map(HashMap<IdentificationValue, Box<PropagatingEffect<T>>>),
}Expand description
Represents the payload of a propagating effect.
This enum encapsulates various types of effect data that can be propagated
through the causal effect system. It is generic over type T to allow
flexibility in the value type.
Variants§
None
Represents the absence of a signal or evidence.
Value(T)
Represents a value of type T
ContextualLink(ContextoidId, ContextoidId)
A link to a complex, structured result in a Contextoid. As an output, this can be interpreted by a reasoning engine as a command to fetch data.
RelayTo(usize, Box<PropagatingEffect<T>>)
A dispatch command that directs the reasoning engine to dynamically jump to a specific
causaloid within the graph. The usize is the target causaloid’s index, and the Box<PropagatingEffect>
is the effect to be passed as input to that target causaloid. This enables adaptive reasoning.
Map(HashMap<IdentificationValue, Box<PropagatingEffect<T>>>)
A collection of named values, allowing for complex, structured data passing.
Implementations§
Source§impl<T> EffectValue<T>
impl<T> EffectValue<T>
Trait Implementations§
Source§impl<T: Clone> Clone for EffectValue<T>
impl<T: Clone> Clone for EffectValue<T>
Source§fn clone(&self) -> EffectValue<T>
fn clone(&self) -> EffectValue<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more