5个版本 (破坏性更新)
0.7.0 | 2023年7月4日 |
---|---|
0.5.0 | 2023年7月3日 |
0.3.0 | 2023年7月3日 |
0.2.0 | 2023年7月1日 |
0.1.0 | 2023年7月1日 |
#114 在 #quote
每月116 次下载
在 9 个crate中使用 (通过 quote2)
8KB
176 行
quote的轻量级替代版本。
与quote不同,这个库在可能的情况下避免克隆。
示例
通过在您的Rust项目的Cargo.toml
文件中添加以下行将其作为依赖项添加:
[dependencies]
quote2 = "0.7"
use quote2::{proc_macro2::TokenStream, quote, Quote};
let body = quote(|tokens| {
for i in 0..3 {
quote!(tokens, {
println!("{}", #i);
});
}
});
let mut tokens = TokenStream::new();
quote!(tokens, {
fn name() {
#body
}
});
生成的代码
fn name() {
println!("{}", 0i32);
println!("{}", 1i32);
println!("{}", 2i32);
}