我正在尝试编写一个可以应用于这样的 impl 块的 Rust 过程宏;
struct SomeStruct { }
#[my_macro]
impl SomeStruct { }
我正在使用 syn 和 quote 来解析和格式化TokenStream
宏中的 s。它看起来像这样:
#[proc_macro_attribute]
pub fn my_macro(meta: TokenStream, code: TokenStream) -> TokenStream {
let input = parse_macro_input!(code as ItemImpl);
// ...
TokenStream::from(quote!(#input))
}
有没有办法使用 syn 访问 impl 块的类型名称?我没有看到任何ItemImpl
可以为我提供该信息的字段。