cardano-data-1.2.2.0: Specialized data for Cardano project
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.CanonicalMaps

Synopsis

Documentation

class Eq t ⇒ CanonicalZero t where Source #

Methods

zeroC ∷ t Source #

joinC ∷ t → t → t Source #

Instances

Instances details
CanonicalZero Integer Source # 
Instance details

Defined in Data.CanonicalMaps

(Ord k, CanonicalZero v) ⇒ CanonicalZero (Map k v) Source # 
Instance details

Defined in Data.CanonicalMaps

Methods

zeroCMap k v Source #

joinCMap k v → Map k v → Map k v Source #

canonicalInsert ∷ (Ord k, CanonicalZero a) ⇒ (a → a → a) → k → a → Map k a → Map k a Source #

canonicalMapUnion ∷ (Ord k, CanonicalZero a) ⇒ (a → a → a) → Map k a → Map k a → Map k a Source #

canonicalMap ∷ (Ord k, CanonicalZero a) ⇒ (a → a) → Map k a → Map k a Source #

pointWise ∷ (Ord k, CanonicalZero v) ⇒ (v → v → Bool) → Map k v → Map k v → Bool Source #

data Map k a Source #

A Map from keys k to values a.

The Semigroup operation for Map is union, which prefers values from the left operand. If m1 maps a key k to a value a1, and m2 maps the same key to a different value a2, then their union m1 <> m2 maps k to a1.

Instances

Instances details
Bifoldable Map

Since: containers-0.6.3.1

Instance details

Defined in Data.Map.Internal

Methods

bifoldMonoid m ⇒ Map m m → m Source #

bifoldMapMonoid m ⇒ (a → m) → (b → m) → Map a b → m Source #

bifoldr ∷ (a → c → c) → (b → c → c) → c → Map a b → c Source #

bifoldl ∷ (c → a → c) → (c → b → c) → c → Map a b → c Source #

Eq2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftEq2 ∷ (a → b → Bool) → (c → d → Bool) → Map a c → Map b d → Bool Source #

Ord2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftCompare2 ∷ (a → b → Ordering) → (c → d → Ordering) → Map a c → Map b d → Ordering Source #

Show2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftShowsPrec2 ∷ (Int → a → ShowS) → ([a] → ShowS) → (Int → b → ShowS) → ([b] → ShowS) → IntMap a b → ShowS Source #

liftShowList2 ∷ (Int → a → ShowS) → ([a] → ShowS) → (Int → b → ShowS) → ([b] → ShowS) → [Map a b] → ShowS Source #

Hashable2 Map

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt2 ∷ (Int → a → Int) → (Int → b → Int) → IntMap a b → Int Source #

BiPolyMap Map 
Instance details

Defined in Data.Containers

Associated Types

type BPMKeyConstraint Map key Source #

Methods

mapKeysWith ∷ (BPMKeyConstraint Map k1, BPMKeyConstraint Map k2) ⇒ (v → v → v) → (k1 → k2) → Map k1 v → Map k2 v Source #

(FromJSONKey k, Ord k) ⇒ FromJSON1 (Map k) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

liftParseJSONMaybe a → (ValueParser a) → (ValueParser [a]) → ValueParser (Map k a) Source #

liftParseJSONListMaybe a → (ValueParser a) → (ValueParser [a]) → ValueParser [Map k a] Source #

liftOmittedFieldMaybe a → Maybe (Map k a) Source #

ToJSONKey k ⇒ ToJSON1 (Map k) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

liftToJSON ∷ (a → Bool) → (a → Value) → ([a] → Value) → Map k a → Value Source #

liftToJSONList ∷ (a → Bool) → (a → Value) → ([a] → Value) → [Map k a] → Value Source #

liftToEncoding ∷ (a → Bool) → (a → Encoding) → ([a] → Encoding) → Map k a → Encoding Source #

liftToEncodingList ∷ (a → Bool) → (a → Encoding) → ([a] → Encoding) → [Map k a] → Encoding Source #

liftOmitField ∷ (a → Bool) → Map k a → Bool Source #

Foldable (Map k)

Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

foldMonoid m ⇒ Map k m → m Source #

foldMapMonoid m ⇒ (a → m) → Map k a → m Source #

foldMap'Monoid m ⇒ (a → m) → Map k a → m Source #

