packages feed

enummapset 0.7.0.0 → 0.7.1.0

raw patch · 4 files changed

+33/−4 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Data.EnumMap.Lazy: alterF :: (Enum k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> EnumMap k a -> f (EnumMap k a)
+ Data.EnumMap.Lazy: lookupMax :: Enum k => EnumMap k a -> Maybe (k, a)
+ Data.EnumMap.Lazy: lookupMin :: Enum k => EnumMap k a -> Maybe (k, a)
+ Data.EnumMap.Strict: alterF :: (Enum k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> EnumMap k a -> f (EnumMap k a)
+ Data.EnumMap.Strict: lookupMax :: Enum k => EnumMap k a -> Maybe (k, a)
+ Data.EnumMap.Strict: lookupMin :: Enum k => EnumMap k a -> Maybe (k, a)

Files

Data/EnumMap/Base.hs view
@@ -54,6 +54,7 @@   , updateWithKey   , updateLookupWithKey   , alter+  , alterF    -- * Combine @@ -146,6 +147,8 @@   , isProperSubmapOfBy    -- * Min\/Max+  , lookupMin+  , lookupMax   , findMin   , findMax   , deleteMin@@ -327,6 +330,10 @@ alter f k = EnumMap . I.alter f (fromEnum k) . unWrap {-# INLINE alter #-} +alterF :: (Enum k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> EnumMap k a -> f (EnumMap k a)+alterF f k = fmap EnumMap . I.alterF f (fromEnum k) . unWrap+{-# INLINE alterF #-}+ unions :: [EnumMap k a] -> EnumMap k a unions = EnumMap . I.unions . P.map unWrap {-# INLINE unions #-}@@ -437,6 +444,14 @@ deleteFindMin :: (Enum k) => EnumMap k a -> ((k, a), EnumMap k a) deleteFindMin = (first toEnum *** EnumMap) . I.deleteFindMin . unWrap {-# INLINE deleteFindMin #-}++lookupMin :: (Enum k) => EnumMap k a -> Maybe (k, a)+lookupMin = fmap (first toEnum) . I.lookupMin . unWrap+{-# INLINE lookupMin #-}++lookupMax :: (Enum k) => EnumMap k a -> Maybe (k, a)+lookupMax = fmap (first toEnum) . I.lookupMax . unWrap+{-# INLINE lookupMax #-}  findMin :: (Enum k) => EnumMap k a -> (k, a) findMin = first toEnum . I.findMin . unWrap
Data/EnumMap/Lazy.hs view
@@ -54,6 +54,7 @@   , updateWithKey   , updateLookupWithKey   , alter+  , alterF    -- * Combine @@ -146,6 +147,8 @@   , isProperSubmapOfBy    -- * Min\/Max+  , lookupMin+  , lookupMax   , findMin   , findMax   , deleteMin
Data/EnumMap/Strict.hs view
@@ -54,6 +54,7 @@   , updateWithKey   , updateLookupWithKey   , alter+  , alterF    -- * Combine @@ -146,6 +147,8 @@   , isProperSubmapOfBy    -- * Min\/Max+  , lookupMin+  , lookupMax   , findMin   , findMax   , deleteMin@@ -172,7 +175,7 @@ import           Data.EnumSet (EnumSet) import qualified Data.EnumSet as EnumSet -import Data.EnumMap.Base hiding (adjust, adjustWithKey, alter, differenceWith,+import Data.EnumMap.Base hiding (adjust, adjustWithKey, alter, alterF, differenceWith,                           differenceWithKey, findWithDefault, fromAscList,                           fromAscListWith, fromAscListWithKey,                           fromDistinctAscList, fromList, fromListWith,@@ -225,6 +228,10 @@ alter :: (Enum k) => (Maybe a -> Maybe a) -> k -> EnumMap k a -> EnumMap k a alter f k = EnumMap . I.alter f (fromEnum k) . unWrap {-# INLINE alter #-}++alterF :: (Enum k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> EnumMap k a -> f (EnumMap k a)+alterF f k = fmap EnumMap . I.alterF f (fromEnum k) . unWrap+{-# INLINE alterF #-}  unionsWith :: (a -> a -> a) -> [EnumMap k a] -> EnumMap k a unionsWith f = EnumMap . I.unionsWith f . P.map unWrap
enummapset.cabal view
@@ -1,5 +1,5 @@ name:           enummapset-version:        0.7.0.0+version:        0.7.1.0 synopsis:       IntMap and IntSet with Enum keys/elements. description:    This package contains simple wrappers around 'Data.IntMap' and                 'Data.IntSet' with 'Enum' keys and elements respectively.@@ -46,9 +46,11 @@     base >= 4.6 && < 5,     aeson,     containers >= 0.5.11 && < 0.7,-    semigroups >=0.1 && <1.0,     deepseq >= 1.2 && < 1.5 +  if impl(ghc < 8.0)+    build-depends: semigroups >=0.1 && <1.0+   if flag(debug)     ghc-options: -Wall @@ -84,10 +86,12 @@     containers,     deepseq,     ghc-prim,-    semigroups,      HUnit,     QuickCheck >= 2.7.1,     test-framework,     test-framework-hunit,     test-framework-quickcheck2+  +  if impl(ghc < 8.0)+    build-depends: semigroups