eval method

  1. @override
Object eval(
  1. DataInstance? model,
  2. EvaluationContext context
)
override

Short-circuits: b isn't evaluated when a decides the result.

Implementation

@override
Object eval(DataInstance? model, EvaluationContext context) {
  final x = toBoolean(a.eval(model, context));
  if ((!x && op == BoolOp.and) || (x && op == BoolOp.or)) return x;
  return toBoolean(b.eval(model, context));
}