macro_rules! target_spec_enum {
(
$( #[$attr:meta] )*
pub enum $Name:ident {
$(
$( #[$variant_attr:meta] )*
$Variant:ident = $string:literal,
)*
}
parse_error_type = $parse_error_type:literal;
) => { ... };
(
$( #[$attr:meta] )*
pub enum $Name:ident {
$(
$( #[$variant_attr:meta] )*
$Variant:ident = $string:literal,
)*
}
$( #[$other_variant_attr:meta] )*
other_variant = $OtherVariant:ident;
) => { ... };
(@common_impls $Name:ident) => { ... };
}