Interpreter - Fixed special case for init
This commit is contained in:
parent
3af544a78e
commit
c4f0f0f721
2 changed files with 7 additions and 4 deletions
src/interpreter
|
@ -77,13 +77,13 @@ impl Callable for Function {
|
|||
InterpreterFlowControl::Result(_) => (),
|
||||
InterpreterFlowControl::Return(v) if !self.is_initializer => return Ok(v),
|
||||
InterpreterFlowControl::Return(_) => {
|
||||
return Ok(itpr_state.environment.borrow().read("this"))
|
||||
return Ok(self.env.borrow().read("this"))
|
||||
}
|
||||
_ => panic!("unexpected flow control {:?}", result),
|
||||
}
|
||||
}
|
||||
if self.is_initializer {
|
||||
Ok(itpr_state.environment.borrow().read("this"))
|
||||
Ok(self.env.borrow().read("this"))
|
||||
} else {
|
||||
Ok(Value::Nil)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue