From 3be68289f34a37ac7f9e1e95fa0d95dfc1bb3836 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 15 Jul 2016 12:06:42 +0100 Subject: Remove ExpressionNodeMapper --- src/main/java/org/zwobble/couscous/ast/ArrayNode.java | 6 ------ .../java/org/zwobble/couscous/ast/AssignmentNode.java | 8 +------- src/main/java/org/zwobble/couscous/ast/CastNode.java | 8 +------- .../org/zwobble/couscous/ast/ConstructorCallNode.java | 8 +------- .../java/org/zwobble/couscous/ast/ExpressionNode.java | 4 ---- .../org/zwobble/couscous/ast/FieldAccessNode.java | 6 ------ .../java/org/zwobble/couscous/ast/InstanceOfNode.java | 6 ------ .../java/org/zwobble/couscous/ast/LiteralNode.java | 6 ------ .../java/org/zwobble/couscous/ast/MethodCallNode.java | 6 ------ .../java/org/zwobble/couscous/ast/OperationNode.java | 8 +------- .../zwobble/couscous/ast/TernaryConditionalNode.java | 8 +------- .../org/zwobble/couscous/ast/ThisReferenceNode.java | 8 +------- .../org/zwobble/couscous/ast/TypeCoercionNode.java | 8 +------- .../zwobble/couscous/ast/VariableReferenceNode.java | 8 +------- .../couscous/ast/visitors/ExpressionNodeMapper.java | 19 ------------------- 15 files changed, 8 insertions(+), 109 deletions(-) delete mode 100644 src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java (limited to 'src/main/java/org/zwobble/couscous/ast') diff --git a/src/main/java/org/zwobble/couscous/ast/ArrayNode.java b/src/main/java/org/zwobble/couscous/ast/ArrayNode.java index 1f3c8e3..784cb69 100644 --- a/src/main/java/org/zwobble/couscous/ast/ArrayNode.java +++ b/src/main/java/org/zwobble/couscous/ast/ArrayNode.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; import org.zwobble.couscous.types.Type; import org.zwobble.couscous.types.Types; @@ -33,11 +32,6 @@ public class ArrayNode implements ExpressionNode { return Types.array(elementType); } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.ARRAY; diff --git a/src/main/java/org/zwobble/couscous/ast/AssignmentNode.java b/src/main/java/org/zwobble/couscous/ast/AssignmentNode.java index d41f629..e12c5dd 100644 --- a/src/main/java/org/zwobble/couscous/ast/AssignmentNode.java +++ b/src/main/java/org/zwobble/couscous/ast/AssignmentNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import org.zwobble.couscous.util.ExtraIterables; import static org.zwobble.couscous.ast.ExpressionStatementNode.expressionStatement; @@ -41,11 +40,6 @@ public class AssignmentNode implements ExpressionNode { return value; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.ASSIGNMENT; diff --git a/src/main/java/org/zwobble/couscous/ast/CastNode.java b/src/main/java/org/zwobble/couscous/ast/CastNode.java index d22bb63..02b2626 100644 --- a/src/main/java/org/zwobble/couscous/ast/CastNode.java +++ b/src/main/java/org/zwobble/couscous/ast/CastNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import org.zwobble.couscous.util.ExtraIterables; public class CastNode implements ExpressionNode { @@ -27,11 +26,6 @@ public class CastNode implements ExpressionNode { return type; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.CAST; diff --git a/src/main/java/org/zwobble/couscous/ast/ConstructorCallNode.java b/src/main/java/org/zwobble/couscous/ast/ConstructorCallNode.java index e9eabd6..2f9c44e 100644 --- a/src/main/java/org/zwobble/couscous/ast/ConstructorCallNode.java +++ b/src/main/java/org/zwobble/couscous/ast/ConstructorCallNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import java.util.List; @@ -34,11 +33,6 @@ public class ConstructorCallNode implements ExpressionNode { return arguments; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.CONSTRUCTOR_CALL; diff --git a/src/main/java/org/zwobble/couscous/ast/ExpressionNode.java b/src/main/java/org/zwobble/couscous/ast/ExpressionNode.java index 16a47e8..4a588d1 100644 --- a/src/main/java/org/zwobble/couscous/ast/ExpressionNode.java +++ b/src/main/java/org/zwobble/couscous/ast/ExpressionNode.java @@ -1,13 +1,9 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; import org.zwobble.couscous.types.Type; public interface ExpressionNode extends Node { Type getType(); - T accept(ExpressionNodeMapper visitor); - - ExpressionNode transform(NodeTransformer transformer); } diff --git a/src/main/java/org/zwobble/couscous/ast/FieldAccessNode.java b/src/main/java/org/zwobble/couscous/ast/FieldAccessNode.java index e4c422f..f3470ee 100644 --- a/src/main/java/org/zwobble/couscous/ast/FieldAccessNode.java +++ b/src/main/java/org/zwobble/couscous/ast/FieldAccessNode.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; import org.zwobble.couscous.types.ScalarType; import org.zwobble.couscous.types.Type; @@ -60,11 +59,6 @@ public class FieldAccessNode implements AssignableExpressionNode { return type; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.FIELD_ACCESS; diff --git a/src/main/java/org/zwobble/couscous/ast/InstanceOfNode.java b/src/main/java/org/zwobble/couscous/ast/InstanceOfNode.java index f2dcc0b..ea4200d 100644 --- a/src/main/java/org/zwobble/couscous/ast/InstanceOfNode.java +++ b/src/main/java/org/zwobble/couscous/ast/InstanceOfNode.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; import org.zwobble.couscous.types.ScalarType; import org.zwobble.couscous.types.Type; @@ -29,11 +28,6 @@ public class InstanceOfNode implements ExpressionNode { return Types.BOOLEAN; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.INSTANCE_OF; diff --git a/src/main/java/org/zwobble/couscous/ast/LiteralNode.java b/src/main/java/org/zwobble/couscous/ast/LiteralNode.java index b8d8735..1522c7f 100644 --- a/src/main/java/org/zwobble/couscous/ast/LiteralNode.java +++ b/src/main/java/org/zwobble/couscous/ast/LiteralNode.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; import org.zwobble.couscous.types.ScalarType; import org.zwobble.couscous.types.Type; @@ -54,11 +53,6 @@ public class LiteralNode implements ExpressionNode { return value; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.LITERAL; diff --git a/src/main/java/org/zwobble/couscous/ast/MethodCallNode.java b/src/main/java/org/zwobble/couscous/ast/MethodCallNode.java index 381fb11..0d78c40 100644 --- a/src/main/java/org/zwobble/couscous/ast/MethodCallNode.java +++ b/src/main/java/org/zwobble/couscous/ast/MethodCallNode.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; import org.zwobble.couscous.types.ScalarType; import org.zwobble.couscous.types.Type; @@ -154,11 +153,6 @@ public class MethodCallNode implements ExpressionNode { return signature; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.METHOD_CALL; diff --git a/src/main/java/org/zwobble/couscous/ast/OperationNode.java b/src/main/java/org/zwobble/couscous/ast/OperationNode.java index 44f2d1f..1a838bd 100644 --- a/src/main/java/org/zwobble/couscous/ast/OperationNode.java +++ b/src/main/java/org/zwobble/couscous/ast/OperationNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import java.util.List; @@ -46,11 +45,6 @@ public class OperationNode implements ExpressionNode { return type; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.OPERATION; diff --git a/src/main/java/org/zwobble/couscous/ast/TernaryConditionalNode.java b/src/main/java/org/zwobble/couscous/ast/TernaryConditionalNode.java index 0d2ecda..979bd33 100644 --- a/src/main/java/org/zwobble/couscous/ast/TernaryConditionalNode.java +++ b/src/main/java/org/zwobble/couscous/ast/TernaryConditionalNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import org.zwobble.couscous.util.ExtraIterables; public class TernaryConditionalNode implements ExpressionNode { @@ -38,11 +37,6 @@ public class TernaryConditionalNode implements ExpressionNode { return ifFalse; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.TERNARY_CONDITIONAL; diff --git a/src/main/java/org/zwobble/couscous/ast/ThisReferenceNode.java b/src/main/java/org/zwobble/couscous/ast/ThisReferenceNode.java index 8da97e6..5b80b9c 100644 --- a/src/main/java/org/zwobble/couscous/ast/ThisReferenceNode.java +++ b/src/main/java/org/zwobble/couscous/ast/ThisReferenceNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import org.zwobble.couscous.util.ExtraIterables; public class ThisReferenceNode implements ExpressionNode, ReferenceNode { @@ -20,11 +19,6 @@ public class ThisReferenceNode implements ExpressionNode, ReferenceNode { return type; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public T accept(Visitor visitor) { return visitor.visit(this); diff --git a/src/main/java/org/zwobble/couscous/ast/TypeCoercionNode.java b/src/main/java/org/zwobble/couscous/ast/TypeCoercionNode.java index 9e4507d..1c8ee6e 100644 --- a/src/main/java/org/zwobble/couscous/ast/TypeCoercionNode.java +++ b/src/main/java/org/zwobble/couscous/ast/TypeCoercionNode.java @@ -1,8 +1,7 @@ package org.zwobble.couscous.ast; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import org.zwobble.couscous.util.ExtraIterables; import static org.zwobble.couscous.types.Types.concrete; @@ -37,11 +36,6 @@ public class TypeCoercionNode implements ExpressionNode { return type; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - @Override public int type() { return NodeTypes.TYPE_COERCION; diff --git a/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java b/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java index 96f2fdf..0763fc4 100644 --- a/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java +++ b/src/main/java/org/zwobble/couscous/ast/VariableReferenceNode.java @@ -1,9 +1,8 @@ package org.zwobble.couscous.ast; import org.zwobble.couscous.ast.identifiers.Identifier; -import org.zwobble.couscous.types.Type; -import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.ast.visitors.NodeTransformer; +import org.zwobble.couscous.types.Type; import org.zwobble.couscous.util.ExtraIterables; public class VariableReferenceNode implements AssignableExpressionNode, ReferenceNode { @@ -25,11 +24,6 @@ public class VariableReferenceNode implements AssignableExpressionNode, Referenc return referent; } - @Override - public T accept(ExpressionNodeMapper visitor) { - return visitor.visit(this); - } - public Identifier getReferentId() { return referent.getId(); } diff --git a/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java b/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java deleted file mode 100644 index acc972a..0000000 --- a/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java +++ /dev/null @@ -1,19 +0,0 @@ -package org.zwobble.couscous.ast.visitors; - -import org.zwobble.couscous.ast.*; - -public interface ExpressionNodeMapper { - T visit(LiteralNode literal); - T visit(VariableReferenceNode variableReference); - T visit(ThisReferenceNode reference); - T visit(ArrayNode array); - T visit(AssignmentNode assignment); - T visit(TernaryConditionalNode ternaryConditional); - T visit(MethodCallNode methodCall); - T visit(ConstructorCallNode call); - T visit(OperationNode operation); - T visit(InstanceOfNode instanceOf); - T visit(FieldAccessNode fieldAccess); - T visit(TypeCoercionNode typeCoercion); - T visit(CastNode cast); -} -- cgit v1.2.3