isMathOn method

bool isMathOn ([String op ])

Implementation

bool isMathOn([String op]) {
  if (!mathOn) return false;

  if (op == '/' &&
      math != MathConstants.always &&
      (parensStack?.isEmpty ?? true)) {
    return false;
  }

  if (math > MathConstants.parensDivision) {
    return parensStack?.isNotEmpty ?? false;
  }

  return true;

// 3.7.1 20180718
//  contexts.Eval.prototype.isMathOn = function (op) {
//      if (!this.mathOn) {
//          return false;
//      }
//      if (op === '/' && this.math !== Constants.Math.ALWAYS && (!this.parensStack || !this.parensStack.length)) {
//          return false;
//      }
//      if (this.math > Constants.Math.PARENS_DIVISION) {
//          return this.parensStack && this.parensStack.length;
//      }
//      return true;
//  };
}