aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/visitors
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-01-10 16:12:32 +0000
committerMichael Williamson <mike@zwobble.org>2016-01-10 16:12:32 +0000
commit1cca01d385e68aefe2131319c53c4811101f15f7 (patch)
tree08fbdf98f3e0d53ce1c64925bef8ad576c52ae64 /src/main/java/org/zwobble/couscous/ast/visitors
parent29c9a38a112b53e4ca193af27818442493c876cb (diff)
Handle both static and instance method calls in one node
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/visitors')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java1
-rw-r--r--src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java4
-rw-r--r--src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java15
-rw-r--r--src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java4
4 files changed, 16 insertions, 8 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java b/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java
index 87b8598..6eab8d4 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java
@@ -9,7 +9,6 @@ public interface ExpressionNodeMapper<T> {
T visit(AssignmentNode assignment);
T visit(TernaryConditionalNode ternaryConditional);
T visit(MethodCallNode methodCall);
- T visit(StaticMethodCallNode staticMethodCall);
T visit(ConstructorCallNode call);
T visit(FieldAccessNode fieldAccess);
T visit(TypeCoercionNode typeCoercion);
diff --git a/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java b/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java
index 4267c75..fe3b4a2 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java
@@ -9,11 +9,13 @@ public interface NodeMapper<T> {
T visit(AssignmentNode assignment);
T visit(TernaryConditionalNode ternaryConditional);
T visit(MethodCallNode methodCall);
- T visit(StaticMethodCallNode staticMethodCall);
T visit(ConstructorCallNode call);
T visit(FieldAccessNode fieldAccess);
T visit(TypeCoercionNode typeCoercion);
+ T visit(InstanceReceiver receiver);
+ T visit(StaticReceiver receiver);
+
T visit(ReturnNode returnNode);
T visit(ExpressionStatementNode expressionStatement);
T visit(LocalVariableDeclarationNode localVariableDeclaration);
diff --git a/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java b/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java
index 09cfcd3..388acb1 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java
@@ -40,11 +40,6 @@ public class NodeMapperWithDefault<T> implements NodeMapper<T> {
}
@Override
- public T visit(StaticMethodCallNode staticMethodCall) {
- return defaultValue;
- }
-
- @Override
public T visit(ConstructorCallNode call) {
return defaultValue;
}
@@ -60,6 +55,16 @@ public class NodeMapperWithDefault<T> implements NodeMapper<T> {
}
@Override
+ public T visit(InstanceReceiver receiver) {
+ return defaultValue;
+ }
+
+ @Override
+ public T visit(StaticReceiver receiver) {
+ return defaultValue;
+ }
+
+ @Override
public T visit(ReturnNode returnNode) {
return defaultValue;
}
diff --git a/src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java b/src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java
index 9f6be92..189a0cd 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java
@@ -9,11 +9,13 @@ public interface NodeVisitor {
void visit(AssignmentNode assignment);
void visit(TernaryConditionalNode ternaryConditional);
void visit(MethodCallNode methodCall);
- void visit(StaticMethodCallNode staticMethodCall);
void visit(ConstructorCallNode call);
void visit(FieldAccessNode fieldAccess);
void visit(TypeCoercionNode typeCoercion);
+ void visit(InstanceReceiver receiver);
+ void visit(StaticReceiver receiver);
+
void visit(ReturnNode returnNode);
void visit(ExpressionStatementNode expressionStatement);
void visit(LocalVariableDeclarationNode localVariableDeclaration);