#define YYPARSE_PARAM my_lily_parser
#define YYLEX_PARAM my_lily_parser
#define THIS\
- ((My_lily_parser *) my_lily_parser)
+ ((Lily_parser *) my_lily_parser)
#define yyerror THIS->parser_error
int
yylex (YYSTYPE *s, void *v)
{
- My_lily_parser *pars = (My_lily_parser*) v;
- My_lily_lexer *lex = pars->lexer_;
+ Lily_parser *pars = (Lily_parser*) v;
+ Lily_lexer *lex = pars->lexer_;
lex->lexval = (void*) s;
lex->prepare_for_next_token ();
2. \markup identifier.
+ (what? --hwn)
+
3. \markup { }
+ (what? --hwn)
+
+
4. \repeat
\repeat .. \alternative
%token INVALID
%token KEY
%token LYRICS
-%token LYRICS_STRING
%token MARK
%token MIDI
%token MULTI_MEASURE_REST
%token <scm> NUMBER_IDENTIFIER
%token <scm> OUTPUT_DEF_IDENTIFIER
%token <scm> RESTNAME
+%token <scm> LYRICS_STRING
%token <scm> SCM_T
%token <scm> SCORE_IDENTIFIER
%token <scm> STRING
$$ = $1->self_scm ();
scm_gc_unprotect_object ($$);
}
- | full_markup {
- $$ = $1;
- }
| output_def {
$$ = $1->self_scm ();
scm_gc_unprotect_object ($$);
scm_gc_unprotect_object ($$);
}
| number_expression {
- $$ = $1;
+ $$ = $1;
}
| string {
$$ = $1;
}
- | embedded_scm {
+ | embedded_scm {
+ $$ = $1;
+ }
+ | full_markup {
$$ = $1;
}
+ | DIGIT {
+ $$ = scm_int2num ($1);
+ }
;
context_def_spec_block:
SCM nn = THIS->lexer_->lookup_identifier ("pitchnames");
THIS->lexer_->push_note_state (alist_to_hashq (nn));
}
- Music
+ Grouped_music_list
{ $$ = $3;
THIS->lexer_->pop_state ();
}
SCM nn = THIS->lexer_->lookup_identifier ("drumPitchNames");
THIS->lexer_->push_note_state (alist_to_hashq (nn));
}
- Music
+ Grouped_music_list
{ $$ = $3;
THIS->lexer_->pop_state ();
}
| FIGURES
{ THIS->lexer_->push_figuredbass_state (); }
- Music
+ Grouped_music_list
{
Music *chm = MY_MAKE_MUSIC ("UntransposableMusic");
chm->set_property ("element", $3->self_scm ());
THIS->lexer_->push_chord_state (alist_to_hashq (nn));
}
- Music
+ Grouped_music_list
{
Music *chm = MY_MAKE_MUSIC ("UnrelativableMusic");
chm->set_property ("element", $3->self_scm ());
}
| LYRICS
{ THIS->lexer_->push_lyric_state (); }
- Music
+ Grouped_music_list
{
$$ = $3;
THIS->lexer_->pop_state ();
;
simple_string: STRING {
+ $$ = $1;
}
| LYRICS_STRING {
+ $$ = $1;
}
;
scalar: string {
+ $$ = $1;
}
| LYRICS_STRING {
+ $$ = $1;
}
| bare_int {
$$ = scm_int2num ($1);
}
| embedded_scm {
+ $$ = $1;
}
| full_markup {
+ $$ = $1;
}
| DIGIT {
$$ = scm_int2num ($1);
;
/*
-FIXME: remove or fix this comment. What is `This'?
-This is a trick:
+pre_events doesn't contain anything. It is a trick:
Adding pre_events to the simple_element
makes the choice between
%%
void
-My_lily_parser::set_yydebug (bool )
+Lily_parser::set_yydebug (bool )
{
#if 0
yydebug = 1;
}
void
-My_lily_parser::do_yyparse ()
+Lily_parser::do_yyparse ()
{
yyparse ((void*)this);
}
*/
void
-My_lily_parser::beam_check (SCM dur)
+Lily_parser::beam_check (SCM dur)
{
Duration *d = unsmob_duration (dur);
if (unsmob_music (last_beam_start_) && d->duration_log () <= 2)
*/
int
-My_lily_lexer::try_special_identifiers (SCM *destination, SCM sid)
+Lily_lexer::try_special_identifiers (SCM *destination, SCM sid)
{
if (ly_c_string_p (sid)) {
*destination = sid;