macro_rules! wrapper {
($($S:ident($vis:vis $T:ident)),* $(,)?) => { ... };
(@impl #[derive($($derive:ident),*)] $S:ident<$vis:vis $T:ident $($rest:tt)*>) => { ... };
}macro_rules! wrapper {
($($S:ident($vis:vis $T:ident)),* $(,)?) => { ... };
(@impl #[derive($($derive:ident),*)] $S:ident<$vis:vis $T:ident $($rest:tt)*>) => { ... };
}