Moduleio-classes-1.8.0.1
Control.Concurrent.Class.MonadSTM
- 1 type
- 4 classes
- 5 values
- Packageio-classes-1.8.0.1
- Exports21
- LicenceApache-2.0
Instances2InspectMonadSTM
type InspectMonadSTM IO = IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internaltype InspectMonadSTM (ReaderT r m) = InspectMonadSTM mDefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Associated types
type family InspectMonadSTM (m :: Type -> Type) :: Type -> Type
Methods
inspectTVar :: proxy m -> TVar m a -> InspectMonadSTM m ainspectTMVar :: proxy m -> TMVar m a -> InspectMonadSTM m (Maybe a)
Instances2MonadInspectSTM
MonadInspectSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.InternalMonadInspectSTM m => MonadInspectSTM (ReaderT r m)Defined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Methods
labelTVar :: TVar m a -> String -> STM m ()labelTMVar :: TMVar m a -> String -> STM m ()labelTQueue :: TQueue m a -> String -> STM m ()labelTBQueue :: TBQueue m a -> String -> STM m ()labelTVarIO :: TVar m a -> String -> m ()labelTMVarIO :: TMVar m a -> String -> m ()labelTQueueIO :: TQueue m a -> String -> m ()labelTBQueueIO :: TBQueue m a -> String -> m ()
Instances1MonadLabelledSTM
MonadLabelledSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Associated types
type family STM (m :: Type -> Type) :: Type -> Typetype family TVar (m :: Type -> Type) :: Type -> Typetype family TMVar (m :: Type -> Type) :: Type -> Typetype family TQueue (m :: Type -> Type) :: Type -> Typetype family TBQueue (m :: Type -> Type) :: Type -> Typetype family TArray (m :: Type -> Type) :: Type -> Type -> Typetype family TChan (m :: Type -> Type) :: Type -> Type
Methods
atomically :: HasCallStack => STM m a -> m anewTVar :: a -> STM m (TVar m a)readTVar :: TVar m a -> STM m awriteTVar :: TVar m a -> a -> STM m ()retry :: STM m aorElse :: STM m a -> STM m a -> STM m amodifyTVar :: TVar m a -> (a -> a) -> STM m ()modifyTVar' :: TVar m a -> (a -> a) -> STM m ()stateTVar :: TVar m s -> (s -> (a, s)) -> STM m aswapTVar :: TVar m a -> a -> STM m acheck :: Bool -> STM m ()newTMVar :: a -> STM m (TMVar m a)newEmptyTMVar :: STM m (TMVar m a)takeTMVar :: TMVar m a -> STM m atryTakeTMVar :: TMVar m a -> STM m (Maybe a)putTMVar :: TMVar m a -> a -> STM m ()tryPutTMVar :: TMVar m a -> a -> STM m BoolreadTMVar :: TMVar m a -> STM m atryReadTMVar :: TMVar m a -> STM m (Maybe a)swapTMVar :: TMVar m a -> a -> STM m awriteTMVar :: TMVar m a -> a -> STM m ()isEmptyTMVar :: TMVar m a -> STM m BoolnewTQueue :: STM m (TQueue m a)readTQueue :: TQueue m a -> STM m atryReadTQueue :: TQueue m a -> STM m (Maybe a)peekTQueue :: TQueue m a -> STM m atryPeekTQueue :: TQueue m a -> STM m (Maybe a)flushTQueue :: TQueue m a -> STM m [a]writeTQueue :: TQueue m a -> a -> STM m ()isEmptyTQueue :: TQueue m a -> STM m BoolunGetTQueue :: TQueue m a -> a -> STM m ()newTBQueue :: Natural -> STM m (TBQueue m a)readTBQueue :: TBQueue m a -> STM m atryReadTBQueue :: TBQueue m a -> STM m (Maybe a)peekTBQueue :: TBQueue m a -> STM m atryPeekTBQueue :: TBQueue m a -> STM m (Maybe a)flushTBQueue :: TBQueue m a -> STM m [a]writeTBQueue :: TBQueue m a -> a -> STM m ()lengthTBQueue :: TBQueue m a -> STM m NaturalisEmptyTBQueue :: TBQueue m a -> STM m BoolisFullTBQueue :: TBQueue m a -> STM m BoolunGetTBQueue :: TBQueue m a -> a -> STM m ()newTChan :: STM m (TChan m a)newBroadcastTChan :: STM m (TChan m a)dupTChan :: TChan m a -> STM m (TChan m a)cloneTChan :: TChan m a -> STM m (TChan m a)readTChan :: TChan m a -> STM m atryReadTChan :: TChan m a -> STM m (Maybe a)peekTChan :: TChan m a -> STM m atryPeekTChan :: TChan m a -> STM m (Maybe a)writeTChan :: TChan m a -> a -> STM m ()unGetTChan :: TChan m a -> a -> STM m ()isEmptyTChan :: TChan m a -> STM m BoolnewTVarIO :: a -> m (TVar m a)readTVarIO :: TVar m a -> m anewTMVarIO :: a -> m (TMVar m a)newEmptyTMVarIO :: m (TMVar m a)newTQueueIO :: m (TQueue m a)newTBQueueIO :: Natural -> m (TBQueue m a)newTChanIO :: m (TChan m a)newBroadcastTChanIO :: m (TChan m a)
Methods
traceTVar :: proxy m -> TVar m a -> (Maybe a -> a -> InspectMonadSTM m TraceValue) -> STM m ()traceTMVar :: proxy m -> TMVar m a -> (Maybe (Maybe a) -> Maybe a -> InspectMonadSTM m TraceValue) -> STM m ()traceTQueue :: proxy m -> TQueue m a -> (Maybe [a] -> [a] -> InspectMonadSTM m TraceValue) -> STM m ()traceTBQueue :: proxy m -> TBQueue m a -> (Maybe [a] -> [a] -> InspectMonadSTM m TraceValue) -> STM m ()traceTSem :: proxy m -> TSem m -> (Maybe Integer -> Integer -> InspectMonadSTM m TraceValue) -> STM m ()traceTVarIO :: TVar m a -> (Maybe a -> a -> InspectMonadSTM m TraceValue) -> m ()traceTMVarIO :: TMVar m a -> (Maybe (Maybe a) -> Maybe a -> InspectMonadSTM m TraceValue) -> m ()traceTQueueIO :: TQueue m a -> (Maybe [a] -> [a] -> InspectMonadSTM m TraceValue) -> m ()traceTBQueueIO :: TBQueue m a -> (Maybe [a] -> [a] -> InspectMonadSTM m TraceValue) -> m ()traceTSemIO :: TSem m -> (Maybe Integer -> Integer -> InspectMonadSTM m TraceValue) -> m ()
Instances2MonadTraceSTM
MonadTraceSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.InternalMonadTraceSTM m => MonadTraceSTM (ReaderT r m)Defined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Constructors
TraceValue :: Typeable tr => Maybe tr -> Maybe String -> TraceValuetraceDynamic :: Maybe trtraceString :: Maybe String