adar 0.3.0

Adar is a collection of architectural tools including flags, state machine, enum and tuple operations & more.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use adar::prelude::*;

#[ReflectEnum]
#[repr(u32)]
#[derive(Debug)]
#[allow(dead_code)]
enum MyEnum {
    Value1 = 33,
    Value2(i32),
    Value3 { a: String },
}

fn main() {
    println!("Variants count: {}", MyEnum::count());
    for variant in MyEnum::variants() {
        println!("{}, {:?}", variant.name, variant.value,);
    }
}