evaluate_expression

Function evaluate_expression 

Source
pub fn evaluate_expression(
    expr: &Expression,
    context: &mut EvaluationContext<'_>,
    fact_prefix: &[String],
) -> Result<OperationResult, LemmaError>
Expand description

Evaluate an expression to produce an operation result

This is the core of the evaluator - recursively processes expressions and records operations for every step.

When evaluating a rule from a document referenced by a fact (e.g., employee.some_rule? where employee is a fact with value doc other_doc), pass the fact path via fact_prefix to qualify fact lookups within that rule. For local rules, pass an empty slice.