EdisonCore-1.2.2.1: A library of efficent, purely-functional data structures (Core Implementations)

PortabilityGHC, Hugs (MPTC and FD)
Stabilitystable
Maintainerrobdockins AT fastmail DOT fm
Safe HaskellNone

Data.Edison.Assoc.StandardMap

Contents

Description

The standard library Data.Map repackaged as an Edison associative collection.

Synopsis

Type of standard finite maps

type FM = MapSource

AssocX operations

singleton :: Ord k => k -> a -> FM k aSource

fromSeq :: (Ord k, Sequence seq) => seq (k, a) -> FM k aSource

insert :: Ord k => k -> a -> FM k a -> FM k aSource

insertSeq :: (Ord k, Sequence seq) => seq (k, a) -> FM k a -> FM k aSource

union :: Ord k => FM k a -> FM k a -> FM k aSource

unionSeq :: (Ord k, Sequence seq) => seq (FM k a) -> FM k aSource

delete :: Ord k => k -> FM k a -> FM k aSource

deleteAll :: Ord k => k -> FM k a -> FM k aSource

deleteSeq :: (Ord k, Sequence seq) => seq k -> FM k a -> FM k aSource

null :: FM k a -> BoolSource

size :: FM k a -> IntSource

member :: Ord k => k -> FM k a -> BoolSource

count :: Ord k => k -> FM k a -> IntSource

lookup :: Ord k => k -> FM k a -> aSource

lookupM :: (Ord k, Monad m) => k -> FM k a -> m aSource

lookupAll :: (Ord k, Sequence seq) => k -> FM k a -> seq aSource

lookupAndDelete :: Ord k => k -> FM k a -> (a, FM k a)Source

lookupAndDeleteM :: (Ord k, Monad m) => k -> FM k a -> m (a, FM k a)Source

lookupAndDeleteAll :: (Ord k, Sequence seq) => k -> FM k a -> (seq a, FM k a)Source

lookupWithDefault :: Ord k => a -> k -> FM k a -> aSource

adjust :: Ord k => (a -> a) -> k -> FM k a -> FM k aSource

adjustAll :: Ord k => (a -> a) -> k -> FM k a -> FM k aSource

adjustOrInsert :: Ord k => (a -> a) -> a -> k -> FM k a -> FM k aSource

adjustAllOrInsert :: Ord k => (a -> a) -> a -> k -> FM k a -> FM k aSource

adjustOrDelete :: Ord k => (a -> Maybe a) -> k -> FM k a -> FM k aSource

adjustOrDeleteAll :: Ord k => (a -> Maybe a) -> k -> FM k a -> FM k aSource

strict :: Ord k => FM k a -> FM k aSource

strictWith :: Ord k => (a -> b) -> FM k a -> FM k aSource

map :: (Ord k, Functor (FM k)) => (a -> b) -> FM k a -> FM k bSource

fold :: Ord k => (a -> b -> b) -> b -> FM k a -> bSource

fold' :: Ord k => (a -> b -> b) -> b -> FM k a -> bSource

fold1 :: Ord k => (a -> a -> a) -> FM k a -> aSource

fold1' :: Ord k => (a -> a -> a) -> FM k a -> aSource

filter :: Ord k => (a -> Bool) -> FM k a -> FM k aSource

partition :: Ord k => (a -> Bool) -> FM k a -> (FM k a, FM k a)Source

elements :: (Ord k, Sequence seq) => FM k a -> seq aSource

FiniteMapX operations

fromSeqWith :: (Ord k, Sequence seq) => (a -> a -> a) -> seq (k, a) -> FM k aSource

fromSeqWithKey :: (Ord k, Sequence seq) => (k -> a -> a -> a) -> seq (k, a) -> FM k aSource

insertWith :: Ord k => (a -> a -> a) -> k -> a -> FM k a -> FM k aSource

insertWithKey :: Ord k => (k -> a -> a -> a) -> k -> a -> FM k a -> FM k aSource

insertSeqWith :: (Ord k, Sequence seq) => (a -> a -> a) -> seq (k, a) -> FM k a -> FM k aSource

insertSeqWithKey :: (Ord k, Sequence seq) => (k -> a -> a -> a) -> seq (k, a) -> FM k a -> FM k aSource

unionl :: Ord k => FM k a -> FM k a -> FM k aSource

unionr :: Ord k => FM k a -> FM k a -> FM k aSource

unionWith :: Ord k => (a -> a -> a) -> FM k a -> FM k a -> FM k aSource

unionSeqWith :: (Ord k, Sequence seq) => (a -> a -> a) -> seq (FM k a) -> FM k aSource

intersectionWith :: Ord k => (a -> b -> c) -> FM k a -> FM k b -> FM k cSource

