aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/values
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-01-10 20:01:53 +0000
committerMichael Williamson <mike@zwobble.org>2016-01-10 20:01:53 +0000
commit7d4fee9187aeb5f8fede67944402921c9f7bb3f7 (patch)
tree2c5ba8c3e11b097df523ed1a7a6b5af9685e5bc1 /src/main/java/org/zwobble/couscous/values
parentb35303b621aa02f7c74143ae089a722d6934a153 (diff)
Simplify primitive value visitor interface
Diffstat (limited to 'src/main/java/org/zwobble/couscous/values')
-rw-r--r--src/main/java/org/zwobble/couscous/values/BooleanValue.java3
-rw-r--r--src/main/java/org/zwobble/couscous/values/IntegerValue.java2
-rw-r--r--src/main/java/org/zwobble/couscous/values/PrimitiveValueVisitor.java12
-rw-r--r--src/main/java/org/zwobble/couscous/values/StringValue.java2
-rw-r--r--src/main/java/org/zwobble/couscous/values/TypeValue.java2
-rw-r--r--src/main/java/org/zwobble/couscous/values/UnitValue.java2
6 files changed, 12 insertions, 11 deletions
diff --git a/src/main/java/org/zwobble/couscous/values/BooleanValue.java b/src/main/java/org/zwobble/couscous/values/BooleanValue.java
index 1d2c0a4..5ceceb2 100644
--- a/src/main/java/org/zwobble/couscous/values/BooleanValue.java
+++ b/src/main/java/org/zwobble/couscous/values/BooleanValue.java
@@ -1,7 +1,6 @@
package org.zwobble.couscous.values;
import org.zwobble.couscous.ast.TypeName;
-import org.zwobble.couscous.interpreter.values.InterpreterValue;
public final class BooleanValue implements PrimitiveValue {
public static final TypeName REF = TypeName.of("boolean");
@@ -13,7 +12,7 @@ public final class BooleanValue implements PrimitiveValue {
@Override
public <T> T accept(PrimitiveValueVisitor<T> visitor) {
- return visitor.visit(this);
+ return visitor.visitBoolean(value);
}
@Override
diff --git a/src/main/java/org/zwobble/couscous/values/IntegerValue.java b/src/main/java/org/zwobble/couscous/values/IntegerValue.java
index e897668..ed0040a 100644
--- a/src/main/java/org/zwobble/couscous/values/IntegerValue.java
+++ b/src/main/java/org/zwobble/couscous/values/IntegerValue.java
@@ -8,7 +8,7 @@ public final class IntegerValue implements PrimitiveValue {
@Override
public <T> T accept(PrimitiveValueVisitor<T> visitor) {
- return visitor.visit(this);
+ return visitor.visitInteger(value);
}
@Override
diff --git a/src/main/java/org/zwobble/couscous/values/PrimitiveValueVisitor.java b/src/main/java/org/zwobble/couscous/values/PrimitiveValueVisitor.java
index 9b31b05..18b6916 100644
--- a/src/main/java/org/zwobble/couscous/values/PrimitiveValueVisitor.java
+++ b/src/main/java/org/zwobble/couscous/values/PrimitiveValueVisitor.java
@@ -1,9 +1,11 @@
package org.zwobble.couscous.values;
+import org.zwobble.couscous.ast.TypeName;
+
public interface PrimitiveValueVisitor<T> {
- T visit(IntegerValue value);
- T visit(StringValue value);
- T visit(BooleanValue value);
- T visit(UnitValue unitValue);
- T visit(TypeValue value);
+ T visitInteger(int value);
+ T visitString(String value);
+ T visitBoolean(boolean value);
+ T visitUnit();
+ T visitType(TypeName value);
}
diff --git a/src/main/java/org/zwobble/couscous/values/StringValue.java b/src/main/java/org/zwobble/couscous/values/StringValue.java
index ff2ad61..d2a0a6a 100644
--- a/src/main/java/org/zwobble/couscous/values/StringValue.java
+++ b/src/main/java/org/zwobble/couscous/values/StringValue.java
@@ -12,7 +12,7 @@ public final class StringValue implements PrimitiveValue {
@Override
public <T> T accept(PrimitiveValueVisitor<T> visitor) {
- return visitor.visit(this);
+ return visitor.visitString(value);
}
@Override
diff --git a/src/main/java/org/zwobble/couscous/values/TypeValue.java b/src/main/java/org/zwobble/couscous/values/TypeValue.java
index 269839a..663673e 100644
--- a/src/main/java/org/zwobble/couscous/values/TypeValue.java
+++ b/src/main/java/org/zwobble/couscous/values/TypeValue.java
@@ -15,7 +15,7 @@ public class TypeValue implements PrimitiveValue {
@Override
public <T> T accept(PrimitiveValueVisitor<T> visitor) {
- return visitor.visit(this);
+ return visitor.visitType(value);
}
@Override
diff --git a/src/main/java/org/zwobble/couscous/values/UnitValue.java b/src/main/java/org/zwobble/couscous/values/UnitValue.java
index 9d48b9e..dfa11d4 100644
--- a/src/main/java/org/zwobble/couscous/values/UnitValue.java
+++ b/src/main/java/org/zwobble/couscous/values/UnitValue.java
@@ -12,7 +12,7 @@ public class UnitValue implements PrimitiveValue {
@Override
public <T> T accept(PrimitiveValueVisitor<T> visitor) {
- return visitor.visit(this);
+ return visitor.visitUnit();
}
@Override