diff options
Diffstat (limited to 'tvix/eval')
-rw-r--r-- | tvix/eval/src/lib.rs | 6 | ||||
-rw-r--r-- | tvix/eval/src/value/mod.rs | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/tvix/eval/src/lib.rs b/tvix/eval/src/lib.rs index f623180f1f39..484d3e72e310 100644 --- a/tvix/eval/src/lib.rs +++ b/tvix/eval/src/lib.rs @@ -52,9 +52,13 @@ pub use crate::errors::{Error, ErrorKind, EvalResult}; pub use crate::io::{DummyIO, EvalIO, FileType}; pub use crate::pretty_ast::pretty_print_expr; pub use crate::source::SourceCode; -pub use crate::value::{Builtin, BuiltinArgument, NixAttrs, NixList, NixString, Value}; pub use crate::vm::VM; pub use crate::warnings::{EvalWarning, WarningKind}; +pub use builtin_macros; + +pub use crate::value::{ + Builtin, BuiltinArgument, CoercionKind, NixAttrs, NixList, NixString, Value, +}; #[cfg(feature = "impure")] pub use crate::io::StdIO; diff --git a/tvix/eval/src/value/mod.rs b/tvix/eval/src/value/mod.rs index 357ffa6161ff..af8627bf9b76 100644 --- a/tvix/eval/src/value/mod.rs +++ b/tvix/eval/src/value/mod.rs @@ -139,7 +139,7 @@ pub enum CoercionKind { /// originally a thunk or not. /// /// Implements [`Deref`] to [`Value`], so can generally be used as a [`Value`] -pub(crate) enum ForceResult<'a> { +pub enum ForceResult<'a> { ForcedThunk(Ref<'a, Value>), Immediate(&'a Value), } @@ -395,7 +395,7 @@ impl Value { } /// Ensure `self` is forced if it is a thunk, and return a reference to the resulting value. - pub(crate) fn force(&self, vm: &mut VM) -> Result<ForceResult, ErrorKind> { + pub fn force(&self, vm: &mut VM) -> Result<ForceResult, ErrorKind> { match self { Self::Thunk(thunk) => { thunk.force(vm)?; |