tvl-depot/tvix/eval/src
sterni b79e248959 refactor(tvix/eval): handle forcing in Builtin::apply
Instead of arity, we pass a array reference to Builtin::new that
describes how many arguments there are and which of them need to be
forced, eliminating the need to force manually.

Note that this change doesn't fix some of the instances where the the
Builtin doesn't consider that the value could be a Thunk.

Change-Id: Iadb58bb79886c30dc6b09dcf0ffad8abf28036a1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6662
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-09-19 09:58:14 +00:00
..
builtins refactor(tvix/eval): handle forcing in Builtin::apply 2022-09-19 09:58:14 +00:00
compiler fix(tvix/eval): ensure all thunks are forced in nested selects 2022-09-18 22:16:04 +00:00
tests feat(tvix/eval): Support builtins.tail 2022-09-19 00:57:11 +00:00
value refactor(tvix/eval): handle forcing in Builtin::apply 2022-09-19 09:58:14 +00:00
chunk.rs refactor(tvix/eval): Don't (ab)use PartialEq for Nix equality 2022-09-18 22:03:41 +00:00
errors.rs feat(tvix/eval): Support builtins.tail 2022-09-19 00:57:11 +00:00
eval.rs refactor(tvix/eval): use Clap for arg+env parsing 2022-09-18 22:08:43 +00:00
lib.rs refactor(tvix/eval): use Clap for arg+env parsing 2022-09-18 22:08:43 +00:00
main.rs refactor(tvix/eval): use Clap for arg+env parsing 2022-09-18 22:08:43 +00:00
observer.rs refactor(tvix/eval): use CodeIdx wrapper for instruction pointer 2022-09-13 14:41:57 +00:00
opcode.rs docs(tvix/eval): Document OpAttrs 2022-09-18 22:13:16 +00:00
properties.rs refactor(tvix/eval): Don't (ab)use PartialEq for Nix equality 2022-09-18 22:03:41 +00:00
test_utils.rs test(tvix/eval): Add proof-of-concept test for Chunk 2022-09-18 17:55:06 +00:00
upvalues.rs refactor(tvix/eval): Don't (ab)use PartialEq for Nix equality 2022-09-18 22:03:41 +00:00
vm.rs chore(tvix/eval): Pass in VM to nix_eq 2022-09-18 22:03:42 +00:00
warnings.rs feat(tvix/eval): implement legacy let syntax 2022-09-16 18:13:26 +00:00