public SyntaxChecker(SyntaxCheckerTokenManager tm)
 {
     token_source = tm;
     token = new Token();
     mcc_ntk = -1;
     mcc_gen = 0;
     for (int i = 0; i < 25; i++) mcc_la1[i] = -1;
 }
 public SyntaxChecker(System.IO.TextReader stream)
 {
     mcc_input_stream = new SimpleCharStream(stream, 1, 1);
     token_source = new SyntaxCheckerTokenManager(mcc_input_stream);
     token = new Token();
     mcc_ntk = -1;
     mcc_gen = 0;
     for (int i = 0; i < 25; i++) mcc_la1[i] = -1;
 }
 private Token mcc_consume_token(int kind)
 {
     Token oldToken = null;
     if ((oldToken = token).next != null) token = token.next;
     else token = token.next = token_source.GetNextToken();
     mcc_ntk = -1;
     if (token.kind == kind) {
       mcc_gen++;
       return token;
     }
     token = oldToken;
     mcc_kind = kind;
     throw GenerateParseException();
 }
 public void ReInit(System.IO.TextReader stream)
 {
     mcc_input_stream.ReInit(stream, 1, 1);
     token_source.ReInit(mcc_input_stream);
     token = new Token();
     mcc_ntk = -1;
     mcc_gen = 0;
     for (int i = 0; i < 25; i++) mcc_la1[i] = -1;
 }
 public Token GetNextToken()
 {
     if (token.next != null) token = token.next;
     else token = token.next = token_source.GetNextToken();
     mcc_ntk = -1;
     mcc_gen++;
     return token;
 }