X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Flily-parser.hh;h=79d586f1e942942ce9139d1a5e8d3e5f7fb965e6;hb=38d7d319eabc906e82fb42002678c6d42a23b6f7;hp=55ee32a171931d02eefb001485b8ad135cc23ba2;hpb=64313890b232c731d432e5b096f30bffc3f3756d;p=lilypond.git diff --git a/lily/include/lily-parser.hh b/lily/include/lily-parser.hh index 55ee32a171..79d586f1e9 100644 --- a/lily/include/lily-parser.hh +++ b/lily/include/lily-parser.hh @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 1997--2006 Han-Wen Nienhuys + (c) 1997--2009 Han-Wen Nienhuys */ #ifndef LILY_PARSER_HH @@ -11,7 +11,6 @@ #include "duration.hh" #include "input.hh" -#include "parray.hh" #include "pitch.hh" /** @@ -22,16 +21,16 @@ */ class Lily_parser { - DECLARE_SMOBS (Lily_parser,); + DECLARE_SMOBS (Lily_parser); friend int yyparse (void *); - std::vector define_spots_; + vector define_spots_; char const *here_str0 () const; Simultaneous_music *get_chord (Pitch tonic, - std::vector *adds, std::vector *subs, + vector *adds, vector *subs, Pitch *inversion, Pitch *bass, Duration d); - void set_chord_tremolo (int type_i); + void set_chord_tremolo (int type); void set_last_duration (Duration const *); void set_last_pitch (Pitch const *); @@ -39,7 +38,7 @@ public: Lily_lexer *lexer_; Sources *sources_; Duration default_duration_; - std::string output_basename_; + string output_basename_; int fatal_error_; int error_level_; @@ -50,13 +49,16 @@ public: DECLARE_SCHEME_CALLBACK (layout_description, ()); + void clear (); void do_init_file (); void do_yyparse (); - void parse_file (std::string init, std::string name, std::string out_name); - void parse_string (std::string ly_code); - void parser_error (std::string); - void parser_error (Input const &, std::string); + void parse_file (string init, string name, string out_name); + void parse_string (string ly_code); + void parser_error (string); + void parser_error (Input const &, string); void set_yydebug (bool); + + SCM make_scope () const; }; DECLARE_UNSMOB (Lily_parser, lily_parser); @@ -72,6 +74,10 @@ SCM ly_parser_scorify (SCM, SCM); Output_def *get_layout (Lily_parser *parser); Output_def *get_midi (Lily_parser *parser); Output_def *get_paper (Lily_parser *parser); +void init_papers (Lily_parser *parser); +void push_paper (Lily_parser *parser, Output_def *paper); +void pop_paper (Lily_parser *parser); +void set_paper (Lily_parser *parser, Output_def *paper); SCM get_header (Lily_parser *parser); #endif /* LILY_PARSER_HH */