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

Copyright | Copyright (c) 1998, 2008 Chris Okasaki
License | MIT; see COPYRIGHT file for terms and conditions
Maintainer | robdockins AT fastmail DOT fm
Stability | internal (unstable)
Portability | GHC / Hugs (MPTC and FD)
Safe Haskell | None
Language | Haskell2010

Data.Edison.Coll.Defaults

Description

This module provides default implementations of many of the collection methods. The functions in this module are used to fill out collection implementations and are not intended to be used directly by end users.

# Documentation

insertSeqUsingUnion :: (CollX c a, Sequence seq) => seq a -> c -> c #

insertSeqUsingFoldr :: (CollX c a, Sequence seq) => seq a -> c -> c #

memberUsingFold :: Coll c a => c -> a -> Bool #

countUsingMember :: SetX c a => a -> c -> Int #

lookupAllUsingLookupM :: (Set c a, Sequence seq) => a -> c -> seq a #

deleteSeqUsingDelete :: (CollX c a, Sequence seq) => seq a -> c -> c #

unionSeqUsingFoldl :: (CollX c a, Sequence seq) => seq c -> c #

unionSeqUsingFoldl' :: (CollX c a, Sequence seq) => seq c -> c #

unionSeqUsingReduce :: (CollX c a, Sequence seq) => seq c -> c #

fromSeqUsingFoldr :: (CollX c a, Sequence seq) => seq a -> c #

fromSeqUsingUnionSeq :: (CollX c a, Sequence seq) => seq a -> c #

toSeqUsingFold :: (Coll c a, Sequence seq) => c -> seq a #

unsafeInsertMaxUsingUnsafeAppend :: OrdCollX c a => a -> c -> c #

toOrdSeqUsingFoldr :: (OrdColl c a, Sequence seq) => c -> seq a #

unsafeFromOrdSeqUsingUnsafeInsertMin :: (OrdCollX c a, Sequence seq) => seq a -> c #

disjointUsingToOrdList :: OrdColl c a => c -> c -> Bool #

intersectWitnessUsingToOrdList :: (OrdColl c a, Monad m) => c -> c -> m (a, a) #

lookupUsingLookupM :: Coll c a => a -> c -> a #

lookupUsingLookupAll :: Coll c a => a -> c -> a #

lookupMUsingLookupAll :: (Coll c a, Monad m) => a -> c -> m a #

lookupWithDefaultUsingLookupAll :: Coll c a => a -> a -> c -> a #

lookupWithDefaultUsingLookupM :: Coll c a => a -> a -> c -> a #

deleteMaxUsingMaxView :: OrdColl c a => c -> c #

fromSeqWithUsingInsertWith :: (Set c a, Sequence seq) => (a -> a -> a) -> seq a -> c #

insertUsingInsertWith :: Set c a => a -> c -> c #

unionUsingUnionWith :: Set c a => c -> c -> c #

filterUsingOrdLists :: OrdColl c a => (a -> Bool) -> c -> c #

partitionUsingOrdLists :: OrdColl c a => (a -> Bool) -> c -> (c, c) #

intersectionUsingIntersectionWith :: Set c a => c -> c -> c #

differenceUsingOrdLists :: OrdSet c a => c -> c -> c #

symmetricDifferenceUsingDifference :: SetX c a => c -> c -> c #

properSubsetUsingOrdLists :: OrdSet c a => c -> c -> Bool #

subsetUsingOrdLists :: OrdSet c a => c -> c -> Bool #

properSubsetOnOrdLists :: Ord t => [t] -> [t] -> Bool #

subsetOnOrdLists :: Ord t => [t] -> [t] -> Bool #

insertSeqWithUsingInsertWith :: (Set c a, Sequence seq) => (a -> a -> a) -> seq a -> c -> c #

unionlUsingUnionWith :: Set c a => c -> c -> c #

unionrUsingUnionWith :: Set c a => c -> c -> c #

unionWithUsingOrdLists :: OrdSet c a => (a -> a -> a) -> c -> c -> c #

unionSeqWithUsingReducer :: (Set c a, Sequence seq) => (a -> a -> a) -> seq c -> c #

intersectionWithUsingOrdLists :: OrdSet c a => (a -> a -> a) -> c -> c -> c #

unsafeMapMonotonicUsingFoldr :: (OrdColl cin a, OrdCollX cout b) => (a -> b) -> cin -> cout #

showsPrecUsingToList :: (Coll c a, Show a) => Int -> c -> ShowS #

readsPrecUsingFromList :: (Coll c a, Read a) => Int -> ReadS c #

compareUsingToOrdList :: OrdColl c a => c -> c -> Ordering #