macro_rules! nested_struct {
(
$(#[$meta:meta])*
$vis:vis struct $name:ident {
$(
$(#[$field_meta:meta])*
$(@nested(#[$field_nested_meta:meta]))*
$field_vis:vis $field_name:ident : $field_ty:ident $({
$($field_ty_inner:tt)*
})?
),*
$(,)? }
) => { ... };
(@nested $(#[$meta:meta])* $vis:vis $name:ident {$($fields:tt)*}) => { ... };
(@nested $(#[$meta:meta])* $vis:vis $name:ident) => { ... };
}