macro_rules! valued_enum {
    {
       $(#[$meta:meta])*
       $e_vis:vis enum $name:ident ( $valtype:ty ) {
           $(
               $(#[$item_meta:meta])*
               $i_vis:vis $id:ident = $val:expr,
           )*
           $(,)?
       }
    } => { ... };
}