From 7c222f25d4b2d9f3b149d880f0e1acf8d673e4f5 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sun, 17 Apr 2016 20:41:47 -0400 Subject: Fixed a bug with arithmetic operators --- dice-lang/src/main/java/bjc/dicelang/ast/DiceASTEvaluator.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'dice-lang/src/main/java/bjc/dicelang/ast/DiceASTEvaluator.java') diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTEvaluator.java b/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTEvaluator.java index e934b9f..016fa8a 100644 --- a/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTEvaluator.java +++ b/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTEvaluator.java @@ -112,7 +112,10 @@ public class DiceASTEvaluator { String variableName = ((VariableDiceNode) leafNode).getVariable(); if (enviroment.containsKey(variableName)) { - return evaluateAST(enviroment.get(variableName), enviroment); + int result = + evaluateAST(enviroment.get(variableName), enviroment); + + return result; } // Value to allow for assignments @@ -148,6 +151,9 @@ public class DiceASTEvaluator { IPair> valueNode = nodes.getByIndex(1); + // Force valueNode to materialize for debugging purposes + valueNode.merge((l, r) -> null); + return nameNode.bindRight((nameTree) -> { return valueNode.bind((valueValue, valueTree) -> { if (containsSimpleVariable(nameTree)) { -- cgit v1.2.3