1个不稳定版本
0.1.0 | 2020年5月6日 |
---|
#18 在 #序数
189 每月下载量
在 3 crates 中使用
7KB
73 行
一个简单的派生宏,为枚举生成一个 ordinal()
方法。
与 num_derive::ToPrimitive
不同,此派生宏允许非C样式的枚举。`ordinal` 函数反映了枚举的变体,不考虑字段。
示例
use ordinalizer::Ordinal;
#[derive(Ordinal)]
enum Animal {
Dog,
Cat {
age: i32,
}
}
assert_eq!(Animal::Dog.ordinal(), 0);
assert_eq!((Animal::Cat { age: 10 }).ordinal(), 1);
依赖项
~1.5MB
~36K SLoC