ghc-lib-0.20201101: The GHC API, decoupled from GHC versions
Safe HaskellNone
LanguageHaskell2010

GHC.Tc.Gen.Head

Synopsis

Documentation

data HsExprArg (p :: TcPass) Source #

Constructors

EValArg 

Fields

ETypeArg 

Fields

EPrag SrcSpan (HsPragE (GhcPass (XPass p))) 
EPar SrcSpan 
EWrap !(XEWrap p) 

Instances

Instances details
OutputableBndrId (XPass p) => Outputable (HsExprArg p) Source # 
Instance details

Defined in GHC.Tc.Gen.Head

Methods

ppr :: HsExprArg p -> SDoc

data EValArg (p :: TcPass) where Source #

Constructors

ValArg :: LHsExpr (GhcPass (XPass p)) -> EValArg p 
ValArgQL 

Fields

Instances

Instances details
OutputableBndrId (XPass p) => Outputable (EValArg p) Source # 
Instance details

Defined in GHC.Tc.Gen.Head

Methods

ppr :: EValArg p -> SDoc

data TcPass Source #

Constructors

TcpRn 
TcpInst 
TcpTc 

type Rebuilder = HsExpr GhcTc -> [HsExprArg 'TcpTc] -> HsExpr GhcTc Source #

splitHsApps :: HsExpr GhcRn -> (HsExpr GhcRn, [HsExprArg 'TcpRn], Rebuilder) Source #

eValArgExpr :: EValArg 'TcpInst -> LHsExpr GhcRn Source #

setSrcSpanFromArgs :: [HsExprArg 'TcpRn] -> TcM a -> TcM a Source #

tcInferAppHead :: HsExpr GhcRn -> [HsExprArg 'TcpRn] -> Maybe TcRhoType -> TcM (HsExpr GhcTc, TcSigmaType) Source #

tcInferAppHead_maybe :: HsExpr GhcRn -> [HsExprArg 'TcpRn] -> Maybe TcRhoType -> TcM (Maybe (HsExpr GhcTc, TcSigmaType)) Source #

tcInferId :: Name -> TcM (HsExpr GhcTc, TcSigmaType) Source #

tcCheckId :: Name -> ExpRhoType -> TcM (HsExpr GhcTc) Source #

obviousSig :: HsExpr GhcRn -> Maybe (LHsSigWcType GhcRn) Source #

addAmbiguousNameErr :: RdrName -> TcM () Source #

This name really is ambiguous, so add a suitable "ambiguous occurrence" error, then continue

tyConOf :: FamInstEnvs -> TcSigmaType -> Maybe TyCon Source #

lookupParents :: RdrName -> RnM [(RecSelParent, GlobalRdrElt)] Source #

fieldNotInType :: RecSelParent -> RdrName -> SDoc Source #

nonBidirectionalErr :: Outputable name => name -> TcM a Source #

addExprCtxt :: HsExpr GhcRn -> TcRn a -> TcRn a Source #

addLExprCtxt :: LHsExpr GhcRn -> TcRn a -> TcRn a Source #

addFunResCtxt :: HsExpr GhcTc -> [HsExprArg 'TcpTc] -> TcType -> ExpRhoType -> TcM a -> TcM a Source #