aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/LuaSL/src/LuaSL_lexer.l
diff options
context:
space:
mode:
authorDavid Walter Seikel2012-01-12 23:46:08 +1000
committerDavid Walter Seikel2012-01-12 23:46:08 +1000
commitfe3dac5464e086cbb39d128f4119391bbffbc9f3 (patch)
tree6957cd186f33f970182779df68d894953283dae1 /LuaSL/src/LuaSL_lexer.l
parentA failed attempt to handle multiple files. (diff)
downloadSledjHamr-fe3dac5464e086cbb39d128f4119391bbffbc9f3.zip
SledjHamr-fe3dac5464e086cbb39d128f4119391bbffbc9f3.tar.gz
SledjHamr-fe3dac5464e086cbb39d128f4119391bbffbc9f3.tar.bz2
SledjHamr-fe3dac5464e086cbb39d128f4119391bbffbc9f3.tar.xz
Add a hex integer format, and comment about variations for float.
Diffstat (limited to 'LuaSL/src/LuaSL_lexer.l')
-rw-r--r--LuaSL/src/LuaSL_lexer.l9
1 files changed, 6 insertions, 3 deletions
diff --git a/LuaSL/src/LuaSL_lexer.l b/LuaSL/src/LuaSL_lexer.l
index 93df410..2b60634 100644
--- a/LuaSL/src/LuaSL_lexer.l
+++ b/LuaSL/src/LuaSL_lexer.l
@@ -16,9 +16,12 @@ int common(YYSTYPE *lval, char *text, LuaSL_yyparseExtra *extra, boolean checkIg
16%option extra-type="LuaSL_yyparseExtra *" 16%option extra-type="LuaSL_yyparseExtra *"
17 17
18HEX [[:xdigit:]] 18HEX [[:xdigit:]]
19INTEGER [[:digit:]]+ 19DECIMAL [[:digit:]]
20EXPONANT [eE][+-]?{INTEGER} 20 /* LSL has no octal integer type. */
21FLOAT {INTEGER}("."{INTEGER})?{EXPONANT}? 21INTEGER ({DECIMAL}+)|(0[xX]{HEX}+)
22EXPONANT [eE][+-]?{DECIMAL}
23 /* Floats can be "0." but I don't think ".0" is valid. */
24FLOAT {DECIMAL}("."{DECIMAL})?{EXPONANT}?[fF]?
22CHAR '(\\.|[^\\'\n])+' 25CHAR '(\\.|[^\\'\n])+'
23STRING \"(\\.|[^\\"\n])*\" 26STRING \"(\\.|[^\\"\n])*\"
24IDENTIFIER [[:alpha:]](_|[[:alpha:]]|[[:digit:]])* 27IDENTIFIER [[:alpha:]](_|[[:alpha:]]|[[:digit:]])*