cardano-data-1.4.0.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

zeroC ∷ Map k v Source #

joinC ∷ Map 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 #

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

bifold ∷ Monoid m ⇒ Map m m → m #

bifoldMap ∷ Monoid m ⇒ (a → m) → (b → m) → Map a b → m #

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

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

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 #

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 #

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) → Int → Map a b → ShowS #

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

Hashable2 Map

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

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

BiPolyMap Map 
Instance details

Defined in Data.Containers

Associated Types

type BPMKeyConstraint Map key 
Instance details

Defined in Data.Containers

type BPMKeyConstraint Map key = Ord key

Methods

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

PrettyDefaultBy config [(k, v)] ⇒ DefaultPrettyBy config (Map k v) 
Instance details

Defined in PlutusCore.Pretty.Extra

Methods

defaultPrettyBy ∷ config → Map k v → Doc ann Source #

defaultPrettyListBy ∷ config → [Map k v] → Doc ann Source #

PrettyDefaultBy config (Map k v) ⇒ PrettyBy config (Map k v) 
Instance details

Defined in PlutusCore.Pretty.Extra

Methods

prettyBy ∷ config → Map k v → Doc ann Source #

prettyListBy ∷ config → [Map k v] → Doc ann Source #

(Lift k, Lift a) ⇒ Lift (Map k a ∷ Type)

Since: containers-0.6.6

Instance details

Defined in Data.Map.Internal

Methods

lift ∷ Quote m ⇒ Map k a → m Exp #

liftTyped ∷ ∀ (m ∷ Type → Type). Quote m ⇒ Map k a → Code m (Map k a) #

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

Defined in Data.Aeson.Types.FromJSON

Methods

liftParseJSON ∷ Maybe a → (Value → Parser a) → (Value → Parser [a]) → Value → Parser (Map k a) Source #

liftParseJSONList ∷ Maybe a → (Value → Parser a) → (Value → Parser [a]) → Value → Parser [Map k a] Source #

liftOmittedField ∷ Maybe 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 #

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 #

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 #

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

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

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

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

liftReadPrec ∷ ReadPrec a → ReadPrec [a] → ReadPrec (Map k a) #

liftReadListPrec ∷ ReadPrec a → ReadPrec [a] → ReadPrec [Map k a] #

Show k ⇒ Show1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

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

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

Functor (Map k) 
Instance details

Defined in Data.Map.Internal

Methods

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

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

Foldable (Map k)

Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

fold ∷ Monoid m ⇒ Map k m → m #

foldMap ∷ Monoid m ⇒ (a → m) → Map k a → m #

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

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

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

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

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

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

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

toList ∷ Map k a → [a] #

null ∷ Map k a → Bool #

length ∷ Map k a → Int #

elem ∷ Eq a ⇒ a → Map k a → Bool #

maximum ∷ Ord a ⇒ Map k a → a #

minimum ∷ Ord a ⇒ Map k a → a #

sum ∷ Num a ⇒ Map k a → a #

product ∷ Num a ⇒ Map k a → a #

Traversable (Map k)

Traverses in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

traverse ∷ Applicative f ⇒ (a → f b) → Map k a → f (Map k b) #

sequenceA ∷ Applicative f ⇒ Map k (f a) → f (Map k a) #

mapM ∷ Monad m ⇒ (a → m b) → Map k a → m (Map k b) #

sequence ∷ Monad m ⇒ Map k (m a) → m (Map k a) #

Hashable k ⇒ Hashable1 (Map k)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt ∷ (Int → a → Int) → Int → Map 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

differenceMap ∷ Map key value1 → Map key value2 → Map key value1 Source #

intersectionMap ∷ Map 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

toJSON ∷ Map k v → Value Source #

toEncoding ∷ Map k v → Encoding Source #

toJSONList ∷ [Map k v] → Value Source #

toEncodingList ∷ [Map k v] → Encoding Source #

omitField ∷ Map k v → Bool Source #

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

Defined in Data.CanonicalMaps

Methods

zeroC ∷ Map k v Source #

joinC ∷ Map 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

decCBOR ∷ Decoder s (Map k v) Source #

dropCBOR ∷ Proxy (Map k v) → Decoder s () Source #

label ∷ Proxy (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) 
Instance details

Defined in Cardano.Ledger.Binary.Decoding.Sharing

type Share (Map k v) = (Interns k, Interns v)

Methods

getShare ∷ Map k v → Share (Map k v) Source #

decShareCBOR ∷ Share (Map k v) → Decoder s (Map k v) Source #

decSharePlusCBOR ∷ StateT (Share (Map k v)) (Decoder s) (Map k v) Source #

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

Defined in Cardano.Ledger.Binary.Encoding.EncCBOR

Methods

encCBOR ∷ Map k v → Encoding Source #

Default (Map k v) 
Instance details

Defined in Data.Default.Internal

Methods

def ∷ Map k v Source #

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

Defined in Data.Map.Internal

Methods

rnf ∷ Map k a → () #

