我想写一个形状为宏的宏:
macro_rules! build {
($name:ident, $mask:ty, $end:expr) => {
enum $name<K, V {
//???
}
};
}
这样当使用:
调用时build! {
Node, u64, 64
}
它扩展为:
enum Node<K, V> {
Node1(u64, Box<[Node<K, V>; 1]>),
Node2(u64, Box<[Node<K, V>; 2]>),
// ...
Node64(u64, Box<[Node<K, V>; 64]>),
}
这可以用macro_rules
吗?