@@ -16,7 +16,7 @@ module Main where
16import GHC.Generics
16import GHC.Generics
17import Data.Profunctor
17import Data.Profunctor
18import Data.Generics.Product
18import Data.Generics.Product
19−import Data.Generics.Internal.Lens (prismPRavel)
19+import Data.Generics.Internal.Lens (prismPRavel, plus)
20import Data.Generics.Sum
20import Data.Generics.Sum
21import Test.Inspection
21import Test.Inspection
22import Test.HUnit
22import Test.HUnit
@@ -57,10 +57,6 @@ prismP :: (b -> t) -> (s -> Either t a) -> PrismP s t a b
57prismP bt seta eta = dimap seta (either id bt) (right' eta)
57prismP bt seta eta = dimap seta (either id bt) (right' eta)
58{-# INLINE prismP #-}
58{-# INLINE prismP #-}
60−plus :: (a -> b) -> (c -> d) -> Either a c -> Either b d
61−plus f g (Left x) = Left (f x)
62−plus f g (Right y) = Right (g y)
64data Record4 a = MkRecord4
60data Record4 a = MkRecord4
65 { fieldA :: a
61 { fieldA :: a
66 , fieldB :: a
62 , fieldB :: a
@@ -92,10 +88,6 @@ intTraversalManual f (MkRecord5 a b c d e f') =
92intTraversalDerived :: Traversal' Record5 Int
88intTraversalDerived :: Traversal' Record5 Int
93intTraversalDerived = types
89intTraversalDerived = types
96−intTraversalDerived3 :: Traversal' (Record4 Int) Int
97−intTraversalDerived3 = genericTraverse
99fieldALensManual :: Lens' Record Int
91fieldALensManual :: Lens' Record Int
100fieldALensManual f (MkRecord a b) = (\a' -> MkRecord a' b) <$> f a
92fieldALensManual f (MkRecord a b) = (\a' -> MkRecord a' b) <$> f a