ghc-lib-parser-9.12.2.20250421: The GHC API, decoupled from GHC versions

Safe Haskell | Ignore
Language | GHC2021

GHC.Tc.Types.LclEnv

# Documentation

data TcLclEnv Source #

Constructors

TcLclEnv |

Fields

- tcl_lcl_ctxt :: !TcLclCtxt
- tcl_usage :: TcRef UsageEnv
- tcl_lie :: TcRef WantedConstraints
- tcl_errs :: TcRef (Messages TcRnMessage)

data TcLclCtxt Source #

Constructors

TcLclCtxt |

Fields

- tcl_loc :: RealSrcSpan
- tcl_ctxt :: [ErrCtxt]
- tcl_in_gen_code :: Bool
- tcl_tclvl :: TcLevel
- tcl_bndrs :: TcBinderStack
- tcl_rdr :: LocalRdrEnv
- tcl_th_ctxt :: ThStage
- tcl_th_bndrs :: ThBindEnv
- tcl_arrow_ctxt :: ArrowCtxt
- tcl_env :: TcTypeEnv

modifyLclCtxt :: (TcLclCtxt -> TcLclCtxt) -> TcLclEnv -> TcLclEnv Source #

getLclEnvArrowCtxt :: TcLclEnv -> ArrowCtxt Source #

getLclEnvThBndrs :: TcLclEnv -> ThBindEnv Source #

getLclEnvTypeEnv :: TcLclEnv -> TcTypeEnv Source #

getLclEnvBinderStack :: TcLclEnv -> TcBinderStack Source #

getLclEnvErrCtxt :: TcLclEnv -> [ErrCtxt] Source #

getLclEnvLoc :: TcLclEnv -> RealSrcSpan Source #

getLclEnvRdrEnv :: TcLclEnv -> LocalRdrEnv Source #

getLclEnvTcLevel :: TcLclEnv -> TcLevel Source #

getLclEnvThStage :: TcLclEnv -> ThStage Source #

setLclEnvTcLevel :: TcLevel -> TcLclEnv -> TcLclEnv Source #

setLclEnvLoc :: RealSrcSpan -> TcLclEnv -> TcLclEnv Source #

setLclEnvRdrEnv :: LocalRdrEnv -> TcLclEnv -> TcLclEnv Source #

setLclEnvBinderStack :: TcBinderStack -> TcLclEnv -> TcLclEnv Source #

setLclEnvErrCtxt :: [ErrCtxt] -> TcLclEnv -> TcLclEnv Source #

setLclEnvThStage :: ThStage -> TcLclEnv -> TcLclEnv Source #

setLclEnvTypeEnv :: TcTypeEnv -> TcLclEnv -> TcLclEnv Source #

modifyLclEnvTcLevel :: (TcLevel -> TcLevel) -> TcLclEnv -> TcLclEnv Source #

lclEnvInGeneratedCode :: TcLclEnv -> Bool Source #

addLclEnvErrCtxt :: ErrCtxt -> TcLclEnv -> TcLclEnv Source #

data ArrowCtxt Source #

Constructors

NoArrowCtxt |
ArrowCtxt LocalRdrEnv (TcRef WantedConstraints) |

type ThBindEnv = NameEnv (TopLevelFlag, ThLevel) Source #

type TcTypeEnv = NameEnv TcTyThing Source #