Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data DefaultMap k v = DefMap {
- defDefault :: v
- defMap :: HashMap k v
- empty :: v -> DefaultMap k v
- lookup :: (Eq k, Hashable k) => k -> DefaultMap k v -> v
- fromList :: (Eq k, Hashable k) => v -> [(k, v)] -> DefaultMap k v
- keys :: DefaultMap k a -> [k]
- elems :: DefaultMap k a -> [a]
- map :: (a -> a) -> DefaultMap k a -> DefaultMap k a
- foldl :: (a -> b -> a) -> a -> DefaultMap k b -> a
- unionWith :: forall v k. (Eq k, Hashable k) => (v -> v -> v) -> v -> DefaultMap k v -> DefaultMap k v -> DefaultMap k v
Documentation
data DefaultMap k v Source #
Defaulting Map; a Map that returns a default value when queried for a key that does not exist.
DefMap | |
|
(Eq k, Eq v) => Eq (DefaultMap k v) Source # | |
(Read k, Read v, Hashable k, Eq k) => Read (DefaultMap k v) Source # | |
(Show k, Show v) => Show (DefaultMap k v) Source # | |
Generic (DefaultMap k v) Source # | |
(Arbitrary k, Arbitrary v, Hashable k, Eq k) => Arbitrary (DefaultMap k v) Source # | |
(Eq k, Hashable k, Serialize k, Serialize v) => Serialize (DefaultMap k v) Source # | |
(NFData k, NFData v, Hashable k) => NFData (DefaultMap k v) Source # | |
type Rep (DefaultMap k v) Source # | |
empty :: v -> DefaultMap k v Source #
Create an empty DefaultMap
lookup :: (Eq k, Hashable k) => k -> DefaultMap k v -> v Source #
Query the map for a value. Returns the default if the key is not found.
fromList :: (Eq k, Hashable k) => v -> [(k, v)] -> DefaultMap k v Source #
Create a DefaultMap
from a default value and a list.
keys :: DefaultMap k a -> [k] Source #
Access the keys as a list.
elems :: DefaultMap k a -> [a] Source #
Access the non-default values as a list.
map :: (a -> a) -> DefaultMap k a -> DefaultMap k a Source #
Map a function over the values in a map.
foldl :: (a -> b -> a) -> a -> DefaultMap k b -> a Source #
Fold over the values in the map.
Note that this *does* not fold
over the default value -- this fold behaves in the same way as a
standard foldl
:: (Eq k, Hashable k) | |
=> (v -> v -> v) | Combine values with this function |
-> v | The new map's default value |
-> DefaultMap k v | The first map to combine |
-> DefaultMap k v | The second map to combine |
-> DefaultMap k v |
Compute the union of two maps using the specified per-value combination function and the specified new map default value.