Data.Graph.Inductive.Internal.FiniteMap
 Contents Type Operations
Description
Simple Finite Maps. This implementation provides several useful methods that Data.FiniteMap does not.
Synopsis
data FiniteMap a b
 = Empty | Node Int (FiniteMap a b) (a, b) (FiniteMap a b)
emptyFM :: Ord a => FiniteMap a b
addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b
delFromFM :: Ord a => FiniteMap a b -> a -> FiniteMap a b
updFM :: Ord a => FiniteMap a b -> a -> (b -> b) -> FiniteMap a b
accumFM :: Ord a => FiniteMap a b -> a -> (b -> b -> b) -> b -> FiniteMap a b
splitFM :: Ord a => FiniteMap a b -> a -> Maybe (FiniteMap a b, (a, b))
isEmptyFM :: FiniteMap a b -> Bool
sizeFM :: Ord a => FiniteMap a b -> Int
lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b
elemFM :: Ord a => FiniteMap a b -> a -> Bool
rangeFM :: Ord a => FiniteMap a b -> a -> a -> [b]
minFM :: Ord a => FiniteMap a b -> Maybe (a, b)
maxFM :: Ord a => FiniteMap a b -> Maybe (a, b)
predFM :: Ord a => FiniteMap a b -> a -> Maybe (a, b)
succFM :: Ord a => FiniteMap a b -> a -> Maybe (a, b)
splitMinFM :: Ord a => FiniteMap a b -> Maybe (FiniteMap a b, (a, b))
fmToList :: Ord a => FiniteMap a b -> [(a, b)]
Type
 data FiniteMap a b Source
Constructors
 Empty Node Int (FiniteMap a b) (a, b) (FiniteMap a b)
Instances
 (Ord a, ??? a b) => Eq (FiniteMap a b) (Show a, Show b, Ord a) => Show (FiniteMap a b)
Operations
 emptyFM :: Ord a => FiniteMap a b Source
 addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b Source
 delFromFM :: Ord a => FiniteMap a b -> a -> FiniteMap a b Source
 updFM :: Ord a => FiniteMap a b -> a -> (b -> b) -> FiniteMap a b Source
applies function to stored entry
 accumFM :: Ord a => FiniteMap a b -> a -> (b -> b -> b) -> b -> FiniteMap a b Source
defines or aggregates entries
 splitFM :: Ord a => FiniteMap a b -> a -> Maybe (FiniteMap a b, (a, b)) Source
combines delFrom and lookup
 isEmptyFM :: FiniteMap a b -> Bool Source
 sizeFM :: Ord a => FiniteMap a b -> Int Source
 lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b Source
 elemFM :: Ord a => FiniteMap a b -> a -> Bool Source
 rangeFM :: Ord a => FiniteMap a b -> a -> a -> [b] Source
applies lookup to an interval
 minFM :: Ord a => FiniteMap a b -> Maybe (a, b) Source
 maxFM :: Ord a => FiniteMap a b -> Maybe (a, b) Source
 predFM :: Ord a => FiniteMap a b -> a -> Maybe (a, b) Source
 succFM :: Ord a => FiniteMap a b -> a -> Maybe (a, b) Source
 splitMinFM :: Ord a => FiniteMap a b -> Maybe (FiniteMap a b, (a, b)) Source
combines splitFM and minFM
 fmToList :: Ord a => FiniteMap a b -> [(a, b)] Source