Ord k ⇒ Monoid (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

mempty ∷ Map k v #

mappend ∷ Map k v → Map k v → Map k v #

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

Ord k ⇒ Semigroup (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

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

sconcat ∷ NonEmpty (Map k v) → Map k v #

stimes ∷ Integral b ⇒ b → Map k v → Map k v #

(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) #

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

toConstr ∷ Map k a → Constr #

dataTypeOf ∷ Map k a → DataType #

dataCast1 ∷ Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c (Map k a)) #

dataCast2 ∷ Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c (Map k a)) #

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

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

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

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

gmapQi ∷ Int → (∀ d. Data d ⇒ d → u) → Map k a → u #

gmapM ∷ Monad m ⇒ (∀ d. Data d ⇒ d → m d) → Map k a → m (Map k a) #

gmapMp ∷ MonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Map k a → m (Map k a) #

gmapMo ∷ MonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Map k a → m (Map k a) #

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) 
Instance details

Defined in Data.Map.Internal

type Item (Map k v) = (k, v)

Methods

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

fromListN ∷ Int → [Item (Map k v)] → Map k v #

toList ∷ Map k v → [Item (Map k v)] #

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

Defined in Data.Map.Internal

Methods

readsPrec ∷ Int → ReadS (Map k e) #

readList ∷ ReadS [Map k e] #

readPrec ∷ ReadPrec (Map k e) #

readListPrec ∷ ReadPrec [Map k e] #

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

Defined in Data.Map.Internal

Methods

showsPrec ∷ Int → Map k a → ShowS #

show ∷ Map k a → String #

showList ∷ [Map k a] → ShowS #

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

Defined in Data.Map.Internal

Methods

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

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

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

Defined in Data.Map.Internal

Methods

compare ∷ Map k v → Map k v → Ordering #

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

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

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

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

max ∷ Map k v → Map k v → Map k v #

min ∷ Map k v → Map k v → Map k v #

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

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt ∷ Int → Map k v → Int Source #

hash ∷ Map k v → Int Source #

Ord k ⇒ At (Map k a) 
Instance details

Defined in Control.Lens.At

Methods

at ∷ Index (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

ix ∷ Index (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) 
Instance details

Defined in Control.Lens.Wrapped

type Unwrapped (Map k a) = [(k, a)]

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) 
Instance details

Defined in Data.Containers

type KeySet (Map k v) = Set k

Methods

keysSet ∷ Map 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) 
Instance details

Defined in Data.Containers

type MapValue (Map key value) = value

Methods

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

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

deleteMap ∷ ContainerKey (Map key value) → Map key value → Map key value Source #

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

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

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

findWithDefault ∷ MapValue (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 #

filterWithKey ∷ (ContainerKey (Map key value) → 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) 
Instance details

Defined in Data.Containers

type ContainerKey (Map k v) = k

Methods

member ∷ ContainerKey (Map k v) → Map k v → Bool Source #

notMember ∷ ContainerKey (Map k v) → Map k v → Bool Source #

union ∷ Map k v → Map k v → Map k v Source #

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

difference ∷ Map k v → Map k v → Map k v Source #

intersection ∷ Map k v → Map k v → Map k v Source #

keys ∷ Map 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

ofoldMap ∷ Monoid 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 #

otoList ∷ Map 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 #

onull ∷ Map k v → Bool Source #

olength ∷ Map k v → Int Source #

olength64 ∷ Map k v → Int64 Source #

ocompareLength ∷ Integral 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 #

ofoldlM ∷ Monad m ⇒ (a → Element (Map k v) → m a) → a → Map k v → m a Source #

ofoldMap1Ex ∷ Semigroup 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 #

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

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

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

unsafeLast ∷ Map 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 #

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

onotElem ∷ Element (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

otraverse ∷ Applicative f ⇒ (Element (Map k v) → f (Element (Map k v))) → Map k v → f (Map k v) Source #

omapM ∷ Applicative 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

noThunks ∷ Context → Map k v → IO (Maybe ThunkInfo) Source #

wNoThunks ∷ Context → Map k v → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy (Map k v) → String Source #

(Flat a, Flat b, Ord a) ⇒ Flat (Map a b)

Maps are encoded as lists:

>>> tst (Data.Map.empty :: Map () ())
(True,1,[0])
>>> asList Data.Map.fromList [("a","aa"),("b","bb")]
True

Key/Values are encoded in order:

>>> let l = [("a","aa"),("b","bb")] in tst (Data.Map.fromList l) == tst (Data.Map.fromList $ Prelude.reverse l)
True

IntMap and Map are encoded in the same way:

>>> let l = [(2::Int,"b"),(1,"a")] in tst (Data.IntMap.fromList l) == tst (Data.Map.fromList l)
True 
Instance details

Defined in PlutusCore.Flat.Instances.Containers

Methods

encode ∷ Map a b → Encoding Source #

decode ∷ Get (Map a b) Source #

size ∷ Map a b → NumBits → NumBits 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

pack ∷ Map k a → MonoidalMap k a Source #

unpack ∷ MonoidalMap k a → Map k a Source #

type BPMKeyConstraint Map key 
Instance details

Defined in Data.Containers

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

Defined in Cardano.Ledger.Binary.Decoding.Sharing

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

Defined in Data.Map.Internal

type Item (Map k v) = (k, 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