macro_rules! generic_struct {
($(#[$($struct_doc:meta),*])* $vis:vis struct $struct_identifier:ident $(where $($where_clause:tt),*)? { $($(#[$field_doc:meta])* $field_visibility:vis $field_identifier:ident: $field_type:ty),*$(,)?}) => { ... };
}macro_rules! generic_struct {
($(#[$($struct_doc:meta),*])* $vis:vis struct $struct_identifier:ident $(where $($where_clause:tt),*)? { $($(#[$field_doc:meta])* $field_visibility:vis $field_identifier:ident: $field_type:ty),*$(,)?}) => { ... };
}