此问题在此处已有答案:
Parsing Attribute Macro Arguments in Rust(2个答案)
2天前关闭。
属性宏声明如下:
#[proc_macro_attribute]
pub fn my_custom_attribute(attr: TokenStream, item: TokenStream) -> TokenStream {}
字符串
如果我像这样使用属性宏
#[my_custom_attribute(GET, ",_,_,", 33)]
fn my_function(a: u32) {
println!("why..? {}", a);
}
型
如何在my_custom_attribute
中获取"GET"
、"\,\_\,\_\,"
和33
的数据?
1条答案
按热度按时间blmhpbnm1#
syn
是解析proc-macro输入的最流行的解决方案。如果你的宏输入有一个标准的结构,你可以用这个结构定义一个类型,像这样:
字符串
然后使用
syn::parse_macro_input
将TokenStream
解析为结构体:型