additional test
This commit is contained in:
parent
38438904dc
commit
330e16df3e
21 changed files with 302 additions and 4 deletions
22
src/lexer.l
22
src/lexer.l
|
|
@ -30,12 +30,28 @@ return { return yy::parser::token::TOK_KW_RETURN; }
|
|||
for { return yy::parser::token::TOK_KW_FOR; }
|
||||
in { return yy::parser::token::TOK_KW_IN; }
|
||||
|
||||
\( { return yy::parser::token::TOK_L_PAREN; }
|
||||
\) { return yy::parser::token::TOK_R_PAREN; }
|
||||
\: { return yy::parser::token::TOK_COLON; }
|
||||
\=\= { return yy::parser::token::TOK_EQ; }
|
||||
\!\= { return yy::parser::token::TOK_NE; }
|
||||
\< { return yy::parser::token::TOK_LT; }
|
||||
\> { return yy::parser::token::TOK_GT; }
|
||||
\<\= { return yy::parser::token::TOK_LTE; }
|
||||
\>\= { return yy::parser::token::TOK_GTE; }
|
||||
\= { return yy::parser::token::TOK_ASSIGN; }
|
||||
\+ { return yy::parser::token::TOK_PLUS; }
|
||||
\- { return yy::parser::token::TOK_MINUS; }
|
||||
\* { return yy::parser::token::TOK_MULTIPLY; }
|
||||
\/ { return yy::parser::token::TOK_DIVIDE; }
|
||||
\% { return yy::parser::token::TOK_MODULO; }
|
||||
\( { return yy::parser::token::TOK_L_PAREN; }
|
||||
\) { return yy::parser::token::TOK_R_PAREN; }
|
||||
\[ { return yy::parser::token::TOK_L_BRACKET; }
|
||||
\] { return yy::parser::token::TOK_R_BRACKET; }
|
||||
\{ { return yy::parser::token::TOK_L_BRACE; }
|
||||
\} { return yy::parser::token::TOK_R_BRACE; }
|
||||
\. { return yy::parser::token::TOK_DOT; }
|
||||
\, { return yy::parser::token::TOK_COMMA; }
|
||||
\: { return yy::parser::token::TOK_COLON; }
|
||||
\; { return yy::parser::token::TOK_SEMICOLON; }
|
||||
|
||||
\" { yymore(); BEGIN(STRING); }
|
||||
<STRING>\" { BEGIN(INITIAL); yylval->as<std::string>() = yytext; return yy::parser::token::TOK_STRING; }
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
%token <std::string> IDENTIFIER
|
||||
%token <std::string> STRING
|
||||
%token <int> NUMBER
|
||||
%token ASSIGN PLUS MINUS L_PAREN R_PAREN COLON
|
||||
%token ASSIGN PLUS MINUS L_PAREN R_PAREN COLON EQ NE LT GT LTE GTE MULTIPLY DIVIDE MODULO L_BRACKET L_BRACE R_BRACKET R_BRACE DOT SEMICOLON COMMA
|
||||
%token KW_DEF KW_IF KW_RETURN KW_FOR KW_IN
|
||||
%token EOF NEWLINE INDENT DEDENT
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue