Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.Primitive.Unlifted.MVar.ST
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 => a -> ST s (UnliftedMVar s a) #
newEmptyUnliftedMVar :: ST s (UnliftedMVar s a) #
takeUnliftedMVar :: PrimUnlifted a => UnliftedMVar s a -> ST s a #
tryTakeUnliftedMVar :: PrimUnlifted a => UnliftedMVar s a -> ST s (Maybe a) #
putUnliftedMVar :: PrimUnlifted a => UnliftedMVar s a -> a -> ST s () #
tryPutUnliftedMVar :: PrimUnlifted a => UnliftedMVar s a -> a -> ST s Bool #
readUnliftedMVar :: PrimUnlifted a => UnliftedMVar s a -> ST s a #
tryReadUnliftedMVar :: PrimUnlifted a => UnliftedMVar s a -> ST s (Maybe a) #
isEmptyUnliftedMVar :: UnliftedMVar s a -> ST s Bool #
swapUnliftedMVar :: PrimUnlifted a => UnliftedMVar RealWorld a -> a -> ST RealWorld a #
withUnliftedMVar :: PrimUnlifted a => UnliftedMVar RealWorld a -> (a -> ST RealWorld b) -> ST RealWorld b #
withUnliftedMVarMasked :: PrimUnlifted a => UnliftedMVar RealWorld a -> (a -> ST RealWorld b) -> ST RealWorld b #
modifyUnliftedMVar :: forall a b. PrimUnlifted a => UnliftedMVar RealWorld a -> (a -> ST RealWorld (a, b)) -> ST RealWorld b #
modifyUnliftedMVar_ :: PrimUnlifted a => UnliftedMVar RealWorld a -> (a -> ST RealWorld a) -> ST RealWorld () #
modifyUnliftedMVarMasked :: forall a b. PrimUnlifted a => UnliftedMVar RealWorld a -> (a -> ST RealWorld (a, b)) -> ST RealWorld b #
modifyUnliftedMVarMasked_ :: PrimUnlifted a => UnliftedMVar RealWorld a -> (a -> ST RealWorld a) -> ST RealWorld () #