foldr ∷ (a → b → b) → b → Map k a → b Source #

foldr' ∷ (a → b → b) → b → Map k a → b Source #

foldl ∷ (b → a → b) → b → Map k a → b Source #

foldl' ∷ (b → a → b) → b → Map k a → b Source #

foldr1 ∷ (a → a → a) → Map k a → a Source #

foldl1 ∷ (a → a → a) → Map k a → a Source #

toListMap k a → [a] Source #

nullMap k a → Bool Source #

lengthMap k a → Int Source #

elemEq a ⇒ a → Map k a → Bool Source #

maximumOrd a ⇒ Map k a → a Source #

minimumOrd a ⇒ Map k a → a Source #

sumNum a ⇒ Map k a → a Source #

productNum a ⇒ Map k a → a Source #

Eq k ⇒ Eq1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftEq ∷ (a → b → Bool) → Map k a → Map k b → Bool Source #

Ord k ⇒ Ord1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftCompare ∷ (a → b → Ordering) → Map k a → Map k b → Ordering Source #

(Ord k, Read k) ⇒ Read1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftReadsPrec ∷ (IntReadS a) → ReadS [a] → IntReadS (Map k a) Source #

liftReadList ∷ (IntReadS a) → ReadS [a] → ReadS [Map k a] Source #

liftReadPrecReadPrec a → ReadPrec [a] → ReadPrec (Map k a) Source #

liftReadListPrecReadPrec a → ReadPrec [a] → ReadPrec [Map k a] Source #

Show k ⇒ Show1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftShowsPrec ∷ (Int → a → ShowS) → ([a] → ShowS) → IntMap k a → ShowS Source #

liftShowList ∷ (Int → a → ShowS) → ([a] → ShowS) → [Map k a] → ShowS Source #

Traversable (Map k)

Traverses in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

traverseApplicative f ⇒ (a → f b) → Map k a → f (Map k b) Source #

sequenceAApplicative f ⇒ Map k (f a) → f (Map k a) Source #

mapMMonad m ⇒ (a → m b) → Map k a → m (Map k b) Source #

sequenceMonad m ⇒ Map k (m a) → m (Map k a) Source #

Functor (Map k) 
Instance details

Defined in Data.Map.Internal

Methods

fmap ∷ (a → b) → Map k a → Map k b Source #

(<$) ∷ a → Map k b → Map k a Source #

Hashable k ⇒ Hashable1 (Map k)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt ∷ (Int → a → Int) → IntMap k a → Int Source #

Ord key ⇒ PolyMap (Map key)

This instance uses the functions from Data.Map.Strict.

Instance details

Defined in Data.Containers

Methods

differenceMapMap key value1 → Map key value2 → Map key value1 Source #

intersectionMapMap key value1 → Map key value2 → Map key value1 Source #

intersectionWithMap ∷ (value1 → value2 → value3) → Map key value1 → Map key value2 → Map key value3 Source #

(FromJSONKey k, Ord k, FromJSON v) ⇒ FromJSON (Map k v) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(ToJSON v, ToJSONKey k) ⇒ ToJSON (Map k v) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSONMap k v → Value Source #

toEncodingMap k v → Encoding Source #

toJSONList ∷ [Map k v] → Value Source #

toEncodingList ∷ [Map k v] → Encoding Source #

omitFieldMap k v → Bool Source #

(Data k, Data a, Ord k) ⇒ Data (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → Map k a → c (Map k a) Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c (Map k a) Source #

toConstrMap k a → Constr Source #

dataTypeOfMap k a → DataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c (Map k a)) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c (Map k a)) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → Map k a → Map k a Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → Map k a → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → Map k a → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → Map k a → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → Map k a → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → Map k a → m (Map k a) Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Map k a → m (Map k a) Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Map k a → m (Map k a) Source #

