2 macro_rules! enum_from_u32 {
3 ($(#[$attr:meta])* pub enum $name:ident {
4 $($(#[$var_attr:meta])* $variant:ident = $e:expr,)*
8 $($(#[$var_attr])* $variant = $e),*
12 pub fn from_u32(u: u32) -> Option<$name> {
13 $(if u == $name::$variant as u32 {
14 return Some($name::$variant)
20 ($(#[$attr:meta])* pub enum $name:ident {
21 $($(#[$var_attr:meta])* $variant:ident,)*
25 $($(#[$var_attr])* $variant,)*
29 pub fn from_u32(u: u32) -> Option<$name> {
30 $(if u == $name::$variant as u32 {
31 return Some($name::$variant)