Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.Primitive.Unlifted.MVar
Description
This module includes all the features of Control.Concurrent.MVar, except
that the functions in Data.Primitive.Unlifted.Weak subsume the functionality
of mkWeakMV
and addMVarFinalizer
, so we do not include analogues of those
functions.
Documentation
data UnliftedMVar_ s a unlifted_a #
Constructors
UnliftedMVar (UnliftedMVar# s unlifted_a) |
Instances
unlifted_a ~ Unlifted a => Eq (UnliftedMVar_ s a unlifted_a) # | |
Defined in Data.Primitive.Unlifted.MVar.ST Methods (==) :: UnliftedMVar_ s a unlifted_a -> UnliftedMVar_ s a unlifted_a -> Bool (/=) :: UnliftedMVar_ s a unlifted_a -> UnliftedMVar_ s a unlifted_a -> Bool | |
unlifted_a ~ Unlifted a => PrimUnlifted (UnliftedMVar_ s a unlifted_a) # | |
Defined in Data.Primitive.Unlifted.MVar.ST Associated Types type Unlifted (UnliftedMVar_ s a unlifted_a) :: UnliftedType # Methods toUnlifted# :: UnliftedMVar_ s a unlifted_a -> Unlifted (UnliftedMVar_ s a unlifted_a) # fromUnlifted# :: Unlifted (UnliftedMVar_ s a unlifted_a) -> UnliftedMVar_ s a unlifted_a # | |
type Unlifted (UnliftedMVar_ s a unlifted_a) # | |
Defined in Data.Primitive.Unlifted.MVar.ST |
type UnliftedMVar s a = UnliftedMVar_ s a (Unlifted a) #
newUnliftedMVar :: (PrimUnlifted a, PrimMonad m) => a -> m (UnliftedMVar (PrimState m) a) #
newEmptyUnliftedMVar :: PrimMonad m => m (UnliftedMVar (PrimState m) a) #
takeUnliftedMVar :: (PrimMonad m, PrimUnlifted a) => UnliftedMVar (PrimState m) a -> m a #
tryTakeUnliftedMVar :: (PrimMonad m, PrimUnlifted a) => UnliftedMVar (PrimState m) a -> m (Maybe a) #
putUnliftedMVar :: (PrimMonad m, PrimUnlifted a) => UnliftedMVar (PrimState m) a -> a -> m () #
tryPutUnliftedMVar :: (PrimMonad m, PrimUnlifted a) => UnliftedMVar (PrimState m) a -> a -> m Bool #
readUnliftedMVar :: (PrimMonad m, PrimUnlifted a) => UnliftedMVar (PrimState m) a -> m a #
tryReadUnliftedMVar :: (PrimMonad m, PrimUnlifted a) => UnliftedMVar (PrimState m) a -> m (Maybe a) #
isEmptyUnliftedMVar :: PrimMonad m => UnliftedMVar (PrimState m) a -> m Bool #
swapUnliftedMVar :: (PrimMonad m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> a -> m a #
withUnliftedMVar :: (PrimBase m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> (a -> m b) -> m b #
withUnliftedMVarMasked :: (PrimBase m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> (a -> m b) -> m b #
modifyUnliftedMVar :: (PrimBase m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> (a -> m (a, b)) -> m b #
modifyUnliftedMVar_ :: (PrimBase m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> (a -> m a) -> m () #
modifyUnliftedMVarMasked :: (PrimBase m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> (a -> m (a, b)) -> m b #
modifyUnliftedMVarMasked_ :: (PrimBase m, PrimState m ~ RealWorld, PrimUnlifted a) => UnliftedMVar RealWorld a -> (a -> m a) -> m () #