hls-graph-2.4.0.0: Haskell Language Server internal graph API

Safe Haskell | Safe-Inferred
Language | Haskell2010

Control.Concurrent.STM.Stats

# Documentation

atomicallyNamed :: String -> STM a -> IO a #

atomically :: STM a -> IO a #

getSTMStats :: IO (Map String (Int, Int)) #

dumpSTMStats :: IO () #

data STM a #

#### Instances

Instances details

Alternative STM |
Instance details Defined in GHC.Conc.Sync Methods empty :: STM a (<|>) :: STM a -> STM a -> STM a some :: STM a -> STM [a] many :: STM a -> STM [a]
Applicative STM |
Instance details Defined in GHC.Conc.Sync Methods pure :: a -> STM a # (<*>) :: STM (a -> b) -> STM a -> STM b liftA2 :: (a -> b -> c) -> STM a -> STM b -> STM c (*>) :: STM a -> STM b -> STM b (<*) :: STM a -> STM b -> STM a
Functor STM |
Instance details Defined in GHC.Conc.Sync Methods fmap :: (a -> b) -> STM a -> STM b # (<$) :: a -> STM b -> STM a #
Monad STM |
Instance details Defined in GHC.Conc.Sync Methods (>>=) :: STM a -> (a -> STM b) -> STM b (>>) :: STM a -> STM b -> STM b return :: a -> STM a #
MonadPlus STM |
Instance details Defined in GHC.Conc.Sync Methods mzero :: STM a mplus :: STM a -> STM a -> STM a
MonadCatch STM |
Instance details Defined in Control.Monad.Catch Methods catch :: (HasCallStack, Exception e) => STM a -> (e -> STM a) -> STM a
MonadThrow STM |
Instance details Defined in Control.Monad.Catch Methods throwM :: (HasCallStack, Exception e) => e -> STM a
MonadBaseControl STM STM |
Instance details Defined in Control.Monad.Trans.Control Associated Types type StM STM a # Methods liftBaseWith :: (RunInBase STM STM -> STM a) -> STM a # restoreM :: StM STM a -> STM a #
MArray TArray e STM |

Instance details

Defined in Control.Concurrent.STM.TArray

Methods

getBounds :: Ix i => TArray i e -> STM (i, i)

getNumElements :: Ix i => TArray i e -> STM Int

newArray :: Ix i => (i, i) -> e -> STM (TArray i e)

newArray_ :: Ix i => (i, i) -> STM (TArray i e)

unsafeNewArray_ :: Ix i => (i, i) -> STM (TArray i e)

unsafeRead :: Ix i => TArray i e -> Int -> STM e

unsafeWrite :: Ix i => TArray i e -> Int -> e -> STM ()

Monoid a => Monoid (STM a) |
Instance details Defined in GHC.Conc.Sync Methods mempty :: STM a mappend :: STM a -> STM a -> STM a mconcat :: [STM a] -> STM a
Semigroup a => Semigroup (STM a) |
Instance details Defined in GHC.Conc.Sync Methods (<>) :: STM a -> STM a -> STM a sconcat :: NonEmpty (STM a) -> STM a stimes :: Integral b => b -> STM a -> STM a
RandomGen g => FrozenGen (TGen g) STM | Since: random-1.2.1
Instance details Defined in System.Random.Stateful Associated Types type MutableGen (TGen g) STM = (g :: Type) # Methods freezeGen :: MutableGen (TGen g) STM -> STM (TGen g) # thawGen :: TGen g -> STM (MutableGen (TGen g) STM) #
RandomGen g => StatefulGen (TGenM g) STM | Since: random-1.2.1
Instance details Defined in System.Random.Stateful Methods uniformWord32R :: Word32 -> TGenM g -> STM Word32 # uniformWord64R :: Word64 -> TGenM g -> STM Word64 # uniformWord8 :: TGenM g -> STM Word8 # uniformWord16 :: TGenM g -> STM Word16 # uniformWord32 :: TGenM g -> STM Word32 # uniformWord64 :: TGenM g -> STM Word64 # uniformShortByteString :: Int -> TGenM g -> STM ShortByteString #
RandomGen r => RandomGenM (TGenM r) r STM |
Instance details Defined in System.Random.Stateful Methods applyRandomGenM :: (r -> (a, r)) -> TGenM r -> STM a #
type StM STM a |
Instance details Defined in Control.Monad.Trans.Control type StM STM a = a
type MutableGen (TGen g) STM |
Instance details Defined in System.Random.Stateful type MutableGen (TGen g) STM = TGenM g

data TVar a #

#### Instances

Instances details

Eq (TVar a) |
Instance details Defined in GHC.Conc.Sync Methods (==) :: TVar a -> TVar a -> Bool # (/=) :: TVar a -> TVar a -> Bool #
PrimUnlifted (TVar a) |
Instance details Defined in Data.Primitive.Unlifted.Class Associated Types type Unlifted (TVar a) :: UnliftedType # Methods toUnlifted# :: TVar a -> Unlifted (TVar a) # fromUnlifted# :: Unlifted (TVar a) -> TVar a #
type Unlifted (TVar a) |
Instance details Defined in Data.Primitive.Unlifted.Class type Unlifted (TVar a) = TVar# RealWorld a

data TArray i e #

#### Instances

Instances details

MArray TArray e STM |

Instance details

Defined in Control.Concurrent.STM.TArray

Methods

getBounds :: Ix i => TArray i e -> STM (i, i)

getNumElements :: Ix i => TArray i e -> STM Int

