feat(lispers-macro): show function name in application error

This commit is contained in:
2026-03-31 04:10:18 +02:00
parent 7d70066213
commit 36b9ad4c0d

View File

@@ -179,13 +179,14 @@ pub fn native_lisp_function_proxy(item: TokenStream) -> TokenStream {
}) })
.collect::<Vec<_>>(); .collect::<Vec<_>>();
let fname_str = fname.to_string();
quote! { quote! {
fn #fname(env: &Environment, expr: Expression) -> Result<Expression, EvalError> { fn #fname(env: &Environment, expr: Expression) -> Result<Expression, EvalError> {
#eval_statement #eval_statement
#(#try_apply_statements)* #(#try_apply_statements)*
Err(EvalError::TypeError("No applicable method found".to_string())) Err(EvalError::TypeError(format!("No applicable method found for {}", #fname_str).to_string()))
} }
} }
.into() .into()