diff --git a/vm/src/builtins/code.rs b/vm/src/builtins/code.rs index 24cb9700775..97c32dbe075 100644 --- a/vm/src/builtins/code.rs +++ b/vm/src/builtins/code.rs @@ -262,6 +262,18 @@ impl PyRef { vm.ctx.new_tuple(varnames) } + #[pygetset] + pub fn co_freevars(self, vm: &VirtualMachine) -> PyTupleRef { + let names = self + .code + .freevars + .deref() + .iter() + .map(|name| name.to_pyobject(vm)) + .collect(); + vm.ctx.new_tuple(names) + } + #[pymethod] pub fn replace(self, args: ReplaceArgs, vm: &VirtualMachine) -> PyResult { let posonlyarg_count = match args.co_posonlyargcount {