aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/values/PrimitiveValue.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/values/PrimitiveValue.java')
-rw-r--r--src/main/java/org/zwobble/couscous/values/PrimitiveValue.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/values/PrimitiveValue.java b/src/main/java/org/zwobble/couscous/values/PrimitiveValue.java
index cd6a078..86d32de 100644
--- a/src/main/java/org/zwobble/couscous/values/PrimitiveValue.java
+++ b/src/main/java/org/zwobble/couscous/values/PrimitiveValue.java
@@ -3,6 +3,14 @@ package org.zwobble.couscous.values;
import org.zwobble.couscous.ast.types.ScalarType;
public interface PrimitiveValue {
- <T> T accept(PrimitiveValueVisitor<T> visitor);
+ <T> T accept(Visitor<T> visitor);
ScalarType getType();
+
+ interface Visitor<T> {
+ T visitInteger(int value);
+ T visitString(String value);
+ T visitBoolean(boolean value);
+ T visitUnit();
+ T visitType(ScalarType value);
+ }
}