X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2FhsSyn%2FHsImpExp.lhs;h=767be42d2966ba23b6209fc8e17f4c42d990b8db;hp=f63d86aec2af50e52ad8f6c22f86be6066b5ebe0;hb=190f24892156953d73b55401d0467a6f1a88ce5d;hpb=aa8e9422469f1ccb3c52444fa56aae34de799334 diff --git a/compiler/hsSyn/HsImpExp.lhs b/compiler/hsSyn/HsImpExp.lhs index f63d86a..767be42 100644 --- a/compiler/hsSyn/HsImpExp.lhs +++ b/compiler/hsSyn/HsImpExp.lhs @@ -9,6 +9,8 @@ module HsImpExp where #include "HsVersions.h" import Module ( ModuleName ) +import HsDoc ( HsDoc ) + import Outputable import FastString import SrcLoc ( Located(..) ) @@ -68,11 +70,14 @@ ideclName (ImportDecl mod_nm _ _ _ _) = mod_nm type LIE name = Located (IE name) data IE name - = IEVar name - | IEThingAbs name -- Class/Type (can't tell) - | IEThingAll name -- Class/Type plus all methods/constructors - | IEThingWith name [name] -- Class/Type plus some methods/constructors - | IEModuleContents ModuleName -- (Export Only) + = IEVar name + | IEThingAbs name -- Class/Type (can't tell) + | IEThingAll name -- Class/Type plus all methods/constructors + | IEThingWith name [name] -- Class/Type plus some methods/constructors + | IEModuleContents ModuleName -- (Export Only) + | IEGroup Int (HsDoc name) -- Doc section heading + | IEDoc (HsDoc name) -- Some documentation + | IEDocNamed String -- Reference to named doc \end{code} \begin{code} @@ -88,6 +93,9 @@ ieNames (IEThingAbs n ) = [n] ieNames (IEThingAll n ) = [n] ieNames (IEThingWith n ns) = n:ns ieNames (IEModuleContents _ ) = [] +ieNames (IEGroup _ _ ) = [] +ieNames (IEDoc _ ) = [] +ieNames (IEDocNamed _ ) = [] \end{code} \begin{code} @@ -99,6 +107,9 @@ instance (Outputable name) => Outputable (IE name) where = ppr thing <> parens (fsep (punctuate comma (map pprHsVar withs))) ppr (IEModuleContents mod) = ptext SLIT("module") <+> ppr mod + ppr (IEGroup n doc) = text ("") + ppr (IEDoc doc) = ppr doc + ppr (IEDocNamed string) = text ("") \end{code} \begin{code}