我有一个macro_rules需要 afunction_name并调用function_name_x(). 现在我通过function_name作为一个传递ident,并通过创建新的函数名来做到这一点concat_idents!。
这种方法的问题是我的 IDE 没有对function_name部件进行 lint,因为它需要作为ident. 我想将其更改为 a,但如果我这样做,ty我将无法使用它。concat_idents!
有解决办法吗?
macro_rules! decl_func {
($env:expr, $func:ident) => {{
let f = concat_idents!($func, _to_ocaml);
let binding = f($env, None);
println!("{}", binding);
}};
}