Macro wrapper

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