小编Mas*_*ant的帖子

Rust 是否可以在过程宏代码中调用宏?

例如,我在impl像这样的块上有一个过程宏属性,通常它处理方法:

#[my_proc_macro]
impl Foo {
  pub fn bar1() {}
  pub fn bar2() {}
}
Run Code Online (Sandbox Code Playgroud)

现在宏用户可能不想编写这些方法,而是想调用宏来生成这些方法,例如:

#[my_proc_macro]
impl Foo {
  generate_methods!();
}
Run Code Online (Sandbox Code Playgroud)

现在my_proc_macro将输入宏调用的标记,而不是宏调用结果的标记。

我的问题是:是否可以generate_methods!()在内部扩展my_proc_macro并使用生成的方法?

rust

5
推荐指数
1
解决办法
498
查看次数

标签 统计

rust ×1