newArray :: Ix i => (i, i) -> e -> STM (TArray i e)

newArray_ :: Ix i => (i, i) -> STM (TArray i e)

unsafeNewArray_ :: Ix i => (i, i) -> STM (TArray i e)

unsafeRead :: Ix i => TArray i e -> Int -> STM e

unsafeWrite :: Ix i => TArray i e -> Int -> e -> STM ()

Ix i => Eq (TArray i e) |
Instance details Defined in Control.Concurrent.STM.TArray Methods (==) :: TArray i e -> TArray i e -> Bool # (/=) :: TArray i e -> TArray i e -> Bool #

data TBQueue a #

#### Instances

Instances details

Eq (TBQueue a) |
Instance details Defined in Control.Concurrent.STM.TBQueue Methods (==) :: TBQueue a -> TBQueue a -> Bool # (/=) :: TBQueue a -> TBQueue a -> Bool #

data TChan a #

#### Instances

Instances details

Eq (TChan a) |
Instance details Defined in Control.Concurrent.STM.TChan Methods (==) :: TChan a -> TChan a -> Bool # (/=) :: TChan a -> TChan a -> Bool #

data TMVar a #

#### Instances

Instances details

Eq (TMVar a) |
Instance details Defined in Control.Concurrent.STM.TMVar Methods (==) :: TMVar a -> TMVar a -> Bool # (/=) :: TMVar a -> TMVar a -> Bool #

data TQueue a #

#### Instances

Instances details

Eq (TQueue a) |
Instance details Defined in Control.Concurrent.STM.TQueue Methods (==) :: TQueue a -> TQueue a -> Bool # (/=) :: TQueue a -> TQueue a -> Bool #

registerDelay :: Int -> IO (TVar Bool) #

catchSTM :: Exception e => STM a -> (e -> STM a) -> STM a #

newTVar :: a -> STM (TVar a) #

newTVarIO :: a -> IO (TVar a) #

orElse :: STM a -> STM a -> STM a #

readTVar :: TVar a -> STM a #

readTVarIO :: TVar a -> IO a #

retry :: STM a #

throwSTM :: Exception e => e -> STM a #

writeTVar :: TVar a -> a -> STM () #

modifyTVar' :: TVar a -> (a -> a) -> STM () #

flushTBQueue :: TBQueue a -> STM [a] #

isEmptyTBQueue :: TBQueue a -> STM Bool #

isFullTBQueue :: TBQueue a -> STM Bool #

lengthTBQueue :: TBQueue a -> STM Natural #

newTBQueue :: Natural -> STM (TBQueue a) #

peekTBQueue :: TBQueue a -> STM a #

readTBQueue :: TBQueue a -> STM a #

tryPeekTBQueue :: TBQueue a -> STM (Maybe a) #

tryReadTBQueue :: TBQueue a -> STM (Maybe a) #

unGetTBQueue :: TBQueue a -> a -> STM () #

writeTBQueue :: TBQueue a -> a -> STM () #

cloneTChan :: TChan a -> STM (TChan a) #

dupTChan :: TChan a -> STM (TChan a) #

isEmptyTChan :: TChan a -> STM Bool #

newBroadcastTChan :: STM (TChan a) #

newTChan :: STM (TChan a) #

peekTChan :: TChan a -> STM a #

readTChan :: TChan a -> STM a #

tryPeekTChan :: TChan a -> STM (Maybe a) #

tryReadTChan :: TChan a -> STM (Maybe a) #

unGetTChan :: TChan a -> a -> STM () #

writeTChan :: TChan a -> a -> STM () #

isEmptyTMVar :: TMVar a -> STM Bool #

newEmptyTMVar :: STM (TMVar a) #

newTMVar :: a -> STM (TMVar a) #

putTMVar :: TMVar a -> a -> STM () #

readTMVar :: TMVar a -> STM a #

swapTMVar :: TMVar a -> a -> STM a #

takeTMVar :: TMVar a -> STM a #

tryPutTMVar :: TMVar a -> a -> STM Bool #

tryReadTMVar :: TMVar a -> STM (Maybe a) #

tryTakeTMVar :: TMVar a -> STM (Maybe a) #

writeTMVar :: TMVar a -> a -> STM () #

isEmptyTQueue :: TQueue a -> STM Bool #

newTQueue :: STM (TQueue a) #

peekTQueue :: TQueue a -> STM a #

readTQueue :: TQueue a -> STM a #

tryPeekTQueue :: TQueue a -> STM (Maybe a) #

tryReadTQueue :: TQueue a -> STM (Maybe a) #

unGetTQueue :: TQueue a -> a -> STM () #

writeTQueue :: TQueue a -> a -> STM () #

modifyTVar :: TVar a -> (a -> a) -> STM () #

stateTVar :: TVar s -> (s -> (a, s)) -> STM a #

swapTVar :: TVar a -> a -> STM a #

mkWeakTVar :: TVar a -> IO () -> IO (Weak (TVar a)) #

newTMVarIO :: a -> IO (TMVar a) #

newEmptyTMVarIO :: IO (TMVar a) #

mkWeakTMVar :: TMVar a -> IO () -> IO (Weak (TMVar a)) #

newTChanIO :: IO (TChan a) #

newBroadcastTChanIO :: IO (TChan a) #

newTQueueIO :: IO (TQueue a) #

newTBQueueIO :: Natural -> IO (TBQueue a) #

check :: Bool -> STM () #

flushTQueue :: TQueue a -> STM [a] #