EdisonCore-1.3.2: A library of efficient, purely-functional data structures (Core Implementations)

CopyrightCopyright (c) 1998 2008 Chris Okasaki
LicenseMIT; see COPYRIGHT file for terms and conditions
Maintainerrobdockins AT fastmail DOT fm
Stabilityinternal (unstable)
PortabilityGHC / Hugs (MPTC and FD)
Safe HaskellNone
LanguageHaskell2010

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 Source #

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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