inputcommand.hh grouping.hh
mycc= qlp.cc qlpsolve.cc leastsquares.cc\
- inputcommands.cc inputmusic.cc inputcursor.cc\
+ inputcommands.cc inputmusic.cc \
inputscore.cc inputstaff.cc\
break.cc linespace.cc molecule.cc staffline.cc\
pscore.cc tex.cc item.cc pcol.cc staff.cc \
simplewalker.cc\
texbeam.cc texslur.cc clef.cc key.cc slur.cc beam.cc\
idealspacing.cc inputcommand.cc grouping.cc identifier.cc\
+ lexerinit.cc mylexer.cc\
template1.cc template2.cc template3.cc template4.cc\
version.cc
+/*
+ keyword.hh -- part of LilyPond
+
+ (c) 1996 Han-Wen Nienhuys
+*/
+
+#ifndef KEYWORD_HH
+#define KEYWORD_HH
+
/* for the keyword table */
struct Keyword_ent
{
Keyword_table(Keyword_ent *);
int lookup(const char *s) const;
};
+
+
+#endif // KEYWORD_HH
+
#include "debug.hh"
#include "string.hh"
#include "inputstaff.hh"
-#include "identparent.hh"
-#include "keyword.hh"
-#include "associter.hh"
-#include "parser.hh"
-static Keyword_ent the_key_tab[]={
- "bar", BAR,
- "bass", BASS,
- "clef", CLEF,
- "cm", CM,
- "commands", COMMANDS,
- "duration", DURATIONCOMMAND,
- "geometric", GEOMETRIC,
- "in", IN,
- "key", KEY,
- "melodic", MELODIC,
- "meter", METER,
- "mm", MM,
- "octave", OCTAVECOMMAND,
- "output", OUTPUT,
- "partial", PARTIAL,
- "paper", PAPER,
- "pt", PT,
- "rhythmic", RHYTHMIC,
- "score", SCORE,
- "skip", SKIP,
- "staff", STAFF,
- "start", START_T,
- "table", TABLE,
- "symboltables", SYMBOLTABLES,
- "notenames", NOTENAMES,
- "texid", TEXID,
- "chord", CHORD,
- "multi", MULTI,
- "unitspace", UNITSPACE,
- "violin", VIOLIN,
- "voice", VOICE,
- "voices", VOICES,
- "width", WIDTH,
- "music", MUSIC,
- "grouping", GROUPING,
- 0,0
-};
-int
-lookup_keyword(String s)
-{
- static Keyword_table table(the_key_tab);
- return table.lookup(s);
-}
-Assoc<String, Identifier*> the_id_tab;
-
-Identifier*
-lookup_identifier(String s)
-{
- if (!the_id_tab.elt_query(s))
- return 0;
-
- return the_id_tab[s];
-}
-
-void
-add_identifier(Identifier*i)
-{
- the_id_tab[i->name] = i;
-}
-
-void
-delete_identifiers()
-{
- for (Assoc_iter<String,Identifier*> ai(the_id_tab); ai.ok(); ai++) {
- mtor << "deleting: " << ai.key()<<'\n';
- delete ai.val();
- }
-}