aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/craftinginterpreters/lox/Interpreter.java
diff options
context:
space:
mode:
authorGravatar Tom Willemse2020-11-25 22:06:42 -0800
committerGravatar Tom Willemse2020-11-25 22:06:42 -0800
commit57e87978ef416ce2898a65a9b67e37be91263e67 (patch)
treeca08d1a2773986f96522bdcb22819755a14e3c9f /src/com/craftinginterpreters/lox/Interpreter.java
parentae33509615c4088ab50d7c76f9b1881d10f8354c (diff)
downloadcrafting-interpreters-57e87978ef416ce2898a65a9b67e37be91263e67.tar.gz
crafting-interpreters-57e87978ef416ce2898a65a9b67e37be91263e67.zip
Chapter 8: Add assignment
Diffstat (limited to 'src/com/craftinginterpreters/lox/Interpreter.java')
-rw-r--r--src/com/craftinginterpreters/lox/Interpreter.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/com/craftinginterpreters/lox/Interpreter.java b/src/com/craftinginterpreters/lox/Interpreter.java
index f4e7f99..7378164 100644
--- a/src/com/craftinginterpreters/lox/Interpreter.java
+++ b/src/com/craftinginterpreters/lox/Interpreter.java
@@ -114,6 +114,13 @@ class Interpreter implements Expr.Visitor<Object>, Stmt.Visitor<Void> {
}
@Override
+ public Object visitAssignExpr(Expr.Assign expr) {
+ Object value = evaluate(expr.value);
+ environment.assign(expr.name, value);
+ return value;
+ }
+
+ @Override
public Object visitBinaryExpr(Expr.Binary expr) {
Object left = evaluate(expr.left);
Object right = evaluate(expr.right);