2 my-lily-parser.hh -- declare My_lily_parser
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
10 #ifndef MY_LILY_PARSER_HH
11 #define MY_LILY_PARSER_HH
12 #include "lily-proto.hh"
13 #include "duration.hh"
16 #include "lily-proto.hh"
17 #include "lily-proto.hh"
18 #include "duration.hh"
23 class My_lily_parser {
24 char const* here_ch_C()const;
25 Array<Input> define_spot_array_;
28 void add_requests( Chord*v);
30 Chord * get_note_element(Note_req * ,Duration *);
31 Chord* get_rest_element(String,Duration *);
32 Chord* get_word_element(Text_def*, Duration*);
34 void set_last_duration(Duration const *);
35 void set_default_duration(Duration const *);
36 void set_duration_mode(String s);
37 friend int yyparse( void*);
39 int default_octave_i_;
40 Duration default_duration_;
41 String textstyle_str_;
43 bool last_duration_mode_b_ ;
44 Array<Request*> pre_reqs, post_reqs;
49 My_lily_lexer * lexer_p_;
52 void add_notename(String, Melodic_req* req_p);
53 Input here_input()const;
57 Paper_def*default_paper();
59 void parser_error(String);
60 void clear_notenames();
62 Request* get_parens_request(char c);
65 void set_yydebug(bool);
66 void print_declarations();
67 bool ignore_version_b_;
70 void parse_file ( String init_str, String file_str);
71 My_lily_parser(Sources * sources_l);
73 void set_version_check(bool ignore);
76 #endif // MY_LILY_PARSER_HH