aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter/Environment.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-10-06 11:02:51 +0100
committerMichael Williamson <mike@zwobble.org>2015-10-06 11:02:51 +0100
commit56470c01483077849dae33f65364bad987afac7a (patch)
tree2954d1d44f6c11a6c27299496014b0723e7d6e8d /src/main/java/org/zwobble/couscous/interpreter/Environment.java
parenta7669795d1d58e4962f16272cb5e92783cf01c64 (diff)
Combine type reference and class name into type name
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter/Environment.java')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/Environment.java9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/Environment.java b/src/main/java/org/zwobble/couscous/interpreter/Environment.java
index 0c226d1..37df9f5 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/Environment.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/Environment.java
@@ -4,12 +4,11 @@ import java.util.Map;
import java.util.Optional;
import org.zwobble.couscous.Project;
-import org.zwobble.couscous.ast.ClassName;
+import org.zwobble.couscous.ast.TypeName;
import org.zwobble.couscous.ast.VariableDeclaration;
import org.zwobble.couscous.ast.VariableNode;
import org.zwobble.couscous.interpreter.values.ConcreteType;
import org.zwobble.couscous.interpreter.values.InterpreterValue;
-import org.zwobble.couscous.values.TypeReference;
import static java.util.stream.Collectors.toMap;
@@ -47,7 +46,7 @@ public class Environment {
put(variable.getDeclaration().getId(), value);
}
- public ConcreteType<?> findClass(ClassName className) {
+ public ConcreteType<?> findClass(TypeName className) {
// TODO: handle missing classes
return project.findClass(className);
}
@@ -64,7 +63,7 @@ public class Environment {
private void checkVariableType(int variableId, InterpreterValue value) {
val variableType = stackFrame.get(variableId).getType();
- val valueType = value.getType().getReference();
+ val valueType = value.getType().getName();
if (!variableType.equals(valueType)) {
throw new UnexpectedValueType(variableType, valueType);
}
@@ -74,7 +73,7 @@ public class Environment {
@Getter
@Setter
private static class VariableEntry {
- private final TypeReference type;
+ private final TypeName type;
private Optional<InterpreterValue> value;
}
}