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=0065d5ab628975892cea1ec7303f968c3338cbe1 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}