X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fincludable-lexer.hh;h=150c4d5c626c28007d2d559687c99379c7e7a791;hb=95f21b745890a01ccc85c6ba57710090164b36d2;hp=6b54d9a5738068c4043b6a162bd32a39bbadbd93;hpb=bb36bac02a64770871780231ecc709cb18b20932;p=lilypond.git diff --git a/lily/include/includable-lexer.hh b/lily/include/includable-lexer.hh index 6b54d9a573..150c4d5c62 100644 --- a/lily/include/includable-lexer.hh +++ b/lily/include/includable-lexer.hh @@ -3,51 +3,50 @@ source file of the LilyPond music typesetter - (c) 1997--2000 Han-Wen Nienhuys + (c) 1997--2009 Han-Wen Nienhuys */ - #ifndef INCLUDABLE_LEXER_HH #define INCLUDABLE_LEXER_HH +#ifndef LEXER_CC #include +#endif -#include "string.hh" -#include "parray.hh" -#include "flower-proto.hh" -#include "proto.hh" +#include "std-string.hh" +#include "std-vector.hh" +#include "lily-proto.hh" // GIGA urg! typedef struct yy_buffer_state *YY_BUFFER_STATE; /** - an yyFlexLexer child with provisions for inclusion. - */ -class Includable_lexer : public yyFlexLexer + an yyFlexLexer child with provisions for inclusion. +*/ +class Includable_lexer : public yyFlexLexer { - Array state_stack_; + vector state_stack_; protected: - bool close_input (); - Link_array include_stack_; - Array char_count_stack_; + bool close_input (); + vector include_stack_; + vector char_count_stack_; public: - bool allow_includes_b_; - + Includable_lexer (); ~Includable_lexer (); + string main_input_name_; /// store dependencies for Makefile stuff. - Array filename_str_arr_; + vector file_name_strings_; - Source_file* source_file_l () const; - void new_input (String s, Sources*); - void new_input (String name, String data, Sources*); - - void add_lexed_char (int); - char const * here_ch_C () const; + Source_file *get_source_file () const; + virtual void new_input (string s, Sources *); + + void new_input (string name, string data, Sources *); + + char const *here_str0 () const; }; - #endif // INCLUDABLE_LEXER_HH