aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java b/src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java
index acb6ef7..7ff8bb1 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/values/ObjectInterpreterValue.java
@@ -4,6 +4,7 @@ import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
+import org.zwobble.couscous.interpreter.NoSuchField;
import org.zwobble.couscous.values.PrimitiveValue;
public class ObjectInterpreterValue implements InterpreterValue {
@@ -35,6 +36,7 @@ public class ObjectInterpreterValue implements InterpreterValue {
}
public void setField(String fieldName, InterpreterValue value) {
- fields.put(fieldName, value);
+ type.getField(fieldName).orElseThrow(() -> new NoSuchField(fieldName));
+ fields.put(fieldName, value);
}
}