HsDecls

Toplevel declarations

data HsDecl id

type LHsDecl id

Class or type declarations

data TyClDecl name

type LTyClDecl name

type TyClGroup name

isClassDecl

isSynDecl

isDataDecl

isTypeDecl

isFamilyDecl

isFamInstDecl

tcdName

tyClDeclTyVars

countTyClDecls

Instance declarations

data InstDecl name

type LInstDecl name

data NewOrData

data FamilyFlavour

instDeclATs

Standalone deriving declarations

data DerivDecl name

type LDerivDecl name

RULE declarations

data RuleDecl name

type LRuleDecl name

data RuleBndr name

collectRuleBndrSigTys

VECTORISE declarations

data VectDecl name

type LVectDecl name

lvectDeclName

lvectInstDecl

default declarations

data DefaultDecl name

type LDefaultDecl name

Top-level template haskell splice

data SpliceDecl id

Foreign function interface declarations

data ForeignDecl name

type LForeignDecl name

data ForeignImport

data ForeignExport

noForeignImportCoercionYet

noForeignExportCoercionYet

data CImportSpec

Data-constructor declarations

data ConDecl name

type LConDecl name

data ResType name

type HsConDeclDetails name

hsConDeclArgTys

Document comments

data DocDecl

type LDocDecl

docDeclDoc

Deprecations

data WarnDecl name

type LWarnDecl name

Annotations

data AnnDecl name

type LAnnDecl name

data AnnProvenance name

annProvenanceName_maybe

modifyAnnProvenanceNameM

Grouping

data HsGroup id

emptyRnGroup

emptyRdrGroup

appendGroups