aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/visitors
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-01-10 19:58:11 +0000
committerMichael Williamson <mike@zwobble.org>2016-01-10 19:58:11 +0000
commitb35303b621aa02f7c74143ae089a722d6934a153 (patch)
tree5de37f06b649513420626eed40cb8cbc4e9c782b /src/main/java/org/zwobble/couscous/ast/visitors
parent911fbc3e5c6ec6aa89aa0c19b31785a12fe2dd05 (diff)
Add reading of casts
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.java1
-rw-r--r--src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java5
-rw-r--r--src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java1
4 files changed, 8 insertions, 0 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 6eab8d4..c296a30 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/ExpressionNodeMapper.java
@@ -12,4 +12,5 @@ public interface ExpressionNodeMapper<T> {
T visit(ConstructorCallNode call);
T visit(FieldAccessNode fieldAccess);
T visit(TypeCoercionNode typeCoercion);
+ T visit(CastNode cast);
}
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 fe3b4a2..fb8da13 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapper.java
@@ -12,6 +12,7 @@ public interface NodeMapper<T> {
T visit(ConstructorCallNode call);
T visit(FieldAccessNode fieldAccess);
T visit(TypeCoercionNode typeCoercion);
+ T visit(CastNode cast);
T visit(InstanceReceiver receiver);
T visit(StaticReceiver receiver);
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 388acb1..178442d 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/NodeMapperWithDefault.java
@@ -55,6 +55,11 @@ public class NodeMapperWithDefault<T> implements NodeMapper<T> {
}
@Override
+ public T visit(CastNode cast) {
+ return defaultValue;
+ }
+
+ @Override
public T visit(InstanceReceiver receiver) {
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 189a0cd..bf6240b 100644
--- a/src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java
+++ b/src/main/java/org/zwobble/couscous/ast/visitors/NodeVisitor.java
@@ -12,6 +12,7 @@ public interface NodeVisitor {
void visit(ConstructorCallNode call);
void visit(FieldAccessNode fieldAccess);
void visit(TypeCoercionNode typeCoercion);
+ void visit(CastNode cast);
void visit(InstanceReceiver receiver);
void visit(StaticReceiver receiver);