refactor(tvix/glue): move builtins into separate directory
Change-Id: I25b7197458dbfbde8623545dc0a0286eb2744f10 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9911 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: raitobezarius <tvl@lahfa.xyz>
This commit is contained in:
parent
a72a1044c2
commit
c8cc31e079
7 changed files with 177 additions and 166 deletions
|
|
@ -1,32 +1,9 @@
|
|||
use std::{cell::RefCell, rc::Rc};
|
||||
|
||||
use known_paths::KnownPaths;
|
||||
|
||||
pub mod derivation;
|
||||
pub mod errors;
|
||||
pub mod builtins;
|
||||
pub mod known_paths;
|
||||
pub mod refscan;
|
||||
pub mod tvix_io;
|
||||
pub mod tvix_store_io;
|
||||
|
||||
/// Adds derivation-related builtins to the passed [tvix_eval::Evaluation].
|
||||
///
|
||||
/// These are `derivation` and `derivationStrict`.
|
||||
///
|
||||
/// As they need to interact with `known_paths`, we also need to pass in
|
||||
/// `known_paths`.
|
||||
pub fn add_derivation_builtins(
|
||||
eval: &mut tvix_eval::Evaluation,
|
||||
known_paths: Rc<RefCell<KnownPaths>>,
|
||||
) {
|
||||
eval.builtins
|
||||
.extend(derivation::derivation_builtins(known_paths));
|
||||
|
||||
// Add the actual `builtins.derivation` from compiled Nix code
|
||||
eval.src_builtins
|
||||
.push(("derivation", include_str!("derivation.nix")));
|
||||
}
|
||||
|
||||
/// Tell the Evaluator to resolve <nix> to the path `/__corepkgs__`,
|
||||
/// which has special handling in [tvix_io::TvixIO].
|
||||
/// This is used in nixpkgs to import `fetchurl.nix` from `<nix>`.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue