diff options
Diffstat (limited to 'src/parser.cpp')
-rw-r--r-- | src/parser.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/parser.cpp b/src/parser.cpp index 6e32d87..46bea77 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -45,6 +45,7 @@ gint macro_pc = 0; namespace States { StateStart start; StateControl control; + StateASCII ascii; StateFCommand fcommand; StateCondCommand condcommand; StateECommand ecommand; @@ -1208,6 +1209,7 @@ StateControl::StateControl() : State() { transitions['\0'] = this; transitions['U'] = &States::ctlucommand; + transitions['^'] = &States::ascii; } State * @@ -1275,6 +1277,21 @@ StateControl::custom(gchar chr) throw (Error) return &States::start; } +StateASCII::StateASCII() : State() +{ + transitions['\0'] = this; +} + +State * +StateASCII::custom(gchar chr) throw (Error) +{ + BEGIN_EXEC(&States::start); + + expressions.push(chr); + + return &States::start; +} + StateECommand::StateECommand() : State() { transitions['\0'] = this; |