packages feed

microlens-pro 0.2.0.2 → 0.2.0.3

raw patch · 3 files changed

+11/−7 lines, 3 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Lens.Micro.Pro: allOf :: Getting All s a -> (a -> Bool) -> s -> Bool
+ Lens.Micro.Pro: anyOf :: Getting Any s a -> (a -> Bool) -> s -> Bool
+ Lens.Micro.Pro: class AsEmpty a
+ Lens.Micro.Pro: cosmosOf :: Traversal a t a t -> Traversal a t a b'
+ Lens.Micro.Pro: foldMapOf :: Getting r s a -> (a -> r) -> s -> r
+ Lens.Micro.Pro: mapMOf :: LensLike (WrappedMonad m) s t a b -> (a -> m b) -> s -> m t
+ Lens.Micro.Pro: noneOf :: Getting Any s a -> (a -> Bool) -> s -> Bool
+ Lens.Micro.Pro: rewriteMOf :: Monad m => LensLike (WrappedMonad m) a b a b -> (b -> m (Maybe a)) -> a -> m b
+ Lens.Micro.Pro: transformMOf :: Monad m => LensLike (WrappedMonad m) a b a b -> (b -> m b) -> a -> m b
+ Lens.Micro.Pro: type family Zoomed (m :: Type -> Type) :: Type -> Type -> Type
- Lens.Micro.Pro: _Empty :: AsEmpty a => Prism' a ()
+ Lens.Micro.Pro: _Empty :: (AsEmpty a, Monoid a, Eq a) => Prism' a ()

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+# 0.2.0.3++* [#186](https://github.com/stevenfontanella/microlens/issues/186) Export [`AsEmpty`](https://hackage.haskell.org/package/microlens-pro/docs/Lens-Micro-Pro.html#t:AsEmpty) typeclass.+ # 0.2.0.2  * [#182](https://github.com/stevenfontanella/microlens/pull/182) Support GHC 9.12.
microlens-pro.cabal view
@@ -1,5 +1,5 @@ name:                   microlens-pro-version:                0.2.0.2+version:                0.2.0.3 synopsis:               Prisms and isomorphisms for microlens description:   This package provides lens-compatible 'Prism' and 'Iso'. Consequently, it
src/Lens/Micro/Pro.hs view
@@ -53,7 +53,7 @@     -- ** Common Prisms     , _Left, _Right     , _Just, _Nothing-    , _Empty+    , AsEmpty (..)     -- ** Miscellaneous     , APrism, APrism'     , clonePrism@@ -158,9 +158,9 @@  The isomorphisms defined in this module are true lens-compatible isos. Many of them share names with the lens-__incompatible__ definitions from-[Lens.Micro](https://hackage.haskell.org/package/microlens-0.4.13.1/docs/Lens-Micro.html#g:5)+[Lens.Micro](https://hackage.haskell.org/package/microlens/docs/Lens-Micro.html#g:5) and-[Lens.Micro.Platform](https://hackage.haskell.org/package/microlens-platform-0.4.3.4/docs/Lens-Micro-Platform.html).+[Lens.Micro.Platform](https://hackage.haskell.org/package/microlens-platform/docs/Lens-Micro-Platform.html). For convenience, we re-export Lens.Micro.Platform, but with non-lens-compatible isos hidden and replaced with lens-compatbile ones. @@ -626,12 +626,12 @@ type AReview t b = Tagged b (Identity b) -> Tagged t (Identity t)  {- |-[@Review@](https://hackage.haskell.org/package/lens-5.2.3/docs/Control-Lens-Type.html#t:Review),+[@Review@](https://hackage.haskell.org/package/lens/docs/Control-Lens-Type.html#t:Review), from lens, is limited form of 'Prism' that can only be used for 're' operations.  Similarly to 'SimpleGetter' from microlens, microlens-pro does not define 'Review' and opts for a less general 'SimpleReview' in order to avoid a-[distributive](https://hackage.haskell.org/package/distributive-0.6.2.1)+[distributive](https://hackage.haskell.org/package/distributive) dependency. -} @@ -704,7 +704,7 @@  Pardon the actual type signature — microlens defines neither @Optic@ (used in lens'-[@unto@](https://hackage.haskell.org/package/lens-5.2.3/docs/Control-Lens-Combinators.html#v:unto)) nor @Review'@. Here we simply expand the definition of @Optic@.+[@unto@](https://hackage.haskell.org/package/lens/docs/Control-Lens-Combinators.html#v:unto)) nor @Review'@. Here we simply expand the definition of @Optic@. -} unto :: (Profunctor p, Bifunctor p, Functor f)      => (b -> t)