diff options
author | Vincent Ambo <mail@tazj.in> | 2022-09-17T23·52+0300 |
---|---|---|
committer | tazjin <tazjin@tvl.su> | 2022-09-18T21·12+0000 |
commit | 0e5baae7ad16ca2a5a70ba34d922cabcaa68d45e (patch) | |
tree | 02efc5d294da14df71e8bebc93de97a5d1d2835b /corp | |
parent | 5dd5c7e254f01f96a2ddfcf2c163c08833ec0061 (diff) |
refactor(tvix/eval): clone the Arc<codemap::File> for the compiler r/4907
This disconnects ownership of the `File` reference in a compiler from the calling scope, which is required for when we implement `import`. `import` will need to carry an `Rc<RefCell<CodeMap>>` (or maybe, in the future, Arc) to give us the ability to add new detected code files at runtime. Note that the choice of `Arc` over `Rc` here is not ours - it's the codemap crate's. Change-Id: I3aeca4ffc167acbd1701846a332d93550b56ba7d Reviewed-on: https://cl.tvl.fyi/c/depot/+/6630 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi>
Diffstat (limited to 'corp')
-rw-r--r-- | corp/tvixbolt/src/main.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/corp/tvixbolt/src/main.rs b/corp/tvixbolt/src/main.rs index 8dad534a30a4..ed5dada4c48c 100644 --- a/corp/tvixbolt/src/main.rs +++ b/corp/tvixbolt/src/main.rs @@ -256,7 +256,7 @@ fn eval(trace: bool, code: &str) -> Output { let result = tvix_eval::compile( root_expr, Some("/nixbolt".into()), - &file, + file.clone(), tvix_eval::global_builtins(), &mut compilation_observer, ) |