enum_parity 0.2.1

a macro that enforces enum discriminant bit parity
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use enum_parity::bit_parity;

#[bit_parity(odd)]
#[repr(u64)]
enum OddEnum {
    A,
    B,
    C,
    D,
}

fn main() {
    assert_eq!(OddEnum::A as u64, 1);
    assert_eq!(OddEnum::B as u64, 2);
    assert_eq!(OddEnum::C as u64, 4);
    assert_eq!(OddEnum::D as u64, 7);
}