reset method

void reset([
  1. TokenStream? tokStream,
  2. ParseTable? prs,
  3. RuleAction? ra,
  4. Monitor? monitor,
])

Implementation

void reset(
    [TokenStream? tokStream,
    ParseTable? prs,
    RuleAction? ra,
    Monitor? monitor]) {
  if (prs != null) {
    this.prs = prs;

    START_STATE = prs.getStartState();
    NUM_RULES = prs.getNumRules();
    NT_OFFSET = prs.getNtOffset();
    LA_STATE_OFFSET = prs.getLaStateOffset();
    EOFT_SYMBOL = prs.getEoftSymbol();
    ERROR_SYMBOL = prs.getErrorSymbol();
    ACCEPT_ACTION = prs.getAcceptAction();
    ERROR_ACTION = prs.getErrorAction();

    if (!prs.isValidForParser()) throw BadParseSymFileException();
    if (!prs.getBacktrack()) throw NotBacktrackParseTableException();
  }
  if (ra != null) {
    this.ra = ra;
  }
  if (null == tokStream) {
    reset1();
    return;
  }
  reset2(tokStream, monitor);
}