【发布时间】:2018-04-30 19:58:00
【问题描述】:
玩具示例:
macro_rules! boo {
($T:ident) => {
let x: $T;
};
}
fn main() {
boo!(i32); // WORKS
boo!(Option<i32>); // PROBLEM
}
boo!(Option<i32>); 导致错误:
error: no rules expected the token `<`
--> src/main.rs:9:16
|
9 | boo!(Option<i32>);
| ^
我可以解决它:
type Opti32 = Option<i32>;
boo!(Opti32);
但是为每次使用宏都添加别名太无聊了。
是否可以使用boo!(Option<i32>); 之类的宏并隐藏
macro_rules里面的难点?
【问题讨论】:
标签: rust