macro_rules! map_for {
(($($n:ident),+) <- $e:expr; => $e0:expr) => { ... };
(($($n:ident),+) <- $e:expr; if $g:expr; $($tail:tt)+) => { ... };
(($($n:ident),+) <- $e:expr; ($($n0:ident),+) <- $e0:expr; $($tail:tt)+) => { ... };
(($($n:ident),+) <- $e:expr; $n0:ident <- $e0:expr; $($tail:tt)+) => { ... };
(($($n:ident),+) <- $e:expr; $n0:ident = $e0:expr; $($tail:tt)+) => { ... };
($n:ident <- $e:expr; => $e0:expr) => { ... };
($n:ident <- $e:expr; if $g:expr; $($tail:tt)+) => { ... };
($n:ident <- $e:expr; $n0:ident <- $e0:expr; $($tail:tt)+) => { ... };
($n:ident <- $e:expr; $n0:ident = $e0:expr; $($tail:tt)+) => { ... };
}