FiniteMap-0.1: A finite map implementation, derived from the paper: Efficient sets: a balancing act, S. Adams, Journal of functional programming 3(4) Oct 1993, pp553-562

Data.FiniteMap

Documentation

data FiniteMap key elt Source

Instances

(Eq key, Eq elt) => Eq (FiniteMap key elt) 

unitFM :: key -> elt -> FiniteMap key eltSource

listToFM :: Ord key => [(key, elt)] -> FiniteMap key eltSource

addToFM :: Ord key => FiniteMap key elt -> key -> elt -> FiniteMap key eltSource

addToFM_C :: Ord key => (elt -> elt -> elt) -> FiniteMap key elt -> key -> elt -> FiniteMap key eltSource

addListToFM :: Ord key => FiniteMap key elt -> [(key, elt)] -> FiniteMap key eltSource

addListToFM_C :: Ord key => (elt -> elt -> elt) -> FiniteMap key elt -> [(key, elt)] -> FiniteMap key eltSource

delFromFM :: Ord key => FiniteMap key elt -> key -> FiniteMap key eltSource

delListFromFM :: Ord key => FiniteMap key elt -> [key] -> FiniteMap key eltSource

plusFM :: Ord key => FiniteMap key elt -> FiniteMap key elt -> FiniteMap key eltSource

plusFM_C :: Ord key => (elt -> elt -> elt) -> FiniteMap key elt -> FiniteMap key elt -> FiniteMap key eltSource

minusFM :: Ord key => FiniteMap key elt -> FiniteMap key elt -> FiniteMap key eltSource

foldFM :: (key -> elt -> a -> a) -> a -> FiniteMap key elt -> aSource

intersectFM :: Ord key => FiniteMap key elt -> FiniteMap key elt -> FiniteMap key eltSource

intersectFM_C :: Ord key => (elt1 -> elt2 -> elt3) -> FiniteMap key elt1 -> FiniteMap key elt2 -> FiniteMap key elt3Source

mapFM :: (key -> elt1 -> elt2) -> FiniteMap key elt1 -> FiniteMap key elt2Source

mapMaybeFM :: Ord key => (key -> elt1 -> Maybe elt2) -> FiniteMap key elt1 -> FiniteMap key elt2Source

filterFM :: Ord key => (key -> elt -> Bool) -> FiniteMap key elt -> FiniteMap key eltSource

sizeFM :: FiniteMap key elt -> IntSource

elemFM :: Ord key => key -> FiniteMap key elt -> BoolSource

lookupFM :: Ord key => FiniteMap key elt -> key -> Maybe eltSource

lookupWithDefaultFM :: Ord key => FiniteMap key elt -> elt -> key -> eltSource

fmToList :: FiniteMap key elt -> [(key, elt)]Source

keysFM :: FiniteMap key elt -> [key]Source

eltsFM :: FiniteMap key elt -> [elt]Source