Fre*_*ios 4 macros rust rust-macros
当你想共享一个使用程序宏的库时,双 crate 方法foo/foo_derive不可避免吗?
我想提供一个具有逻辑和宏的板条箱。我尝试的第一件事是:
my_proc_macro
??? Cargo.toml
??? src/lib.rs
??? my_crate
??? Cargo.toml
??? src/lib.rs
Run Code Online (Sandbox Code Playgroud)
在my_proc_macro板条箱中,我尝试过pub use my_crate::*;但禁止这样做:编译器拒绝构建它。
是否有可能以相反的方式做到这一点?我的意思是:将程序宏包导入库,然后重新导出宏?
重新导出宏实际上非常简单。只需使用
#[macro_use]
extern crate my_proc_macro;
Run Code Online (Sandbox Code Playgroud)
在my_crate.
该serde箱可以启用该功能时,可以使用这种方式serde_derive。
在2018年版,你也可以明确地转口使用PROC宏use声明。