monad-var-0.2.2.0: Generic operations over variables
Safe HaskellSafe-Inferred
LanguageHaskell2010

MonadVar.Instances.MVar

Orphan instances

MonadIO m => MonadMutate m MVar Source # 
Instance details

Methods

mutate :: MVar a -> (a -> (a, b)) -> m b Source #

MonadIO m => MonadMutate_ m MVar Source # 
Instance details

Methods

mutate_ :: MVar a -> (a -> a) -> m () Source #

MonadIO m => MonadSwap m MVar Source # 
Instance details

Methods

swap :: MVar a -> a -> m a Source #

MonadIO m => MonadWrite m MVar Source # 
Instance details

Methods

write :: MVar a -> a -> m () Source #

MonadIO m => MonadRead m MVar Source # 
Instance details

Methods

read :: MVar a -> m a Source #

MonadIO m => MonadLock m MVar Source # 
Instance details

Methods

hold :: MVar a -> m a Source #

fill :: MVar a -> a -> m () Source #

tryHold :: MVar a -> m (Maybe a) Source #

tryFill :: MVar a -> a -> m Bool Source #

tryRead :: MVar a -> m (Maybe a) Source #

newEmpty :: m (MVar a) Source #

isEmpty :: MVar a -> m Bool Source #

MonadIO m => MonadNew m MVar Source # 
Instance details

Methods

new :: a -> m (MVar a) Source #

IO ~ io => MonadMutateM io IO MVar Source # 
Instance details

Methods

mutateM :: MVar a -> (a -> io (a, b)) -> IO b Source #

IO ~ io => MonadMutateM_ io IO MVar Source # 
Instance details

Methods

mutateM_ :: MVar a -> (a -> io a) -> IO () Source #