4个版本
0.1.4 | 2023年8月16日 |
---|---|
0.1.3 | 2023年8月16日 |
0.1.2 | 2023年8月16日 |
0.1.0 | 2023年8月16日 |
#1699 在 数据结构
每月792 次下载
8KB
114 代码行
explicit-discriminant
此crate强制执行枚举的显式判别式。
use explicit_discriminant::ExplicitDiscriminant;
#[derive(ExplicitDiscriminant)]
enum MyEnum {
One = 1,
Two = 2,
Three, // will not compile
Four = 4
}
您还可以可选地添加模式,强制执行允许的判别式值。
use explicit_discriminant::ExplicitDiscriminant;
#[derive(ExplicitDiscriminant)]
#[pattern(2..=3 | 12..)]
#[pattern(9 | ..-3)]
enum MyEnum {
MinusFour = -4,
One = 1, // error here, since not in any of the patterns
Two = 2,
Three = 3,
Nine = 9,
Ten = 10, // error here, since not in any of the patterns
Twelve = 12,
OneHundred = 100,
}
依赖项
~285–730KB
~17K SLoC