diff options
Diffstat (limited to 'LuaSL/src/LuaSL_lexer.l')
-rw-r--r-- | LuaSL/src/LuaSL_lexer.l | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/LuaSL/src/LuaSL_lexer.l b/LuaSL/src/LuaSL_lexer.l index 876d30a..333489a 100644 --- a/LuaSL/src/LuaSL_lexer.l +++ b/LuaSL/src/LuaSL_lexer.l | |||
@@ -22,6 +22,7 @@ EXPONANT [eE][+-]?{DECIMAL}+ | |||
22 | /* Floats can be "0." or".0", but "." is not valid. At least in OpenSim. A single dot should be caught by the LSL_Dot rule first anyway.*/ | 22 | /* Floats can be "0." or".0", but "." is not valid. At least in OpenSim. A single dot should be caught by the LSL_Dot rule first anyway.*/ |
23 | FLOAT {DECIMAL}*"."{DECIMAL}*{EXPONANT}?[fF]? | 23 | FLOAT {DECIMAL}*"."{DECIMAL}*{EXPONANT}?[fF]? |
24 | CHAR '(\\.|[^\\'\n])+' | 24 | CHAR '(\\.|[^\\'\n])+' |
25 | KEY \"{HEX}{8}-{HEX}{4}-{HEX}{4}-{HEX}{4}-{HEX}{12}\" | ||
25 | STRING \"(\\.|[^\\"\n])*\" | 26 | STRING \"(\\.|[^\\"\n])*\" |
26 | IDENTIFIER [[:alpha:]](_|[[:alpha:]]|[[:digit:]])* | 27 | IDENTIFIER [[:alpha:]](_|[[:alpha:]]|[[:digit:]])* |
27 | 28 | ||
@@ -74,6 +75,8 @@ IDENTIFIER [[:alpha:]](_|[[:alpha:]]|[[:digit:]])* | |||
74 | /* Types. */ | 75 | /* Types. */ |
75 | {INTEGER} %{ yylval->value.integerValue = atoi(yytext); return common(yylval, yytext, yyextra, TRUE, LSL_INTEGER); %} | 76 | {INTEGER} %{ yylval->value.integerValue = atoi(yytext); return common(yylval, yytext, yyextra, TRUE, LSL_INTEGER); %} |
76 | {FLOAT} %{ yylval->value.floatValue = atof(yytext); return common(yylval, yytext, yyextra, TRUE, LSL_FLOAT); %} | 77 | {FLOAT} %{ yylval->value.floatValue = atof(yytext); return common(yylval, yytext, yyextra, TRUE, LSL_FLOAT); %} |
78 | {KEY} %{ yylval->value.stringValue = strdup(yytext); return common(yylval, yytext, yyextra, TRUE, LSL_KEY); %} | ||
79 | {STRING} %{ yylval->value.stringValue = strdup(yytext); return common(yylval, yytext, yyextra, TRUE, LSL_STRING); %} | ||
77 | 80 | ||
78 | /* Type keywords. */ | 81 | /* Type keywords. */ |
79 | "float" %{ return common(yylval, yytext, yyextra, TRUE, LSL_TYPE_FLOAT); %} | 82 | "float" %{ return common(yylval, yytext, yyextra, TRUE, LSL_TYPE_FLOAT); %} |