ghc-7.0.4: The GHC API

IfaceType

# Documentation

type IfExtName = Name Source

type IfLclName = FastString Source

data IfaceType Source

Constructors

IfaceTyVar IfLclName |
IfaceAppTy IfaceType IfaceType |
IfaceForAllTy IfaceTvBndr IfaceType |
IfacePredTy IfacePredType |
IfaceTyConApp IfaceTyCon [IfaceType] |
IfaceFunTy IfaceType IfaceType |

Instances

Outputable IfaceType |
Binary IfaceType |

type IfaceKind = IfaceType Source

data IfacePredType Source

Constructors

IfaceClassP IfExtName [IfaceType] |
IfaceIParam (IPName OccName) IfaceType |
IfaceEqPred IfaceType IfaceType |

Instances

Outputable IfacePredType |
Binary IfacePredType |

data IfaceTyCon Source

Constructors

IfaceTc IfExtName |
IfaceIntTc |
IfaceBoolTc |
IfaceCharTc |
IfaceListTc |
IfacePArrTc |
IfaceTupTc Boxity Arity |
IfaceAnyTc IfaceKind |
IfaceLiftedTypeKindTc |
IfaceOpenTypeKindTc |
IfaceUnliftedTypeKindTc |
IfaceUbxTupleKindTc |
IfaceArgTypeKindTc |

Instances

Outputable IfaceTyCon |
Binary IfaceTyCon |

type IfaceContext = [IfacePredType]Source

data IfaceBndr Source

Constructors

IfaceIdBndr !IfaceIdBndr |
IfaceTvBndr !IfaceTvBndr |

Instances

Outputable IfaceBndr |
Binary IfaceBndr |

type IfaceTvBndr = (IfLclName, IfaceKind)Source

type IfaceIdBndr = (IfLclName, IfaceType)Source

type IfaceCoercion = IfaceType Source

ifaceTyConName :: IfaceTyCon -> IfExtName Source

toIfaceType :: Type -> IfaceType Source

toIfacePred :: PredType -> IfacePredType Source

toIfaceContext :: ThetaType -> IfaceContext Source

toIfaceBndr :: Var -> IfaceBndr Source

toIfaceIdBndr :: Id -> (IfLclName, IfaceType)Source

toIfaceTvBndrs :: [TyVar] -> [(IfLclName, IfaceType)]Source

toIfaceTyCon :: TyCon -> IfaceTyCon Source

toIfaceTyCon_name :: Name -> IfaceTyCon Source

pprIfaceType :: IfaceType -> SDoc Source

pprParendIfaceType :: IfaceType -> SDoc Source

pprIfaceContext :: IfaceContext -> SDoc Source

pprIfaceIdBndr :: (IfLclName, IfaceType) -> SDoc Source

pprIfaceTvBndr :: IfaceTvBndr -> SDoc Source

pprIfaceTvBndrs :: [IfaceTvBndr] -> SDoc Source

pprIfaceBndrs :: [IfaceBndr] -> SDoc Source

tOP_PREC :: Int Source

tYCON_PREC :: Int Source

noParens :: SDoc -> SDoc Source

maybeParen :: Int -> Int -> SDoc -> SDoc Source

pprIfaceForAllPart :: [IfaceTvBndr] -> IfaceContext -> SDoc -> SDoc Source