IfaceType
Documentation
type IfLclName = FastStringSource
Constructors
| IfaceTyVar IfLclName | |
| IfaceAppTy IfaceType IfaceType | |
| IfaceForAllTy IfaceTvBndr IfaceType | |
| IfacePredTy IfacePredType | |
| IfaceTyConApp IfaceTyCon [IfaceType] | |
| IfaceFunTy IfaceType IfaceType |
Instances
data IfacePredType Source
Constructors
| IfaceClassP IfExtName [IfaceType] | |
| IfaceIParam (IPName OccName) IfaceType | |
| IfaceEqPred IfaceType IfaceType |
Instances
data IfaceTyCon Source
Constructors
Instances
type IfaceContext = [IfacePredType]Source
Constructors
| IfaceIdBndr !IfaceIdBndr | |
| IfaceTvBndr !IfaceTvBndr |
Instances
type IfaceTvBndr = (IfLclName, IfaceKind)Source
type IfaceIdBndr = (IfLclName, IfaceType)Source
type IfaceCoercion = IfaceTypeSource
toIfaceType :: Type -> IfaceTypeSource
toIfaceBndr :: Var -> IfaceBndrSource
toIfaceIdBndr :: Id -> (IfLclName, IfaceType)Source
toIfaceTvBndrs :: [TyVar] -> [(IfLclName, IfaceType)]Source
pprIfaceType :: IfaceType -> SDocSource
pprIfaceIdBndr :: (IfLclName, IfaceType) -> SDocSource
pprIfaceTvBndrs :: [IfaceTvBndr] -> SDocSource
pprIfaceBndrs :: [IfaceBndr] -> SDocSource
pprIfaceForAllPart :: [IfaceTvBndr] -> IfaceContext -> SDoc -> SDocSource