snix/tvix/eval/src
Vincent Ambo d4569cb504 feat(tvix/eval): initial attempt at setting lambda names
When compiling a lambda, take the name of the outer slot (if
available) and store it as the name on the lambda.

These names are then shown in the observer, and nowhere else (so far).

It is of course common for these things to thread through many
different context levels (e.g. `f = a: b: c: ...`), in this setup only
the outermost closure or thunk gains the name, but it's better than
nothing.

Change-Id: I681ba74e624f2b9e7a147144a27acf364fe6ccc7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7065
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-10-23 15:58:53 +00:00
..
builtins feat(tvix/eval): add mechanism for placeholder builtins 2022-10-23 15:50:35 +00:00
compiler feat(tvix/eval): initial attempt at setting lambda names 2022-10-23 15:58:53 +00:00
tests test(tvix/eval): add a test case for nested sibling access 2022-10-23 15:50:35 +00:00
value feat(tvix/eval): initial attempt at setting lambda names 2022-10-23 15:58:53 +00:00
chunk.rs feat(tvix/eval): deduplicate overlap between Closure and Thunk 2022-10-19 10:38:54 +00:00
errors.rs feat(tvix/eval): add TvixBug error kind 2022-10-22 18:30:12 +00:00
eval.rs feat(tvix/eval): add an AST pretty-printing module 2022-10-16 12:26:56 +00:00
lib.rs feat(tvix/eval): add an AST pretty-printing module 2022-10-16 12:26:56 +00:00
main.rs feat(tvix/eval): Allow directly evaluating an expr via main 2022-10-11 00:33:49 +00:00
nix_search_path.rs fix(tvix): distinguish search- and relative path resolution errors 2022-10-21 00:11:29 +00:00
observer.rs feat(tvix/eval): initial attempt at setting lambda names 2022-10-23 15:58:53 +00:00
opcode.rs feat(tvix/eval): deduplicate overlap between Closure and Thunk 2022-10-19 10:38:54 +00:00
pretty_ast.rs fix(tvix/eval): more faithfully serialise ast::Literal 2022-10-16 23:35:59 +00:00
properties.rs refactor(tvix/eval): Don't (ab)use PartialEq for Nix equality 2022-09-18 22:03:41 +00:00
source.rs feat(tvix/eval): fancy-format parse errors returned by rnix 2022-10-08 17:27:57 +00:00
spans.rs refactor(tvix/eval): implement ToSpan directly for rnix::TextRange 2022-10-08 10:58:42 +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 feat(tvix/eval): deduplicate overlap between Closure and Thunk 2022-10-19 10:38:54 +00:00
vm.rs chore(tvix/eval): return detailed TvixBug if an upvalue is missing 2022-10-23 15:50:35 +00:00
warnings.rs refactor(tvix/eval): introduce source::SourceCode type 2022-10-05 10:29:47 +00:00