use binding::c_enum; c_enum! { /// Test enum is a simple enum testing the /// capabilities of creating a C enum. enum TestEnum: i32 { /// This is the first item. variant One = 1, /// This is the second item. variant Two = -2, /// This is the third item. variant Three = 3 } } pub fn main() { let cenum: TestEnum; cenum = TestEnum::One; println!("Enum value is: {}", cenum); if TestEnum::is_valid_value(-2) == true { match TestEnum::from_value(-2) { Some(variant) => { println!("Enum value is: {}", variant.to_value()); } None => { panic!("Should not happen since we checked ahead of time."); } } } }