diff options
Diffstat (limited to 'src/elixir_math_parser.yrl')
| -rw-r--r-- | src/elixir_math_parser.yrl | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/elixir_math_parser.yrl b/src/elixir_math_parser.yrl index 3ec4946..17b46ad 100644 --- a/src/elixir_math_parser.yrl +++ b/src/elixir_math_parser.yrl @@ -31,11 +31,12 @@ Left 600 '('. root -> statements : '$1'. -statements -> statement : '$1'. -statements -> statement statements : lists:merge('$1', '$2'). -statements -> statement ';;' statements : lists:merge('$1', '$3'). +statements -> statement : ['$1']. +statements -> statement statements : ['$1'|'$2']. +statements -> statement ';;' statements : ['$1'|'$3']. -statement -> atom '=' expr : [{assign, '$1', '$3'}]. +statement -> atom '=' expr : {assign, '$1', '$3'}. +statement -> expr : {eval, '$1'}. expr -> int : unwrap('$1'). expr -> atom : '$1'. |
