foundation-0.0.29: Alternative prelude with batteries and no dependencies
License BSD-style
Maintainer Nicolas Di Prima <nicolas@primetype.co.uk>
Stability statble
Portability portable
Safe Haskell None
Language Haskell2010

Foundation.List.DList

Description

Data structure for optimised operations (append, cons, snoc) on list

Documentation

data DList a Source #

Instances

Instances details
Monad DList Source #
Instance details

Defined in Foundation.List.DList

Functor DList Source #
Instance details

Defined in Foundation.List.DList

Applicative DList Source #
Instance details

Defined in Foundation.List.DList

IsList ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Associated Types

type Item ( DList a) Source #

Eq a => Eq ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Ord a => Ord ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Show a => Show ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Semigroup ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Monoid ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Collection ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Foldable ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Methods

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

foldr :: ( Element ( DList a) -> a0 -> a0) -> a0 -> DList a -> a0 Source #

foldr' :: ( Element ( DList a) -> a0 -> a0) -> a0 -> DList a -> a0 Source #

Sequential ( DList a) Source #
Instance details

Defined in Foundation.List.DList

Methods

take :: CountOf ( Element ( DList a)) -> DList a -> DList a Source #

revTake :: CountOf ( Element ( DList a)) -> DList a -> DList a Source #

drop :: CountOf ( Element ( DList a)) -> DList a -> DList a Source #

revDrop :: CountOf ( Element ( DList a)) -> DList a -> DList a Source #

splitAt :: CountOf ( Element ( DList a)) -> DList a -> ( DList a, DList a) Source #

revSplitAt :: CountOf ( Element ( DList a)) -> DList a -> ( DList a, DList a) Source #

splitOn :: ( Element ( DList a) -> Bool ) -> DList a -> [ DList a] Source #

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

breakEnd :: ( Element ( DList a) -> Bool ) -> DList a -> ( DList a, DList a) Source #

breakElem :: Element ( DList a) -> DList a -> ( DList a, DList a) Source #

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

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

intersperse :: Element ( DList a) -> DList a -> DList a Source #

intercalate :: Element ( DList a) -> DList a -> Element ( DList a) Source #

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

spanEnd :: ( Element ( DList a) -> Bool ) -> DList a -> ( DList a, DList a) Source #

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

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

reverse :: DList a -> DList a Source #

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

unsnoc :: DList a -> Maybe ( DList a, Element ( DList a)) Source #

snoc :: DList a -> Element ( DList a) -> DList a Source #

cons :: Element ( DList a) -> DList a -> DList a Source #

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

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

singleton :: Element ( DList a) -> DList a Source #

head :: NonEmpty ( DList a) -> Element ( DList a) Source #

last :: NonEmpty ( DList a) -> Element ( DList a) Source #

tail :: NonEmpty ( DList a) -> DList a Source #

init :: NonEmpty ( DList a) -> DList a Source #

replicate :: CountOf ( Element ( DList a)) -> Element ( DList a) -> DList a 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 #

type Item ( DList a) Source #
Instance details

Defined in Foundation.List.DList

type Item ( DList a) = a
type Element ( DList a) Source #
Instance details

Defined in Foundation.List.DList

type Element ( DList a) = a