summaryrefslogtreecommitdiff
path: root/dice-lang/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'dice-lang/src/main')
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/ast/DiceASTParser.java70
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/ast/package-info.java6
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTDefinedChecker.java10
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTExpression.java46
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTFlattener.java10
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTInliner.java6
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTParser.java37
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTReferenceChecker.java10
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/IOperatorCollapser.java2
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/DiceASTType.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/nodes/DiceASTType.java)2
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/IDiceASTNode.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/nodes/IDiceASTNode.java)2
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/LiteralDiceNode.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/nodes/LiteralDiceNode.java)27
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/OperatorDiceNode.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/nodes/OperatorDiceNode.java)2
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/VariableDiceNode.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/nodes/VariableDiceNode.java)2
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/package-info.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/nodes/package-info.java)2
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/optimization/DiceASTOptimizer.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/optimization/DiceASTOptimizer.java)15
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/old/ast/optimization/package-info.java (renamed from dice-lang/src/main/java/bjc/dicelang/ast/optimization/package-info.java)2
17 files changed, 156 insertions, 95 deletions
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTParser.java b/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTParser.java
new file mode 100644
index 0000000..db2ba98
--- /dev/null
+++ b/dice-lang/src/main/java/bjc/dicelang/ast/DiceASTParser.java
@@ -0,0 +1,70 @@
+package bjc.dicelang.ast;
+
+import java.util.InputMismatchException;
+
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.LiteralDiceNode;
+import bjc.dicelang.old.ast.nodes.OperatorDiceNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
+import bjc.utils.funcdata.IFunctionalList;
+import bjc.utils.parserutils.AST;
+import bjc.utils.parserutils.TreeConstructor;
+
+/**
+ * Parse a string expression into AST form. Doesn't do anything else
+ *
+ * @author ben
+ *
+ */
+public class DiceASTParser {
+ /**
+ * Create an AST from a list of tokens
+ *
+ * @param tokens
+ * The list of tokens to convert
+ * @return An AST built from the tokens
+ */
+ public static AST<IDiceASTNode> createFromString(
+ IFunctionalList<String> tokens) {
+ AST<String> rawTokens =
+ TreeConstructor.constructTree(tokens, (token) -> {
+ return isOperatorNode(token);
+ }, (operator) -> false, null);
+ // The last argument is valid because there are no special
+ // operators yet, so it'll never get called
+
+ return rawTokens.rebuildTree(DiceASTParser::convertLeafNode,
+ DiceASTParser::convertOperatorNode);
+ }
+
+ private static boolean isOperatorNode(String token) {
+ try {
+ OperatorDiceNode.fromString(token);
+ return true;
+ } catch (@SuppressWarnings("unused") IllegalArgumentException iaex) {
+ // We don't care about details
+ return false;
+ }
+ }
+
+ private static IDiceASTNode convertLeafNode(String leafNode) {
+ if (LiteralDiceNode.isLiteral(leafNode)) {
+ return new LiteralDiceNode(leafNode);
+ }
+
+ return new VariableDiceNode(leafNode);
+ }
+
+ private static IDiceASTNode convertOperatorNode(String operatorNode) {
+ try {
+ return OperatorDiceNode.fromString(operatorNode);
+ } catch (IllegalArgumentException iaex) {
+ InputMismatchException imex = new InputMismatchException(
+ "Attempted to parse invalid operator " + operatorNode);
+
+ imex.initCause(iaex);
+
+ throw imex;
+ }
+ }
+}
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/package-info.java b/dice-lang/src/main/java/bjc/dicelang/ast/package-info.java
new file mode 100644
index 0000000..105af50
--- /dev/null
+++ b/dice-lang/src/main/java/bjc/dicelang/ast/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * New implementation of AST for dice-lang
+ * @author ben
+ *
+ */
+package bjc.dicelang.ast; \ No newline at end of file
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTDefinedChecker.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTDefinedChecker.java
index 4a20a82..e279d8e 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTDefinedChecker.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTDefinedChecker.java
@@ -3,9 +3,9 @@ package bjc.dicelang.old.ast;
import java.util.Map;
import java.util.function.Consumer;
-import bjc.dicelang.ast.nodes.DiceASTType;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.VariableDiceNode;
+import bjc.dicelang.old.ast.nodes.DiceASTType;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
import bjc.utils.data.IHolder;
/**
@@ -54,8 +54,8 @@ public final class DiceASTDefinedChecker
VariableDiceNode node = (VariableDiceNode) astNode;
return !enviroment.containsKey(node.getVariable());
- } else {
- return false;
}
+
+ return false;
}
} \ No newline at end of file
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTExpression.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTExpression.java
index 7651093..e6dca9e 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTExpression.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTExpression.java
@@ -7,11 +7,11 @@ import java.util.function.Function;
import bjc.dicelang.ComplexDice;
import bjc.dicelang.IDiceExpression;
-import bjc.dicelang.ast.nodes.DiceASTType;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.LiteralDiceNode;
-import bjc.dicelang.ast.nodes.OperatorDiceNode;
-import bjc.dicelang.ast.nodes.VariableDiceNode;
+import bjc.dicelang.old.ast.nodes.DiceASTType;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.LiteralDiceNode;
+import bjc.dicelang.old.ast.nodes.OperatorDiceNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
import bjc.utils.data.GenHolder;
import bjc.utils.data.Pair;
import bjc.utils.funcdata.bst.ITreePart.TreeLinearizationMethod;
@@ -79,8 +79,8 @@ public class DiceASTExpression implements IDiceExpression {
* The enviroment to evaluate bindings and such against
* @return The operations to use when collapsing the AST
*/
- private static Map<IDiceASTNode, IOperatorCollapser>
- buildOperations(Map<String, DiceASTExpression> enviroment) {
+ private static Map<IDiceASTNode, IOperatorCollapser> buildOperations(
+ Map<String, DiceASTExpression> enviroment) {
Map<IDiceASTNode, IOperatorCollapser> operatorCollapsers =
new HashMap<>();
@@ -111,14 +111,13 @@ public class DiceASTExpression implements IDiceExpression {
DiceASTExpression::parseGroup);
operatorCollapsers.put(OperatorDiceNode.LET, (left, right) -> {
- return doLet(enviroment, left, right);
+ return doLet(left, right);
});
return operatorCollapsers;
}
private static Pair<Integer, AST<IDiceASTNode>> doLet(
- Map<String, DiceASTExpression> enviroment,
Pair<Integer, AST<IDiceASTNode>> left,
Pair<Integer, AST<IDiceASTNode>> right) {
return left.merge((leftValue, leftAST) -> {
@@ -127,21 +126,10 @@ public class DiceASTExpression implements IDiceExpression {
.applyToHead(DiceASTExpression::isAssignNode)) {
// Just ignore the left block then
return new Pair<>(rightValue, rightAST);
- } else {
- // Left block has an assignment to handle
- String varName = leftAST.applyToLeft((leftBranch) -> {
- return getAssignmentVar(leftBranch);
- });
-
- return null;
}
- });
- });
- }
- private static String getAssignmentVar(AST<IDiceASTNode> leftBranch) {
- return leftBranch.applyToHead((node) -> {
- return ((VariableDiceNode) node).getVariable();
+ return null;
+ });
});
}
@@ -268,8 +256,8 @@ public class DiceASTExpression implements IDiceExpression {
* @return A pair consisting of the token's value and the AST it
* represents
*/
- private Pair<Integer, AST<IDiceASTNode>>
- evaluateLeaf(IDiceASTNode leafNode) {
+ private Pair<Integer, AST<IDiceASTNode>> evaluateLeaf(
+ IDiceASTNode leafNode) {
if (leafNode.getType() == DiceASTType.VARIABLE) {
VariableDiceNode node = (VariableDiceNode) leafNode;
@@ -284,17 +272,17 @@ public class DiceASTExpression implements IDiceExpression {
}
}
- private Pair<Integer, AST<IDiceASTNode>>
- parseVariable(VariableDiceNode leafNode) {
+ private Pair<Integer, AST<IDiceASTNode>> parseVariable(
+ VariableDiceNode leafNode) {
String varName = leafNode.getVariable();
if (env.containsKey(varName)) {
return new Pair<>(env.get(varName).roll(),
new AST<>(leafNode));
- } else {
- // Handle special case for defining variables
- return new Pair<>(0, new AST<>(leafNode));
}
+
+ // Handle special case for defining variables
+ return new Pair<>(0, new AST<>(leafNode));
}
/**
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTFlattener.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTFlattener.java
index a7500a8..39c0797 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTFlattener.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTFlattener.java
@@ -15,11 +15,11 @@ import bjc.dicelang.DiceExpressionType;
import bjc.dicelang.IDiceExpression;
import bjc.dicelang.ReferenceDiceExpression;
import bjc.dicelang.ScalarDie;
-import bjc.dicelang.ast.nodes.DiceASTType;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.LiteralDiceNode;
-import bjc.dicelang.ast.nodes.OperatorDiceNode;
-import bjc.dicelang.ast.nodes.VariableDiceNode;
+import bjc.dicelang.old.ast.nodes.DiceASTType;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.LiteralDiceNode;
+import bjc.dicelang.old.ast.nodes.OperatorDiceNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
import bjc.utils.parserutils.AST;
/**
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTInliner.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTInliner.java
index 3a8e796..802741f 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTInliner.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTInliner.java
@@ -2,9 +2,9 @@ package bjc.dicelang.old.ast;
import java.util.function.Function;
-import bjc.dicelang.ast.nodes.DiceASTType;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.VariableDiceNode;
+import bjc.dicelang.old.ast.nodes.DiceASTType;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
import bjc.utils.funcdata.FunctionalList;
import bjc.utils.funcdata.FunctionalMap;
import bjc.utils.funcdata.IFunctionalList;
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTParser.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTParser.java
index d8e13f7..c9b48c8 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTParser.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTParser.java
@@ -4,12 +4,10 @@ import java.util.Deque;
import java.util.LinkedList;
import java.util.function.Function;
-import org.apache.commons.lang3.StringUtils;
-
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.LiteralDiceNode;
-import bjc.dicelang.ast.nodes.OperatorDiceNode;
-import bjc.dicelang.ast.nodes.VariableDiceNode;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.LiteralDiceNode;
+import bjc.dicelang.old.ast.nodes.OperatorDiceNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
import bjc.utils.data.IPair;
import bjc.utils.data.Pair;
import bjc.utils.funcdata.FunctionalStringTokenizer;
@@ -32,37 +30,12 @@ public class DiceASTParser {
public IDiceASTNode apply(String tok) {
if (isOperator(tok)) {
return OperatorDiceNode.fromString(tok);
- } else if (NodeBaker.isLiteral(tok)) {
+ } else if (LiteralDiceNode.isLiteral(tok)) {
return new LiteralDiceNode(tok);
} else {
return new VariableDiceNode(tok);
}
}
-
- /**
- * Check if a token represents a literal
- *
- * @param tok
- * The token to check
- * @return Whether or not the token represents a literal
- */
- private static boolean isLiteral(String tok) {
- if (StringUtils.countMatches(tok, 'c') == 1
- && !tok.equalsIgnoreCase("c")) {
- return true;
- } else if (StringUtils.countMatches(tok, 'd') == 1
- && !tok.equalsIgnoreCase("d")) {
- return true;
- } else {
- try {
- Integer.parseInt(tok);
- return true;
- } catch (@SuppressWarnings("unused") NumberFormatException nfex) {
- // We don't care about details
- return false;
- }
- }
- }
}
/**
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTReferenceChecker.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTReferenceChecker.java
index e526ee9..3e0ceec 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTReferenceChecker.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/DiceASTReferenceChecker.java
@@ -2,9 +2,9 @@ package bjc.dicelang.old.ast;
import java.util.function.Consumer;
-import bjc.dicelang.ast.nodes.DiceASTType;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.VariableDiceNode;
+import bjc.dicelang.old.ast.nodes.DiceASTType;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.VariableDiceNode;
import bjc.utils.data.IHolder;
/**
@@ -53,8 +53,8 @@ public final class DiceASTReferenceChecker
VariableDiceNode node = (VariableDiceNode) astNode;
return node.getVariable().equals(varName);
- } else {
- return false;
}
+
+ return false;
}
} \ No newline at end of file
diff --git a/dice-lang/src/main/java/bjc/dicelang/old/ast/IOperatorCollapser.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/IOperatorCollapser.java
index 65cb264..36243a6 100644
--- a/dice-lang/src/main/java/bjc/dicelang/old/ast/IOperatorCollapser.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/IOperatorCollapser.java
@@ -2,7 +2,7 @@ package bjc.dicelang.old.ast;
import java.util.function.BinaryOperator;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
import bjc.utils.data.Pair;
import bjc.utils.parserutils.AST;
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/DiceASTType.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/DiceASTType.java
index 9feb461..633d1d9 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/DiceASTType.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/DiceASTType.java
@@ -1,4 +1,4 @@
-package bjc.dicelang.ast.nodes;
+package bjc.dicelang.old.ast.nodes;
/**
* An enum to represent the type of node an AST node is
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/IDiceASTNode.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/IDiceASTNode.java
index afa0bcd..579c595 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/IDiceASTNode.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/IDiceASTNode.java
@@ -1,4 +1,4 @@
-package bjc.dicelang.ast.nodes;
+package bjc.dicelang.old.ast.nodes;
/**
* The interface for a node in a dice AST
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/LiteralDiceNode.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/LiteralDiceNode.java
index 1a6d2bf..46c84d0 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/LiteralDiceNode.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/LiteralDiceNode.java
@@ -1,4 +1,4 @@
-package bjc.dicelang.ast.nodes;
+package bjc.dicelang.old.ast.nodes;
import org.apache.commons.lang3.StringUtils;
@@ -189,4 +189,29 @@ public class LiteralDiceNode implements IDiceASTNode {
public int toConstant() {
return Integer.parseInt(value);
}
+
+ /**
+ * Check if a token represents a literal
+ *
+ * @param tok
+ * The token to check
+ * @return Whether or not the token represents a literal
+ */
+ public static boolean isLiteral(String tok) {
+ if (StringUtils.countMatches(tok, 'c') == 1
+ && !tok.equalsIgnoreCase("c")) {
+ return true;
+ } else if (StringUtils.countMatches(tok, 'd') == 1
+ && !tok.equalsIgnoreCase("d")) {
+ return true;
+ } else {
+ try {
+ Integer.parseInt(tok);
+ return true;
+ } catch (@SuppressWarnings("unused") NumberFormatException nfex) {
+ // We don't care about details
+ return false;
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/OperatorDiceNode.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/OperatorDiceNode.java
index 2820cfb..3c06553 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/OperatorDiceNode.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/OperatorDiceNode.java
@@ -1,4 +1,4 @@
-package bjc.dicelang.ast.nodes;
+package bjc.dicelang.old.ast.nodes;
// The following classes need to be changed upon addition of a new operator
// 1. DiceASTExpression
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/VariableDiceNode.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/VariableDiceNode.java
index 29fd483..262f99b 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/VariableDiceNode.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/VariableDiceNode.java
@@ -1,4 +1,4 @@
-package bjc.dicelang.ast.nodes;
+package bjc.dicelang.old.ast.nodes;
/**
* A node that represents a variable reference
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/package-info.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/package-info.java
index 97f1990..f99776f 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/nodes/package-info.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/nodes/package-info.java
@@ -3,4 +3,4 @@
* @author ben
*
*/
-package bjc.dicelang.ast.nodes; \ No newline at end of file
+package bjc.dicelang.old.ast.nodes; \ No newline at end of file
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/optimization/DiceASTOptimizer.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/optimization/DiceASTOptimizer.java
index f6be7ab..dead812 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/optimization/DiceASTOptimizer.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/optimization/DiceASTOptimizer.java
@@ -1,4 +1,6 @@
-package bjc.dicelang.ast.optimization;
+package bjc.dicelang.old.ast.optimization;
+
+import static bjc.dicelang.old.ast.nodes.DiceASTType.*;
import java.util.HashMap;
import java.util.Map;
@@ -6,13 +8,10 @@ import java.util.function.BiFunction;
import java.util.function.BinaryOperator;
import bjc.dicelang.IDiceExpression;
-import bjc.dicelang.ast.nodes.DiceASTType;
-import bjc.dicelang.ast.nodes.IDiceASTNode;
-import bjc.dicelang.ast.nodes.LiteralDiceNode;
-import bjc.dicelang.ast.nodes.OperatorDiceNode;
-
-import static bjc.dicelang.ast.nodes.DiceASTType.*;
-
+import bjc.dicelang.old.ast.nodes.DiceASTType;
+import bjc.dicelang.old.ast.nodes.IDiceASTNode;
+import bjc.dicelang.old.ast.nodes.LiteralDiceNode;
+import bjc.dicelang.old.ast.nodes.OperatorDiceNode;
import bjc.utils.parserutils.AST;
/**
diff --git a/dice-lang/src/main/java/bjc/dicelang/ast/optimization/package-info.java b/dice-lang/src/main/java/bjc/dicelang/old/ast/optimization/package-info.java
index 132563d..ef39522 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ast/optimization/package-info.java
+++ b/dice-lang/src/main/java/bjc/dicelang/old/ast/optimization/package-info.java
@@ -3,4 +3,4 @@
* @author ben
*
*/
-package bjc.dicelang.ast.optimization; \ No newline at end of file
+package bjc.dicelang.old.ast.optimization; \ No newline at end of file