eval method

  1. @override
Decimal? eval()
override

Implementation

@override
Decimal? eval() {
  LazyNumber? condition = _lazyParams[0];

  if (condition == null) {
    throw new AssertionError("Condition may not be null.");
  }

  Decimal? result = condition.eval();

  if (result == null) {
    throw new AssertionError("Condition may not be null.");
  }

  bool isTrue = result.compareTo(Decimal.zero) != 0;
  return isTrue ? _lazyParams[1]?.eval() : _lazyParams[2]?.eval();
}