on master help sign in
Add MonadMask generalBraket
commit34fe7d61b3f387b81aa748294ac8d993243f53b4 authorHamish Mackenzie <Hamish.K.Mackenzie@googlemail.com> dateWed 1 Aug 2018, 16:05 (8 years ago) parenta2714e5
1 file changed+7
jsaddle/src/Language/Javascript/JSaddle/Types.hs+7
jsaddle/src/Language/Javascript/JSaddle/Types.hs+7
@@ -178,6 +178,13 @@ instance MonadMask JSM where
178178 JSM $ uninterruptibleMask $ \unmask -> unJSM (a $ q unmask)
179179 where q :: (ReaderT JSContextRef IO a -> ReaderT JSContextRef IO a) -> JSM a -> JSM a
180180 q unmask (JSM b) = syncAfter . JSM $ unmask b
181+#if MIN_VERSION_exceptions(0,9,0)
182+ generalBracket acquire release use =
183+ JSM $ generalBracket
184+ (unJSM acquire)
185+ (\resource exitCase -> unJSM $ release resource exitCase)
186+ (unJSM . syncAfter . use)
187+#endif
181188
182189#endif
183190