]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/my-lily-lexer.hh
release: 0.0.44
[lilypond.git] / lily / include / my-lily-lexer.hh
index c3f2bfa38853a24827307f8108ca6f5d468d5ff3..8dbc42e8614818a6307dbedf3259b764675aee44 100644 (file)
@@ -8,46 +8,33 @@
 
 #ifndef LEXER_HH
 #define LEXER_HH
+
 #include <FlexLexer.h>
+
 #include "proto.hh"
 #include "fproto.hh"
 #include "varray.hh"
 #include "string.hh"
+#include "includable-lexer.hh"
+#include "duration.hh"
 
-int yylex();
-void yyerror(char const *s);
 bool busy_parsing();
 void kill_lexer();
 void set_lexer();
 
 
-struct Lexer_prefs {
-    int default_duration, default_dots, default_octave_i_;
-    int default_plet_type, default_plet_dur;
-    String textstyle_str_;
-    
-    bool last_duration_mode ;
-    
-    Lexer_prefs();
-    Moment plet_mom();
-    void set_default_duration(int *);
-    void set_last_duration(int n);
-    void set_duration_mode(String s);
-    void get_default_duration(int *);
-    void set_plet(int,int);
-};
-
-/// lexer with provisions for include files.
-class My_lily_lexer : public yyFlexLexer {
+/// lexer for Mudela
+class My_lily_lexer : public Includable_lexer {
     int lookup_keyword(String);
     void lookup_notename(int &large, int &small, String s);
     int scan_bare_word(String);
     int scan_escaped_word(String);
 
+    bool post_quotes_b_;
 public:
-    Lexer_prefs prefs;
+   void * lexval_l;
+    
     
-    Array<Input_file*> include_stack_;
     Assoc<String, Identifier*> *identifier_assoc_p_;
     Keyword_table * keytable_p_;
     int errorlevel_i_;
@@ -55,25 +42,19 @@ public:
     /* *************** */
 
     Identifier*lookup_identifier(String s);
-    char const* here_ch_c_l();
  
     void push_note_state();
     void push_lyric_state();
     void pop_state();
     void LexerError(char const *);
-    String spot() const;
     My_lily_lexer();
     void add_identifier(Identifier*i);
     ~My_lily_lexer();
-    void new_input(String s);
-    bool  close_input();
     int yylex();
-    void print_init_declarations() const;
-    void print_user_declarations() const;
+    void print_declarations(bool init_b) const;
+
     bool note_state_b() const;
     bool lyric_state_b() const;
 };
 
-extern My_lily_lexer *lexer;
-
 #endif