]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/lily-lexer.hh
Issue 3487: Make several special characters with or without backslash "shorthands"
[lilypond.git] / lily / include / lily-lexer.hh
index 8da28072660aebb6b30aebc0063ba5e46f63f864..19b01ca6ff3b67dc3cb7ac0308a3d2b4152818a9 100644 (file)
@@ -40,6 +40,7 @@ private:
   int scan_bare_word (string);
   SCM scan_markup_word (string);
   int scan_escaped_word (string);
+  int scan_shorthand (string);
   int scan_scm_id (SCM);
   int identifier_type (SCM);
   char escaped_char (char) const;
@@ -50,6 +51,7 @@ private:
   SCM scopes_;
   SCM start_module_;
   int hidden_state_;
+  Input override_input_;
   SCM eval_scm (SCM, char extra_token = 0);
 public:
   SCM eval_scm_token (SCM sval) { return eval_scm (sval, '#'); }
@@ -69,7 +71,7 @@ public:
   Input last_input_;
 
   Lily_lexer (Sources *, Lily_parser *);
-  Lily_lexer (Lily_lexer const &, Lily_parser *);
+  Lily_lexer (Lily_lexer const &, Lily_parser *, SCM);
   int yylex ();
 
   void add_lexed_char (int);
@@ -77,6 +79,7 @@ public:
   void prepare_for_next_token ();
   int try_special_identifiers (SCM *, SCM);
   Input here_input () const;
+  Input const &override_input (Input const &) const;
 
   void add_scope (SCM);
   SCM set_current_scope ();