diff --git a/tvix/eval/src/builtins/mod.rs b/tvix/eval/src/builtins/mod.rs index 47c0f85b3..0e5d1363f 100644 --- a/tvix/eval/src/builtins/mod.rs +++ b/tvix/eval/src/builtins/mod.rs @@ -1498,17 +1498,7 @@ mod pure_builtins { let mut buf: Vec = vec![]; let context = to_xml::value_to_xml(&mut buf, &value)?; - Ok(( - buf, - // FUTUREWORK: We have a distinction between an empty context, and - // no context at all. Fix this. - if !context.is_empty() { - Some(Box::new(context)) - } else { - None - }, - ) - .into()) + Ok(NixString::new_context_from(context, buf).into()) } #[builtin("trace")] diff --git a/tvix/eval/src/value/string/mod.rs b/tvix/eval/src/value/string/mod.rs index 5bcb4786b..0f41ce9dc 100644 --- a/tvix/eval/src/value/string/mod.rs +++ b/tvix/eval/src/value/string/mod.rs @@ -455,15 +455,6 @@ impl From for NixString { } } -impl From<(T, Option>)> for NixString -where - NixString: From, -{ - fn from((s, ctx): (T, Option>)) -> Self { - Self::new(NixString::from(s).as_ref(), ctx) - } -} - impl From> for NixString { fn from(s: Box) -> Self { s.into_boxed_bytes().into()