diff options
author | 2021-04-18 17:25:03 -0700 | |
---|---|---|
committer | 2021-04-18 17:25:03 -0700 | |
commit | 21a58ffb202531d6ac74702648ad1c168f279a6d (patch) | |
tree | ed7f1b3e1b38242602ba08207d033dd485865d77 /src/com/craftinginterpreters/lox/LoxFunction.java | |
parent | 591caeb216128675ce6b8ddafccb09df7f522145 (diff) | |
download | crafting-interpreters-21a58ffb202531d6ac74702648ad1c168f279a6d.tar.gz crafting-interpreters-21a58ffb202531d6ac74702648ad1c168f279a6d.zip |
12.5 This
Diffstat (limited to 'src/com/craftinginterpreters/lox/LoxFunction.java')
-rw-r--r-- | src/com/craftinginterpreters/lox/LoxFunction.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/com/craftinginterpreters/lox/LoxFunction.java b/src/com/craftinginterpreters/lox/LoxFunction.java index fb3e8e3..371b822 100644 --- a/src/com/craftinginterpreters/lox/LoxFunction.java +++ b/src/com/craftinginterpreters/lox/LoxFunction.java @@ -11,6 +11,12 @@ class LoxFunction implements LoxCallable { this.declaration = declaration; } + LoxFunction bind(LoxInstance instance) { + Environment environment = new Environment(closure); + environment.define("this", instance); + return new LoxFunction(declaration, environment); + } + @Override public int arity() { return declaration.params.size(); |