- data Scope a b
- data LocalEnv = LocalEnv {
- local_vars :: VarEnv (Var, Var)
- local_tyvars :: [TyVar]
- local_tyvar_pa :: VarEnv CoreExpr
- local_bind_name :: FastString
- emptyLocalEnv :: LocalEnv
- data GlobalEnv = GlobalEnv {
- global_vars :: VarEnv Var
- global_scalars :: VarSet
- global_exported_vars :: VarEnv (Var, Var)
- global_tycons :: NameEnv TyCon
- global_datacons :: NameEnv DataCon
- global_pa_funs :: NameEnv Var
- global_pr_funs :: NameEnv Var
- global_boxed_tycons :: NameEnv TyCon
- global_inst_env :: (InstEnv, InstEnv)
- global_fam_inst_env :: FamInstEnvs
- global_bindings :: [(Var, CoreExpr)]
- initGlobalEnv :: VectInfo -> (InstEnv, InstEnv) -> FamInstEnvs -> GlobalEnv
- extendImportedVarsEnv :: [(Var, Var)] -> GlobalEnv -> GlobalEnv
- extendScalars :: [Var] -> GlobalEnv -> GlobalEnv
- setFamInstEnv :: FamInstEnv -> GlobalEnv -> GlobalEnv
- extendTyConsEnv :: [(Name, TyCon)] -> GlobalEnv -> GlobalEnv
- extendDataConsEnv :: [(Name, DataCon)] -> GlobalEnv -> GlobalEnv
- extendPAFunsEnv :: [(Name, Var)] -> GlobalEnv -> GlobalEnv
- setPRFunsEnv :: [(Name, Var)] -> GlobalEnv -> GlobalEnv
- setBoxedTyConsEnv :: [(Name, TyCon)] -> GlobalEnv -> GlobalEnv
- updVectInfo :: GlobalEnv -> TypeEnv -> VectInfo -> VectInfo
Documentation
Local Environments
The local environment.
LocalEnv | |
|
emptyLocalEnv :: LocalEnvSource
Create an empty local environment.
Global Environments
The global environment. These are things the exist at top-level.
GlobalEnv | |
|
initGlobalEnv :: VectInfo -> (InstEnv, InstEnv) -> FamInstEnvs -> GlobalEnvSource
Create an initial global environment
extendImportedVarsEnv :: [(Var, Var)] -> GlobalEnv -> GlobalEnvSource
Extend the list of global variables in an environment.
extendScalars :: [Var] -> GlobalEnv -> GlobalEnvSource
Extend the set of scalar variables in an environment.
setFamInstEnv :: FamInstEnv -> GlobalEnv -> GlobalEnvSource
Set the list of type family instances in an environment.
extendTyConsEnv :: [(Name, TyCon)] -> GlobalEnv -> GlobalEnvSource
Extend the list of type constructors in an environment.
extendDataConsEnv :: [(Name, DataCon)] -> GlobalEnv -> GlobalEnvSource
Extend the list of data constructors in an environment.
extendPAFunsEnv :: [(Name, Var)] -> GlobalEnv -> GlobalEnvSource
Extend the list of PA functions in an environment.
setPRFunsEnv :: [(Name, Var)] -> GlobalEnv -> GlobalEnvSource
Set the list of PR functions in an environment.