fmlist 0.9 → 0.9.1
raw patch · 2 files changed
+11/−1 lines, 2 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Data.FMList: instance (Applicative f, Monoid m) => Monoid (WrapApp f m)
- Data.FMList: instance Alternative FMList
- Data.FMList: instance Applicative FMList
- Data.FMList: instance Foldable FMList
- Data.FMList: instance Functor FMList
- Data.FMList: instance Monad FMList
- Data.FMList: instance MonadPlus FMList
- Data.FMList: instance Monoid (FMList a)
- Data.FMList: instance Show a => Show (FMList a)
- Data.FMList: instance Traversable FMList
- Data.FMList: unFM :: FMList a -> forall m. Monoid m => (a -> m) -> m
+ Data.FMList: [unFM] :: FMList a -> forall m. Monoid m => (a -> m) -> m
+ Data.FMList: instance (GHC.Base.Applicative f, Data.Semigroup.Semigroup m) => Data.Semigroup.Semigroup (Data.FMList.WrapApp f m)
+ Data.FMList: instance (GHC.Base.Applicative f, GHC.Base.Monoid m) => GHC.Base.Monoid (Data.FMList.WrapApp f m)
+ Data.FMList: instance Data.Foldable.Foldable Data.FMList.FMList
+ Data.FMList: instance Data.Traversable.Traversable Data.FMList.FMList
+ Data.FMList: instance GHC.Base.Alternative Data.FMList.FMList
+ Data.FMList: instance GHC.Base.Applicative Data.FMList.FMList
+ Data.FMList: instance GHC.Base.Functor Data.FMList.FMList
+ Data.FMList: instance GHC.Base.Monad Data.FMList.FMList
+ Data.FMList: instance GHC.Base.MonadPlus Data.FMList.FMList
+ Data.FMList: instance GHC.Base.Monoid (Data.FMList.FMList a)
+ Data.FMList: instance GHC.Show.Show a => GHC.Show.Show (Data.FMList.FMList a)
- Data.FMList: empty :: Alternative f => forall a. f a
+ Data.FMList: empty :: Alternative f => forall a. () => f a
- Data.FMList: toList :: Foldable t => t a -> [a]
+ Data.FMList: toList :: Foldable t => forall a. () => t a -> [a]
Files
- Data/FMList.hs +10/−0
- fmlist.cabal +1/−1
Data/FMList.hs view
@@ -26,6 +26,7 @@ -- > *> last e -- > 2 -----------------------------------------------------------------------------+{-# LANGUAGE CPP #-} {-# LANGUAGE RankNTypes #-} @@ -88,6 +89,9 @@ ) import Data.Maybe (Maybe(..), maybe, fromMaybe, isNothing) import Data.Monoid+#if MIN_VERSION_base(4,9,0)+import qualified Data.Semigroup as Semigroup+#endif import Data.Foldable (Foldable, foldMap, foldr, toList) import Data.Traversable (Traversable, traverse) import Control.Monad@@ -256,9 +260,15 @@ newtype WrapApp f m = WrapApp { unWrapApp :: f m }+#if MIN_VERSION_base(4,9,0)+instance (Applicative f, Semigroup.Semigroup m) => Semigroup.Semigroup (WrapApp f m) where+ WrapApp a <> WrapApp b = WrapApp $ (Semigroup.<>) <$> a <*> b+#endif instance (Applicative f, Monoid m) => Monoid (WrapApp f m) where mempty = WrapApp $ pure mempty+#if !(MIN_VERSION_base(4,11,0)) mappend (WrapApp a) (WrapApp b) = WrapApp $ mappend <$> a <*> b+#endif -- | Map each element of a structure to an action, evaluate these actions from left to right, -- and concat the monoid results.
fmlist.cabal view
@@ -1,5 +1,5 @@ name: fmlist-version: 0.9+version: 0.9.1 synopsis: FoldMap lists description: FoldMap lists are lists represented by their foldMap function.