X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fincludable-lexer.hh;h=bfc3d81718904244e7b4638735f9105bb905fdfd;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=f495424f282336e0dfc55180a7b017491ca9687e;hpb=9d4a5bbc9687aef811a60aabd9cb839412984e96;p=lilypond.git diff --git a/lily/include/includable-lexer.hh b/lily/include/includable-lexer.hh index f495424f28..bfc3d81718 100644 --- a/lily/include/includable-lexer.hh +++ b/lily/include/includable-lexer.hh @@ -1,9 +1,20 @@ /* - includable-lexer.hh -- declare Includable_lexer + This file is part of LilyPond, the GNU music typesetter. - source file of the LilyPond music typesetter + Copyright (C) 1997--2015 Han-Wen Nienhuys - (c) 1997--2006 Han-Wen Nienhuys + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . */ #ifndef INCLUDABLE_LEXER_HH @@ -25,25 +36,26 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE; */ class Includable_lexer : public yyFlexLexer { - std::vector state_stack_; + vector state_stack_; protected: bool close_input (); - Link_array__Source_file_ include_stack_; - std::vector char_count_stack_; + 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. - std::vector file_name_strings_; + vector file_name_strings_; Source_file *get_source_file () const; - void new_input (std::string s, Sources *); - void new_input (std::string name, std::string data, Sources *); + virtual void new_input (const string &s, Sources *); + + void new_input (const string &name, string data, Sources *); char const *here_str0 () const; };