ListLike-4.7.8.2: Generalized support for list-like structures
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.ListLike.Vector.Generic

Description

ListLike instance for any type supporting the Data.Vector.Generic interface. To avoid collisions with other Vector instances, this module must be imported directly.

Orphan instances

(Eq (v Char), Vector v Char) => StringLike (v Char) # 
Instance details

Methods

toString :: v Char -> String #

lines :: ListLike full (v Char) => v Char -> full #

words :: ListLike full (v Char) => v Char -> full #

unlines :: ListLike full (v Char) => full -> v Char #

unwords :: ListLike full (v Char) => full -> v Char #

show :: Show a => a -> v Char #

fromStringLike :: StringLike s' => v Char -> s' #

fromText :: Text -> v Char #

fromLazyText :: Text -> v Char #

(Eq (v Char), Vector v Char) => IsString (v Char) # 
Instance details

Methods

fromString :: String -> v Char #

(IsList (v a), Item (v a) ~ a, Monoid (v a), Eq (v a), Vector v a) => ListLike (v a) a # 
Instance details

Methods

empty :: v a #

singleton :: a -> v a #

cons :: a -> v a -> v a #

snoc :: v a -> a -> v a #

append :: v a -> v a -> v a #

head :: v a -> a #

uncons :: v a -> Maybe (a, v a) #

last :: v a -> a #

tail :: v a -> v a #

init :: v a -> v a #

null :: v a -> Bool #

length :: v a -> Int #

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

rigidMap :: (a -> a) -> v a -> v a #

reverse :: v a -> v a #

intersperse :: a -> v a -> v a #

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

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

rigidConcatMap :: (a -> v a) -> v a -> v a #

any :: (a -> Bool) -> v a -> Bool #

all :: (a -> Bool) -> v a -> Bool #

maximum :: v a -> a #

minimum :: v a -> a #

replicate :: Int -> a -> v a #

take :: Int -> v a -> v a #

drop :: Int -> v a -> v a #

splitAt :: Int -> v a -> (v a, v a) #

takeWhile :: (a -> Bool) -> v a -> v a #

dropWhile :: (a -> Bool) -> v a -> v a #

dropWhileEnd :: (a -> Bool) -> v a -> v a #

span :: (a -> Bool) -> v a -> (v a, v a) #

break :: (a -> Bool) -> v a -> (v a, v a) #

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

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

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

isPrefixOf :: v a -> v a -> Bool #

isSuffixOf :: v a -> v a -> Bool #

isInfixOf :: v a -> v a -> Bool #

stripPrefix :: v a -> v a -> Maybe (v a) #

stripSuffix :: v a -> v a -> Maybe (v a) #

elem :: a -> v a -> Bool #

notElem :: a -> v a -> Bool #

find :: (a -> Bool) -> v a -> Maybe a #

filter :: (a -> Bool) -> v a -> v a #

partition :: (a -> Bool) -> v a -> (v a, v a) #

index :: v a -> Int -> a #

elemIndex :: a -> v a -> Maybe Int #

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

findIndex :: (a -> Bool) -> v a -> Maybe Int #

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

sequence :: (Applicative m, ListLike fullinp (m a)) => fullinp -> m (v a) #

mapM :: (Applicative m, ListLike full' item') => (a -> m item') -> v a -> m full' #

rigidMapM :: Monad m => (a -> m a) -> v a -> m (v a) #

nub :: v a -> v a #

delete :: a -> v a -> v a #

deleteFirsts :: v a -> v a -> v a #

union :: v a -> v a -> v a #

intersect :: v a -> v a -> v a #

sort :: v a -> v a #

insert :: a -> v a -> v a #

toList' :: v a -> [a] #

fromList' :: [a] -> v a #

fromListLike :: ListLike full' a => v a -> full' #

nubBy :: (a -> a -> Bool) -> v a -> v a #

deleteBy :: (a -> a -> Bool) -> a -> v a -> v a #

deleteFirstsBy :: (a -> a -> Bool) -> v a -> v a -> v a #

unionBy :: (a -> a -> Bool) -> v a -> v a -> v a #

intersectBy :: (a -> a -> Bool) -> v a -> v a -> v a #

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

sortBy :: (a -> a -> Ordering) -> v a -> v a #

insertBy :: (a -> a -> Ordering) -> a -> v a -> v a #

genericLength :: Num a0 => v a -> a0 #

genericTake :: Integral a0 => a0 -> v a -> v a #

genericDrop :: Integral a0 => a0 -> v a -> v a #

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

genericReplicate :: Integral a0 => a0 -> a -> v a #

Vector v a => FoldableLL (v a) a # 
Instance details

Methods

foldl :: (a0 -> a -> a0) -> a0 -> v a -> a0 #

foldl' :: (a0 -> a -> a0) -> a0 -> v a -> a0 #

foldl1 :: (a -> a -> a) -> v a -> a #

foldr :: (a -> b -> b) -> b -> v a -> b #

foldr' :: (a -> b -> b) -> b -> v a -> b #

foldr1 :: (a -> a -> a) -> v a -> a #