X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Ftypes%2FClass.lhs;h=fb6b901cf300c8f32cf35fee5422329605d321ff;hp=016ce1bfbed54ee6096c2d588f72417780ea15ab;hb=c76c69c5b62f1ca4fa52d75b0dfbd37b7eddbb09;hpb=f3c4792fad3bf46e5ee500a909287718324c45d1 diff --git a/compiler/types/Class.lhs b/compiler/types/Class.lhs index 016ce1b..fb6b901 100644 --- a/compiler/types/Class.lhs +++ b/compiler/types/Class.lhs @@ -5,9 +5,11 @@ \begin{code} module Class ( - Class, ClassOpItem, FunDep, + Class, ClassOpItem, DefMeth (..), + FunDep, pprFundeps, + mkClass, classTyVars, classArity, classKey, className, classSelIds, classTyCon, classMethods, classBigSig, classExtraBigSig, classTvsFds, classSCTheta @@ -159,6 +161,12 @@ instance Outputable DefMeth where ppr DefMeth = text "{- has default method -}" ppr GenDefMeth = text "{- has generic method -}" ppr NoDefMeth = empty -- No default method -\end{code} +pprFundeps :: Outputable a => [FunDep a] -> SDoc +pprFundeps [] = empty +pprFundeps fds = hsep (ptext SLIT("|") : punctuate comma (map ppr_fd fds)) + where + ppr_fd (us, vs) = hsep [interppSP us, ptext SLIT("->"), + interppSP vs] +\end{code}