multihashmap-0.1.0.0: hashmap from keys to hashsets

Safe HaskellSafe
LanguageHaskell2010

Data.MultiHashMap

Documentation

newtype MultiHashMap k v Source #

Constructors

MultiHashMap 

Fields

Instances

(Eq v, Eq k) => Eq (MultiHashMap k v) Source # 

Methods

(==) :: MultiHashMap k v -> MultiHashMap k v -> Bool #

(/=) :: MultiHashMap k v -> MultiHashMap k v -> Bool #

(Show v, Show k) => Show (MultiHashMap k v) Source # 
(Eq k, Hashable k, Eq v, Hashable v) => Semigroup (MultiHashMap k v) Source # 

Methods

(<>) :: MultiHashMap k v -> MultiHashMap k v -> MultiHashMap k v #

sconcat :: NonEmpty (MultiHashMap k v) -> MultiHashMap k v #

stimes :: Integral b => b -> MultiHashMap k v -> MultiHashMap k v #

(Eq k, Hashable k, Eq v, Hashable v) => Monoid (MultiHashMap k v) Source # 

insert :: (Eq k, Hashable k, Eq v, Hashable v) => k -> v -> MultiHashMap k v -> MultiHashMap k v Source #

inserts :: (Eq k, Hashable k, Eq v, Hashable v) => k -> HashSet v -> MultiHashMap k v -> MultiHashMap k v Source #

lookup :: (Eq k, Hashable k, Eq v, Hashable v) => k -> MultiHashMap k v -> HashSet v Source #

lookupDefault :: (Eq k, Hashable k, Eq v, Hashable v) => HashSet v -> k -> MultiHashMap k v -> HashSet v Source #

union :: (Eq k, Hashable k, Eq v, Hashable v) => MultiHashMap k v -> MultiHashMap k v -> MultiHashMap k v Source #

unions :: (Eq k, Hashable k, Eq v, Hashable v) => [MultiHashMap k v] -> MultiHashMap k v Source #

fromList :: (Eq k, Hashable k, Eq v, Hashable v) => [(k, v)] -> MultiHashMap k v Source #

toList :: (Eq k, Hashable k, Eq v, Hashable v) => MultiHashMap k v -> [(k, v)] Source #

fromMultiList :: (Eq k, Hashable k, Eq v, Hashable v) => [(k, HashSet v)] -> MultiHashMap k v Source #

toMultiList :: (Eq k, Hashable k, Eq v, Hashable v) => MultiHashMap k v -> [(k, HashSet v)] Source #

map :: (Eq k, Hashable k, Eq v, Hashable v, Eq v', Hashable v') => (v -> v') -> MultiHashMap k v -> MultiHashMap k v' Source #

mapMaybe :: (Eq k, Hashable k, Eq v, Hashable v, Eq v', Hashable v') => (v -> Maybe v') -> MultiHashMap k v -> MultiHashMap k v' Source #

mapKeys :: (Eq k, Hashable k, Eq k', Hashable k', Eq v, Hashable v) => (k -> k') -> MultiHashMap k v -> MultiHashMap k' v Source #

mapWithKey :: (Eq v', Hashable v') => (k -> v -> v') -> MultiHashMap k v -> MultiHashMap k v' Source #