unliftio-0.2.8.0: The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)

Safe HaskellSafe
LanguageHaskell2010

UnliftIO.IORef

Description

Unlifted Data.IORef.

Since: unliftio-0.1.0.0

Synopsis

Documentation

data IORef a #

A mutable variable in the IO monad

Instances
NFData1 IORef

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

liftRnf :: (a -> ()) -> IORef a -> () #

Eq (IORef a)

Pointer equality.

Since: base-4.1.0.0

Instance details

Defined in GHC.IORef

Methods

(==) :: IORef a -> IORef a -> Bool #

(/=) :: IORef a -> IORef a -> Bool #

NFData (IORef a)

NOTE: Only strict in the reference and not the referenced value.

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf :: IORef a -> () #

newIORef :: MonadIO m => a -> m (IORef a) Source #

Lifted newIORef.

Since: unliftio-0.1.0.0

readIORef :: MonadIO m => IORef a -> m a Source #

Lifted readIORef.

Since: unliftio-0.1.0.0

writeIORef :: MonadIO m => IORef a -> a -> m () Source #

Lifted writeIORef.

Since: unliftio-0.1.0.0

modifyIORef :: MonadIO m => IORef a -> (a -> a) -> m () Source #

Lifted modifyIORef.

Since: unliftio-0.1.0.0

modifyIORef' :: MonadIO m => IORef a -> (a -> a) -> m () Source #

Lifted modifyIORef'.

Since: unliftio-0.1.0.0

atomicModifyIORef :: MonadIO m => IORef a -> (a -> (a, b)) -> m b Source #

Lifted atomicModifyIORef.

Since: unliftio-0.1.0.0

atomicModifyIORef' :: MonadIO m => IORef a -> (a -> (a, b)) -> m b Source #

Lifted atomicModifyIORef'.

Since: unliftio-0.1.0.0

atomicWriteIORef :: MonadIO m => IORef a -> a -> m () Source #

Lifted atomicWriteIORef.

Since: unliftio-0.1.0.0

mkWeakIORef :: MonadUnliftIO m => IORef a -> m () -> m (Weak (IORef a)) Source #

Unlifted mkWeakIORef.

Since: unliftio-0.1.0.0