macro_rules! impl_iter_print_tuple {
(@impl ,) => { ... };
(@impl $($A:ident $a:ident)?, $($B:ident $b:ident)*) => { ... };
(@inc , , $C:ident $c:ident $($D:ident $d:ident)*) => { ... };
(@inc $A:ident $a:ident, $($B:ident $b:ident)*, $C:ident $c:ident $($D:ident $d:ident)*) => { ... };
(@inc $A:ident $a:ident, $($B:ident $b:ident)*,) => { ... };
($($t:tt)*) => { ... };
}