Ord k ⇒ Monoid (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

memptyMap k v Source #

mappendMap k v → Map k v → Map k v Source #

mconcat ∷ [Map k v] → Map k v Source #

Ord k ⇒ Semigroup (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

(<>)Map k v → Map k v → Map k v Source #

sconcatNonEmpty (Map k v) → Map k v Source #

stimesIntegral b ⇒ b → Map k v → Map k v Source #

Ord k ⇒ IsList (Map k v)

Since: containers-0.5.6.2

Instance details

Defined in Data.Map.Internal

Associated Types

type Item (Map k v) Source #

Methods

fromList ∷ [Item (Map k v)] → Map k v Source #

fromListNInt → [Item (Map k v)] → Map k v Source #

toListMap k v → [Item (Map k v)] Source #

(Ord k, Read k, Read e) ⇒ Read (Map k e) 
Instance details

Defined in Data.Map.Internal

(Show k, Show a) ⇒ Show (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

showsPrecIntMap k a → ShowS Source #

showMap k a → String Source #

showList ∷ [Map k a] → ShowS Source #

(Ord k, CanonicalZero v) ⇒ CanonicalZero (Map k v) Source # 
Instance details

Defined in Data.CanonicalMaps

Methods

zeroCMap k v Source #

joinCMap k v → Map k v → Map k v Source #

(Ord k, DecCBOR k, DecCBOR v) ⇒ DecCBOR (Map k v) 
Instance details

Defined in Cardano.Ledger.Binary.Decoding.DecCBOR

Methods

decCBORDecoder s (Map k v) Source #

dropCBORProxy (Map k v) → Decoder s () Source #

labelProxy (Map k v) → Text Source #

(Ord k, DecCBOR k, DecCBOR v) ⇒ DecShareCBOR (Map k v) 
Instance details

Defined in Cardano.Ledger.Binary.Decoding.Sharing

Associated Types

type Share (Map k v) Source #

Methods

getShareMap k v → Share (Map k v) Source #

decShareCBORShare (Map k v) → Decoder s (Map k v) Source #

decSharePlusCBORStateT (Share (Map k v)) (Decoder s) (Map k v) Source #

(Ord k, EncCBOR k, EncCBOR v) ⇒ EncCBOR (Map k v) 
Instance details

Defined in Cardano.Ledger.Binary.Encoding.EncCBOR

Methods

encCBORMap k v → Encoding Source #

encodedSizeExpr ∷ (∀ t. EncCBOR t ⇒ Proxy t → Size) → Proxy (Map k v) → Size Source #

encodedListSizeExpr ∷ (∀ t. EncCBOR t ⇒ Proxy t → Size) → Proxy [Map k v] → Size Source #

(NFData k, NFData a) ⇒ NFData (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

rnfMap k a → () Source #

(Eq k, Eq a) ⇒ Eq (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

(==)Map k a → Map k a → Bool Source #

(/=)Map k a → Map k a → Bool Source #

(Ord k, Ord v) ⇒ Ord (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

compareMap k v → Map k v → Ordering Source #

(<)Map k v → Map k v → Bool Source #

(<=)Map k v → Map k v → Bool Source #

(>)Map k v → Map k v → Bool Source #

(>=)Map k v → Map k v → Bool Source #

maxMap k v → Map k v → Map k v Source #

minMap k v → Map k v → Map k v Source #

(Hashable k, Hashable v) ⇒ Hashable (Map k v)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

hashWithSaltIntMap k v → Int Source #

hashMap k v → Int Source #

Ord k ⇒ At (Map k a) 
Instance details

Defined in Control.Lens.At

Methods

atIndex (Map k a) → Lens' (Map k a) (Maybe (IxValue (Map k a))) Source #

Ord k ⇒ Ixed (Map k a) 
Instance details

Defined in Control.Lens.At

Methods

ixIndex (Map k a) → Traversal' (Map k a) (IxValue (Map k a)) Source #

Ord k ⇒ Wrapped (Map k a) 
Instance details

Defined in Control.Lens.Wrapped

Associated Types

type Unwrapped (Map k a) Source #

Methods

_Wrapped'Iso' (Map k a) (Unwrapped (Map k a)) Source #

Ord k ⇒ HasKeysSet (Map k v) 
Instance details

Defined in Data.Containers

Associated Types

type KeySet (Map k v) Source #

Methods

keysSetMap k v → KeySet (Map k v) Source #

Ord key ⇒ IsMap (Map key value)

This instance uses the functions from Data.Map.Strict.

Instance details

Defined in Data.Containers

Associated Types

type MapValue (Map key value) Source #

Methods

lookupContainerKey (Map key value) → Map key value → Maybe (MapValue (Map key value)) Source #

insertMapContainerKey (Map key value) → MapValue (Map key value) → Map key value → Map key value Source #

deleteMapContainerKey (Map key value) → Map key value → Map key value Source #

singletonMapContainerKey (Map key value) → MapValue (Map key value) → Map key value Source #

mapFromList ∷ [(ContainerKey (Map key value), MapValue (Map key value))] → Map key value Source #

mapToListMap key value → [(ContainerKey (Map key value), MapValue (Map key value))] Source #

findWithDefaultMapValue (Map key value) → ContainerKey (Map key value) → Map key value → MapValue (Map key value) Source #

insertWith ∷ (MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → ContainerKey (Map key value) → MapValue (Map key value) → Map key value → Map key value Source #

insertWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → ContainerKey (Map key value) → MapValue (Map key value) → Map key value → Map key value Source #

insertLookupWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → ContainerKey (Map key value) → MapValue (Map key value) → Map key value → (Maybe (MapValue (Map key value)), Map key value) Source #

adjustMap ∷ (MapValue (Map key value) → MapValue (Map key value)) → ContainerKey (Map key value) → Map key value → Map key value Source #

adjustWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → ContainerKey (Map key value) → Map key value → Map key value Source #

updateMap ∷ (MapValue (Map key value) → Maybe (MapValue (Map key value))) → ContainerKey (Map key value) → Map key value → Map key value Source #

updateWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → Maybe (MapValue (Map key value))) → ContainerKey (Map key value) → Map key value → Map key value Source #

updateLookupWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → Maybe (MapValue (Map key value))) → ContainerKey (Map key value) → Map key value → (Maybe (MapValue (Map key value)), Map key value) Source #

alterMap ∷ (Maybe (MapValue (Map key value)) → Maybe (MapValue (Map key value))) → ContainerKey (Map key value) → Map key value → Map key value Source #

unionWith ∷ (MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → Map key value → Map key value → Map key value Source #

unionWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → Map key value → Map key value → Map key value Source #

unionsWith ∷ (MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → [Map key value] → Map key value Source #

mapWithKey ∷ (ContainerKey (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → Map key value → Map key value Source #

omapKeysWith ∷ (MapValue (Map key value) → MapValue (Map key value) → MapValue (Map key value)) → (ContainerKey (Map key value) → ContainerKey (Map key value)) → Map key value → Map key value Source #

filterMap ∷ (MapValue (Map key value) → Bool) → Map key value → Map key value Source #

Ord k ⇒ SetContainer (Map k v)

This instance uses the functions from Data.Map.Strict.

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey (Map k v) Source #

Methods

memberContainerKey (Map k v) → Map k v → Bool Source #

notMemberContainerKey (Map k v) → Map k v → Bool Source #

unionMap k v → Map k v → Map k v Source #

unions ∷ (MonoFoldable mono, Element mono ~ Map k v) ⇒ mono → Map k v Source #

differenceMap k v → Map k v → Map k v Source #

intersectionMap k v → Map k v → Map k v Source #

keysMap k v → [ContainerKey (Map k v)] Source #

Ord k ⇒ GrowingAppend (Map k v) 
Instance details

Defined in Data.MonoTraversable

MonoFoldable (Map k v) 
Instance details

Defined in Data.MonoTraversable

Methods

ofoldMapMonoid m ⇒ (Element (Map k v) → m) → Map k v → m Source #

ofoldr ∷ (Element (Map k v) → b → b) → b → Map k v → b Source #

ofoldl' ∷ (a → Element (Map k v) → a) → a → Map k v → a Source #

otoListMap k v → [Element (Map k v)] Source #

oall ∷ (Element (Map k v) → Bool) → Map k v → Bool Source #

oany ∷ (Element (Map k v) → Bool) → Map k v → Bool Source #

onullMap k v → Bool Source #

olengthMap k v → Int Source #

olength64Map k v → Int64 Source #

ocompareLengthIntegral i ⇒ Map k v → i → Ordering Source #

otraverse_Applicative f ⇒ (Element (Map k v) → f b) → Map k v → f () Source #

ofor_Applicative f ⇒ Map k v → (Element (Map k v) → f b) → f () Source #

omapM_Applicative m ⇒ (Element (Map k v) → m ()) → Map k v → m () Source #

oforM_Applicative m ⇒ Map k v → (Element (Map k v) → m ()) → m () Source #

ofoldlMMonad m ⇒ (a → Element (Map k v) → m a) → a → Map k v → m a Source #

ofoldMap1ExSemigroup m ⇒ (Element (Map k v) → m) → Map k v → m Source #

ofoldr1Ex ∷ (Element (Map k v) → Element (Map k v) → Element (Map k v)) → Map k v → Element (Map k v) Source #

ofoldl1Ex' ∷ (Element (Map k v) → Element (Map k v) → Element (Map k v)) → Map k v → Element (Map k v) Source #

headExMap k v → Element (Map k v) Source #

lastExMap k v → Element (Map k v) Source #

unsafeHeadMap k v → Element (Map k v) Source #

unsafeLastMap k v → Element (Map k v) Source #

maximumByEx ∷ (Element (Map k v) → Element (Map k v) → Ordering) → Map k v → Element (Map k v) Source #

minimumByEx ∷ (Element (Map k v) → Element (Map k v) → Ordering) → Map k v → Element (Map k v) Source #

oelemElement (Map k v) → Map k v → Bool Source #

onotElemElement (Map k v) → Map k v → Bool Source #

MonoFunctor (Map k v) 
Instance details

Defined in Data.MonoTraversable

Methods

omap ∷ (Element (Map k v) → Element (Map k v)) → Map k v → Map k v Source #

MonoTraversable (Map k v) 
Instance details

Defined in Data.MonoTraversable

Methods

otraverseApplicative f ⇒ (Element (Map k v) → f (Element (Map k v))) → Map k v → f (Map k v) Source #

omapMApplicative m ⇒ (Element (Map k v) → m (Element (Map k v))) → Map k v → m (Map k v) Source #

(NoThunks k, NoThunks v) ⇒ NoThunks (Map k v) 
Instance details

Defined in NoThunks.Class

Methods

noThunksContextMap k v → IO (Maybe ThunkInfo) Source #

wNoThunksContextMap k v → IO (Maybe ThunkInfo) Source #

showTypeOfProxy (Map k v) → String Source #

(Ord k, Serialise k, Serialise v) ⇒ Serialise (Map k v)

Since: serialise-0.2.0.0

Instance details

Defined in Codec.Serialise.Class

Methods

encodeMap k v → Encoding Source #

decodeDecoder s (Map k v) Source #

encodeList ∷ [Map k v] → Encoding Source #

decodeListDecoder s [Map k v] Source #

(t ~ Map k' a', Ord k) ⇒ Rewrapped (Map k a) t

Use _Wrapping fromList. unwrapping returns a sorted list.

Instance details

Defined in Control.Lens.Wrapped

Ord k ⇒ Rewrapped (Map k a) (MonoidalMap k a) 
Instance details

Defined in Data.Map.Monoidal

Ord k ⇒ Rewrapped (MonoidalMap k a) (Map k a) 
Instance details

Defined in Data.Map.Monoidal

Newtype (MonoidalMap k a) (Map k a) 
Instance details

Defined in Data.Map.Monoidal

Methods

packMap k a → MonoidalMap k a Source #

unpackMonoidalMap k a → Map k a Source #

type BPMKeyConstraint Map key 
Instance details

Defined in Data.Containers

type BPMKeyConstraint Map key = Ord key
type Item (Map k v) 
Instance details

Defined in Data.Map.Internal

type Item (Map k v) = (k, v)
type Share (Map k v) 
Instance details

Defined in Cardano.Ledger.Binary.Decoding.Sharing

type Share (Map k v) = (Interns k, Interns v)
type Index (Map k a) 
Instance details

Defined in Control.Lens.At

type Index (Map k a) = k
type IxValue (Map k a) 
Instance details

Defined in Control.Lens.At

type IxValue (Map k a) = a
type Unwrapped (Map k a) 
Instance details

Defined in Control.Lens.Wrapped

type Unwrapped (Map k a) = [(k, a)]
type ContainerKey (Map k v) 
Instance details

Defined in Data.Containers

type ContainerKey (Map k v) = k
type KeySet (Map k v) 
Instance details

Defined in Data.Containers

type KeySet (Map k v) = Set k
type MapValue (Map key value) 
Instance details

Defined in Data.Containers

type MapValue (Map key value) = value
type Element (Map k v) 
Instance details

Defined in Data.MonoTraversable

type Element (Map k v) = v