OLD | NEW |
1 /* | 1 /* |
2 This file is part of LilyPond, the GNU music typesetter. | 2 This file is part of LilyPond, the GNU music typesetter. |
3 | 3 |
4 Copyright (C) 1997--2015 Han-Wen Nienhuys <hanwen@xs4all.nl> | 4 Copyright (C) 1997--2015 Han-Wen Nienhuys <hanwen@xs4all.nl> |
5 | 5 |
6 LilyPond is free software: you can redistribute it and/or modify | 6 LilyPond is free software: you can redistribute it and/or modify |
7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
8 the Free Software Foundation, either version 3 of the License, or | 8 the Free Software Foundation, either version 3 of the License, or |
9 (at your option) any later version. | 9 (at your option) any later version. |
10 | 10 |
(...skipping 23 matching lines...) Expand all Loading... |
34 /** | 34 /** |
35 an yyFlexLexer child with provisions for inclusion. | 35 an yyFlexLexer child with provisions for inclusion. |
36 */ | 36 */ |
37 class Includable_lexer : public yyFlexLexer | 37 class Includable_lexer : public yyFlexLexer |
38 { | 38 { |
39 vector<YY_BUFFER_STATE> state_stack_; | 39 vector<YY_BUFFER_STATE> state_stack_; |
40 | 40 |
41 protected: | 41 protected: |
42 bool close_input (); | 42 bool close_input (); |
43 vector<Source_file *> include_stack_; | 43 vector<Source_file *> include_stack_; |
44 vector<int> char_count_stack_; | 44 vector<size_t> char_count_stack_; |
45 | 45 |
46 public: | 46 public: |
47 | 47 |
48 Includable_lexer (); | 48 Includable_lexer (); |
49 ~Includable_lexer (); | 49 ~Includable_lexer (); |
50 string main_input_name_; | 50 string main_input_name_; |
51 | 51 |
52 /// store dependencies for Makefile stuff. | 52 /// store dependencies for Makefile stuff. |
53 vector<string> file_name_strings_; | 53 vector<string> file_name_strings_; |
54 | 54 |
55 Source_file *get_source_file () const; | 55 Source_file *get_source_file () const; |
56 virtual void new_input (const string &s, Sources *); | 56 virtual void new_input (const string &s, Sources *); |
57 | 57 |
58 void new_input (const string &name, string data, Sources *); | 58 void new_input (const string &name, string data, Sources *); |
59 | 59 |
60 char const *here_str0 () const; | 60 char const *here_str0 () const; |
| 61 |
| 62 void skip_chars (size_t count); |
61 }; | 63 }; |
62 | 64 |
63 #endif // INCLUDABLE_LEXER_HH | 65 #endif // INCLUDABLE_LEXER_HH |
OLD | NEW |