X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Flily-parser.hh;h=0b1b87aa2349e3ca91d808b2e6421f273ffce890;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=bb4899edb3596b5acebceff8ec4f985ce0ec48f8;hpb=9e781b7dc83b60a543ce218aa1a5f139f74c760f;p=lilypond.git diff --git a/lily/include/lily-parser.hh b/lily/include/lily-parser.hh index bb4899edb3..0b1b87aa23 100644 --- a/lily/include/lily-parser.hh +++ b/lily/include/lily-parser.hh @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1997--2014 Han-Wen Nienhuys + Copyright (C) 1997--2015 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 @@ -25,27 +25,21 @@ #include "pitch.hh" /** - State for the parser. Do not ever add any variables to parse - musical content here. We still have to remove default_duration_. + State for the parser. TODO: interface is too complicated */ -class Lily_parser +class Lily_parser : public Smob { - DECLARE_SMOBS (Lily_parser); - - char const *here_str0 () const; - Simultaneous_music *get_chord (Pitch tonic, - vector *adds, vector *subs, - Pitch *inversion, Pitch *bass, Duration d); - void set_chord_tremolo (int type); - void set_last_duration (Duration const *); - void set_last_pitch (Pitch const *); - public: + int print_smob (SCM, scm_print_state *); + SCM mark_smob (); + static const char type_p_name_[]; + virtual ~Lily_parser (); Lily_lexer *lexer_; Sources *sources_; Duration default_duration_; + int default_tremolo_type_; string output_basename_; SCM closures_; @@ -75,7 +69,6 @@ public: SCM make_scope () const; }; -DECLARE_UNSMOB (Lily_parser, lily_parser); Output_def *get_layout (Lily_parser *parser); Output_def *get_midi (Lily_parser *parser);