source file of the GNU LilyPond music typesetter
- (c) 1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include <strstream.h>
#include "debug.hh"
#include "source-file.hh"
#include "main.hh"
-#include "scope.hh"
#include "input.hh"
#include "moment.hh"
{"denies", DENIES},
{"duration", DURATION},
{"dynamicscript", DYNAMICSCRIPT},
- {"elementdescriptions", ELEMENTDESCRIPTIONS},
- {"font", FONT},
+ {"grobdescriptions", GROBDESCRIPTIONS},
+ {"figures",FIGURES},
{"grace", GRACE},
- {"ngrace", NGRACE},
{"glissando", GLISSANDO},
{"header", HEADER},
{"in", IN_T},
{"outputproperty", OUTPUTPROPERTY},
{"override", OVERRIDE},
{"set", SET},
+ {"rest", REST},
{"revert", REVERT},
{"partial", PARTIAL},
{"paper", PAPER},
{
keytable_p_ = new Keyword_table (the_key_tab);
toplevel_variable_tab_ = new Scheme_hash_table ;
- scope_p_ = new Scope (toplevel_variable_tab_);
-
- scope_l_arr_.push (scope_p_);
+ scope_l_arr_.push (toplevel_variable_tab_);
errorlevel_i_ = 0;
main_input_b_ = false;
}
void
-My_lily_lexer::set_identifier (String name_str, SCM s)
+My_lily_lexer::set_identifier (SCM name, SCM s)
{
- if (lookup_keyword (name_str) >= 0)
+ assert (gh_string_p (name));
+
+ if (lookup_keyword (ly_scm2string (name)) >= 0)
{
- warning (_f ("Identifier name is a keyword: `%s'", name_str));
+ size_t sz;
+ char * str = gh_scm2newstr (name, &sz) ;
+ warning (_f ("Identifier name is a keyword: `%s'", str));
+ free (str);
}
- scope_l_arr_.top ()->set (name_str, s);
+ scope_l_arr_.top ()->set (scm_string_to_symbol (name), s);
}
My_lily_lexer::~My_lily_lexer ()
{
delete keytable_p_;
- scm_unprotect_object (toplevel_variable_tab_->self_scm ());
- delete scope_p_ ;
+ scm_gc_unprotect_object (toplevel_variable_tab_->self_scm ());
}