[project @ 2003-09-08 11:52:24 by simonmar]
[ghc-hetmet.git] / ghc / compiler / basicTypes / VarEnv.lhs
index 646d5fa..d219fe5 100644 (file)
@@ -21,7 +21,7 @@ module VarEnv (
 
        -- SubstEnvs
        SubstEnv, TyVarSubstEnv, SubstResult(..),
-       emptySubstEnv, substEnvEnv,
+       emptySubstEnv, substEnvEnv, elemSubstEnv,
        mkSubstEnv, lookupSubstEnv, extendSubstEnv, extendSubstEnvList,
        delSubstEnv, delSubstEnvList, noTypeSubst, isEmptySubstEnv
     ) where
@@ -50,6 +50,8 @@ When tidying up print names, we keep a mapping of in-scope occ-names
 
 \begin{code}
 type TidyEnv = (TidyOccEnv, VarEnv Var)
+
+emptyTidyEnv :: TidyEnv
 emptyTidyEnv = (emptyTidyOccEnv, emptyVarEnv)
 \end{code}
 
@@ -93,6 +95,9 @@ isEmptySubstEnv (SE s _) = isEmptyVarEnv s
 lookupSubstEnv :: SubstEnv -> Var -> Maybe SubstResult
 lookupSubstEnv (SE s _) v = lookupVarEnv s v
 
+elemSubstEnv :: Var -> SubstEnv -> Bool
+elemSubstEnv v (SE s _) = elemVarEnv v s
+
 extendSubstEnv :: SubstEnv -> Var -> SubstResult -> SubstEnv
 extendSubstEnv (SE s nt) v r = SE (extendVarEnv s v r) (noTys r nt)