| isTupleTyCon tc && tyConArity tc == length tys
= tupleParens (tupleTyConBoxity tc) (sep (punctuate comma (map (pp TopPrec) tys)))
+ | tc `hasKey` hetMetKappaTyConKey, [ty1,ty2] <- tys
+ = pp TopPrec ty1 <> ptext (sLit "~~>") <> pp TopPrec ty2
+
| tc `hasKey` hetMetCodeTypeTyConKey, [ty1,ty2] <- tys
= ptext (sLit "<[") <> pp TopPrec ty2 <> ptext (sLit "]>@") <> pp TopPrec ty1