Skip to content

Commit

Permalink
Merge pull request #1651 from dtolnay/astenum
Browse files Browse the repository at this point in the history
Internal macro simplifications
  • Loading branch information
dtolnay committed May 15, 2024
2 parents 2d4117e + 7ab886f commit dd3b93d
Showing 1 changed file with 6 additions and 16 deletions.
22 changes: 6 additions & 16 deletions src/macros.rs
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,9 @@ macro_rules! ast_enum_of_structs {
$(#[$enum_attr])* $pub $enum $name $body

ast_enum_of_structs_impl!($name $body);

#[cfg(feature = "printing")]
generate_to_tokens!(() tokens $name $body);
};
}

Expand All @@ -70,26 +73,13 @@ macro_rules! ast_enum_of_structs_impl {
$(
$(#[cfg $cfg_attr:tt])*
$(#[doc $($doc_attr:tt)*])*
$variant:ident $( ($($member:ident)::+) )*,
$variant:ident $( ($member:ident) )*,
)*
}
) => {
$($(
ast_enum_from_struct!($name::$variant, $($member)::+);
ast_enum_from_struct!($name::$variant, $member);
)*)*

#[cfg(feature = "printing")]
generate_to_tokens! {
()
tokens
$name {
$(
$(#[cfg $cfg_attr])*
$(#[doc $($doc_attr)*])*
$variant $($($member)::+)*,
)*
}
}
};
}

Expand Down Expand Up @@ -126,7 +116,7 @@ macro_rules! generate_to_tokens {
($($arms:tt)*) $tokens:ident $name:ident {
$(#[cfg $cfg_attr:tt])*
$(#[doc $($doc_attr:tt)*])*
$variant:ident $member:ident,
$variant:ident($member:ident),
$($next:tt)*
}
) => {
Expand Down

0 comments on commit dd3b93d

Please sign in to comment.