macro_rules! combine_inner {
($lhs:expr, $rhs:expr) => { ... };
($lhs:expr, $rhs:expr, $head:ident) => { ... };
($lhs:expr, $rhs:expr, $head:ident, $($tail:ident),+) => { ... };
}macro_rules! combine_inner {
($lhs:expr, $rhs:expr) => { ... };
($lhs:expr, $rhs:expr, $head:ident) => { ... };
($lhs:expr, $rhs:expr, $head:ident, $($tail:ident),+) => { ... };
}