Macro zip

Source
macro_rules! zip {
    (@map $p:pat => $t:expr) => { ... };
    (@map $p:pat => ($($t:tt)*), $_removed:expr$(, $rest:expr )*) => { ... };
    ($a:expr$(,)*) => { ... };
    ($a:expr, $b:expr$(,)*) => { ... };
    ($a:expr$(, $rest:expr)*$(,)*) => { ... };
}