pub enum ActionResult {
Retract(FactHandle),
RetractByType(String),
Update(FactHandle),
ActivateAgendaGroup(String),
InsertFact {
fact_type: String,
data: TypedFacts,
},
InsertLogicalFact {
fact_type: String,
data: TypedFacts,
rule_name: String,
premises: Vec<FactHandle>,
},
CallFunction {
function_name: String,
args: Vec<String>,
},
ScheduleRule {
rule_name: String,
delay_ms: u64,
},
None,
}Expand description
Result of executing a rule action Actions can return side effects that need to be handled by the engine
Variants§
Retract(FactHandle)
Retract a fact by handle
RetractByType(String)
Retract a fact by fact type (first matching fact)
Update(FactHandle)
Update/modify a fact (trigger re-evaluation)
ActivateAgendaGroup(String)
Activate an agenda group
InsertFact
Insert a new fact
InsertLogicalFact
Insert a logical fact (with justification)
CallFunction
Call a custom function (requires function registry)
ScheduleRule
Schedule a rule to fire later
None
No side effect, just modify facts
Trait Implementations§
Source§impl Clone for ActionResult
impl Clone for ActionResult
Source§fn clone(&self) -> ActionResult
fn clone(&self) -> ActionResult
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ActionResult
impl RefUnwindSafe for ActionResult
impl Send for ActionResult
impl Sync for ActionResult
impl Unpin for ActionResult
impl UnwindSafe for ActionResult
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