git.iko.soy/distributed-process
on master help sign in
Merge pull request #155 from tweag/expose-mask_

Expose lifted version of Control.Exception.mask_

commit8d790cd129227640f79f8e3f46062c5096bbbe18 authorTim Watson <watson.timothy@gmail.com> dateWed 13 Aug 2014, 08:53 (12 years ago) parent7b5738b93b0ce6
2 files changed+10−1
src/Control/Distributed/Process.hs+2 src/Control/Distributed/Process/Internal/Primitives.hs+8−1
src/Control/Distributed/Process.hs+2
@@ -134,6 +134,7 @@ module Control.Distributed.Process
134134 , catches
135135 , try
136136 , mask
137+ , mask_
137138 , onException
138139 , bracket
139140 , bracket_
@@ -278,6 +279,7 @@ import Control.Distributed.Process.Internal.Primitives
278279 , catches
279280 , try
280281 , mask
282+ , mask_
281283 , onException
282284 , bracket
283285 , bracket_
src/Control/Distributed/Process/Internal/Primitives.hs+8−1
@@ -94,6 +94,7 @@ module Control.Distributed.Process.Internal.Primitives
9494 , catches
9595 , try
9696 , mask
97+ , mask_
9798 , onException
9899 , bracket
99100 , bracket_
@@ -129,7 +130,7 @@ import Control.Monad.Reader (ask)
129130import Control.Monad.IO.Class (MonadIO, liftIO)
130131import Control.Applicative ((<$>))
131132import Control.Exception (Exception(..), throw, throwIO, SomeException)
132−import qualified Control.Exception as Ex (catch, mask, try)
133+import qualified Control.Exception as Ex (catch, mask, mask_, try)
133134import Control.Distributed.Process.Internal.StrictMVar
134135 ( StrictMVar
135136 , modifyMVar
@@ -903,6 +904,12 @@ mask p = do
903904 ourLocalProc <- ask
904905 liftIO $ restoreIO $ runLocalProcess ourLocalProc p2
905906
907+-- | Lift 'Control.Exception.mask_'
908+mask_ :: Process a -> Process a
909+mask_ p = do
910+ lproc <- ask
911+ liftIO $ Ex.mask_ $ runLocalProcess lproc p
912+
906913-- | Lift 'Control.Exception.onException'
907914onException :: Process a -> Process b -> Process a
908915onException p what = p `catch` \e -> do _ <- what