2 includable-lexer.hh -- declare Includable_lexer
4 source file of the LilyPond music typesetter
6 (c) 1997--1998 Han-Wen Nienhuys <hanwen@stack.nl>
10 #ifndef INCLUDABLE_LEXER_HH
11 #define INCLUDABLE_LEXER_HH
13 #include <FlexLexer.h>
21 typedef struct yy_buffer_state *YY_BUFFER_STATE;
24 an yyFlexLexer child with provisions for inclusion.
26 class Includable_lexer : public yyFlexLexer {
27 Array<YY_BUFFER_STATE> state_stack_;
30 Array<Source_file*> include_stack_;
31 Array<int> char_count_stack_;
33 /// store dependencies for Makefile stuff.
34 Array<String> filename_str_arr_;
36 Source_file* source_file_l () const;
37 void new_input (String s,Sources*);
40 void add_lexed_char (int);
41 char const * here_ch_C ();
45 #endif // INCLUDABLE_LEXER_HH