analyzeExpression method

bool analyzeExpression()

Implementation

bool analyzeExpression() {
  error = '';
  value = null;

  if (expression.isEmpty) {
    _raiseError("Empty expression");
    return false;
  }

  _stackClear();
  _source = expression;
  _pos = 0;

  _nextToken();
  _parseExpression();

  if (_token != ExprToken.end_ || _stackCount() != 1) {
    if (error.isEmpty) _raiseError("Invalid end token");
    return false;
  }

  value = _pop();
  return error.isEmpty;
}