ghc-6.12.1: The GHC APISource codeContentsIndex
UniqFM
Contents
Unique-keyed mappings
Manipulating those mappings
Synopsis
data UniqFM ele
= EmptyUFM
| LeafUFM !FastInt ele
| NodeUFM !FastInt !FastInt (UniqFM ele) (UniqFM ele)
emptyUFM :: UniqFM elt
unitUFM :: Uniquable key => key -> elt -> UniqFM elt
unitDirectlyUFM :: Unique -> elt -> UniqFM elt
listToUFM :: Uniquable key => [(key, elt)] -> UniqFM elt
listToUFM_Directly :: [(Unique, elt)] -> UniqFM elt
listToUFM_C :: Uniquable key => (elt -> elt -> elt) -> [(key, elt)] -> UniqFM elt
addToUFM :: Uniquable key => UniqFM elt -> key -> elt -> UniqFM elt
addToUFM_C :: Uniquable key => (elt -> elt -> elt) -> UniqFM elt -> key -> elt -> UniqFM elt
addToUFM_Acc :: Uniquable key => (elt -> elts -> elts) -> (elt -> elts) -> UniqFM elts -> key -> elt -> UniqFM elts
addListToUFM :: Uniquable key => UniqFM elt -> [(key, elt)] -> UniqFM elt
addListToUFM_C :: Uniquable key => (elt -> elt -> elt) -> UniqFM elt -> [(key, elt)] -> UniqFM elt
addToUFM_Directly :: UniqFM elt -> Unique -> elt -> UniqFM elt
addListToUFM_Directly :: UniqFM elt -> [(Unique, elt)] -> UniqFM elt
delFromUFM :: Uniquable key => UniqFM elt -> key -> UniqFM elt
delFromUFM_Directly :: UniqFM elt -> Unique -> UniqFM elt
delListFromUFM :: Uniquable key => UniqFM elt -> [key] -> UniqFM elt
plusUFM :: UniqFM elt -> UniqFM elt -> UniqFM elt
plusUFM_C :: (elt -> elt -> elt) -> UniqFM elt -> UniqFM elt -> UniqFM elt
minusUFM :: UniqFM elt1 -> UniqFM elt2 -> UniqFM elt1
intersectsUFM :: UniqFM elt1 -> UniqFM elt2 -> Bool
intersectUFM :: UniqFM elt -> UniqFM elt -> UniqFM elt
intersectUFM_C :: (elt1 -> elt2 -> elt3) -> UniqFM elt1 -> UniqFM elt2 -> UniqFM elt3
foldUFM :: (elt -> a -> a) -> a -> UniqFM elt -> a
foldUFM_Directly :: (Unique -> elt -> a -> a) -> a -> UniqFM elt -> a
mapUFM :: (elt1 -> elt2) -> UniqFM elt1 -> UniqFM elt2
elemUFM :: Uniquable key => key -> UniqFM elt -> Bool
elemUFM_Directly :: Unique -> UniqFM elt -> Bool
filterUFM :: (elt -> Bool) -> UniqFM elt -> UniqFM elt
filterUFM_Directly :: (Unique -> elt -> Bool) -> UniqFM elt -> UniqFM elt
sizeUFM :: UniqFM elt -> Int
hashUFM :: UniqFM elt -> Int
isNullUFM :: UniqFM elt -> Bool
lookupUFM :: Uniquable key => UniqFM elt -> key -> Maybe elt
lookupUFM_Directly :: UniqFM elt -> Unique -> Maybe elt
lookupWithDefaultUFM :: Uniquable key => UniqFM elt -> elt -> key -> elt
lookupWithDefaultUFM_Directly :: UniqFM elt -> elt -> Unique -> elt
eltsUFM :: UniqFM elt -> [elt]
keysUFM :: UniqFM elt -> [Unique]
ufmToList :: UniqFM elt -> [(Unique, elt)]
Unique-keyed mappings
data UniqFM ele Source
UniqFM a is a mapping from Unique to a. DO NOT use these constructors directly unless you live in this module!
Constructors
EmptyUFM
LeafUFM !FastInt ele
NodeUFM !FastInt !FastInt (UniqFM ele) (UniqFM ele)
Manipulating those mappings
emptyUFM :: UniqFM eltSource
unitUFM :: Uniquable key => key -> elt -> UniqFM eltSource
unitDirectlyUFM :: Unique -> elt -> UniqFM eltSource
listToUFM :: Uniquable key => [(key, elt)] -> UniqFM eltSource
listToUFM_Directly :: [(Unique, elt)] -> UniqFM eltSource
listToUFM_C :: Uniquable key => (elt -> elt -> elt) -> [(key, elt)] -> UniqFM eltSource
addToUFM :: Uniquable key => UniqFM elt -> key -> elt -> UniqFM eltSource
addToUFM_C :: Uniquable key => (elt -> elt -> elt) -> UniqFM elt -> key -> elt -> UniqFM eltSource
addToUFM_Acc :: Uniquable key => (elt -> elts -> elts) -> (elt -> elts) -> UniqFM elts -> key -> elt -> UniqFM eltsSource
addListToUFM :: Uniquable key => UniqFM elt -> [(key, elt)] -> UniqFM eltSource
addListToUFM_C :: Uniquable key => (elt -> elt -> elt) -> UniqFM elt -> [(key, elt)] -> UniqFM eltSource
addToUFM_Directly :: UniqFM elt -> Unique -> elt -> UniqFM eltSource
addListToUFM_Directly :: UniqFM elt -> [(Unique, elt)] -> UniqFM eltSource
delFromUFM :: Uniquable key => UniqFM elt -> key -> UniqFM eltSource
delFromUFM_Directly :: UniqFM elt -> Unique -> UniqFM eltSource
delListFromUFM :: Uniquable key => UniqFM elt -> [key] -> UniqFM eltSource
plusUFM :: UniqFM elt -> UniqFM elt -> UniqFM eltSource
plusUFM_C :: (elt -> elt -> elt) -> UniqFM elt -> UniqFM elt -> UniqFM eltSource
minusUFM :: UniqFM elt1 -> UniqFM elt2 -> UniqFM elt1Source
intersectsUFM :: UniqFM elt1 -> UniqFM elt2 -> BoolSource
intersectUFM :: UniqFM elt -> UniqFM elt -> UniqFM eltSource
intersectUFM_C :: (elt1 -> elt2 -> elt3) -> UniqFM elt1 -> UniqFM elt2 -> UniqFM elt3Source
foldUFM :: (elt -> a -> a) -> a -> UniqFM elt -> aSource
foldUFM_Directly :: (Unique -> elt -> a -> a) -> a -> UniqFM elt -> aSource
mapUFM :: (elt1 -> elt2) -> UniqFM elt1 -> UniqFM elt2Source
elemUFM :: Uniquable key => key -> UniqFM elt -> BoolSource
elemUFM_Directly :: Unique -> UniqFM elt -> BoolSource
filterUFM :: (elt -> Bool) -> UniqFM elt -> UniqFM eltSource
filterUFM_Directly :: (Unique -> elt -> Bool) -> UniqFM elt -> UniqFM eltSource
sizeUFM :: UniqFM elt -> IntSource
hashUFM :: UniqFM elt -> IntSource
isNullUFM :: UniqFM elt -> BoolSource
lookupUFM :: Uniquable key => UniqFM elt -> key -> Maybe eltSource
lookupUFM_Directly :: UniqFM elt -> Unique -> Maybe eltSource
lookupWithDefaultUFM :: Uniquable key => UniqFM elt -> elt -> key -> eltSource
lookupWithDefaultUFM_Directly :: UniqFM elt -> elt -> Unique -> eltSource
eltsUFM :: UniqFM elt -> [elt]Source
keysUFM :: UniqFM elt -> [Unique]Source
ufmToList :: UniqFM elt -> [(Unique, elt)]Source
Produced by Haddock version 2.6.0