traverse-with-class 0.2.0.3 → 0.2.0.4
raw patch · 4 files changed
+19/−4 lines, 4 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Data.Generics.Traversable: instance (GTraversable (Rec c) a, c a) => Rec c a
- Data.Generics.Traversable.Zipper: instance Applicative (Left c)
- Data.Generics.Traversable.Zipper: instance Functor (Left c)
+ Data.Generics.Traversable: instance (Data.Generics.Traversable.Core.GTraversable (Data.Generics.Traversable.Rec c) a, c a) => Data.Generics.Traversable.Rec c a
+ Data.Generics.Traversable.Zipper: instance GHC.Base.Applicative (Data.Generics.Traversable.Zipper.Left c)
+ Data.Generics.Traversable.Zipper: instance GHC.Base.Functor (Data.Generics.Traversable.Zipper.Left c)
- Data.Generics.Traversable: everything :: (Rec c a, ?c :: p c) => (r -> r -> r) -> (forall d. Rec c d => d -> r) -> a -> r
+ Data.Generics.Traversable: everything :: forall r a c p. (Rec c a, ?c :: p c) => (r -> r -> r) -> (forall d. (Rec c d) => d -> r) -> a -> r
- Data.Generics.Traversable: everywhere :: (Rec c a, ?c :: p c) => (forall d. Rec c d => d -> d) -> a -> a
+ Data.Generics.Traversable: everywhere :: forall a c p. (Rec c a, ?c :: p c) => (forall d. (Rec c d) => d -> d) -> a -> a
- Data.Generics.Traversable: everywhere' :: (Rec c a, ?c :: p c) => (forall d. Rec c d => d -> d) -> a -> a
+ Data.Generics.Traversable: everywhere' :: forall a c p. (Rec c a, ?c :: p c) => (forall d. (Rec c d) => d -> d) -> a -> a
- Data.Generics.Traversable: everywhereM :: (Monad m, Rec c a, ?c :: p c) => (forall d. Rec c d => d -> m d) -> a -> m a
+ Data.Generics.Traversable: everywhereM :: forall m a c p. (Monad m, Rec c a, ?c :: p c) => (forall d. (Rec c d) => d -> m d) -> a -> m a
- Data.Generics.Traversable: gfoldMap :: (Monoid r, GTraversable c a, ?c :: p c) => (forall d. c d => d -> r) -> a -> r
+ Data.Generics.Traversable: gfoldMap :: (Monoid r, GTraversable c a, ?c :: p c) => (forall d. (c d) => d -> r) -> a -> r
- Data.Generics.Traversable: gfoldl' :: (GTraversable c a, ?c :: p c) => (forall d. c d => r -> d -> r) -> r -> a -> r
+ Data.Generics.Traversable: gfoldl' :: (GTraversable c a, ?c :: p c) => (forall d. (c d) => r -> d -> r) -> r -> a -> r
- Data.Generics.Traversable: gfoldr :: (GTraversable c a, ?c :: p c) => (forall d. c d => d -> r -> r) -> r -> a -> r
+ Data.Generics.Traversable: gfoldr :: (GTraversable c a, ?c :: p c) => (forall d. (c d) => d -> r -> r) -> r -> a -> r
- Data.Generics.Traversable: gmap :: (GTraversable c a, ?c :: p c) => (forall d. c d => d -> d) -> a -> a
+ Data.Generics.Traversable: gmap :: (GTraversable c a, ?c :: p c) => (forall d. (c d) => d -> d) -> a -> a
- Data.Generics.Traversable: gmapM :: (Monad m, GTraversable c a, ?c :: p c) => (forall d. c d => d -> m d) -> a -> m a
+ Data.Generics.Traversable: gmapM :: (Monad m, GTraversable c a, ?c :: p c) => (forall d. (c d) => d -> m d) -> a -> m a
- Data.Generics.Traversable.Zipper: down :: Zipper c a -> Maybe (Zipper c a)
+ Data.Generics.Traversable.Zipper: down :: forall a c. Zipper c a -> Maybe (Zipper c a)
- Data.Generics.Traversable.Zipper: getHole :: Typeable b => Zipper Typeable a -> Maybe b
+ Data.Generics.Traversable.Zipper: getHole :: (Typeable b) => Zipper Typeable a -> Maybe b
- Data.Generics.Traversable.Zipper: setHole :: Typeable a => a -> Zipper Typeable b -> Zipper Typeable b
+ Data.Generics.Traversable.Zipper: setHole :: (Typeable a) => a -> Zipper Typeable b -> Zipper Typeable b
- Data.Generics.Traversable.Zipper: setHole' :: Typeable a => a -> Zipper Typeable b -> Maybe (Zipper Typeable b)
+ Data.Generics.Traversable.Zipper: setHole' :: (Typeable a) => a -> Zipper Typeable b -> Maybe (Zipper Typeable b)
Files
- CHANGES.md +5/−0
- Data/Generics/Traversable.hs +6/−1
- Data/Generics/Traversable/TH.hs +7/−2
- traverse-with-class.cabal +1/−1
CHANGES.md view
@@ -1,6 +1,11 @@ Changes ======= +Version 0.2.0.4+---------------++Update to build with ghc 8+ Version 0.2.0.3 ---------------
Data/Generics/Traversable.hs view
@@ -1,4 +1,9 @@-{-# LANGUAGE ConstraintKinds, KindSignatures, MultiParamTypeClasses, RankNTypes, UndecidableInstances, ImplicitParams, ScopedTypeVariables, FlexibleContexts, FlexibleInstances #-}+{-# LANGUAGE ConstraintKinds, KindSignatures, MultiParamTypeClasses, RankNTypes, UndecidableInstances, ImplicitParams, ScopedTypeVariables, FlexibleContexts, FlexibleInstances, CPP #-}++#if __GLASGOW_HASKELL__ >= 800+{-# LANGUAGE UndecidableSuperClasses #-}+#endif+ -- | All of the functions below work only on «interesting» subterms. -- It is up to the instance writer to decide which subterms are -- interesting and which subterms should count as immediate. This can
Data/Generics/Traversable/TH.hs view
@@ -26,8 +26,13 @@ return $ case decl of- DataD _ n ps cs _ -> (n, map varName ps, map conA cs)- NewtypeD _ n ps c _ -> (n, map varName ps, [conA c])+#if MIN_VERSION_template_haskell(2,11,0)+ DataD _ n ps _ cs _ -> (n, map varName ps, map conA cs)+ NewtypeD _ n ps _ c _ -> (n, map varName ps, [conA c])+#else+ DataD _ n ps cs _ -> (n, map varName ps, map conA cs)+ NewtypeD _ n ps c _ -> (n, map varName ps, [conA c])+#endif _ -> err ("not a data type declaration: " ++ show decl) -- | Return a lambda expression which implements 'gtraverse' for the given
traverse-with-class.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: traverse-with-class-version: 0.2.0.3+version: 0.2.0.4 synopsis: Generic applicative traversals description: This is a generic programming library in the spirit of \"Scrap your boilerplate with class\", but with several