diff --git a/src/jrr1g18/boring/nodes/BinaryOperationNode.java b/src/jrr1g18/boring/nodes/BinaryOperationNode.java index a530627a95202b1e56b22cb9bec5a96dbe7f698d..3bf3fe2cf0343feeb7dd235f5deb1257edb07c8d 100644 --- a/src/jrr1g18/boring/nodes/BinaryOperationNode.java +++ b/src/jrr1g18/boring/nodes/BinaryOperationNode.java @@ -1,5 +1,9 @@ package jrr1g18.boring.nodes; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + /** * A class representing a binary operation on the AST. * @@ -10,6 +14,16 @@ public class BinaryOperationNode extends ASTNode { private ASTNode m_lhs; private ASTNode m_rhs; + private static final List<NodeType> VALID_NODES; + static { + List<NodeType> nodes = new ArrayList<>(); + nodes.add(NodeType.ADD); + nodes.add(NodeType.DIV); + nodes.add(NodeType.MUL); + nodes.add(NodeType.SUB); + VALID_NODES = Collections.unmodifiableList(nodes); + } + /** * Create a new BinaryOperationNode * @@ -34,6 +48,6 @@ public class BinaryOperationNode extends ASTNode { @Override public boolean isValidType(NodeType type) { - + return VALID_NODES.contains(type); } } diff --git a/src/jrr1g18/boring/nodes/statements/EmptyStatementNode.java b/src/jrr1g18/boring/nodes/statements/EmptyStatementNode.java index 3e744636ef91aaf4f7e30f44394444e887d5707b..05c95b036b6a4bccb2551848cfdc21ddc5943dd4 100644 --- a/src/jrr1g18/boring/nodes/statements/EmptyStatementNode.java +++ b/src/jrr1g18/boring/nodes/statements/EmptyStatementNode.java @@ -1,6 +1,3 @@ -/** - * - */ package jrr1g18.boring.nodes.statements; /** @@ -20,7 +17,6 @@ public class EmptyStatementNode extends StatementNode { @Override public boolean isValidType(NodeType type) { - - return super.isValidType(type); + return type == NodeType.EMPTY_STATEMENT; } }