git.iko.soy/distributed-process
on master help sign in
Support latest exceptions package.
d36cb02Alexander Vershilov
distributed-process.cabal+1−1
@@ -54,7 +54,7 @@ Library
54 distributed-static >= 0.2 && < 0.4,
54 distributed-static >= 0.2 && < 0.4,
55 rank1dynamic >= 0.1 && < 0.5,
55 rank1dynamic >= 0.1 && < 0.5,
56 syb >= 0.3 && < 0.8,
56 syb >= 0.3 && < 0.8,
57− exceptions >= 0.5,
57+ exceptions >= 0.10,
58 containers >= 0.5 && < 0.6,
58 containers >= 0.5 && < 0.6,
59 deepseq >= 1.3.0.1 && < 1.6
59 deepseq >= 1.3.0.1 && < 1.6
60 Exposed-modules: Control.Distributed.Process,
60 Exposed-modules: Control.Distributed.Process,
src/Control/Distributed/Process/Internal/Types.hs+6
@@ -366,6 +366,12 @@ instance MonadCatch Process where
366 lproc <- ask
366 lproc <- ask
367 liftIO $ catch (runLocalProcess lproc p) (runLocalProcess lproc . h)
367 liftIO $ catch (runLocalProcess lproc p) (runLocalProcess lproc . h)
368instance MonadMask Process where
368instance MonadMask Process where
369+ generalBracket acquire release inner = do
370+ lproc <- ask
371+ liftIO $
372+ generalBracket (runLocalProcess lproc acquire)
373+ (\a e -> runLocalProcess lproc $ release a e)
374+ (runLocalProcess lproc . inner)
369 mask p = do
375 mask p = do
370 lproc <- ask
376 lproc <- ask
371 liftIO $ mask $ \restore ->
377 liftIO $ mask $ \restore ->