ghc-lib-9.2.8.20230729: The GHC API, decoupled from GHC versions
Safe HaskellSafe-Inferred
LanguageHaskell2010

GHC.Tc.Utils.Zonk

Description

Specialisations of the HsSyn syntax for the typechecker

This module is an extension of HsSyn syntax, for use in the type checker.

Synopsis

Extracting types from HsSyn

Other HsSyn functions

mkHsApp :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

mkHsAppTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) #

mkHsCaseAlt :: forall (p :: Pass) body. (Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcSpan, Anno (Match (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcSpanAnnA) => LPat (GhcPass p) -> LocatedA (body (GhcPass p)) -> LMatch (GhcPass p) (LocatedA (body (GhcPass p))) #

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 GHC.Tc.Utils.TcMType

data ZonkEnv Source #

See Note [The ZonkEnv] Confused by zonking? See Note [What is zonking?] in GHC.Tc.Utils.TcMType.

Instances

Instances details
Outputable ZonkEnv Source # 
Instance details

Defined in GHC.Tc.Utils.Zonk

Methods

ppr :: ZonkEnv -> SDoc #