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

Safe Haskell | Safe
Language | Haskell2010

UnliftIO.IORef

Description

Unlifted Data.IORef.

Since: 0.1.0.0

Synopsis

- data IORef a
- newIORef :: MonadIO m => a -> m (IORef a)
- readIORef :: MonadIO m => IORef a -> m a
- writeIORef :: MonadIO m => IORef a -> a -> m ()
- modifyIORef :: MonadIO m => IORef a -> (a -> a) -> m ()
- modifyIORef' :: MonadIO m => IORef a -> (a -> a) -> m ()
- atomicModifyIORef :: MonadIO m => IORef a -> (a -> (a, b)) -> m b
- atomicModifyIORef' :: MonadIO m => IORef a -> (a -> (a, b)) -> m b
- atomicWriteIORef :: MonadIO m => IORef a -> a -> m ()
- mkWeakIORef :: MonadUnliftIO m => IORef a -> m () -> m (Weak (IORef a))

# Documentation

data IORef a #

#### Instances

Instances details

NFData1 IORef |
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> IORef a -> ()
Eq (IORef a) |
Instance details Defined in GHC.IORef Methods (==) :: IORef a -> IORef a -> Bool (/=) :: IORef a -> IORef a -> Bool
NFData (IORef a) |
Instance details Defined in Control.DeepSeq Methods rnf :: IORef a -> ()

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

Lifted `newIORef`.

Since: 0.1.0.0

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

Lifted `readIORef`.

Since: 0.1.0.0

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

Lifted `writeIORef`.

Since: 0.1.0.0

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

Lifted `modifyIORef`.

Since: 0.1.0.0

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

Lifted `modifyIORef'`.

Since: 0.1.0.0

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

Lifted `atomicModifyIORef`.

Since: 0.1.0.0

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

Lifted `atomicModifyIORef'`.

Since: 0.1.0.0

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

Lifted `atomicWriteIORef`.

Since: 0.1.0.0

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

Unlifted `mkWeakIORef`.

Since: 0.1.0.0