macro_rules! internal_enum {
(
$( #[$meta:meta] )*
$pub:vis enum $name:ident {
$( $variant_name:ident ),+ $(,)?
}
) => { ... };
(
$( #[$meta:meta] )*
$pub:vis enum $name:ident {
$( $variant_name:ident $( $variant_data:tt )? ),+ $(,)?
}
) => { ... };
}