/*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .*/ /** Parse the grammar specification from standard input. This produces * sets of terminal, non-terminals, and productions which can be accessed * via static variables of the respective classes, as well as the setting * of various variables (mostly in the emit class) for small user supplied * items such as the code to scan with. */ protected static void parse_grammar_spec() { parser parser_obj; // create a parser and parse with it parser_obj = new parser(); try { if (opt_do_debug) { parser_obj.debug_parse(); } else { parser_obj.parse(); } } catch (Exception e) { // something threw an exception. catch it and emit a message so we // have a line number to work with, then re-throw it lexer.emit_error("Internal error: Unexpected exception"); throw e; } }
/*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .*/ /// <summary>Parse the grammar specification from standard input. This produces /// sets of terminal, non-terminals, and productions which can be accessed /// via static variables of the respective classes, as well as the setting /// of various variables (mostly in the emit class) for small user supplied /// items such as the code to scan with. /// </summary> protected internal static void parse_grammar_spec() { parser parser_obj; /* create a parser and parse with it */ parser_obj = new parser(); try { if (opt_do_debug) { parser_obj.debug_parse(); } else { parser_obj.parse(); } } catch (System.Exception e) { /* something threw an exception. catch it and emit a message so we * have a line number to work with, then re-throw it */ lexer.emit_error("Internal error: Unexpected exception"); Console.WriteLine("Internal Error: {0}", e.ToString()); Console.WriteLine(e.StackTrace); throw e; } }