on master help sign in
Do not use unexported type MonadRunInIO
commit90a88bc44d6dce75976fce065c2e7db7585c1bf8 authorHarendra Kumar <harendra@composewell.com> dateWed 7 Dec 2022, 17:51 (4 years ago) parent630fa8b
1 file changed+12−4
src/Streamly/Internal/Data/Stream/Exception/Lifted.hs+12−4
src/Streamly/Internal/Data/Stream/Exception/Lifted.hs+12−4
@@ -25,6 +25,8 @@ where
2525
2626import Control.Exception (Exception, SomeException, mask_)
2727import Control.Monad.Catch (MonadCatch)
28+import Control.Monad.IO.Class (MonadIO)
29+import Control.Monad.Trans.Control (MonadBaseControl)
2830import Data.Map.Strict (Map)
2931import GHC.Exts (inline)
3032import Streamly.Internal.Control.Concurrent
@@ -140,7 +142,7 @@ bracket3D bef aft onExc onGC =
140142--
141143-- /Pre-release/
142144{-# INLINE bracket3 #-}
143−bracket3 :: (MonadRunInIO m, MonadCatch m)
145+bracket3 :: (MonadAsync m, MonadCatch m)
144146 => m b
145147 -> (b -> m c)
146148 -> (b -> m d)
@@ -172,7 +174,7 @@ bracket3 bef aft gc exc bet = fromStreamD $
172174-- /Inhibits stream fusion/
173175--
174176{-# INLINE bracket #-}
175−bracket :: (MonadRunInIO m, MonadCatch m)
177+bracket :: (MonadAsync m, MonadCatch m)
176178 => m b -> (b -> m c) -> (b -> Stream m a) -> Stream m a
177179bracket bef aft = bracket3 bef aft aft aft
178180
@@ -190,7 +192,7 @@ bracket bef aft = bracket3 bef aft aft aft
190192-- /Inhibits stream fusion/
191193--
192194{-# INLINE finally #-}
193−finally :: (MonadRunInIO m, MonadCatch m) =>
195+finally :: (MonadAsync m, MonadCatch m) =>
194196 m b -> Stream m a -> Stream m a
195197finally action xs = bracket (return ()) (const action) (const xs)
196198
@@ -223,7 +225,13 @@ afterD action (D.Stream step state) = D.Stream step' Nothing
223225-- /See also 'after_'/
224226--
225227{-# INLINE after #-}
226−after :: MonadRunInIO m => m b -> Stream m a -> Stream m a
228+after ::
229+#ifdef USE_UNLIFTIO
230+ MonadUnliftIO m
231+#else
232+ (MonadIO m, MonadBaseControl IO m)
233+#endif
234+ => m b -> Stream m a -> Stream m a
227235after action xs = fromStreamD $ afterD action $ toStreamD xs
228236
229237data RetryState emap s1 s2