Made case requirements less strict (you can now have "control" as well as "Control") and added True/False grammar rules for parameters.
Marius Nita marius@cs.pdx.edu
2 files changed,
13 insertions(+),
1 deletions(-)
M
util/epist/epist.l
→
util/epist/epist.l
@@ -16,11 +16,21 @@ - return DASH;
Options | options return OPTIONS; Mod1 | +mod1 | Mod2 | +mod2 | Mod3 | +mod3 | Mod4 | +mod4 | Control | +control | +shift | Shift yylval = (int) strdup(yytext); return BINDING; +true | +True yylval = (int) strdup(yytext); return TRUE; +false | +False yylval = (int) strdup(yytext); return FALSE; [0-9]+ yylval = (int) strdup(yytext); return NUMBER; \".+\" yylval = (int) strdup(yytext); return QUOTES; [a-zA-Z_0-9]+ yylval = (int) strdup(yytext); return WORD;
M
util/epist/epist.y
→
util/epist/epist.y
@@ -24,7 +24,7 @@
%} -%token OBRACE EBRACE SEMICOLON DASH NUMBER QUOTES WORD BINDING OPTIONS +%token OBRACE EBRACE SEMICOLON DASH NUMBER QUOTES WORD BINDING OPTIONS TRUE FALSE %%@@ -86,6 +86,8 @@ parameter:
| NUMBER { ((parser*)parser_obj)->setArgumentNum($1); } | DASH NUMBER { ((parser*)parser_obj)->setArgumentNegNum($2); } | QUOTES { ((parser*)parser_obj)->setArgumentStr($1); } + | TRUE { ((parser*)parser_obj)->setArgumentTrue($1); } + | FALSE { ((parser*)parser_obj)->setArgumentFalse($1); } ; options_keyword: