| ghc-6.10.4: The GHC API | Contents | Index

IOEnv

Synopsis

data IOEnv env a
module MonadUtils
failM :: IOEnv env a
failWithM :: String -> IOEnv env a
data IOEnvFailure = IOEnvFailure
getEnv :: IOEnv env env
setEnv :: env' -> IOEnv env' a -> IOEnv env a
updEnv :: (env -> env') -> IOEnv env' a -> IOEnv env a
runIOEnv :: env -> IOEnv env a -> IO a
unsafeInterleaveM :: IOEnv env a -> IOEnv env a
tryM :: IOEnv env r -> IOEnv env (Either IOEnvFailure r)
tryAllM :: IOEnv env r -> IOEnv env (Either SomeException r)
tryMostM :: IOEnv env r -> IOEnv env (Either SomeException r)
fixM :: (a -> IOEnv env a) -> IOEnv env a
IORef (IORef)
newMutVar :: a -> IOEnv env (IORef a)
readMutVar :: IORef a -> IOEnv env a
writeMutVar :: IORef a -> a -> IOEnv env ()
updMutVar :: IORef a -> (a -> a) -> IOEnv env ()

Documentation
data IOEnv env a

Instances

Monad (IOEnv m)
Functor (IOEnv m)
Applicative (IOEnv m)
Quasi (IOEnv (Env TcGblEnv TcLclEnv))
MonadIO (IOEnv env)
MonadUnique (IOEnv (Env gbl lcl))
MonadThings (IOEnv (Env DsGblEnv DsLclEnv))

module MonadUtils
failM :: IOEnv env a
failWithM :: String -> IOEnv env a
data IOEnvFailure

Constructors

IOEnvFailure |

Instances

Show IOEnvFailure
Typeable IOEnvFailure
Exception IOEnvFailure

getEnv :: IOEnv env env
setEnv :: env' -> IOEnv env' a -> IOEnv env a
Perform a computation with a different environment
updEnv :: (env -> env') -> IOEnv env' a -> IOEnv env a
Perform a computation with an altered environment
runIOEnv :: env -> IOEnv env a -> IO a
unsafeInterleaveM :: IOEnv env a -> IOEnv env a
tryM :: IOEnv env r -> IOEnv env (Either IOEnvFailure r)
tryAllM :: IOEnv env r -> IOEnv env (Either SomeException r)
tryMostM :: IOEnv env r -> IOEnv env (Either SomeException r)
fixM :: (a -> IOEnv env a) -> IOEnv env a
IORef (IORef)
newMutVar :: a -> IOEnv env (IORef a)
readMutVar :: IORef a -> IOEnv env a
writeMutVar :: IORef a -> a -> IOEnv env ()
updMutVar :: IORef a -> (a -> a) -> IOEnv env ()
Produced by Haddock version 2.4.2