| Copyright | © 2017 All rights reserved. |
|---|---|
| License | GPL-3 |
| Maintainer | Evan Cofsky <evan@theunixman.com> |
| Stability | experimental |
| Portability | POSIX |
| Safe Haskell | None |
| Language | Haskell2010 |
STM.Base
Description
- module IO.Base
- module Control.Concurrent.STM.TVar
- module Control.Concurrent.STM.TMVar
- module Control.Concurrent.STM.TBChan
- data STM a :: * -> *
- atomically :: MonadBase IO m => STM α -> m α
- newTVarIO :: MonadBase IO m => a -> m (TVar a)
- newTMVarIO :: MonadBase IO m => a -> m (TMVar a)
- newEmptyTMVarIO :: MonadBase IO m => m (TMVar a)
- newTBChanIO :: (MonadBase IO m, Integral l) => l -> m (TBChan a)
- newTBChan :: Integral l => l -> STM (TBChan a)
Documentation
module IO.Base
module Control.Concurrent.STM.TVar
module Control.Concurrent.STM.TMVar
A monad supporting atomic memory transactions.
Instances
| Monad STM | Since: 4.3.0.0 |
| Functor STM | Since: 4.3.0.0 |
| Applicative STM | Since: 4.8.0.0 |
| Alternative STM | Since: 4.8.0.0 |
| MonadPlus STM | Since: 4.3.0.0 |
| MonadThrow STM | |
| MonadCatch STM | |
| MonadBaseControl STM STM | |
| MonadBase STM STM | |
| type StM STM a | |
atomically :: MonadBase IO m => STM α -> m α Source #
atomically lifted to MonadBase IO.
newTMVarIO :: MonadBase IO m => a -> m (TMVar a) Source #
newTMVarIO at the top level, lifted.
newEmptyTMVarIO :: MonadBase IO m => m (TMVar a) Source #
newTMVarIO at the top level, lifted.
newTBChanIO :: (MonadBase IO m, Integral l) => l -> m (TBChan a) Source #
newTBChanIO at the top level, lifted, only with a saturated length.