ghc-8.2.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

TcHsSyn

Contents

Synopsis

Extracting types from HsSyn

Other HsSyn functions

mkHsApp :: LHsExpr name -> LHsExpr name -> LHsExpr name #

mkHsAppTy :: LHsType name -> LHsType name -> LHsType name #

mkHsCaseAlt :: LPat id -> Located (body id) -> LMatch id (Located (body id)) #

A simple case alternative with a single pattern, no binds, no guards; pre-typechecking

conLikeResTy :: ConLike -> [Type] -> Type #

Returns the type of the whole pattern

re-exported from TcMonad

type TcId = Id #

type TcIdSet = IdSet #

Zonking

For a description of "zonking", see Note [What is zonking?] in TcMType

zonkTyBndrsX :: ZonkEnv -> [TcTyVar] -> TcM (ZonkEnv, [TyVar]) #

zonkTyVarBindersX :: ZonkEnv -> [TyVarBndr TcTyVar vis] -> TcM (ZonkEnv, [TyVarBndr TyVar vis]) #

zonkTyVarBinderX :: ZonkEnv -> TyVarBndr TcTyVar vis -> TcM (ZonkEnv, TyVarBndr TyVar vis) #

emptyZonkEnv :: ZonkEnv #

mkEmptyZonkEnv :: UnboundTyVarZonker -> ZonkEnv #

zonkTcTypeToType :: ZonkEnv -> TcType -> TcM Type #

zonkTcTypeToTypes :: ZonkEnv -> [TcType] -> TcM [Type] #

zonkTyVarOcc :: ZonkEnv -> TyVar -> TcM TcType #

zonkCoToCo :: ZonkEnv -> Coercion -> TcM Coercion #

zonkEvBinds :: ZonkEnv -> Bag EvBind -> TcM (ZonkEnv, Bag EvBind) #