aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-01-04 17:36:17 +0000
committerMichael Williamson <mike@zwobble.org>2016-01-04 17:36:17 +0000
commite9eb339f96c3b82bcb6e908c7a86364c768c16f2 (patch)
tree98a2c88dae4390f333c5dff0b890aa292efe4270 /src/main
parentf9509b80504764f0ee63ed297229aa9675369645 (diff)
Check type of this value in interpreter
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/Evaluator.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/Evaluator.java b/src/main/java/org/zwobble/couscous/interpreter/Evaluator.java
index 2122f01..548f731 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/Evaluator.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/Evaluator.java
@@ -46,7 +46,10 @@ public class Evaluator implements ExpressionNodeMapper<InterpreterValue> {
@Override
public InterpreterValue visit(ThisReferenceNode reference) {
- return environment.getThis().get();
+ InterpreterValue thisValue = environment.getThis().get();
+ // TODO: add a test for this
+ InterpreterTypes.checkIsInstance(reference.getType(), thisValue);
+ return thisValue;
}
@Override