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.Coll.UnbalancedSet

Contents

Description

Sets implemented as unbalanced binary search trees.

Synopsis

Set type

data Set a Source

Instances

Ord a => Eq (Set a) 
Ord a => Ord (Set a) 
(Ord a, Read a) => Read (Set a) 
(Ord a, Show a) => Show (Set a) 
(Ord a, Arbitrary a) => Arbitrary (Set a) 
(Ord a, CoArbitrary a) => CoArbitrary (Set a) 
Ord a => Monoid (Set a) 
Ord a => CollX (Set a) a 
Ord a => OrdCollX (Set a) a 
Ord a => SetX (Set a) a 
Ord a => OrdSetX (Set a) a 
Ord a => Coll (Set a) a 
Ord a => OrdColl (Set a) a 
Ord a => Set (Set a) a 
Ord a => OrdSet (Set a) a 

CollX operations

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

insert :: Ord a => a -> Set a -> Set aSource

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

union :: Ord a => Set a -> Set a -> Set aSource

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

delete :: Ord a => a -> Set a -> Set aSource

deleteAll :: Ord a => a -> Set a -> Set aSource

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

member :: Ord a => a -> Set a -> BoolSource

count :: Ord a => a -> Set a -> IntSource

strict :: Set a -> Set aSource

Coll operations

toSeq :: (Ord a, Sequence seq) => Set a -> seq aSource

lookup :: Ord a => a -> Set a -> aSource

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

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

lookupWithDefault :: Ord a => a -> a -> Set a -> aSource

fold :: (a -> b -> b) -> b -> Set a -> bSource

fold' :: (a -> b -> b) -> b -> Set a -> bSource

fold1 :: (a -> a -> a) -> Set a -> aSource

fold1' :: (a -> a -> a) -> Set a -> aSource

filter :: Ord a => (a -> Bool) -> Set a -> Set aSource

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

strictWith :: (a -> b) -> Set a -> Set aSource

OrdCollX operations

deleteMin :: Ord a => Set a -> Set aSource

deleteMax :: Ord a => Set a -> Set aSource

unsafeInsertMin :: Ord a => a -> Set a -> Set aSource

unsafeInsertMax :: Ord a => a -> Set a -> Set aSource

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

unsafeAppend :: Ord a => Set a -> Set a -> Set aSource

filterLT :: Ord a => a -> Set a -> Set aSource

filterLE :: Ord a => a -> Set a -> Set aSource

filterGT :: Ord a => a -> Set a -> Set aSource

filterGE :: Ord a => a -> Set a -> Set aSource

partitionLT_GE :: Ord a => a -> Set a -> (Set a, Set a)Source

partitionLE_GT :: Ord a => a -> Set a -> (Set a, Set a)Source

partitionLT_GT :: Ord a => a -> Set a -> (Set a, Set a)Source

OrdColl operations

minView :: Monad m => Set a -> m (a, Set a)Source

minElem :: Set a -> aSource

maxView :: Monad m => Set a -> m (a, Set a)Source

maxElem :: Set a -> aSource

foldr :: (a -> b -> b) -> b -> Set a -> bSource

foldr' :: (a -> b -> b) -> b -> Set a -> bSource

foldl :: (b -> a -> b) -> b -> Set a -> bSource

foldl' :: (b -> a -> b) -> b -> Set a -> bSource

foldr1 :: (a -> a -> a) -> Set a -> aSource

foldr1' :: (a -> a -> a) -> Set a -> aSource

foldl1 :: (a -> a -> a) -> Set a -> aSource

foldl1' :: (a -> a -> a) -> Set a -> aSource

toOrdSeq :: (Ord a, Sequence seq) => Set a -> seq aSource

unsafeMapMonotonic :: Ord a => (a -> a) -> Set a -> Set aSource

SetX operations

intersection :: Ord a => Set a -> Set a -> Set aSource

difference :: Ord a => Set a -> Set a -> Set aSource

properSubset :: Ord a => Set a -> Set a -> BoolSource

subset :: Ord a => Set a -> Set a -> BoolSource

Set operations

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

insertWith :: Ord a => (a -> a -> a) -> a -> Set a -> Set aSource

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

unionl :: Ord a => Set a -> Set a -> Set aSource

unionr :: Ord a => Set a -> Set a -> Set aSource

unionWith :: Ord a => (a -> a -> a) -> Set a -> Set a -> Set aSource

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

intersectionWith :: Ord a => (a -> a -> a) -> Set a -> Set a -> Set aSource

Documentation