eval function

Object? eval(
  1. LamExpr ast,
  2. Object? data
)

Evaluate a pre-parsed LamExpr AST against data.

Use this when parsing once and evaluating against multiple data values. data is normalized on entry (see query for details). Throws QueryError on evaluation errors.

Implementation

Object? eval(LamExpr ast, Object? data) {
  try {
    return eval_.evaluate(ast, _normalize(data));
  } on EvalException catch (e) {
    throw QueryError(e.message);
  }
}