readBinIface :: FilePath -> TcRnIf a b ModIface
readBinIface hi_path = do
nc <- getNameCache
- (new_nc, iface) <- ioToIOEnv $ readBinIface_ hi_path nc
+ (new_nc, iface) <- liftIO $ readBinIface_ hi_path nc
setNameCache new_nc
return iface
tryM, tryAllM, tryMostM, fixM,
-- I/O operations
- ioToIOEnv,
IORef, newMutVar, readMutVar, writeMutVar, updMutVar
) where
#include "HsVersions.h"
instance MonadIO (IOEnv env) where
liftIO io = IOEnv (\ env -> io)
-ioToIOEnv :: IO a -> IOEnv env a
-ioToIOEnv io = IOEnv (\ env -> io)
-
newMutVar :: a -> IOEnv env (IORef a)
newMutVar val = liftIO (newIORef val)
import TysPrim ( intPrimTy )
import Module
import IfaceEnv
-import IOEnv ( ioToIOEnv )
+import IOEnv ( liftIO )
import DsMonad
import PrelNames
builtin_prs <- initBuiltinPRs builtins
builtin_boxed <- initBuiltinBoxedTyCons builtins
- eps <- ioToIOEnv $ hscEPS hsc_env
+ eps <- liftIO $ hscEPS hsc_env
let famInstEnvs = (eps_fam_inst_env eps, mg_fam_inst_env guts)
instEnvs = (eps_inst_env eps, mg_inst_env guts)