| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
SimplEnv
Documentation
type InCoercion = Coercion #
type OutCoercion = Coercion #
setMode :: SimplifierMode -> SimplEnv -> SimplEnv #
getMode :: SimplEnv -> SimplifierMode #
updMode :: (SimplifierMode -> SimplifierMode) -> SimplEnv -> SimplEnv #
Constructors
| SimplEnv | |
Fields
| |
pprSimplEnv :: SimplEnv -> SDoc #
mkSimplEnv :: SimplifierMode -> SimplEnv #
zapSubstEnv :: SimplEnv -> SimplEnv #
setSubstEnv :: SimplEnv -> TvSubstEnv -> CvSubstEnv -> SimplIdSubst -> SimplEnv #
getInScope :: SimplEnv -> InScopeSet #
setInScope :: SimplEnv -> SimplEnv -> SimplEnv #
setInScopeSet :: SimplEnv -> InScopeSet -> SimplEnv #
modifyInScope :: SimplEnv -> CoreBndr -> SimplEnv #
addNewInScopeIds :: SimplEnv -> [CoreBndr] -> SimplEnv #
Constructors
| DoneEx OutExpr | |
| DoneId OutId | |
| ContEx TvSubstEnv CvSubstEnv SimplIdSubst InExpr |
Instances
lookupRecBndr :: SimplEnv -> InId -> OutId #
refineFromInScope :: InScopeSet -> Var -> Var #
substTyVar :: SimplEnv -> TyVar -> Type #
getTCvSubst :: SimplEnv -> TCvSubst #
substCoVar :: SimplEnv -> CoVar -> Coercion #
Instances
emptyFloats :: Floats #
isEmptyFloats :: SimplEnv -> Bool #
extendFloats :: SimplEnv -> OutBind -> SimplEnv #
wrapFloats :: SimplEnv -> OutExpr -> OutExpr #
addRecFloats :: SimplEnv -> SimplEnv -> SimplEnv #
doFloatFromRhs :: TopLevelFlag -> RecFlag -> Bool -> OutExpr -> SimplEnv -> Bool #
getFloatBinds :: SimplEnv -> [CoreBind] #