feat(tvix/eval): allow extending builtins outside of tvix_eval

The change allows applications that use tvix_serde for parsing
nix-based configuration to extend the language with domain-specific
set of features.

Change-Id: Ia86612308a167c456ecf03e93fe0fbae55b876a6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8848
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
This commit is contained in:
Evgeny Zemtsov 2023-06-22 17:57:50 +02:00 committed by ezemtsov
parent 8cdad7d45c
commit c8fcdca4eb
9 changed files with 55 additions and 9 deletions

View file

@ -7,6 +7,7 @@ use std::{
};
use crate::{
self as tvix_eval,
errors::ErrorKind,
io::FileType,
value::NixAttrs,

View file

@ -16,6 +16,7 @@ use crate::value::PointerEquality;
use crate::vm::generators::{self, GenCo};
use crate::warnings::WarningKind;
use crate::{
self as tvix_eval,
errors::ErrorKind,
value::{CoercionKind, NixAttrs, NixList, NixString, SharedThunkSet, Thunk, Value},
};

View file

@ -10,6 +10,7 @@ mod one_offs;
mod mock_builtins {
//! Builtins which are required by language tests, but should not
//! actually exist in //tvix/eval.
use crate as tvix_eval;
use crate::generators::GenCo;
use crate::*;
use genawaiter::rc::Gen;