metamorphic-0.1.2.3: metamorphisms: ana . cata or understanding folds and unfolds

Portabilityportable
Stabilityexperimental
MaintainerDrew Day <drewday@gmail.com>
Safe HaskellSafe-Infered

SimpleMap

Description

Code adapted from: http://web.engr.oregonstate.edu/~erwig/meta/

Documentation (and further updates in technique) forthcoming.

Documentation

data FiniteMap a b Source

Constructors

Empty 
Node (FiniteMap a b) (a, b) (FiniteMap a b) 

Instances

(Eq a, Eq b) => Eq (FiniteMap a b) 
(Show a, Show b, Ord a) => Show (FiniteMap a b) 

addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a bSource

delFromFM :: Ord a => FiniteMap a b -> a -> FiniteMap a bSource

updFM :: Ord a => FiniteMap a b -> a -> (b -> b) -> FiniteMap a bSource

accumFM :: Ord a => FiniteMap a b -> a -> (b -> b -> b) -> b -> FiniteMap a bSource

splitFM :: Ord a => FiniteMap a b -> a -> Maybe (FiniteMap a b, (a, b))Source

sizeFM :: Ord a => FiniteMap a b -> IntSource

lookupFM :: Ord a => FiniteMap a b -> a -> Maybe bSource

elemFM :: Ord a => FiniteMap a b -> a -> BoolSource

rangeFM :: Ord a => FiniteMap a b -> a -> a -> [b]Source

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

fmToList :: Ord a => FiniteMap a b -> [(a, b)]Source