-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A monoidal map with the right group instance
--
-- Newtype wrapper around Data.Map.Monoidal.MonoidalMap that has a
-- correct Group instance. The Group instance for
-- Data.MonoidMap has a unique neutral element, as compared to
-- Data.Map.Monoidal.MonoidalMap.
@package monoid-map
@version 0.2.0.0
-- | This module contains a newtype wrapper around Map that has a
-- correct Group instance compared to the one for
-- MonoidalMap, in that it has a unique neutral element. This
-- comes with different constraints on the parameters (check the
-- instances for Semigroup and Monoid of the corresponding
-- data structures if you're interested).
module Data.MonoidMap
-- | Newtype wrapper around Data.Map.Monoidal.MonoidalMap
newtype MonoidMap k v
MonoidMap :: MonoidalMap k v -> MonoidMap k v
[unMonoidMap] :: MonoidMap k v -> MonoidalMap k v
emptyToNothing :: DecidablyEmpty a => a -> Maybe a
mapMonoidMap :: DecidablyEmpty b => (a -> b) -> MonoidMap k a -> MonoidMap k b
traverseMonoidMap :: (Ord k, DecidablyEmpty b, Applicative f) => (a -> f b) -> MonoidMap k a -> f (MonoidMap k b)
-- | Convert a MonoidalMap into a MonoidMap
monoidMap :: (Ord k, DecidablyEmpty v) => MonoidalMap k v -> MonoidMap k v
instance Data.Foldable.Foldable (Data.MonoidMap.MonoidMap k)
instance (GHC.Classes.Ord k, GHC.Classes.Ord v) => GHC.Classes.Ord (Data.MonoidMap.MonoidMap k v)
instance (GHC.Classes.Eq k, GHC.Classes.Eq v) => GHC.Classes.Eq (Data.MonoidMap.MonoidMap k v)
instance (GHC.Show.Show k, GHC.Show.Show v) => GHC.Show.Show (Data.MonoidMap.MonoidMap k v)
instance (TypeError ...) => GHC.Base.Functor (Data.MonoidMap.MonoidMap k)
instance (GHC.Classes.Ord k, Data.Monoid.DecidablyEmpty.DecidablyEmpty v) => Data.Monoid.DecidablyEmpty.DecidablyEmpty (Data.MonoidMap.MonoidMap k v)
instance (Data.Monoid.DecidablyEmpty.DecidablyEmpty (Reflex.Query.Class.QueryResult q), GHC.Classes.Ord k, Reflex.Query.Class.Query q) => Reflex.Query.Class.Query (Data.MonoidMap.MonoidMap k q)
instance (GHC.Base.Monoid a, Data.Monoid.DecidablyEmpty.DecidablyEmpty a, GHC.Classes.Ord k) => GHC.Base.Semigroup (Data.MonoidMap.MonoidMap k a)
instance (GHC.Classes.Ord k, Data.Monoid.DecidablyEmpty.DecidablyEmpty a) => GHC.Base.Monoid (Data.MonoidMap.MonoidMap k a)
instance (GHC.Classes.Ord k, Data.Monoid.DecidablyEmpty.DecidablyEmpty a, Data.Patch.Group a) => Data.Patch.Group (Data.MonoidMap.MonoidMap k a)
instance (GHC.Classes.Ord k, Data.Monoid.DecidablyEmpty.DecidablyEmpty a, Data.Patch.Group a, Data.Semigroup.Commutative.Commutative a) => Data.Semigroup.Commutative.Commutative (Data.MonoidMap.MonoidMap k a)