tvl-depot/tvix/eval/src/value
Vincent Ambo d75b207a63 refactor(tvix/eval): introduce Upvalues struct in closures & thunks
This struct will be responsible for tracking upvalues (and is a
convenient place to introduce optimisations for reducing value clones)
instead of a plain value vector.

The main motivation for this is that the upvalues will have to capture
the `with`-stack fully and I want to avoid duplicating the logic for
this between the two capturing types.

Change-Id: I6654f8739fc2e04ca046e6667d4a015f51724e99
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6485
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-09-11 12:16:46 +00:00
..
attrs feat(tvix/eval): implement NixAttrs::iter() 2022-09-07 15:25:59 +00:00
attrs.rs fix(tvix/eval): reintroduce 'InvalidAttribuetName' error variant 2022-09-10 21:57:13 +00:00
builtin.rs fix(tvix/eval): fix doc comment syntax where applicable 2022-09-10 21:57:13 +00:00
function.rs refactor(tvix/eval): introduce Upvalues struct in closures & thunks 2022-09-11 12:16:46 +00:00
list.rs feat(tvix/eval): Support builtins.length 2022-09-07 20:56:02 +00:00
mod.rs refactor(tvix/eval): add macros for generating Value casters 2022-09-08 08:45:15 +00:00
string.rs fix(tvix/eval): fix doc comment syntax where applicable 2022-09-10 21:57:13 +00:00
thunk.rs refactor(tvix/eval): introduce Upvalues struct in closures & thunks 2022-09-11 12:16:46 +00:00