fclabels 2.0.3.3 → 2.0.4
raw patch · 3 files changed
+19/−32 lines, 3 filesdep +base-orphansPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: base-orphans
API changes (from Hackage documentation)
- Data.Label.Point: instance GHC.Base.Alternative f => GHC.Base.Alternative (Control.Arrow.Kleisli f i)
- Data.Label.Point: instance GHC.Base.Applicative f => GHC.Base.Applicative (Control.Arrow.Kleisli f i)
- Data.Label.Point: instance GHC.Base.Functor f => GHC.Base.Functor (Control.Arrow.Kleisli f i)
+ Data.Label: infix 8 `Iso`
+ Data.Label.Point: infix 8 `Iso`
- Data.Label: modify :: f :-> a -> (a -> a) -> f -> f
+ Data.Label: modify :: (f :-> a) -> (a -> a) -> f -> f
- Data.Label.Monadic: asks :: MonadReader f m => (Lens (->) f o) -> m o
+ Data.Label.Monadic: asks :: MonadReader f m => Lens (->) f o -> m o
- Data.Label.Monadic: local :: MonadReader f m => (Lens (->) f o) -> (o -> o) -> m a -> m a
+ Data.Label.Monadic: local :: MonadReader f m => Lens (->) f o -> (o -> o) -> m a -> m a
- Data.Label.Monadic: modifyAndGet :: MonadState f m => (Lens (->) f o) -> (o -> (a, o)) -> m a
+ Data.Label.Monadic: modifyAndGet :: MonadState f m => Lens (->) f o -> (o -> (a, o)) -> m a
- Data.Label.Mono: lens :: cat f o -> (cat (cat o o, f) f) -> Lens cat f o
+ Data.Label.Mono: lens :: cat f o -> cat (cat o o, f) f -> Lens cat f o
- Data.Label.Partial: get :: (f -> g) :~> (o -> i) -> f -> Maybe o
+ Data.Label.Partial: get :: ((f -> g) :~> (o -> i)) -> f -> Maybe o
- Data.Label.Partial: modify :: (f -> g) :~> (o -> i) -> (o -> i) -> f -> Maybe g
+ Data.Label.Partial: modify :: ((f -> g) :~> (o -> i)) -> (o -> i) -> f -> Maybe g
- Data.Label.Partial: modify' :: (f -> f) :~> (o -> o) -> (o -> o) -> f -> f
+ Data.Label.Partial: modify' :: ((f -> f) :~> (o -> o)) -> (o -> o) -> f -> f
- Data.Label.Partial: set :: (f -> g) :~> (o -> i) -> i -> f -> Maybe g
+ Data.Label.Partial: set :: ((f -> g) :~> (o -> i)) -> i -> f -> Maybe g
- Data.Label.Partial: set' :: (f -> f) :~> (o -> o) -> o -> f -> f
+ Data.Label.Partial: set' :: ((f -> f) :~> (o -> o)) -> o -> f -> f
- Data.Label.Partial: update :: (f -> b) :~> (o -> i) -> (o -> Maybe i) -> f -> Maybe b
+ Data.Label.Partial: update :: ((f -> b) :~> (o -> i)) -> (o -> Maybe i) -> f -> Maybe b
- Data.Label.Point: Point :: (cat f o) -> (cat (cat o i, f) g) -> Point cat g i f o
+ Data.Label.Point: Point :: cat f o -> cat (cat o i, f) g -> Point cat g i f o
- Data.Label.Total: lifted :: Monad m => (f -> g) :-> (m o -> m i) -> (o -> i) :-> (m a -> m b) -> (f -> g) :-> (m a -> m b)
+ Data.Label.Total: lifted :: Monad m => ((f -> g) :-> (m o -> m i)) -> ((o -> i) :-> (m a -> m b)) -> (f -> g) :-> (m a -> m b)
- Data.Label.Total: modify :: (f -> g) :-> (o -> i) -> (o -> i) -> f -> g
+ Data.Label.Total: modify :: ((f -> g) :-> (o -> i)) -> (o -> i) -> f -> g
- Data.Label.Total: traverse :: Functor m => (f -> g) :-> (o -> i) -> (o -> m i) -> f -> m g
+ Data.Label.Total: traverse :: Functor m => ((f -> g) :-> (o -> i)) -> (o -> m i) -> f -> m g
Files
- CHANGELOG +4/−0
- fclabels.cabal +14/−11
- src/Data/Label/Point.hs +1/−21
CHANGELOG view
@@ -1,5 +1,9 @@ CHANGELOG +2.0.4+ - Import Functor, Applicative, and Monad instances for Kleisli from the+ base-orphans package for future GHC 8.10 support.+ 2.0.3.3 - Allow GHC 8.4 pre-releases.
fclabels.cabal view
@@ -1,5 +1,5 @@ Name: fclabels-Version: 2.0.3.3+Version: 2.0.4 Author: Sebastiaan Visser, Erik Hesselink, Chris Eidhof, Sjoerd Visscher with lots of help and feedback from others. Synopsis: First class accessor labels implemented as lenses.@@ -47,9 +47,11 @@ See "Data.Label.Base" and "Data.Label.Monadic" for more information. .- * /Changelog from 2.0.3.1 to 2.0.3.2/+ * /Changelog from 2.0.3.2 to 2.0.4/ .- > - Allow HUnit 1.5.*.+ > - Import Functor, Applicative, and Monad instances for+ > Kleisli from the base-orphans package for future GHC 8.10+ > support. Maintainer: Sebastiaan Visser <code@fvisser.nl> Homepage: https://github.com/sebastiaanvisser/fclabels@@ -86,10 +88,11 @@ GHC-Options: -Wall Build-Depends:- base >= 4.5 && < 4.12- , template-haskell >= 2.2 && < 2.14- , mtl >= 1.0 && < 2.3- , transformers >= 0.2 && < 0.6+ base >= 4.5 && < 4.14+ , base-orphans >= 0.8.2 && < 0.9+ , template-haskell >= 2.2 && < 2.16+ , mtl >= 1.0 && < 2.3+ , transformers >= 0.2 && < 0.6 Source-Repository head Type: git@@ -103,9 +106,9 @@ Build-Depends: base < 5 , fclabels- , template-haskell >= 2.2 && < 2.14- , mtl >= 1.0 && < 2.3- , transformers >= 0.2 && < 0.6+ , template-haskell+ , mtl+ , transformers , HUnit >= 1.2 && < 1.7 Benchmark benchmark@@ -116,4 +119,4 @@ Build-Depends: base < 5 , fclabels- , criterion < 1.3+ , criterion < 1.6
src/Data/Label/Point.hs view
@@ -2,8 +2,6 @@ basis for vertical composition using the `Applicative` type class. -} -{-# OPTIONS_GHC -fno-warn-orphans #-}- {-# LANGUAGE TypeOperators , Arrows@@ -38,6 +36,7 @@ import Control.Arrow import Control.Applicative import Control.Category+import Data.Orphans () import Prelude hiding ((.), id, const, curry, uncurry) {-# INLINE get #-}@@ -153,25 +152,6 @@ instance ArrowFail e (Failing e) where failArrow = Kleisli Left {-# INLINE failArrow #-}------------------------------------------------------------------------------------- | Missing Functor instance for Kleisli.--instance Functor f => Functor (Kleisli f i) where- fmap f (Kleisli m) = Kleisli (fmap f . m)---- | Missing Applicative instance for Kleisli.--instance Applicative f => Applicative (Kleisli f i) where- pure a = Kleisli (const (pure a))- Kleisli a <*> Kleisli b = Kleisli ((<*>) <$> a <*> b)---- | Missing Alternative instance for Kleisli.--instance Alternative f => Alternative (Kleisli f i) where- empty = Kleisli (const empty)- Kleisli a <|> Kleisli b = Kleisli ((<|>) <$> a <*> b) ------------------------------------------------------------------------------- -- Common operations experessed in a generalized form.