macro_rules! error_enum {
($enum_name:ident {
$( $variant:ident$(($variant_type:ty))?),* $(,)?
}$(,)?) => { ... };
}Expand description
Facilitates the creation of error enums with debug display
ยงExample
use rs42::error_enum;
error_enum!(ErrorEnumName {
Test,
Data(u32),
OtherTest,
});
let test = ErrorEnumName::Data(42);
assert_eq!(format!("{}", test), "Data(42)");
let test = ErrorEnumName::Test;
assert_eq!(format!("{}", test), "Test");
let test = ErrorEnumName::OtherTest;
assert_eq!(format!("{}", test), "OtherTest");
error_enum!(
OtherErrorEnumName {
Data(u32)
},
);
let test = OtherErrorEnumName::Data(42);
assert_eq!(format!("{}", test), "Data(42)");