diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2018-04-02 11:58:42 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2018-04-02 12:39:30 (GMT) |
commit | 1db4ef323b7a76093356ae76268132f3760e1631 (patch) | |
tree | fec36ee0ec1b6b2010b62ca4177edca0e31e2114 /tools/d2c/assert/tokens.l | |
parent | 1bc80837dde03a32b5ab185067f7bd4c499a9850 (diff) |
Rewritten the whole instruction definition format.
Diffstat (limited to 'tools/d2c/assert/tokens.l')
-rw-r--r-- | tools/d2c/assert/tokens.l | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tools/d2c/assert/tokens.l b/tools/d2c/assert/tokens.l new file mode 100644 index 0000000..192bcc7 --- /dev/null +++ b/tools/d2c/assert/tokens.l @@ -0,0 +1,41 @@ + +%top { + +#include "grammar.h" + +} + + +%option noyywrap +%option nounput +%option noinput +%option yylineno +%option stack +%option noyy_top_state +%option noyy_push_state +%option noyy_pop_state + + +%% + + +[ \t\n] { } + +"==" { return EQ; } +"!=" { return NE; } + +"&&" { return AND; } +"||" { return OR; } + +[A-Za-z_][A-Za-z0-9_]* { yylvalp->string = strdup(yytext); return FIELD; } + +[01]+ { yylvalp->string = strdup(yytext); return VALUE; } + +. { + char *msg; + asprintf(&msg, "Unhandled token in d2c assert block: '%s'", yytext); + YY_FATAL_ERROR(msg); + free(msg); + } + +%% |