difference :: Ord k => FM k a -> FM k b -> FM k aSource

properSubset :: Ord k => FM k a -> FM k b -> BoolSource

subset :: Ord k => FM k a -> FM k b -> BoolSource

properSubmapBy :: Ord k => (a -> a -> Bool) -> FM k a -> FM k a -> BoolSource

submapBy :: Ord k => (a -> a -> Bool) -> FM k a -> FM k a -> BoolSource

sameMapBy :: Ord k => (a -> a -> Bool) -> FM k a -> FM k a -> BoolSource

properSubmap :: (Ord k, Eq a) => FM k a -> FM k a -> BoolSource

submap :: (Ord k, Eq a) => FM k a -> FM k a -> BoolSource

sameMap :: (Ord k, Eq a) => FM k a -> FM k a -> BoolSource

OrdAssocX operations

minView :: (Ord k, Monad m) => FM k a -> m (a, FM k a)Source

minElem :: Ord k => FM k a -> aSource

deleteMin :: Ord k => FM k a -> FM k aSource

unsafeInsertMin :: Ord k => k -> a -> FM k a -> FM k aSource

maxView :: (Ord k, Monad m) => FM k a -> m (a, FM k a)Source

maxElem :: Ord k => FM k a -> aSource

deleteMax :: Ord k => FM k a -> FM k aSource

unsafeInsertMax :: Ord k => k -> a -> FM k a -> FM k aSource

foldr :: Ord k => (a -> b -> b) -> b -> FM k a -> bSource

foldr' :: Ord k => (a -> b -> b) -> b -> FM k a -> bSource

foldl :: Ord k => (b -> a -> b) -> b -> FM k a -> bSource

foldl' :: Ord k => (b -> a -> b) -> b -> FM k a -> bSource

foldr1 :: Ord k => (a -> a -> a) -> FM k a -> aSource

foldr1' :: Ord k => (a -> a -> a) -> FM k a -> aSource

foldl1 :: Ord k => (a -> a -> a) -> FM k a -> aSource

foldl1' :: Ord k => (a -> a -> a) -> FM k a -> aSource

unsafeFromOrdSeq :: (Ord k, Sequence seq) => seq (k, a) -> FM k aSource

unsafeAppend :: Ord k => FM k a -> FM k a -> FM k aSource

filterLT :: Ord k => k -> FM k a -> FM k aSource

filterLE :: Ord k => k -> FM k a -> FM k aSource

filterGT :: Ord k => k -> FM k a -> FM k aSource

filterGE :: Ord k => k -> FM k a -> FM k aSource

partitionLT_GE :: Ord k => k -> FM k a -> (FM k a, FM k a)Source

partitionLE_GT :: Ord k => k -> FM k a -> (FM k a, FM k a)Source

partitionLT_GT :: Ord k => k -> FM k a -> (FM k a, FM k a)Source

Assoc operations

toSeq :: (Ord k, Sequence seq) => FM k a -> seq (k, a)Source

keys :: (Ord k, Sequence seq) => FM k a -> seq kSource

mapWithKey :: Ord k => (k -> a -> b) -> FM k a -> FM k bSource

foldWithKey :: Ord k => (k -> a -> b -> b) -> b -> FM k a -> bSource

foldWithKey' :: Ord k => (k -> a -> b -> b) -> b -> FM k a -> bSource

filterWithKey :: Ord k => (k -> a -> Bool) -> FM k a -> FM k aSource

partitionWithKey :: Ord k => (k -> a -> Bool) -> FM k a -> (FM k a, FM k a)Source

OrdAssoc operations

minViewWithKey :: (Ord k, Monad m) => FM k a -> m ((k, a), FM k a)Source

minElemWithKey :: Ord k => FM k a -> (k, a)Source

maxViewWithKey :: (Ord k, Monad m) => FM k a -> m ((k, a), FM k a)Source

maxElemWithKey :: Ord k => FM k a -> (k, a)Source

foldrWithKey :: (k -> a -> b -> b) -> b -> FM k a -> bSource

foldrWithKey' :: (k -> a -> b -> b) -> b -> FM k a -> bSource

foldlWithKey :: (b -> k -> a -> b) -> b -> FM k a -> bSource

foldlWithKey' :: (b -> k -> a -> b) -> b -> FM k a -> bSource

toOrdSeq :: (Ord k, Sequence seq) => FM k a -> seq (k, a)Source

FiniteMap operations

unionWithKey :: Ord k => (k -> a -> a -> a) -> FM k a -> FM k a -> FM k aSource

unionSeqWithKey :: (Ord k, Sequence seq) => (k -> a -> a -> a) -> seq (FM k a) -> FM k aSource

intersectionWithKey :: Ord k => (k -> a -> b -> c) -> FM k a -> FM k b -> FM k cSource

Documentation