Copyright | Guillaume Sabbagh 2022 |
---|---|
License | LGPL-3.0-or-later |
Maintainer | guillaumesabbagh@protonmail.com |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Non-clashing functions for Map
s.
Synopsis
- weakMap :: AssociationList k v -> Map k v
- weakMapFromSet :: Set (k, v) -> Map k v
- (|?|) :: Eq k => Map k v -> k -> Maybe v
- (|!|) :: Eq k => Map k v -> k -> v
- (|.|) :: Eq b => Map b c -> Map a b -> Map a c
- idFromSet :: Set a -> Map a a
- memorizeFunction :: (k -> v) -> Set k -> Map k v
- elems' :: Eq k => Map k a -> Set a
- keys' :: Map k v -> Set k
- domain :: Map k a -> Set k
- image :: Eq k => Map k a -> Set a
- inverse :: (Eq k, Eq v) => Map k v -> Maybe (Map v k)
- pseudoInverse :: Map k v -> Map v k
- enumerateMaps :: (Eq a, Eq b) => Set a -> Set b -> Set (Map a b)
Documentation
weakMap :: AssociationList k v -> Map k v Source #
O(1). The smart constructor of weak maps. This is the only way of instantiating a Map
.
Takes an association list and returns a function which maps to each key the value associated.
If several pairs have the same keys, they are kept until the user wants an association list back.
weakMapFromSet :: Set (k, v) -> Map k v Source #
(|?|) :: Eq k => Map k v -> k -> Maybe v Source #
O(n). Lookup the value at a key in the map. If the map is not defined on the given value returns Nothing
, otherwise returns Just
the image.
This function is like lookup
in Data.Map for function (beware: the order of the argument are reversed).
(|.|) :: Eq b => Map b c -> Map a b -> Map a c Source #
Compose two functions. If the two functions are not composable, strips the functions until they can compose.
memorizeFunction :: (k -> v) -> Set k -> Map k v Source #
O(n). Memorize a Haskell function on a given finite domain. Alias of fromSet
.
inverse :: (Eq k, Eq v) => Map k v -> Maybe (Map v k) Source #
O(n^2). Try to construct an inverse map.