Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- newtype EnumMap k a = EnumMap {}
- empty :: forall k a. EnumMap k a
- singleton :: forall k a. Enum k => k -> a -> EnumMap k a
- fromSet :: Enum k => (k -> a) -> EnumSet k -> EnumMap k a
- fromList :: Enum k => [(k, a)] -> EnumMap k a
- fromListWith :: Enum k => (a -> a -> a) -> [(k, a)] -> EnumMap k a
- fromListWithKey :: Enum k => (k -> a -> a -> a) -> [(k, a)] -> EnumMap k a
- fromAscList :: Enum k => [(k, a)] -> EnumMap k a
- fromAscListWith :: Enum k => (a -> a -> a) -> [(k, a)] -> EnumMap k a
- fromAscListWithKey :: Enum k => (k -> a -> a -> a) -> [(k, a)] -> EnumMap k a
- fromDistinctAscList :: Enum k => [(k, a)] -> EnumMap k a
- insert :: forall k a. Enum k => k -> a -> EnumMap k a -> EnumMap k a
- insertWith :: Enum k => (a -> a -> a) -> k -> a -> EnumMap k a -> EnumMap k a
- insertWithKey :: Enum k => (k -> a -> a -> a) -> k -> a -> EnumMap k a -> EnumMap k a
- insertLookupWithKey :: Enum k => (k -> a -> a -> a) -> k -> a -> EnumMap k a -> (Maybe a, EnumMap k a)
- delete :: forall k a. Enum k => k -> EnumMap k a -> EnumMap k a
- adjust :: Enum k => (a -> a) -> k -> EnumMap k a -> EnumMap k a
- adjustWithKey :: Enum k => (k -> a -> a) -> k -> EnumMap k a -> EnumMap k a
- update :: Enum k => (a -> Maybe a) -> k -> EnumMap k a -> EnumMap k a
- updateWithKey :: Enum k => (k -> a -> Maybe a) -> k -> EnumMap k a -> EnumMap k a
- updateLookupWithKey :: Enum k => (k -> a -> Maybe a) -> k -> EnumMap k a -> (Maybe a, EnumMap k a)
- alter :: Enum k => (Maybe a -> Maybe a) -> k -> EnumMap k a -> EnumMap k a
- alterF :: (Enum k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> EnumMap k a -> f (EnumMap k a)
- lookup :: forall k a. Enum k => k -> EnumMap k a -> Maybe a
- (!?) :: Enum k => EnumMap k a -> k -> Maybe a
- (!) :: Enum k => EnumMap k a -> k -> a
- findWithDefault :: Enum k => a -> k -> EnumMap k a -> a
- member :: forall k a. Enum k => k -> EnumMap k a -> Bool
- notMember :: forall k a. Enum k => k -> EnumMap k a -> Bool
- lookupLT :: forall k a. Enum k => k -> EnumMap k a -> Maybe (k, a)
- lookupGT :: forall k a. Enum k => k -> EnumMap k a -> Maybe (k, a)
- lookupLE :: forall k a. Enum k => k -> EnumMap k a -> Maybe (k, a)
- lookupGE :: forall k a. Enum k => k -> EnumMap k a -> Maybe (k, a)
- null :: forall k a. EnumMap k a -> Bool
- size :: forall k a. EnumMap k a -> Int
- union :: forall k a. EnumMap k a -> EnumMap k a -> EnumMap k a
- unionWith :: forall k a. (a -> a -> a) -> EnumMap k a -> EnumMap k a -> EnumMap k a
- unionWithKey :: Enum k => (k -> a -> a -> a) -> EnumMap k a -> EnumMap k a -> EnumMap k a
- unions :: forall f k a. (Foldable f, Coercible (f (IntMap a)) (f (EnumMap k a))) => f (EnumMap k a) -> EnumMap k a
- unionsWith :: forall f k a. (Foldable f, Coercible (f (IntMap a)) (f (EnumMap k a))) => (a -> a -> a) -> f (EnumMap k a) -> EnumMap k a
- difference :: forall k a b. EnumMap k a -> EnumMap k b -> EnumMap k a
- (\\) :: forall k a b. EnumMap k a -> EnumMap k b -> EnumMap k a
- differenceWith :: forall k a b. (a -> b -> Maybe a) -> EnumMap k a -> EnumMap k b -> EnumMap k a
- differenceWithKey :: Enum k => (k -> a -> b -> Maybe a) -> EnumMap k a -> EnumMap k b -> EnumMap k a
- intersection :: forall k a b. EnumMap k a -> EnumMap k b -> EnumMap k a
- intersectionWith :: forall k a b c. (a -> b -> c) -> EnumMap k a -> EnumMap k b -> EnumMap k c
- intersectionWithKey :: Enum k => (k -> a -> b -> c) -> EnumMap k a -> EnumMap k b -> EnumMap k c
- disjoint :: forall k a b. EnumMap k a -> EnumMap k b -> Bool
- mergeWithKey :: Enum k => (k -> a -> b -> Maybe c) -> (EnumMap k a -> EnumMap k c) -> (EnumMap k b -> EnumMap k c) -> EnumMap k a -> EnumMap k b -> EnumMap k c
- map :: forall k a b. (a -> b) -> EnumMap k a -> EnumMap k b
- mapWithKey :: Enum k => (k -> a -> b) -> EnumMap k a -> EnumMap k b
- traverseWithKey :: (Enum k, Applicative t) => (k -> a -> t b) -> EnumMap k a -> t (EnumMap k b)
- mapAccum :: forall k a b c. (a -> b -> (a, c)) -> a -> EnumMap k b -> (a, EnumMap k c)
- mapAccumWithKey :: Enum k => (a -> k -> b -> (a, c)) -> a -> EnumMap k b -> (a, EnumMap k c)
- mapAccumRWithKey :: Enum k => (a -> k -> b -> (a, c)) -> a -> EnumMap k b -> (a, EnumMap k c)
- mapKeys :: forall k1 k2 a. (Enum k1, Enum k2) => (k1 -> k2) -> EnumMap k1 a -> EnumMap k2 a
- mapKeysWith :: (Enum k1, Enum k2) => (a -> a -> a) -> (k1 -> k2) -> EnumMap k1 a -> EnumMap k2 a
- mapKeysMonotonic :: forall k1 k2 a. (Enum k1, Enum k2) => (k1 -> k2) -> EnumMap k1 a -> EnumMap k2 a
- foldr :: forall k a b. (a -> b -> b) -> b -> EnumMap k a -> b
- foldl :: forall k a b. (a -> b -> a) -> a -> EnumMap k b -> a
- foldrWithKey :: Enum k => (k -> a -> b -> b) -> b -> EnumMap k a -> b
- foldlWithKey :: Enum k => (a -> k -> b -> a) -> a -> EnumMap k b -> a
- foldMapWithKey :: (Enum k, Monoid m) => (k -> a -> m) -> EnumMap k a -> m
- foldr' :: forall k a b. (a -> b -> b) -> b -> EnumMap k a -> b
- foldl' :: forall k a b. (a -> b -> a) -> a -> EnumMap k b -> a
- foldrWithKey' :: Enum k => (k -> a -> b -> b) -> b -> EnumMap k a -> b
- foldlWithKey' :: Enum k => (a -> k -> b -> a) -> a -> EnumMap k b -> a
- elems :: forall k a. EnumMap k a -> [a]
- keys :: forall k a. Enum k => EnumMap k a -> [k]
- assocs :: forall k a. Enum k => EnumMap k a -> [(k, a)]
- keysSet :: forall k a. EnumMap k a -> EnumSet k
- toList :: forall k a. Enum k => EnumMap k a -> [(k, a)]
- toAscList :: forall k a. Enum k => EnumMap k a -> [(k, a)]
- toDescList :: forall k a. Enum k => EnumMap k a -> [(k, a)]
- filter :: forall k a. (a -> Bool) -> EnumMap k a -> EnumMap k a
- filterWithKey :: Enum k => (k -> a -> Bool) -> EnumMap k a -> EnumMap k a
- restrictKeys :: forall k a. EnumMap k a -> EnumSet k -> EnumMap k a
- withoutKeys :: forall k a. EnumMap k a -> EnumSet k -> EnumMap k a
- partition :: forall k a. (a -> Bool) -> EnumMap k a -> (EnumMap k a, EnumMap k a)
- partitionWithKey :: Enum k => (k -> a -> Bool) -> EnumMap k a -> (EnumMap k a, EnumMap k a)
- mapMaybe :: forall k a b. (a -> Maybe b) -> EnumMap k a -> EnumMap k b
- mapMaybeWithKey :: Enum k => (k -> a -> Maybe b) -> EnumMap k a -> EnumMap k b
- mapEither :: forall k a b c. (a -> Either b c) -> EnumMap k a -> (EnumMap k b, EnumMap k c)
- mapEitherWithKey :: Enum k => (k -> a -> Either b c) -> EnumMap k a -> (EnumMap k b, EnumMap k c)
- split :: forall k a. Enum k => k -> EnumMap k a -> (EnumMap k a, EnumMap k a)
- splitLookup :: forall k a. Enum k => k -> EnumMap k a -> (EnumMap k a, Maybe a, EnumMap k a)
- splitRoot :: forall k a. EnumMap k a -> [EnumMap k a]
- isSubmapOf :: forall k a. Eq a => EnumMap k a -> EnumMap k a -> Bool
- isSubmapOfBy :: forall k a b. (a -> b -> Bool) -> EnumMap k a -> EnumMap k b -> Bool
- isProperSubmapOf :: forall k a. Eq a => EnumMap k a -> EnumMap k a -> Bool
- isProperSubmapOfBy :: forall k a b. (a -> b -> Bool) -> EnumMap k a -> EnumMap k b -> Bool
- lookupMin :: forall k a. Enum k => EnumMap k a -> Maybe (k, a)
- lookupMax :: forall k a. Enum k => EnumMap k a -> Maybe (k, a)
- findMin :: forall k a. Enum k => EnumMap k a -> (k, a)
- findMax :: forall k a. Enum k => EnumMap k a -> (k, a)
- deleteMin :: forall k a. EnumMap k a -> EnumMap k a
- deleteMax :: forall k a. EnumMap k a -> EnumMap k a
- deleteFindMin :: forall k a. Enum k => EnumMap k a -> ((k, a), EnumMap k a)
- deleteFindMax :: forall k a. Enum k => EnumMap k a -> ((k, a), EnumMap k a)
- updateMin :: forall k a. (a -> Maybe a) -> EnumMap k a -> EnumMap k a
- updateMax :: forall k a. (a -> Maybe a) -> EnumMap k a -> EnumMap k a
- updateMinWithKey :: Enum k => (k -> a -> Maybe a) -> EnumMap k a -> EnumMap k a
- updateMaxWithKey :: Enum k => (k -> a -> Maybe a) -> EnumMap k a -> EnumMap k a
- minView :: forall k a. EnumMap k a -> Maybe (a, EnumMap k a)
- maxView :: forall k a. EnumMap k a -> Maybe (a, EnumMap k a)
- minViewWithKey :: forall k a. Enum k => EnumMap k a -> Maybe ((k, a), EnumMap k a)
- maxViewWithKey :: forall k a. Enum k => EnumMap k a -> Maybe ((k, a), EnumMap k a)
Map type
Instances
Functor (EnumMap k) Source # | |
Foldable (EnumMap k) Source # | |
Defined in Data.EnumMap.Wrapper fold :: Monoid m => EnumMap k m -> m # foldMap :: Monoid m => (a -> m) -> EnumMap k a -> m # foldr :: (a -> b -> b) -> b -> EnumMap k a -> b # foldr' :: (a -> b -> b) -> b -> EnumMap k a -> b # foldl :: (b -> a -> b) -> b -> EnumMap k a -> b # foldl' :: (b -> a -> b) -> b -> EnumMap k a -> b # foldr1 :: (a -> a -> a) -> EnumMap k a -> a # foldl1 :: (a -> a -> a) -> EnumMap k a -> a # toList :: EnumMap k a -> [a] # length :: EnumMap k a -> Int # elem :: Eq a => a -> EnumMap k a -> Bool # maximum :: Ord a => EnumMap k a -> a # minimum :: Ord a => EnumMap k a -> a # | |
Traversable (EnumMap k) Source # | |
Eq1 (EnumMap k) Source # | |
Ord1 (EnumMap k) Source # | |
Defined in Data.EnumMap.Wrapper | |
Read1 (EnumMap k) Source # | |
Defined in Data.EnumMap.Wrapper | |
Show1 (EnumMap k) Source # | |
IsList (EnumMap k a) Source # | |
Eq a => Eq (EnumMap k a) Source # | |
(Data k, Data a) => Data (EnumMap k a) Source # | |
Defined in Data.EnumMap.Wrapper gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> EnumMap k a -> c (EnumMap k a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (EnumMap k a) # toConstr :: EnumMap k a -> Constr # dataTypeOf :: EnumMap k a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (EnumMap k a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (EnumMap k a)) # gmapT :: (forall b. Data b => b -> b) -> EnumMap k a -> EnumMap k a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> EnumMap k a -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> EnumMap k a -> r # gmapQ :: (forall d. Data d => d -> u) -> EnumMap k a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> EnumMap k a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> EnumMap k a -> m (EnumMap k a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> EnumMap k a -> m (EnumMap k a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> EnumMap k a -> m (EnumMap k a) # | |
Ord a => Ord (EnumMap k a) Source # | |
Defined in Data.EnumMap.Wrapper | |
Read a => Read (EnumMap k a) Source # | |
Show a => Show (EnumMap k a) Source # | |
Semigroup (EnumMap k a) Source # | |
Monoid (EnumMap k a) Source # | |
NFData a => NFData (EnumMap k a) Source # | |
Defined in Data.EnumMap.Wrapper | |
type Item (EnumMap k a) Source # | |
Defined in Data.EnumMap.Wrapper |
Construction
From Unordered Lists
fromListWith :: Enum k => (a -> a -> a) -> [(k, a)] -> EnumMap k a Source #
fromListWithKey :: Enum k => (k -> a -> a -> a) -> [(k, a)] -> EnumMap k a Source #
From Ascending Lists
fromAscList :: Enum k => [(k, a)] -> EnumMap k a Source #
fromAscListWith :: Enum k => (a -> a -> a) -> [(k, a)] -> EnumMap k a Source #
fromAscListWithKey :: Enum k => (k -> a -> a -> a) -> [(k, a)] -> EnumMap k a Source #
fromDistinctAscList :: Enum k => [(k, a)] -> EnumMap k a Source #
Insertion
insertLookupWithKey :: Enum k => (k -> a -> a -> a) -> k -> a -> EnumMap k a -> (Maybe a, EnumMap k a) Source #
Deletion/Update
updateLookupWithKey :: Enum k => (k -> a -> Maybe a) -> k -> EnumMap k a -> (Maybe a, EnumMap k a) Source #
alterF :: (Enum k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> EnumMap k a -> f (EnumMap k a) Source #
Query
Lookup
findWithDefault :: Enum k => a -> k -> EnumMap k a -> a Source #
Size
Combine
Union
unions :: forall f k a. (Foldable f, Coercible (f (IntMap a)) (f (EnumMap k a))) => f (EnumMap k a) -> EnumMap k a Source #
unionsWith :: forall f k a. (Foldable f, Coercible (f (IntMap a)) (f (EnumMap k a))) => (a -> a -> a) -> f (EnumMap k a) -> EnumMap k a Source #
Difference
differenceWith :: forall k a b. (a -> b -> Maybe a) -> EnumMap k a -> EnumMap k b -> EnumMap k a Source #
differenceWithKey :: Enum k => (k -> a -> b -> Maybe a) -> EnumMap k a -> EnumMap k b -> EnumMap k a Source #
Intersection
intersectionWith :: forall k a b c. (a -> b -> c) -> EnumMap k a -> EnumMap k b -> EnumMap k c Source #
intersectionWithKey :: Enum k => (k -> a -> b -> c) -> EnumMap k a -> EnumMap k b -> EnumMap k c Source #
Disjoint
Universal combining function
mergeWithKey :: Enum k => (k -> a -> b -> Maybe c) -> (EnumMap k a -> EnumMap k c) -> (EnumMap k b -> EnumMap k c) -> EnumMap k a -> EnumMap k b -> EnumMap k c Source #
Traversal
Map
traverseWithKey :: (Enum k, Applicative t) => (k -> a -> t b) -> EnumMap k a -> t (EnumMap k b) Source #
mapAccumWithKey :: Enum k => (a -> k -> b -> (a, c)) -> a -> EnumMap k b -> (a, EnumMap k c) Source #
mapAccumRWithKey :: Enum k => (a -> k -> b -> (a, c)) -> a -> EnumMap k b -> (a, EnumMap k c) Source #
mapKeys :: forall k1 k2 a. (Enum k1, Enum k2) => (k1 -> k2) -> EnumMap k1 a -> EnumMap k2 a Source #
mapKeysWith :: (Enum k1, Enum k2) => (a -> a -> a) -> (k1 -> k2) -> EnumMap k1 a -> EnumMap k2 a Source #
mapKeysMonotonic :: forall k1 k2 a. (Enum k1, Enum k2) => (k1 -> k2) -> EnumMap k1 a -> EnumMap k2 a Source #
Folds
foldrWithKey :: Enum k => (k -> a -> b -> b) -> b -> EnumMap k a -> b Source #
foldlWithKey :: Enum k => (a -> k -> b -> a) -> a -> EnumMap k b -> a Source #
Strict folds
foldrWithKey' :: Enum k => (k -> a -> b -> b) -> b -> EnumMap k a -> b Source #
foldlWithKey' :: Enum k => (a -> k -> b -> a) -> a -> EnumMap k b -> a Source #
Conversion
Lists
Ordered lists
toDescList :: forall k a. Enum k => EnumMap k a -> [(k, a)] Source #
Filter
partitionWithKey :: Enum k => (k -> a -> Bool) -> EnumMap k a -> (EnumMap k a, EnumMap k a) Source #
mapEither :: forall k a b c. (a -> Either b c) -> EnumMap k a -> (EnumMap k b, EnumMap k c) Source #
mapEitherWithKey :: Enum k => (k -> a -> Either b c) -> EnumMap k a -> (EnumMap k b, EnumMap k c) Source #
splitLookup :: forall k a. Enum k => k -> EnumMap k a -> (EnumMap k a, Maybe a, EnumMap k a) Source #