Mercurial > hg > octave-nkf
diff libinterp/parse-tree/parse.h @ 16139:2fd39ab12209
move a function and data member from lexical_feedback to octave_parser
* parse.h: Include lex.h.
* parse.h, oct-parse.yy (octave_parser::reset): New function.
(octave_parser::end_of_input): New data member.
(octave_parser::octave_parser): Initialize it.
* lex.h, lex.ll (lexical_feedback::reset): Rename from reset_parser.
(lexical_feedback::parser_end_of_input): Delete.
* input.cc (get_debug_input): Call octave_parser::reset, not
lexical_feedback::reset_parser.
* toplev.cc (main_loop): Likewise.
* oct-parse.yy (eval_string, parse_fcn_file): Likewise.
* toplev.cc (main_loop): Set octave_parser::end_of_input, not
lexical_feedback::parser_end_of_input.
* oct-parse.yy: Use octave_parser::end_of_input, not
lexical_feedback::parser_end_of_input.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 27 Feb 2013 13:09:33 -0500 |
parents | 284e2ca86ef7 |
children | 26d65d677557 |
line wrap: on
line diff
--- a/libinterp/parse-tree/parse.h +++ b/libinterp/parse-tree/parse.h @@ -29,6 +29,7 @@ #include <stack> +#include "lex.h" #include "token.h" extern int octave_lex (void); @@ -136,10 +137,15 @@ { public: - octave_parser (void) { } + octave_parser (void) : end_of_input (false) { } ~octave_parser (void) { } + void reset (void) + { + curr_lexer->reset (); + } + int run (void); // Error mesages for mismatched end tokens. @@ -320,6 +326,9 @@ append_statement_list (tree_statement_list *list, char sep, tree_statement *stmt, bool warn_missing_semi); + // TRUE means that we have encountered EOF on the input stream. + bool end_of_input; + // For unwind protect. static void cleanup (octave_parser *parser) { delete parser; }