Moduleouroboros-consensus-4.2.1.0
Ouroboros.Consensus.Util.MonadSTM.NormalForm
- 4 types
- 4 classes
- 37 values
- Packageouroboros-consensus-4.2.1.0
- Exports52
- LicenceApache-2.0
Instances3InspectMonadSTM
type InspectMonadSTM IO = IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internaltype InspectMonadSTM (WithEarlyExit m) = InspectMonadSTM mDefined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExittype 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)
Instances3MonadInspectSTM
MonadInspectSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal(MonadInspectSTM m, Monad (InspectMonadSTM m)) => MonadInspectSTM (WithEarlyExit m)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExitMonadInspectSTM m => MonadInspectSTM (ReaderT r m)Defined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Methods
labelTQueue :: TQueue m a -> String -> STM m ()labelTBQueue :: TBQueue m a -> String -> STM m ()labelTQueueIO :: TQueue m a -> String -> m ()labelTBQueueIO :: TBQueue m a -> String -> m ()
Instances2MonadLabelledSTM
MonadLabelledSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.InternalMonadLabelledSTM m => MonadLabelledSTM (WithEarlyExit m)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExit
Associated types
Methods
atomically :: HasCallStack => STM m a -> m aretry :: STM m aorElse :: STM m a -> STM m a -> STM m acheck :: Bool -> STM m ()newTQueue :: 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 ()newTQueueIO :: m (TQueue m a)newTBQueueIO :: Natural -> m (TBQueue m a)
Instances3MonadSTM
MonadSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.InternalMonadSTM m => MonadSTM (WithEarlyExit m)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExitMonadSTM m => MonadSTM (ReaderT r m)Defined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Methods
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 ()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 ()
Instances3MonadTraceSTM
MonadTraceSTM IODefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.InternalMonadTraceSTM m => MonadTraceSTM (WithEarlyExit m)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExitMonadTraceSTM m => MonadTraceSTM (ReaderT r m)Defined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Instances3STM
type STM IO = STMDefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internaltype STM (WithEarlyExit m) = WithEarlyExit (STM m)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExittype STM (ReaderT r m) = ReaderT r (STM m)Defined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Instances3TBQueue
type TBQueue IO = TBQueueDefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internaltype TBQueue (WithEarlyExit m) = TBQueue mDefined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExittype TBQueue (ReaderT r m) = TBQueue mDefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internal
Instances3TQueue
type TQueue IO = TQueueDefined in io-classes-1.8.0.1 · Control.Monad.Class.MonadSTM.Internaltype TQueue (WithEarlyExit m) = TQueue mDefined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExittype TQueue (ReaderT r m) = TQueue mDefined 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
Instances2NoThunks
NoThunks (StrictTMVar m a) => NoThunks (StrictTMVar (WithEarlyExit m) a)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExitNoThunks a => NoThunks (StrictTMVar IO a)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.IOLike · orphan
Instances2NoThunks
NoThunks (StrictSVar m a) => NoThunks (StrictSVar (WithEarlyExit m) a)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.EarlyExitNoThunks a => NoThunks (StrictSVar IO a)Defined in ouroboros-consensus-4.2.1.0 · Ouroboros.Consensus.Util.MonadSTM.StrictSVar