aboutsummaryrefslogtreecommitdiff
path: root/src/elixir_math_parser.yrl
diff options
context:
space:
mode:
Diffstat (limited to 'src/elixir_math_parser.yrl')
-rw-r--r--src/elixir_math_parser.yrl9
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'.