batch_trait!() { /* proc-macro */ }Expand description
对已声明的 trait 批量生成 impl 块的函数式宏。
语法:unsafe? Trait路径: impl-specs;,以 ; 分隔多个 trait 段。
每段的 : 之后是 DSL 表达式(类型 DSL + @ 常量,与 #[batch_impl] 相同)。
不支持 # 指令(#fill/#delegate/#blanket/开放扩展):指令需要
trait 定义作签名真相源,batch_trait! 作为函数式宏拿不到定义;需要指令时
请用 #[batch_impl] / #[batch_impl_only]。
§示例
trait A {}
trait B<T> {}
unsafe trait UnsafeTrait{}
batch_trait!(
A: usize, isize;
B: <T> B<T> Vec<T>;
unsafe UnsafeTrait: usize
);路径 trait(如 foo::C)同样支持,见 tests/regression.rs。