13 lines
279 B
Plaintext
13 lines
279 B
Plaintext
|
WHITESPACE = _{ " " }
|
||
|
|
||
|
int = @{ ASCII_NONZERO_DIGIT ~ ASCII_DIGIT* }
|
||
|
float = @{ int ~ "." ~ ASCII_DIGIT+ }
|
||
|
num = @{ float | int }
|
||
|
|
||
|
operator = _{ "+" | "-" | "*" | "/" }
|
||
|
|
||
|
expr = { term ~ (operator ~ term)* }
|
||
|
term = _{ num | "(" ~ expr ~ ")" }
|
||
|
|
||
|
calculation = _{ SOI ~ expr ~ EOI }
|