pub use enum_generator_macros::generate_enum;
#[test]
fn run_tests() {
generate_enum!{
#[derive(Debug)]
enum FunctionKey {
F1: F _,
...
F24
}
}
let e = FunctionKey::F12;
generate_enum!{
#[derive(Debug)]
enum LetterKey {
LetterA: Letter _,
...
LetterZ
}
}
let e = LetterKey::LetterZ;
println!("{:?}", e);
generate_enum!{
#[derive(Debug)]
enum ExampleEnum {
Prefix1Suffix: Prefix _ Suffix,
...
Prefix5Suffix
}
}
let e = ExampleEnum::Prefix3Suffix;
let e2 = ExampleEnum::Prefix4Suffix;
assert!(e as u8 != e2 as u8);
generate_enum!{
#[derive(Debug)]
enum ExampleEnum3<G> {
PrefixASuffix{ g: G } : Prefix _ Suffix,
...
PrefixZSuffix{ g: G }
}
}
let e = ExampleEnum3::PrefixZSuffix::<usize>{ g: 20 } ;
generate_enum!{
#[derive(Debug)]
enum ExampleEnum4<G> {
PrefixaSuffix{ g: G } : Prefix _ Suffix,
...
PrefixzSuffix{ g: G }
}
}
let e = ExampleEnum4::PrefixqSuffix::<usize>{ g: 20 } ;
}