LEFT | RIGHT |
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--2019 Han-Wen Nienhuys <hanwen@xs4all.nl> | 4 Copyright (C) 1997--2020 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 |
11 LilyPond is distributed in the hope that it will be useful, | 11 LilyPond is distributed in the hope that it will be useful, |
12 but WITHOUT ANY WARRANTY; without even the implied warranty of | 12 but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 GNU General Public License for more details. | 14 GNU General Public License for more details. |
(...skipping 14 matching lines...) Expand all Loading... |
29 #include "lily-proto.hh" | 29 #include "lily-proto.hh" |
30 | 30 |
31 // GIGA urg! | 31 // GIGA urg! |
32 typedef struct yy_buffer_state *YY_BUFFER_STATE; | 32 typedef struct yy_buffer_state *YY_BUFFER_STATE; |
33 | 33 |
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 std::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 std::vector<Source_file *> include_stack_; |
44 vector<size_t> char_count_stack_; | 44 std::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 std::string main_input_name_; |
51 | 51 |
52 // A list of all files opened so far | 52 // A list of all files opened so far |
53 vector<string> file_name_strings_; | 53 std::vector<std::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 std::string &s, Sources *); |
57 | 57 |
58 void new_input (const string &name, string data, Sources *); | 58 void new_input (const std::string &name, std::string data, Sources *); |
59 | 59 |
60 char const *here_str0 () const; | 60 char const *here_str0 () const; |
61 | 61 |
62 void skip_chars (size_t count); | 62 void skip_chars (size_t count); |
63 }; | 63 }; |
64 | 64 |
65 #endif // INCLUDABLE_LEXER_HH | 65 #endif // INCLUDABLE_LEXER_HH |
LEFT | RIGHT |