From: fred Date: Fri, 21 Mar 1997 13:46:53 +0000 (+0000) Subject: lilypond-0.0.44 X-Git-Tag: release/1.5.59~6191 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=3a1acaf1602b8ce99e74f05a41bb0f50076e3cf3;p=lilypond.git lilypond-0.0.44 --- diff --git a/lib/include/includable-lexer.hh b/lib/include/includable-lexer.hh new file mode 100644 index 0000000000..3a076181a4 --- /dev/null +++ b/lib/include/includable-lexer.hh @@ -0,0 +1,39 @@ +/* + includable-lexer.hh -- declare + + source file of the LilyPond music typesetter + + (c) 1997 Han-Wen Nienhuys +*/ + + +#ifndef INCLUDABLE_LEXER_HH +#define INCLUDABLE_LEXER_HH +#include "string.hh" +#include +#include "varray.hh" +#include "fproto.hh" +#include "proto.hh" + +// GIGA urg! +typedef struct yy_buffer_state *YY_BUFFER_STATE; + +/** + an yyFlexLexer child with provisions for inclusion. + */ +class Includable_lexer : public yyFlexLexer { + Array state_stack_; +protected: + bool close_input(); + Array include_stack_; + Array char_count_stack_; +public: + void new_input(String s,Sources*); + Includable_lexer(); + ~Includable_lexer(); + void add_lexed_char(int); + char const * here_ch_C(); +}; + + +#endif // INCLUDABLE_LEXER_HH