packages feed

lifted-base 0.2.3.0 → 0.2.3.1

raw patch · 2 files changed

+11/−13 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Control.Concurrent.SampleVar.Lifted: data SampleVar a :: * -> *
- Control.Concurrent.SampleVar.Lifted: emptySampleVar :: MonadBase IO m => SampleVar a -> m ()
- Control.Concurrent.SampleVar.Lifted: isEmptySampleVar :: MonadBase IO m => SampleVar a -> m Bool
- Control.Concurrent.SampleVar.Lifted: newEmptySampleVar :: MonadBase IO m => m (SampleVar a)
- Control.Concurrent.SampleVar.Lifted: newSampleVar :: MonadBase IO m => a -> m (SampleVar a)
- Control.Concurrent.SampleVar.Lifted: readSampleVar :: MonadBase IO m => SampleVar a -> m a
- Control.Concurrent.SampleVar.Lifted: writeSampleVar :: MonadBase IO m => SampleVar a -> a -> m ()
+ Control.Concurrent.MVar.Lifted: tryReadMVar :: MonadBase IO m => MVar a -> m (Maybe a)
+ Control.Concurrent.MVar.Lifted: withMVarMasked :: MonadBaseControl IO m => MVar a -> (a -> m b) -> m b

Files

Control/Exception/Lifted.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE CPP            , NoImplicitPrelude            , ExistentialQuantification-           , FlexibleContexts-           , ImpredicativeTypes #-}+           , FlexibleContexts #-}  #if MIN_VERSION_base(4,3,0) {-# LANGUAGE RankNTypes #-} -- for mask@@ -125,7 +124,7 @@                                    , liftBaseWith, restoreM                                    , control, liftBaseOp_                                    )-#if MIN_VERSION_base(4,3,0) || defined (__HADDOCK__)+#if defined (__HADDOCK__) import Control.Monad.Trans.Control ( liftBaseOp ) #endif @@ -265,23 +264,22 @@ #if MIN_VERSION_base(4,3,0) -- |Generalized version of 'E.mask'. mask :: MonadBaseControl IO m => ((forall a. m a -> m a) -> m b) -> m b-mask = liftBaseOp E.mask . liftRestore+mask f = control $ \runInBase ->+           E.mask $ \g -> runInBase $ f $ liftBaseOp_ g {-# INLINABLE mask #-} -liftRestore :: MonadBaseControl IO m-            => ((forall a.  m a ->  m a) -> b)-            -> ((forall a. IO a -> IO a) -> b)-liftRestore f r = f $ liftBaseOp_ r-{-# INLINE liftRestore #-}- -- |Generalized version of 'E.mask_'. mask_ :: MonadBaseControl IO m => m a -> m a mask_ = liftBaseOp_ E.mask_ {-# INLINABLE mask_ #-}  -- |Generalized version of 'E.uninterruptibleMask'.-uninterruptibleMask :: MonadBaseControl IO m => ((forall a. m a -> m a) -> m b) -> m b-uninterruptibleMask = liftBaseOp E.uninterruptibleMask . liftRestore+uninterruptibleMask+    :: MonadBaseControl IO m => ((forall a. m a -> m a) -> m b) -> m b+uninterruptibleMask f =+    control $ \runInBase ->+        E.uninterruptibleMask $ \g -> runInBase $ f $ liftBaseOp_ g+ {-# INLINABLE uninterruptibleMask #-}  -- |Generalized version of 'E.uninterruptibleMask_'.
lifted-base.cabal view
@@ -1,5 +1,5 @@ Name:                lifted-base-Version:             0.2.3.0+Version:             0.2.3.1 Synopsis:            lifted IO operations from the base library License:             BSD3 License-file:        LICENSE