Desugaring monad. See also TcM.
Moduleghc-9.14.1GHC2021
GHC.HsToCore.Types
Various types used during desugaring.
- 6 types
- Packageghc-9.14.1
- Exports6
- LanguageGHC2021
- LicenceBSD-3-Clause
- SourceTypes.hs
Local state of the desugarer, extended as we lexically descend
Constructors
DsLclEnvdsl_meta :: DsMetaEnvTemplate Haskell bindings
dsl_loc :: RealSrcSpanTo put in pattern-matching error msgs
dsl_nablas :: NablasSee Note [Long-distance information] in GHC.HsToCore.Pmc. The set of reaching values Nablas is augmented as we walk inwards, refined through each pattern match in turn
dsl_unspecables :: Maybe VarSetSee Note [Desugaring non-canonical evidence] This field collects all un-specialisable evidence variables in scope. Nothing = don't collect this info (used for the LHS of Rules)
Instances1MonadThings
MonadThings (IOEnv (Env DsGblEnv DsLclEnv))Defined in ghc-9.14.1 · GHC.HsToCore.Monad · orphan
Global read-only context and state of the desugarer. The statefulness is implemented through IORefs.
Constructors
DsGblEnvds_mod :: Moduleds_fam_inst_env :: FamInstEnvds_gbl_rdr_env :: GlobalRdrEnvds_name_ppr_ctx :: NamePprCtxds_msgs :: IORef (Messages DsMessage)ds_if_env :: (IfGblEnv, IfLclEnv)ds_complete_matches :: DsCompleteMatchesds_cc_st :: IORef CostCentreStateds_next_wrapper_num :: IORef (ModuleEnv Int)See Note [Generating fresh names for FFI wrappers]
Instances2ContainsModule, MonadThings
ContainsModule DsGblEnvDefined in ghc-9.14.1 · GHC.HsToCore.TypesMonadThings (IOEnv (Env DsGblEnv DsLclEnv))Defined in ghc-9.14.1 · GHC.HsToCore.Monad · orphan