extensible-effects 1.11.0.4 → 1.11.1.0
raw patch · 3 files changed
+11/−1 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Control.Eff.Operational.Example: Print :: String -> Jail ()
- Control.Eff.Operational.Example: Scan :: Jail String
- Data.OpenUnion: instance forall (k :: BOX) (set :: k -> * -> *) (t :: * -> *) r. Data.OpenUnion.Imports.MemberU set t r => Data.OpenUnion.SetMember set t r
+ Control.Eff.Exception: liftMaybeM :: (Typeable m, Member Fail r, SetMember Lift (Lift m) r) => m (Maybe a) -> Eff r a
+ Control.Eff.Operational.Example: [Print] :: String -> Jail ()
+ Control.Eff.Operational.Example: [Scan] :: Jail String
+ Data.OpenUnion: instance forall k (set :: k -> GHC.Types.* -> GHC.Types.*) (t :: GHC.Types.* -> GHC.Types.*) r. Data.OpenUnion.Imports.MemberU set t r => Data.OpenUnion.SetMember set t r
- Control.Eff.Choose: runChoice :: Eff (Choose :> r) a -> Eff r [a]
+ Control.Eff.Choose: runChoice :: forall a r. Eff (Choose :> r) a -> Eff r [a]
- Control.Eff.Cut: call :: Member Choose r => Eff (Exc CutFalse :> r) a -> Eff r a
+ Control.Eff.Cut: call :: forall r a. Member Choose r => Eff (Exc CutFalse :> r) a -> Eff r a
Files
- README.md +2/−0
- extensible-effects.cabal +1/−1
- src/Control/Eff/Exception.hs +8/−0
README.md view
@@ -4,6 +4,8 @@ [](https://travis-ci.org/suhailshergill/extensible-effects) [](https://gitter.im/suhailshergill/extensible-effects?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)+[](http://waffle.io/suhailshergill/extensible-effects)+[](http://waffle.io/suhailshergill/extensible-effects) ## Advantages
extensible-effects.cabal view
@@ -6,7 +6,7 @@ -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change-version: 1.11.0.4+version: 1.11.1.0 -- A short (one-line) description of the package. synopsis: An Alternative to Monad Transformers
src/Control/Eff/Exception.hs view
@@ -17,6 +17,7 @@ , liftEither , liftEitherM , liftMaybe+ , liftMaybeM , ignoreFail ) where @@ -105,6 +106,13 @@ liftMaybe :: Member Fail r => Maybe a -> Eff r a liftMaybe = maybe die return {-# INLINE liftMaybe #-}++-- | `liftMaybe` in a lifted Monad+liftMaybeM :: (Typeable1 m, Member Fail r, SetMember Lift (Lift m) r)+ => m (Maybe a)+ -> Eff r a+liftMaybeM m = lift m >>= liftMaybe+{-# INLINE liftMaybeM #-} -- | Ignores a failure event. Since the event can fail, you cannot inspect its -- return type, because it has none on failure. To inspect it, use 'runFail'.