macro_rules! debug_enum_assert {
    ($ex: expr, $Enum: ident :: $Variant: ident $(,)*) => { ... };
    ($ex: expr, $Enum: ident :: $Variant: ident, $Enum2: ident :: $Variant2: ident $(,)*) => { ... };
    ($ex: expr, $TupleCons: ident, $Enum: ident :: $Variant: ident $(,)*) => { ... };
}