feat(tvix/eval): wrap Closure in Rc<> to match cppnix semantics

Change-Id: I595087eff943d38a9fc78a83d37e207bb2ab79bc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7443
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
This commit is contained in:
Adam Joseph 2022-11-27 00:54:39 -08:00 committed by tazjin
parent b3c34c3c61
commit e04b1697e4
6 changed files with 34 additions and 61 deletions

View file

@ -323,7 +323,7 @@ mod pure_builtins {
#[builtin("functionArgs")]
fn builtin_function_args(_: &mut VM, f: Value) -> Result<Value, ErrorKind> {
let lambda = f.to_closure()?.lambda();
let lambda = &f.as_closure()?.lambda();
let formals = if let Some(formals) = &lambda.formals {
formals
} else {