macro_rules! uniform {
(
$(
$(#[$a:meta])* $v:vis struct $name:ident {
$(
$fv:vis $f:ident : $ft:tt
),*
$(,)?
}
)*
) => { ... };
(@NAME $f:ident : [ $ft:ty; $n:literal ]) => { ... };
(@NAME $f:ident : $ft:ty) => { ... };
}