packages feed

generics-sop-lens 0.1.2.1 → 0.1.3

raw patch · 3 files changed

+54/−10 lines, 3 filesdep ~generics-sopPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: generics-sop

API changes (from Hackage documentation)

- Generics.SOP.Lens: instance Control.Lens.Wrapped.Wrapped (Generics.SOP.BasicFunctors.I a)
- Generics.SOP.Lens: instance forall a (f :: a -> GHC.Types.*) (a1 :: a) (b :: a) (c :: a) (d :: a) (e :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field6 (Generics.SOP.NP.NP f (a1 : b : c : d : e : x : zs)) (Generics.SOP.NP.NP f (a1 : b : c : d : e : y : zs)) (f x) (f y)
- Generics.SOP.Lens: instance forall a (f :: a -> GHC.Types.*) (a1 :: a) (b :: a) (c :: a) (d :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field5 (Generics.SOP.NP.NP f (a1 : b : c : d : x : zs)) (Generics.SOP.NP.NP f (a1 : b : c : d : y : zs)) (f x) (f y)
- Generics.SOP.Lens: instance forall a (f :: a -> GHC.Types.*) (a1 :: a) (b :: a) (c :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field4 (Generics.SOP.NP.NP f (a1 : b : c : x : zs)) (Generics.SOP.NP.NP f (a1 : b : c : y : zs)) (f x) (f y)
- Generics.SOP.Lens: instance forall a (f :: a -> GHC.Types.*) (a1 :: a) (b :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field3 (Generics.SOP.NP.NP f (a1 : b : x : zs)) (Generics.SOP.NP.NP f (a1 : b : y : zs)) (f x) (f y)
- Generics.SOP.Lens: instance forall a (f :: a -> GHC.Types.*) (a1 :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field2 (Generics.SOP.NP.NP f (a1 : x : zs)) (Generics.SOP.NP.NP f (a1 : y : zs)) (f x) (f y)
- Generics.SOP.Lens: instance forall a (f :: a -> GHC.Types.*) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field1 (Generics.SOP.NP.NP f (x : zs)) (Generics.SOP.NP.NP f (y : zs)) (f x) (f y)
- Generics.SOP.Lens: instance forall a (f' :: a -> GHC.Types.*) (a1 :: a) (b :: a) (c :: a) (d :: a) (e :: a) (f :: a) (g :: a) (h :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field9 (Generics.SOP.NP.NP f' (a1 : b : c : d : e : f : g : h : x : zs)) (Generics.SOP.NP.NP f' (a1 : b : c : d : e : f : g : h : y : zs)) (f' x) (f' y)
- Generics.SOP.Lens: instance forall a (f' :: a -> GHC.Types.*) (a1 :: a) (b :: a) (c :: a) (d :: a) (e :: a) (f :: a) (g :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field8 (Generics.SOP.NP.NP f' (a1 : b : c : d : e : f : g : x : zs)) (Generics.SOP.NP.NP f' (a1 : b : c : d : e : f : g : y : zs)) (f' x) (f' y)
- Generics.SOP.Lens: instance forall a (f' :: a -> GHC.Types.*) (a1 :: a) (b :: a) (c :: a) (d :: a) (e :: a) (f :: a) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field7 (Generics.SOP.NP.NP f' (a1 : b : c : d : e : f : x : zs)) (Generics.SOP.NP.NP f' (a1 : b : c : d : e : f : y : zs)) (f' x) (f' y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field6 (Generics.SOP.NP.POP f (a : b : c : d : e : x : zs)) (Generics.SOP.NP.POP f (a : b : c : d : e : y : zs)) (Generics.SOP.NP.NP f x) (Generics.SOP.NP.NP f y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field5 (Generics.SOP.NP.POP f (a : b : c : d : x : zs)) (Generics.SOP.NP.POP f (a : b : c : d : y : zs)) (Generics.SOP.NP.NP f x) (Generics.SOP.NP.NP f y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (c :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field4 (Generics.SOP.NP.POP f (a : b : c : x : zs)) (Generics.SOP.NP.POP f (a : b : c : y : zs)) (Generics.SOP.NP.NP f x) (Generics.SOP.NP.NP f y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field3 (Generics.SOP.NP.POP f (a : b : x : zs)) (Generics.SOP.NP.POP f (a : b : y : zs)) (Generics.SOP.NP.NP f x) (Generics.SOP.NP.NP f y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (a :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field2 (Generics.SOP.NP.POP f (a : x : zs)) (Generics.SOP.NP.POP f (a : y : zs)) (Generics.SOP.NP.NP f x) (Generics.SOP.NP.NP f y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field1 (Generics.SOP.NP.POP f (x : zs)) (Generics.SOP.NP.POP f (y : zs)) (Generics.SOP.NP.NP f x) (Generics.SOP.NP.NP f y)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (xss :: [[k]]). Control.Lens.Wrapped.Wrapped (Generics.SOP.NP.POP f xss)
- Generics.SOP.Lens: instance forall k (f :: k -> GHC.Types.*) (xss :: [[k]]). Control.Lens.Wrapped.Wrapped (Generics.SOP.NS.SOP f xss)
- Generics.SOP.Lens: instance forall k (f' :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (f :: [k]) (g :: [k]) (h :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field9 (Generics.SOP.NP.POP f' (a : b : c : d : e : f : g : h : x : zs)) (Generics.SOP.NP.POP f' (a : b : c : d : e : f : g : h : y : zs)) (Generics.SOP.NP.NP f' x) (Generics.SOP.NP.NP f' y)
- Generics.SOP.Lens: instance forall k (f' :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (f :: [k]) (g :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field8 (Generics.SOP.NP.POP f' (a : b : c : d : e : f : g : x : zs)) (Generics.SOP.NP.POP f' (a : b : c : d : e : f : g : y : zs)) (Generics.SOP.NP.NP f' x) (Generics.SOP.NP.NP f' y)
- Generics.SOP.Lens: instance forall k (f' :: k -> GHC.Types.*) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (f :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field7 (Generics.SOP.NP.POP f' (a : b : c : d : e : f : x : zs)) (Generics.SOP.NP.POP f' (a : b : c : d : e : f : y : zs)) (Generics.SOP.NP.NP f' x) (Generics.SOP.NP.NP f' y)
- Generics.SOP.Lens: instance forall k a (b :: k). Control.Lens.Wrapped.Wrapped (Generics.SOP.BasicFunctors.K a b)
- Generics.SOP.Lens: instance forall k t (f :: k -> GHC.Types.*) (xss :: [[k]]). t ~ Generics.SOP.NP.POP f xss => Control.Lens.Wrapped.Rewrapped (Generics.SOP.NP.POP f xss) t
- Generics.SOP.Lens: instance forall k t (f :: k -> GHC.Types.*) (xss :: [[k]]). t ~ Generics.SOP.NS.SOP f xss => Control.Lens.Wrapped.Rewrapped (Generics.SOP.NS.SOP f xss) t
- Generics.SOP.Lens: instance forall k t a (b :: k). t ~ Generics.SOP.BasicFunctors.K a b => Control.Lens.Wrapped.Rewrapped (Generics.SOP.BasicFunctors.K a b) t
- Generics.SOP.Lens: instance t ~ Generics.SOP.BasicFunctors.I a => Control.Lens.Wrapped.Rewrapped (Generics.SOP.BasicFunctors.I a) t
+ Generics.SOP.Lens: instance (t Data.Type.Equality.~ Data.SOP.BasicFunctors.I a) => Control.Lens.Wrapped.Rewrapped (Data.SOP.BasicFunctors.I a) t
+ Generics.SOP.Lens: instance Control.Lens.Wrapped.Wrapped (Data.SOP.BasicFunctors.I a)
+ Generics.SOP.Lens: instance forall a (f :: a -> *) (x :: a) (zs :: [a]) (y :: a). Control.Lens.Tuple.Field1 (Data.SOP.NP.NP f (x : zs)) (Data.SOP.NP.NP f (y : zs)) (f x) (f y)
+ Generics.SOP.Lens: instance forall a1 (f :: a1 -> *) (a2 :: a1) (b :: a1) (c :: a1) (d :: a1) (e :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field6 (Data.SOP.NP.NP f (a2 : b : c : d : e : x : zs)) (Data.SOP.NP.NP f (a2 : b : c : d : e : y : zs)) (f x) (f y)
+ Generics.SOP.Lens: instance forall a1 (f :: a1 -> *) (a2 :: a1) (b :: a1) (c :: a1) (d :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field5 (Data.SOP.NP.NP f (a2 : b : c : d : x : zs)) (Data.SOP.NP.NP f (a2 : b : c : d : y : zs)) (f x) (f y)
+ Generics.SOP.Lens: instance forall a1 (f :: a1 -> *) (a2 :: a1) (b :: a1) (c :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field4 (Data.SOP.NP.NP f (a2 : b : c : x : zs)) (Data.SOP.NP.NP f (a2 : b : c : y : zs)) (f x) (f y)
+ Generics.SOP.Lens: instance forall a1 (f :: a1 -> *) (a2 :: a1) (b :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field3 (Data.SOP.NP.NP f (a2 : b : x : zs)) (Data.SOP.NP.NP f (a2 : b : y : zs)) (f x) (f y)
+ Generics.SOP.Lens: instance forall a1 (f :: a1 -> *) (a2 :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field2 (Data.SOP.NP.NP f (a2 : x : zs)) (Data.SOP.NP.NP f (a2 : y : zs)) (f x) (f y)
+ Generics.SOP.Lens: instance forall a1 (f' :: a1 -> *) (a2 :: a1) (b :: a1) (c :: a1) (d :: a1) (e :: a1) (f :: a1) (g :: a1) (h :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field9 (Data.SOP.NP.NP f' (a2 : b : c : d : e : f : g : h : x : zs)) (Data.SOP.NP.NP f' (a2 : b : c : d : e : f : g : h : y : zs)) (f' x) (f' y)
+ Generics.SOP.Lens: instance forall a1 (f' :: a1 -> *) (a2 :: a1) (b :: a1) (c :: a1) (d :: a1) (e :: a1) (f :: a1) (g :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field8 (Data.SOP.NP.NP f' (a2 : b : c : d : e : f : g : x : zs)) (Data.SOP.NP.NP f' (a2 : b : c : d : e : f : g : y : zs)) (f' x) (f' y)
+ Generics.SOP.Lens: instance forall a1 (f' :: a1 -> *) (a2 :: a1) (b :: a1) (c :: a1) (d :: a1) (e :: a1) (f :: a1) (x :: a1) (zs :: [a1]) (y :: a1). Control.Lens.Tuple.Field7 (Data.SOP.NP.NP f' (a2 : b : c : d : e : f : x : zs)) (Data.SOP.NP.NP f' (a2 : b : c : d : e : f : y : zs)) (f' x) (f' y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field6 (Data.SOP.NP.POP f (a : b : c : d : e : x : zs)) (Data.SOP.NP.POP f (a : b : c : d : e : y : zs)) (Data.SOP.NP.NP f x) (Data.SOP.NP.NP f y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field5 (Data.SOP.NP.POP f (a : b : c : d : x : zs)) (Data.SOP.NP.POP f (a : b : c : d : y : zs)) (Data.SOP.NP.NP f x) (Data.SOP.NP.NP f y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (a :: [k]) (b :: [k]) (c :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field4 (Data.SOP.NP.POP f (a : b : c : x : zs)) (Data.SOP.NP.POP f (a : b : c : y : zs)) (Data.SOP.NP.NP f x) (Data.SOP.NP.NP f y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (a :: [k]) (b :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field3 (Data.SOP.NP.POP f (a : b : x : zs)) (Data.SOP.NP.POP f (a : b : y : zs)) (Data.SOP.NP.NP f x) (Data.SOP.NP.NP f y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (a :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field2 (Data.SOP.NP.POP f (a : x : zs)) (Data.SOP.NP.POP f (a : y : zs)) (Data.SOP.NP.NP f x) (Data.SOP.NP.NP f y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field1 (Data.SOP.NP.POP f (x : zs)) (Data.SOP.NP.POP f (y : zs)) (Data.SOP.NP.NP f x) (Data.SOP.NP.NP f y)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (xss :: [[k]]). Control.Lens.Wrapped.Wrapped (Data.SOP.NP.POP f xss)
+ Generics.SOP.Lens: instance forall k (f :: k -> *) (xss :: [[k]]). Control.Lens.Wrapped.Wrapped (Data.SOP.NS.SOP f xss)
+ Generics.SOP.Lens: instance forall k (f' :: k -> *) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (f :: [k]) (g :: [k]) (h :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field9 (Data.SOP.NP.POP f' (a : b : c : d : e : f : g : h : x : zs)) (Data.SOP.NP.POP f' (a : b : c : d : e : f : g : h : y : zs)) (Data.SOP.NP.NP f' x) (Data.SOP.NP.NP f' y)
+ Generics.SOP.Lens: instance forall k (f' :: k -> *) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (f :: [k]) (g :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field8 (Data.SOP.NP.POP f' (a : b : c : d : e : f : g : x : zs)) (Data.SOP.NP.POP f' (a : b : c : d : e : f : g : y : zs)) (Data.SOP.NP.NP f' x) (Data.SOP.NP.NP f' y)
+ Generics.SOP.Lens: instance forall k (f' :: k -> *) (a :: [k]) (b :: [k]) (c :: [k]) (d :: [k]) (e :: [k]) (f :: [k]) (x :: [k]) (zs :: [[k]]) (y :: [k]). Control.Lens.Tuple.Field7 (Data.SOP.NP.POP f' (a : b : c : d : e : f : x : zs)) (Data.SOP.NP.POP f' (a : b : c : d : e : f : y : zs)) (Data.SOP.NP.NP f' x) (Data.SOP.NP.NP f' y)
+ Generics.SOP.Lens: instance forall k a (b :: k). Control.Lens.Wrapped.Wrapped (Data.SOP.BasicFunctors.K a b)
+ Generics.SOP.Lens: instance forall k t (f :: k -> *) (xss :: [[k]]). (t Data.Type.Equality.~ Data.SOP.NP.POP f xss) => Control.Lens.Wrapped.Rewrapped (Data.SOP.NP.POP f xss) t
+ Generics.SOP.Lens: instance forall k t (f :: k -> *) (xss :: [[k]]). (t Data.Type.Equality.~ Data.SOP.NS.SOP f xss) => Control.Lens.Wrapped.Rewrapped (Data.SOP.NS.SOP f xss) t
+ Generics.SOP.Lens: instance forall k t a (b :: k). (t Data.Type.Equality.~ Data.SOP.BasicFunctors.K a b) => Control.Lens.Wrapped.Rewrapped (Data.SOP.BasicFunctors.K a b) t
+ Generics.SOP.Lens: strictnessInfo :: Traversal' (DatatypeInfo xss) (POP StrictnessInfo xss)

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+- 0.1.3+    - Support `generics-sop-0.5`+    - Add `strictnessInfo` traversal+ - 0.1.2.1     - Fix to work with `generics-sop-0.2.3.0` 
generics-sop-lens.cabal view
@@ -1,19 +1,21 @@--- This file has been generated from package.yaml by hpack version 0.14.1.------ see: https://github.com/sol/hpack- name:           generics-sop-lens-version:        0.1.2.1+version:        0.1.3 synopsis:       Lenses for types in generics-sop description:    Lenses for types in generics-sop package-category:       Web+category:       Generics, Data homepage:       https://github.com/phadej/generics-sop-lens#readme bug-reports:    https://github.com/phadej/generics-sop-lens/issues author:         Oleg Grenrus <oleg.grenrus@iki.fi> maintainer:     Oleg Grenrus <oleg.grenrus@iki.fi> license:        BSD3 license-file:   LICENSE-tested-with:    GHC==7.8.4, GHC==7.10.3, GHC==8.0.1+tested-with:+  GHC==7.8.4,+  GHC==7.10.3,+  GHC==8.0.2,+  GHC==8.2.2,+  GHC==8.4.4,+  GHC==8.6.5 build-type:     Simple cabal-version:  >= 1.10 @@ -30,9 +32,9 @@       src   ghc-options: -Wall   build-depends:-      base                  >=4.7      && <4.10-    , generics-sop          >=0.1      && <0.3-    , lens                  >=4.7      && <4.16+      base                  >=4.7      && <4.13+    , generics-sop          >=0.2      && <0.6+    , lens                  >=4.7      && <4.18   exposed-modules:       Generics.SOP.Lens   default-language: Haskell2010
src/Generics/SOP/Lens.hs view
@@ -41,12 +41,19 @@     Generics.SOP.Lens.datatypeName,     Generics.SOP.Lens.constructorInfo,     Generics.SOP.Lens.constructorName,+#if MIN_VERSION_generics_sop(0,5,0)+    Generics.SOP.Lens.strictnessInfo,+#endif     ) where  import Control.Lens import Generics.SOP hiding (from) import qualified Generics.SOP as SOP +#if MIN_VERSION_generics_sop(0,5,0)+import Generics.SOP.Metadata+#endif+ rep :: Generic a => Iso' a (Rep a) rep = iso SOP.from SOP.to @@ -233,33 +240,57 @@ moduleName = lens g s   where     g :: DatatypeInfo xss -> ModuleName+#if MIN_VERSION_generics_sop(0,5,0)+    g (ADT m _ _ _)   = m+#else     g (ADT m _ _)     = m+#endif     g (Newtype m _ _) = m      s :: DatatypeInfo xss -> ModuleName -> DatatypeInfo xss+#if MIN_VERSION_generics_sop(0,5,0)+    s (ADT _ n cs ss) m = ADT m n cs ss+#else     s (ADT _ n cs)    m = ADT m n cs+#endif     s (Newtype _ n c) m = Newtype m n c  datatypeName :: Lens' (DatatypeInfo xss) DatatypeName datatypeName = lens g s   where     g :: DatatypeInfo xss -> DatatypeName+#if MIN_VERSION_generics_sop(0,5,0)+    g (ADT _ n _ _)   = n+#else     g (ADT _ n _)     = n+#endif     g (Newtype _ n _) = n      s :: DatatypeInfo xss -> DatatypeName -> DatatypeInfo xss+#if MIN_VERSION_generics_sop(0,5,0)+    s (ADT m _ cs ss) n = ADT m n cs ss+#else     s (ADT m _ cs)    n = ADT m n cs+#endif     s (Newtype m _ c) n = Newtype m n c  constructorInfo :: Lens' (DatatypeInfo xss) (NP ConstructorInfo xss) constructorInfo = lens g s   where     g :: DatatypeInfo xss -> NP ConstructorInfo xss+#if MIN_VERSION_generics_sop(0,5,0)+    g (ADT _ _ cs _)  = cs+#else     g (ADT _ _ cs)    = cs+#endif     g (Newtype _ _ c) = c :* Nil      s :: DatatypeInfo xss -> NP ConstructorInfo xss -> DatatypeInfo xss+#if MIN_VERSION_generics_sop(0,5,0)+    s (ADT m n _ ss)  cs          = ADT m n cs ss+#else     s (ADT m n _)     cs          = ADT m n cs+#endif     s (Newtype m n _) (c :* Nil)  = Newtype m n c #if __GLASGOW_HASKELL__ < 800     s _ _ = error "constructorInfo set: impossible happened"@@ -271,3 +302,10 @@ constructorName f (Constructor n      ) = (\ n' -> Constructor n'      ) `fmap` f n constructorName f (Infix       n a fix) = (\ n' -> Infix       n' a fix) `fmap` f n constructorName f (Record      n finfo) = (\ n' -> Record      n' finfo) `fmap` f n++#if MIN_VERSION_generics_sop(0,5,0)+-- | Strictness info is only aviable for 'ADT' data. This combinator is available only with @generics-sop@ 0.5 or later.+strictnessInfo :: Traversal' (DatatypeInfo xss) (POP StrictnessInfo xss)+strictnessInfo _ di@(Newtype {}) = pure di+strictnessInfo f (ADT m n cs ss) = ADT m n cs <$> f ss+#endif