ListLike-4.6.3: Generalized support for list-like structures

Safe HaskellSafe
LanguageHaskell98

Data.ListLike.DList

Contents

Description

ListLike instances for DList

Orphan instances

StringLike (DList Char) Source # 
Instance details

FoldableLL (DList a) a Source # 
Instance details

Methods

foldl :: (a0 -> a -> a0) -> a0 -> DList a -> a0 Source #

foldl' :: (a0 -> a -> a0) -> a0 -> DList a -> a0 Source #

foldl1 :: (a -> a -> a) -> DList a -> a Source #

foldr :: (a -> b -> b) -> b -> DList a -> b Source #

foldr' :: (a -> b -> b) -> b -> DList a -> b Source #

foldr1 :: (a -> a -> a) -> DList a -> a Source #

ListLike (DList a) a Source # 
Instance details

Methods

empty :: DList a Source #

singleton :: a -> DList a Source #

cons :: a -> DList a -> DList a Source #

snoc :: DList a -> a -> DList a Source #

append :: DList a -> DList a -> DList a Source #

head :: DList a -> a Source #

uncons :: DList a -> Maybe (a, DList a) Source #

last :: DList a -> a Source #

tail :: DList a -> DList a Source #

init :: DList a -> DList a Source #

null :: DList a -> Bool Source #

length :: DList a -> Int Source #

map :: ListLike full' item' => (a -> item') -> DList a -> full' Source #

rigidMap :: (a -> a) -> DList a -> DList a Source #

reverse :: DList a -> DList a Source #

intersperse :: a -> DList a -> DList a Source #

concat :: ListLike full' (DList a) => full' -> DList a Source #

concatMap :: ListLike full' item' => (a -> full') -> DList a -> full' Source #

rigidConcatMap :: (a -> DList a) -> DList a -> DList a Source #

any :: (a -> Bool) -> DList a -> Bool Source #

all :: (a -> Bool) -> DList a -> Bool Source #

maximum :: DList a -> a Source #

minimum :: DList a -> a Source #

replicate :: Int -> a -> DList a Source #

take :: Int -> DList a -> DList a Source #

drop :: Int -> DList a -> DList a Source #

splitAt :: Int -> DList a -> (DList a, DList a) Source #

takeWhile :: (a -> Bool) -> DList a -> DList a Source #

dropWhile :: (a -> Bool) -> DList a -> DList a Source #

dropWhileEnd :: (a -> Bool) -> DList a -> DList a Source #

span :: (a -> Bool) -> DList a -> (DList a, DList a) Source #

break :: (a -> Bool) -> DList a -> (DList a, DList a) Source #

group :: (ListLike full' (DList a), Eq a) => DList a -> full' Source #

inits :: ListLike full' (DList a) => DList a -> full' Source #

tails :: ListLike full' (DList a) => DList a -> full' Source #

isPrefixOf :: DList a -> DList a -> Bool Source #

isSuffixOf :: DList a -> DList a -> Bool Source #

isInfixOf :: DList a -> DList a -> Bool Source #

stripPrefix :: DList a -> DList a -> Maybe (DList a) Source #

stripSuffix :: DList a -> DList a -> Maybe (DList a) Source #

elem :: a -> DList a -> Bool Source #

notElem :: a -> DList a -> Bool Source #

find :: (a -> Bool) -> DList a -> Maybe a Source #

filter :: (a -> Bool) -> DList a -> DList a Source #

partition :: (a -> Bool) -> DList a -> (DList a, DList a) Source #

index :: DList a -> Int -> a Source #

elemIndex :: a -> DList a -> Maybe Int Source #

elemIndices :: (Eq a, ListLike result Int) => a -> DList a -> result Source #

findIndex :: (a -> Bool) -> DList a -> Maybe Int Source #

findIndices :: ListLike result Int => (a -> Bool) -> DList a -> result Source #

sequence :: (Monad m, ListLike fullinp (m a)) => fullinp -> m (DList a) Source #

mapM :: (Monad m, ListLike full' item') => (a -> m item') -> DList a -> m full' Source #

rigidMapM :: Monad m => (a -> m a) -> DList a -> m (DList a) Source #

nub :: DList a -> DList a Source #

delete :: a -> DList a -> DList a Source #

deleteFirsts :: DList a -> DList a -> DList a Source #

union :: DList a -> DList a -> DList a Source #

intersect :: DList a -> DList a -> DList a Source #

sort :: DList a -> DList a Source #

insert :: a -> DList a -> DList a Source #

toList :: DList a -> [a] Source #

fromList :: [a] -> DList a Source #

fromListLike :: ListLike full' a => DList a -> full' Source #

nubBy :: (a -> a -> Bool) -> DList a -> DList a Source #

deleteBy :: (a -> a -> Bool) -> a -> DList a -> DList a Source #

deleteFirstsBy :: (a -> a -> Bool) -> DList a -> DList a -> DList a Source #

unionBy :: (a -> a -> Bool) -> DList a -> DList a -> DList a Source #

intersectBy :: (a -> a -> Bool) -> DList a -> DList a -> DList a Source #

groupBy :: (ListLike full' (DList a), Eq a) => (a -> a -> Bool) -> DList a -> full' Source #

sortBy :: (a -> a -> Ordering) -> DList a -> DList a Source #

insertBy :: (a -> a -> Ordering) -> a -> DList a -> DList a Source #

genericLength :: Num a0 => DList a -> a0 Source #

genericTake :: Integral a0 => a0 -> DList a -> DList a Source #

genericDrop :: Integral a0 => a0 -> DList a -> DList a Source #

genericSplitAt :: Integral a0 => a0 -> DList a -> (DList a, DList a) Source #

genericReplicate :: Integral a0 => a0 -> a -> DList a Source #