aboutsummaryrefslogtreecommitdiff
path: root/engines/director/lingo/lingo-lex.l
diff options
context:
space:
mode:
authorEugene Sandulenko2016-06-11 22:43:05 +0200
committerEugene Sandulenko2016-08-03 23:40:36 +0200
commit824c3fb6616b9afa65ac3db5d2c8d97a26004dd8 (patch)
tree5ead080d129dbbd329accf012b68ae4571279b25 /engines/director/lingo/lingo-lex.l
parente4428587b763b0f1da48de9decf251f98ddd3f00 (diff)
downloadscummvm-rg350-824c3fb6616b9afa65ac3db5d2c8d97a26004dd8.tar.gz
scummvm-rg350-824c3fb6616b9afa65ac3db5d2c8d97a26004dd8.tar.bz2
scummvm-rg350-824c3fb6616b9afa65ac3db5d2c8d97a26004dd8.zip
DIRECTOR: Added stub for 'mci' Lingo command
Diffstat (limited to 'engines/director/lingo/lingo-lex.l')
-rw-r--r--engines/director/lingo/lingo-lex.l14
1 files changed, 10 insertions, 4 deletions
diff --git a/engines/director/lingo/lingo-lex.l b/engines/director/lingo/lingo-lex.l
index 081a50542a..575d09ec9a 100644
--- a/engines/director/lingo/lingo-lex.l
+++ b/engines/director/lingo/lingo-lex.l
@@ -34,12 +34,18 @@ void yyparse();
%}
+variable [_[:alpha:]][_[:alnum:]]*
+constinteger [[:digit:]]+
+conststring \"[^\"\n]*\"
+operator [-+*/%=^:,]
+
%%
-[_[:alpha:]][_[:alnum:]]* yylval.s = new Common::String(yytext); return VAR;
-[[:digit:]]+ yylval.i = strtol(yytext, NULL, 10); return INT;
-[-+*/%=^:,] return *yytext;
-.|\n ; /* ignore all the rest */
+mci { return FUNC_MCI; }
+{variable} { yylval.s = new Common::String(yytext); return VAR; }
+{constinteger} { yylval.i = strtol(yytext, NULL, 10); return INT; }
+{operator} { return *yytext; }
+{conststring} { yylval.s = new Common::String(yytext); return STRING; }
%%