aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/craftinginterpreters/lox/LoxInstance.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/craftinginterpreters/lox/LoxInstance.java')
-rw-r--r--src/com/craftinginterpreters/lox/LoxInstance.java34
1 files changed, 0 insertions, 34 deletions
diff --git a/src/com/craftinginterpreters/lox/LoxInstance.java b/src/com/craftinginterpreters/lox/LoxInstance.java
deleted file mode 100644
index 64989e0..0000000
--- a/src/com/craftinginterpreters/lox/LoxInstance.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.craftinginterpreters.lox;
-
-import java.util.HashMap;
-import java.util.Map;
-
-class LoxInstance {
- private LoxClass klass;
- private final Map<String, Object> fields = new HashMap<>();
-
- LoxInstance(LoxClass klass) {
- this.klass = klass;
- }
-
- Object get(Token name) {
- if (fields.containsKey(name.lexeme)) {
- return fields.get(name.lexeme);
- }
-
- LoxFunction method = klass.findMethod(name.lexeme);
- if (method != null)
- return method.bind(this);
-
- throw new RuntimeError(name, "Undefined proprety '" + name.lexeme + "'.");
- }
-
- void set(Token name, Object value) {
- fields.put(name.lexeme, value);
- }
-
- @Override
- public String toString() {
- return klass.name + " instance";
- }
-}