]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/parser.yy
release: 1.1.51
[lilypond.git] / lily / parser.yy
index edf2ee95579a1dd725ea80fc020447e0b4ae20b8..adc565e244b46f20b4a68cf9bbf9179355a9c9b0 100644 (file)
 #include "transposed-music.hh"
 #include "time-scaled-music.hh"
 #include "new-repeated-music.hh"
+#include "version.hh"
+#include "grace-music.hh"
 
 // mmm
 Mudela_version oldest_version ("1.0.20");
-Mudela_version version ("1.0.20");
+Mudela_version version ( MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL );
+
 
 void
 print_mudela_versions (ostream &os)
@@ -65,26 +68,6 @@ print_mudela_versions (ostream &os)
 // needed for bison.simple's malloc() and free()
 #include <malloc.h>
 
-struct Assignment {
-       String *name_p_;
-       Identifier *id_p_;
-       ~Assignment () {
-               delete name_p_;
-               delete id_p_;
-       }
-       Assignment () {
-               name_p_ = 0;
-               id_p_ =0;
-       }
-       Assignment (Assignment const&s)
-       {
-               name_p_ = new String (*s.name_p_);
-               id_p_ = s.id_p_->clone ();
-       }
-};
-
-Paper_def* current_paper = 0;
-
 #ifndef NDEBUG
 #define YYDEBUG 1
 #endif
@@ -156,6 +139,7 @@ yylex (YYSTYPE *s,  void * v_l)
 %token ACCEPTS
 %token ALTERNATIVE
 %token BAR
+%token BREATHE
 %token CADENZA
 %token CHORDMODIFIERS
 %token CHORDS
@@ -167,6 +151,7 @@ yylex (YYSTYPE *s,  void * v_l)
 %token EXTENDER
 %token FONT
 %token GROUPING
+%token GRACE
 %token HEADER
 %token IN_T
 %token KEY
@@ -791,6 +776,9 @@ Composite_music:
 
                $$ = csm;
        }
+       | GRACE Music {
+               $$ = new Grace_music ($2);
+       }
        | CONTEXT STRING '=' STRING Music {
                Context_specced_music *csm =  new Context_specced_music ($5);
 
@@ -939,6 +927,9 @@ abbrev_command_req:
                b->span_type_str_ = "beam";
                $$ = b;
        }
+       | BREATHE {
+               $$ = new Breathing_sign_req;
+       }
        ;
 
 
@@ -1046,7 +1037,7 @@ request_that_take_dir:
 
 request_with_dir:
        script_dir request_that_take_dir        {
-               if (G_script_req * gs = dynamic_cast<G_script_req*> ($2))
+               if (Script_req * gs = dynamic_cast<Script_req*> ($2))
                        gs->dir_ = Direction ($1);
                else if ($1)
                        $2->warning ("Can't specify direction for this request");