diff options
-rw-r--r-- | tvix/eval/src/value/mod.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/tvix/eval/src/value/mod.rs b/tvix/eval/src/value/mod.rs index 711ffcc6f78f..9aed486d4272 100644 --- a/tvix/eval/src/value/mod.rs +++ b/tvix/eval/src/value/mod.rs @@ -446,7 +446,14 @@ impl Value { Value::Path(p) => format!("the path '{}'", p.to_string_lossy()), Value::Attrs(attrs) => format!("a {}-item attribute set", attrs.len()), Value::List(list) => format!("a {}-item list", list.len()), - Value::Closure(_f) => format!("a user-defined Nix function"), // TODO: name, loc, etc. + + Value::Closure(f) => { + if let Some(name) = &f.lambda.name { + format!("the user-defined Nix function '{}'", name) + } else { + format!("a user-defined Nix function") + } + } Value::Builtin(b) => { let mut out = format!("the builtin function '{}'", b.name()); |