Bläddra i källkod

Allow negative integer constants in the syntax

pull/22/head
Ian Piumarta 4 år sedan
förälder
incheckning
ac79aae6b2
1 ändrade filer med 5 tillägg och 2 borttagningar
  1. +5
    -2
      parse.leg

+ 5
- 2
parse.leg Visa fil

@ -765,7 +765,7 @@ argumentList = LPAREN m:makeMap
RPAREN { $$ = m }
value = n:FLOAT { $$ = newFloat(n) }
| n:INTEGER { $$ = newInteger(n) }
| n:integer { $$ = newInteger(n) }
| s:string { $$ = newString(s) }
| s:symbol { $$ = s }
| m:map { $$ = newMap(m) }
@ -798,7 +798,7 @@ map = LCB m:makeMap
makeMap = { $$ = makeMap() }
key = IDENT | INTEGER
key = IDENT | integer
- = (blank | comment)*
@ -816,6 +816,9 @@ keyword = FUN | SYNTAX | VAR | SWITCH | CASE | DEFAULT | DO | FOR | IN | WHILE |
IDENT = !keyword < [a-zA-Z_][a-zA-Z0-9_]* > - { $$ = intern(yytext) }
integer = i:INTEGER { $$ = i }
| '-' i:integer { $$ = makeInteger(-getInteger(i)) }
INTEGER = '0b' < [01]+ > - { $$ = makeInteger(strtol(yytext, 0, 2)) }
| '0x' < [0-9a-fA-F]+ > - { $$ = makeInteger(strtol(yytext, 0, 16)) }
| '0' < [0-7]+ > - { $$ = makeInteger(strtol(yytext, 0, 8)) }

Laddar…
Avbryt
Spara