| ghc-6.10.4: The GHC API | Contents | Index

IfaceSyn

Documentation
module IfaceType
data IfaceDecl

Constructors

IfaceId |

ifName :: OccName |
ifType :: IfaceType |
ifIdInfo :: IfaceIdInfo |

IfaceData |

ifName :: OccName |
ifTyVars :: [IfaceTvBndr] |
ifCtxt :: IfaceContext |
ifCons :: IfaceConDecls |
ifRec :: RecFlag |
ifGadtSyntax :: Bool |
ifGeneric :: Bool |
ifFamInst :: Maybe (IfaceTyCon, [IfaceType]) |

IfaceSyn |

ifName :: OccName |
ifTyVars :: [IfaceTvBndr] |
ifSynKind :: IfaceKind |
ifSynRhs :: Maybe IfaceType |
ifFamInst :: Maybe (IfaceTyCon, [IfaceType]) |

IfaceClass |

ifCtxt :: IfaceContext |
ifName :: OccName |
ifTyVars :: [IfaceTvBndr] |
ifFDs :: [FunDep FastString] |
ifATs :: [IfaceDecl] |
ifSigs :: [IfaceClassOp] |
ifRec :: RecFlag |

IfaceForeign |

ifName :: OccName |
ifExtName :: Maybe FastString |

Instances

Outputable IfaceDecl
Binary IfaceDecl

data IfaceClassOp

Constructors

IfaceClassOp OccName DefMeth IfaceType |

Instances

Outputable IfaceClassOp
Binary IfaceClassOp

data IfaceConDecl

Constructors

IfCon |

ifConOcc :: OccName |
ifConInfix :: Bool |
ifConUnivTvs :: [IfaceTvBndr] |
ifConExTvs :: [IfaceTvBndr] |
ifConEqSpec :: [(OccName, IfaceType)] |
ifConCtxt :: IfaceContext |
ifConArgTys :: [IfaceType] |
ifConFields :: [OccName] |
ifConStricts :: [StrictnessMark] |

Instances

Binary IfaceConDecl

data IfaceConDecls

Constructors

IfAbstractTyCon |
IfOpenDataTyCon |
IfDataTyCon [IfaceConDecl] |
IfNewTyCon IfaceConDecl |

Instances

Binary IfaceConDecls

data IfaceExpr

Constructors

IfaceLcl FastString |
IfaceExt Name |
IfaceType IfaceType |
IfaceTuple Boxity [IfaceExpr] |
IfaceLam IfaceBndr IfaceExpr |
IfaceApp IfaceExpr IfaceExpr |
IfaceCase IfaceExpr FastString IfaceType [IfaceAlt] |
IfaceLet IfaceBinding IfaceExpr |
IfaceNote IfaceNote IfaceExpr |
IfaceCast IfaceExpr IfaceCoercion |
IfaceLit Literal |
IfaceFCall ForeignCall IfaceType |
IfaceTick Module Int |

Instances

Outputable IfaceExpr
Binary IfaceExpr

type IfaceAlt = (IfaceConAlt, [FastString], IfaceExpr)
data IfaceNote

Constructors

IfaceSCC CostCentre |
IfaceInlineMe |
IfaceCoreNote String |

Instances

Outputable IfaceNote
Binary IfaceNote

data IfaceLetBndr

Constructors

IfLetBndr FastString IfaceType IfaceIdInfo |

Instances

Binary IfaceLetBndr

data IfaceBinding

Constructors

IfaceNonRec IfaceLetBndr IfaceExpr |
IfaceRec [(IfaceLetBndr, IfaceExpr)] |

Instances

Binary IfaceBinding

data IfaceConAlt

Constructors

IfaceDefault |
IfaceDataAlt Name |
IfaceTupleAlt Boxity |
IfaceLitAlt Literal |

Instances

Outputable IfaceConAlt
Binary IfaceConAlt

data IfaceIdInfo

Constructors

NoInfo |
HasInfo [IfaceInfoItem] |

Instances

Outputable IfaceIdInfo
Binary IfaceIdInfo

data IfaceInfoItem

Constructors

HsArity Arity |
HsStrictness StrictSig |
HsInline Activation |
HsUnfold IfaceExpr |
HsNoCafRefs |
HsWorker Name Arity |

Instances

Outputable IfaceInfoItem
Binary IfaceInfoItem

data IfaceRule

Constructors

IfaceRule |

ifRuleName :: RuleName |
ifActivation :: Activation |
ifRuleBndrs :: [IfaceBndr] |
ifRuleHead :: Name |
ifRuleArgs :: [IfaceExpr] |
ifRuleRhs :: IfaceExpr |
ifRuleOrph :: Maybe OccName |

Instances

Outputable IfaceRule
Binary IfaceRule

data IfaceInst

Constructors

IfaceInst |

ifInstCls :: Name |
ifInstTys :: [Maybe IfaceTyCon] |
ifDFun :: Name |
ifOFlag :: OverlapFlag |
ifInstOrph :: Maybe OccName |

Instances

Outputable IfaceInst
Binary IfaceInst

data IfaceFamInst

Constructors

IfaceFamInst |

ifFamInstFam :: Name |
ifFamInstTys :: [Maybe IfaceTyCon] |
ifFamInstTyCon :: IfaceTyCon |

Instances

Outputable IfaceFamInst
Binary IfaceFamInst

ifaceDeclSubBndrs :: IfaceDecl -> [OccName]
visibleIfConDecls :: IfaceConDecls -> [IfaceConDecl]
freeNamesIfDecl :: IfaceDecl -> NameSet
freeNamesIfRule :: IfaceRule -> NameSet
pprIfaceExpr :: (SDoc -> SDoc) -> IfaceExpr -> SDoc
pprIfaceDeclHead :: IfaceContext -> OccName -> [IfaceTvBndr] -> SDoc
Produced by Haddock version 2.4.2