sdp-quickcheck-0.2: SDP QuickCheck support
Copyright(c) Andrey Mulik 2020
LicenseBSD-style
Maintainerwork.a.mulik@gmail.com
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.SDP.Arbitrary

Description

Test.SDP.Arbitrary is service module that provides Arbitrary instances for sdp structures.

Synopsis

Exports

data SArray# e #

SArray# is immutable pseudo-primitive Int-indexed lazy boxed array type.

SArray# isn't real Haskell primitive (like GHC.Exts types) but for reliability and stability, I made it inaccessible to direct work.

Instances

Instances details
Functor SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

fmap :: (a -> b) -> SArray# a -> SArray# b #

(<$) :: a -> SArray# b -> SArray# a #

Applicative SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

pure :: a -> SArray# a #

(<*>) :: SArray# (a -> b) -> SArray# a -> SArray# b #

liftA2 :: (a -> b -> c) -> SArray# a -> SArray# b -> SArray# c #

(*>) :: SArray# a -> SArray# b -> SArray# b #

(<*) :: SArray# a -> SArray# b -> SArray# a #

Foldable SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

fold :: Monoid m => SArray# m -> m #

foldMap :: Monoid m => (a -> m) -> SArray# a -> m #

foldMap' :: Monoid m => (a -> m) -> SArray# a -> m #

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

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

foldl :: (b -> a -> b) -> b -> SArray# a -> b #

foldl' :: (b -> a -> b) -> b -> SArray# a -> b #

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

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

toList :: SArray# a -> [a] #

null :: SArray# a -> Bool #

length :: SArray# a -> Int #

elem :: Eq a => a -> SArray# a -> Bool #

maximum :: Ord a => SArray# a -> a #

minimum :: Ord a => SArray# a -> a #

sum :: Num a => SArray# a -> a #

product :: Num a => SArray# a -> a #

Traversable SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

traverse :: Applicative f => (a -> f b) -> SArray# a -> f (SArray# b) #

sequenceA :: Applicative f => SArray# (f a) -> f (SArray# a) #

mapM :: Monad m => (a -> m b) -> SArray# a -> m (SArray# b) #

sequence :: Monad m => SArray# (m a) -> m (SArray# a) #

Eq1 SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

liftEq :: (a -> b -> Bool) -> SArray# a -> SArray# b -> Bool #

Ord1 SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

liftCompare :: (a -> b -> Ordering) -> SArray# a -> SArray# b -> Ordering #

Zip SArray# 
Instance details

Defined in SDP.Prim.SArray

Methods

zap :: SArray# (a -> b) -> SArray# a -> SArray# b #

all2 :: (a -> b -> Bool) -> SArray# a -> SArray# b -> Bool #

all3 :: (a -> b -> c -> Bool) -> SArray# a -> SArray# b -> SArray# c -> Bool #

all4 :: (a -> b -> c -> d -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> Bool #

all5 :: (a -> b -> c -> d -> e -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> Bool #

all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> Bool #

any2 :: (a -> b -> Bool) -> SArray# a -> SArray# b -> Bool #

any3 :: (a -> b -> c -> Bool) -> SArray# a -> SArray# b -> SArray# c -> Bool #

any4 :: (a -> b -> c -> d -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> Bool #

any5 :: (a -> b -> c -> d -> e -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> Bool #

any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> Bool #

zip :: SArray# a -> SArray# b -> SArray# (a, b) #

zip3 :: SArray# a -> SArray# b -> SArray# c -> SArray# (a, b, c) #

zip4 :: SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# (a, b, c, d) #

zip5 :: SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# (a, b, c, d, e) #

zip6 :: SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> SArray# (a, b, c, d, e, f) #

zipWith :: (a -> b -> c) -> SArray# a -> SArray# b -> SArray# c #

zipWith3 :: (a -> b -> c -> d) -> SArray# a -> SArray# b -> SArray# c -> SArray# d #

zipWith4 :: (a -> b -> c -> d -> e) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e #

zipWith5 :: (a -> b -> c -> d -> e -> f) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f #

zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> SArray# a -> SArray# b -> SArray# c -> SArray# d -> SArray# e -> SArray# f -> SArray# g #

Storable e => Thaw IO (SArray# e) (Int, Ptr e) 
Instance details

Defined in SDP.Prim.SArray

Methods

thaw :: SArray# e -> IO (Int, Ptr e) #

unsafeThaw :: SArray# e -> IO (Int, Ptr e) #

MonadIO io => Thaw io (SArray# e) (MIOArray# io e) 
Instance details

Defined in SDP.Prim.SArray

Methods

thaw :: SArray# e -> io (MIOArray# io e) #

unsafeThaw :: SArray# e -> io (MIOArray# io e) #

Storable e => Freeze IO (Int, Ptr e) (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

freeze :: (Int, Ptr e) -> IO (SArray# e) #

unsafeFreeze :: (Int, Ptr e) -> IO (SArray# e) #

MonadIO io => Freeze io (MIOArray# io e) (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

freeze :: MIOArray# io e -> io (SArray# e) #

unsafeFreeze :: MIOArray# io e -> io (SArray# e) #

IsList (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Associated Types

type Item (SArray# e) #

Methods

fromList :: [Item (SArray# e)] -> SArray# e #

fromListN :: Int -> [Item (SArray# e)] -> SArray# e #

toList :: SArray# e -> [Item (SArray# e)] #

Eq e => Eq (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

(==) :: SArray# e -> SArray# e -> Bool #

(/=) :: SArray# e -> SArray# e -> Bool #

Ord e => Ord (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

compare :: SArray# e -> SArray# e -> Ordering #

(<) :: SArray# e -> SArray# e -> Bool #

(<=) :: SArray# e -> SArray# e -> Bool #

(>) :: SArray# e -> SArray# e -> Bool #

(>=) :: SArray# e -> SArray# e -> Bool #

max :: SArray# e -> SArray# e -> SArray# e #

min :: SArray# e -> SArray# e -> SArray# e #

Read e => Read (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Show e => Show (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

showsPrec :: Int -> SArray# e -> ShowS #

show :: SArray# e -> String #

showList :: [SArray# e] -> ShowS #

IsString (SArray# Char) 
Instance details

Defined in SDP.Prim.SArray

Semigroup (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

(<>) :: SArray# e -> SArray# e -> SArray# e #

sconcat :: NonEmpty (SArray# e) -> SArray# e #

stimes :: Integral b => b -> SArray# e -> SArray# e #

Monoid (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

mempty :: SArray# e #

mappend :: SArray# e -> SArray# e -> SArray# e #

mconcat :: [SArray# e] -> SArray# e #

Arbitrary e => Arbitrary (SArray# e) Source # 
Instance details

Defined in Test.SDP.Arbitrary

Methods

arbitrary :: Gen (SArray# e) #

shrink :: SArray# e -> [SArray# e] #

Default (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

def :: SArray# e #

Nullable (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

lzero :: SArray# e #

isNull :: SArray# e -> Bool #

Estimate (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

(<.=>) :: SArray# e -> Int -> Ordering #

(<==>) :: Compare (SArray# e) #

(.==) :: SArray# e -> Int -> Bool #

(./=) :: SArray# e -> Int -> Bool #

(.<=) :: SArray# e -> Int -> Bool #

(.>=) :: SArray# e -> Int -> Bool #

(.<) :: SArray# e -> Int -> Bool #

(.>) :: SArray# e -> Int -> Bool #

(.<.) :: SArray# e -> SArray# e -> Bool #

(.>.) :: SArray# e -> SArray# e -> Bool #

(.<=.) :: SArray# e -> SArray# e -> Bool #

(.>=.) :: SArray# e -> SArray# e -> Bool #

(.==.) :: SArray# e -> SArray# e -> Bool #

(./=.) :: SArray# e -> SArray# e -> Bool #

Scan (SArray# e) e 
Instance details

Defined in SDP.Prim.SArray

Methods

scanl :: (b -> e -> b) -> b -> SArray# e -> [b] #

scanl' :: (b -> e -> b) -> b -> SArray# e -> [b] #

scanr :: (e -> b -> b) -> b -> SArray# e -> [b] #

scanr' :: (e -> b -> b) -> b -> SArray# e -> [b] #

scanl1 :: (e -> e -> e) -> SArray# e -> [e] #

scanr1 :: (e -> e -> e) -> SArray# e -> [e] #

SetWith (SArray# e) e 
Instance details

Defined in SDP.Prim.SArray

Methods

setWith :: Compare e -> SArray# e -> SArray# e #

groupSetWith :: Compare e -> (e -> e -> e) -> SArray# e -> SArray# e #

insertWith :: Compare e -> e -> SArray# e -> SArray# e #

deleteWith :: Compare e -> e -> SArray# e -> SArray# e #

intersectionWith :: Compare e -> SArray# e -> SArray# e -> SArray# e #

differenceWith :: Compare e -> SArray# e -> SArray# e -> SArray# e #

symdiffWith :: Compare e -> SArray# e -> SArray# e -> SArray# e #

unionWith :: Compare e -> SArray# e -> SArray# e -> SArray# e #

intersectionsWith :: Foldable f => Compare e -> f (SArray# e) -> SArray# e #

differencesWith :: Foldable f => Compare e -> f (SArray# e) -> SArray# e #

unionsWith :: Foldable f => Compare e -> f (SArray# e) -> SArray# e #

symdiffsWith :: Foldable f => Compare e -> f (SArray# e) -> SArray# e #

isIntersectsWith :: Compare e -> SArray# e -> SArray# e -> Bool #

isDisjointWith :: Compare e -> SArray# e -> SArray# e -> Bool #

memberWith :: Compare e -> e -> SArray# e -> Bool #

isSubsetWith :: Compare e -> SArray# e -> SArray# e -> Bool #

subsets :: SArray# e -> [SArray# e] #

lookupLTWith :: Compare e -> e -> SArray# e -> Maybe e #

lookupGTWith :: Compare e -> e -> SArray# e -> Maybe e #

lookupGEWith :: Compare e -> e -> SArray# e -> Maybe e #

lookupLEWith :: Compare e -> e -> SArray# e -> Maybe e #

Ord e => Set (SArray# e) e 
Instance details

Defined in SDP.Prim.SArray

Methods

set :: SArray# e -> SArray# e #

insert :: e -> SArray# e -> SArray# e #

delete :: e -> SArray# e -> SArray# e #

(/\) :: SArray# e -> SArray# e -> SArray# e #

(\/) :: SArray# e -> SArray# e -> SArray# e #

(\\) :: SArray# e -> SArray# e -> SArray# e #

(\^/) :: SArray# e -> SArray# e -> SArray# e #

(/?\) :: SArray# e -> SArray# e -> Bool #

(\?/) :: SArray# e -> SArray# e -> Bool #

(\+/) :: SArray# e -> SArray# e -> Bool #

intersections :: Foldable f => f (SArray# e) -> SArray# e #

unions :: Foldable f => f (SArray# e) -> SArray# e #

differences :: Foldable f => f (SArray# e) -> SArray# e #

symdiffs :: Foldable f => f (SArray# e) -> SArray# e #

member :: e -> SArray# e -> Bool #

lookupLT :: e -> SArray# e -> Maybe e #

lookupGT :: e -> SArray# e -> Maybe e #

lookupLE :: e -> SArray# e -> Maybe e #

lookupGE :: e -> SArray# e -> Maybe e #

Bordered (SArray# e) Int 
Instance details

Defined in SDP.Prim.SArray

Methods

bounds :: SArray# e -> (Int, Int) #

lower :: SArray# e -> Int #

upper :: SArray# e -> Int #

sizeOf :: SArray# e -> Int #

sizesOf :: SArray# e -> [Int] #

indexIn :: SArray# e -> Int -> Bool #

indices :: SArray# e -> [Int] #

indexOf :: SArray# e -> Int -> Int #

offsetOf :: SArray# e -> Int -> Int #

Linear (SArray# e) e 
Instance details

Defined in SDP.Prim.SArray

Methods

uncons :: SArray# e -> (e, SArray# e) #

uncons' :: SArray# e -> Maybe (e, SArray# e) #

toHead :: e -> SArray# e -> SArray# e #

head :: SArray# e -> e #

tail :: SArray# e -> SArray# e #

unsnoc :: SArray# e -> (SArray# e, e) #

unsnoc' :: SArray# e -> Maybe (SArray# e, e) #

toLast :: SArray# e -> e -> SArray# e #

init :: SArray# e -> SArray# e #

last :: SArray# e -> e #

single :: e -> SArray# e #

(++) :: SArray# e -> SArray# e -> SArray# e #

replicate :: Int -> e -> SArray# e #

fromList :: [e] -> SArray# e #

fromListN :: Int -> [e] -> SArray# e #

listR :: SArray# e -> [e] #

listL :: SArray# e -> [e] #

fromFoldable :: Foldable f => f e -> SArray# e #

(!^) :: SArray# e -> Int -> e #

write :: SArray# e -> Int -> e -> SArray# e #

concat :: Foldable f => f (SArray# e) -> SArray# e #

concatMap :: Foldable f => (a -> SArray# e) -> f a -> SArray# e #

intersperse :: e -> SArray# e -> SArray# e #

filter :: (e -> Bool) -> SArray# e -> SArray# e #

except :: (e -> Bool) -> SArray# e -> SArray# e #

partition :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

partitions :: Foldable f => f (e -> Bool) -> SArray# e -> [SArray# e] #

select :: (e -> Maybe a) -> SArray# e -> [a] #

select' :: (t e ~ SArray# e, Linear1 t a) => (e -> Maybe a) -> SArray# e -> t a #

extract :: (e -> Maybe a) -> SArray# e -> ([a], SArray# e) #

extract' :: (t e ~ SArray# e, Linear1 t a) => (e -> Maybe a) -> SArray# e -> (t a, SArray# e) #

selects :: Foldable f => f (e -> Maybe a) -> SArray# e -> ([[a]], SArray# e) #

selects' :: (Foldable f, t e ~ SArray# e, Linear1 t a) => f (e -> Maybe a) -> SArray# e -> ([t a], SArray# e) #

isSubseqOf :: SArray# e -> SArray# e -> Bool #

reverse :: SArray# e -> SArray# e #

force :: SArray# e -> SArray# e #

subsequences :: SArray# e -> [SArray# e] #

iterate :: Int -> (e -> e) -> e -> SArray# e #

nub :: SArray# e -> SArray# e #

nubBy :: Equal e -> SArray# e -> SArray# e #

ofoldr :: (Int -> e -> b -> b) -> b -> SArray# e -> b #

ofoldl :: (Int -> b -> e -> b) -> b -> SArray# e -> b #

ofoldr' :: (Int -> e -> b -> b) -> b -> SArray# e -> b #

ofoldl' :: (Int -> b -> e -> b) -> b -> SArray# e -> b #

o_foldr :: (e -> b -> b) -> b -> SArray# e -> b #

o_foldl :: (b -> e -> b) -> b -> SArray# e -> b #

o_foldr' :: (e -> b -> b) -> b -> SArray# e -> b #

o_foldl' :: (b -> e -> b) -> b -> SArray# e -> b #

Split (SArray# e) e 
Instance details

Defined in SDP.Prim.SArray

Methods

take :: Int -> SArray# e -> SArray# e #

drop :: Int -> SArray# e -> SArray# e #

keep :: Int -> SArray# e -> SArray# e #

sans :: Int -> SArray# e -> SArray# e #

save :: Int -> SArray# e -> SArray# e #

skip :: Int -> SArray# e -> SArray# e #

split :: Int -> SArray# e -> (SArray# e, SArray# e) #

divide :: Int -> SArray# e -> (SArray# e, SArray# e) #

splits :: Foldable f => f Int -> SArray# e -> [SArray# e] #

divides :: Foldable f => f Int -> SArray# e -> [SArray# e] #

parts :: Foldable f => f Int -> SArray# e -> [SArray# e] #

chunks :: Int -> SArray# e -> [SArray# e] #

splitBy :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

divideBy :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

splitsBy :: (e -> Bool) -> SArray# e -> [SArray# e] #

splitsOn :: SArray# e -> SArray# e -> [SArray# e] #

replaceBy :: SArray# e -> SArray# e -> SArray# e -> SArray# e #

removeAll :: SArray# e -> SArray# e -> SArray# e #

combo :: Equal e -> SArray# e -> Int #

justifyL :: Int -> e -> SArray# e -> SArray# e #

justifyR :: Int -> e -> SArray# e -> SArray# e #

each :: Int -> SArray# e -> SArray# e #

eachFrom :: Int -> Int -> SArray# e -> SArray# e #

isPrefixOf :: SArray# e -> SArray# e -> Bool #

isSuffixOf :: SArray# e -> SArray# e -> Bool #

isInfixOf :: SArray# e -> SArray# e -> Bool #

prefix :: (e -> Bool) -> SArray# e -> Int #

suffix :: (e -> Bool) -> SArray# e -> Int #

infixes :: SArray# e -> SArray# e -> [Int] #

dropSide :: (e -> Bool) -> SArray# e -> SArray# e #

takeWhile :: (e -> Bool) -> SArray# e -> SArray# e #

dropWhile :: (e -> Bool) -> SArray# e -> SArray# e #

takeEnd :: (e -> Bool) -> SArray# e -> SArray# e #

dropEnd :: (e -> Bool) -> SArray# e -> SArray# e #

spanl :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

breakl :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

spanr :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

breakr :: (e -> Bool) -> SArray# e -> (SArray# e, SArray# e) #

selectWhile :: (e -> Maybe a) -> SArray# e -> [a] #

selectEnd :: (e -> Maybe a) -> SArray# e -> [a] #

extractWhile :: (e -> Maybe a) -> SArray# e -> ([a], SArray# e) #

extractEnd :: (e -> Maybe a) -> SArray# e -> (SArray# e, [a]) #

selectWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SArray# e -> t a #

selectEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SArray# e -> t a #

extractWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SArray# e -> (t a, SArray# e) #

extractEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SArray# e -> (SArray# e, t a) #

Sort (SArray# e) e 
Instance details

Defined in SDP.Prim.SArray

Methods

sortedBy :: (e -> e -> Bool) -> SArray# e -> Bool #

sortBy :: Compare e -> SArray# e -> SArray# e #

Indexed (SArray# e) Int e 
Instance details

Defined in SDP.Prim.SArray

Methods

assoc :: (Int, Int) -> [(Int, e)] -> SArray# e #

assoc' :: (Int, Int) -> e -> [(Int, e)] -> SArray# e #

fromIndexed :: Indexed m j e => m -> SArray# e #

write' :: SArray# e -> Int -> e -> SArray# e #

accum :: (e -> e' -> e) -> SArray# e -> [(Int, e')] -> SArray# e #

imap :: Map m j e => (Int, Int) -> m -> (Int -> j) -> SArray# e #

update' :: SArray# e -> (e -> e) -> Int -> SArray# e #

updates' :: SArray# e -> (Int -> e -> e) -> SArray# e #

Map (SArray# e) Int e 
Instance details

Defined in SDP.Prim.SArray

Methods

assocs :: SArray# e -> [(Int, e)] #

toMap :: [(Int, e)] -> SArray# e #

toMap' :: e -> [(Int, e)] -> SArray# e #

insert' :: Int -> e -> SArray# e -> SArray# e #

delete' :: Int -> SArray# e -> SArray# e #

member' :: Int -> SArray# e -> Bool #

(//) :: SArray# e -> [(Int, e)] -> SArray# e #

(.!) :: SArray# e -> Int -> e #

(!) :: SArray# e -> Int -> e #

(!?) :: SArray# e -> Int -> Maybe e #

filter' :: (Int -> e -> Bool) -> SArray# e -> SArray# e #

union' :: (e -> e -> e) -> SArray# e -> SArray# e -> SArray# e #

difference' :: (e -> e -> Maybe e) -> SArray# e -> SArray# e -> SArray# e #

intersection' :: (e -> e -> e) -> SArray# e -> SArray# e -> SArray# e #

update :: SArray# e -> (Int -> e -> e) -> SArray# e #

lookupLT' :: Int -> SArray# e -> Maybe (Int, e) #

lookupGT' :: Int -> SArray# e -> Maybe (Int, e) #

lookupLE' :: Int -> SArray# e -> Maybe (Int, e) #

lookupGE' :: Int -> SArray# e -> Maybe (Int, e) #

keys :: SArray# e -> [Int] #

(.$) :: (e -> Bool) -> SArray# e -> Maybe Int #

(*$) :: (e -> Bool) -> SArray# e -> [Int] #

kfoldr :: (Int -> e -> b -> b) -> b -> SArray# e -> b #

kfoldl :: (Int -> b -> e -> b) -> b -> SArray# e -> b #

kfoldr' :: (Int -> e -> b -> b) -> b -> SArray# e -> b #

kfoldl' :: (Int -> b -> e -> b) -> b -> SArray# e -> b #

Thaw (ST s) (SArray# e) (STArray# s e) 
Instance details

Defined in SDP.Prim.SArray

Methods

thaw :: SArray# e -> ST s (STArray# s e) #

unsafeThaw :: SArray# e -> ST s (STArray# s e) #

Freeze (ST s) (STArray# s e) (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

Methods

freeze :: STArray# s e -> ST s (SArray# e) #

unsafeFreeze :: STArray# s e -> ST s (SArray# e) #

type Item (SArray# e) 
Instance details

Defined in SDP.Prim.SArray

type Item (SArray# e) = e

data SBytes# e #

SBytes# is immutable pseudo-primitive Int-indexed strict unboxed array type.

SBytes# isn't real Haskell primitive (like GHC.Exts types) but for reliability and stability, I made it inaccessible to direct work.

Instances

Instances details
(Storable e, Unboxed e) => Thaw IO (SBytes# e) (Int, Ptr e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

thaw :: SBytes# e -> IO (Int, Ptr e) #

unsafeThaw :: SBytes# e -> IO (Int, Ptr e) #

(MonadIO io, Unboxed e) => Thaw io (SBytes# e) (MIOBytes# io e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

thaw :: SBytes# e -> io (MIOBytes# io e) #

unsafeThaw :: SBytes# e -> io (MIOBytes# io e) #

(Storable e, Unboxed e) => Freeze IO (Int, Ptr e) (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

freeze :: (Int, Ptr e) -> IO (SBytes# e) #

unsafeFreeze :: (Int, Ptr e) -> IO (SBytes# e) #

(MonadIO io, Unboxed e) => Freeze io (MIOBytes# io e) (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

freeze :: MIOBytes# io e -> io (SBytes# e) #

unsafeFreeze :: MIOBytes# io e -> io (SBytes# e) #

Unboxed e => IsList (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Associated Types

type Item (SBytes# e) #

Methods

fromList :: [Item (SBytes# e)] -> SBytes# e #

fromListN :: Int -> [Item (SBytes# e)] -> SBytes# e #

toList :: SBytes# e -> [Item (SBytes# e)] #

Unboxed e => Eq (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

(==) :: SBytes# e -> SBytes# e -> Bool #

(/=) :: SBytes# e -> SBytes# e -> Bool #

(Unboxed e, Ord e) => Ord (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

compare :: SBytes# e -> SBytes# e -> Ordering #

(<) :: SBytes# e -> SBytes# e -> Bool #

(<=) :: SBytes# e -> SBytes# e -> Bool #

(>) :: SBytes# e -> SBytes# e -> Bool #

(>=) :: SBytes# e -> SBytes# e -> Bool #

max :: SBytes# e -> SBytes# e -> SBytes# e #

min :: SBytes# e -> SBytes# e -> SBytes# e #

(Unboxed e, Read e) => Read (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

(Unboxed e, Show e) => Show (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

showsPrec :: Int -> SBytes# e -> ShowS #

show :: SBytes# e -> String #

showList :: [SBytes# e] -> ShowS #

IsString (SBytes# Char) 
Instance details

Defined in SDP.Prim.SBytes

Unboxed e => Semigroup (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

(<>) :: SBytes# e -> SBytes# e -> SBytes# e #

sconcat :: NonEmpty (SBytes# e) -> SBytes# e #

stimes :: Integral b => b -> SBytes# e -> SBytes# e #

Unboxed e => Monoid (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

mempty :: SBytes# e #

mappend :: SBytes# e -> SBytes# e -> SBytes# e #

mconcat :: [SBytes# e] -> SBytes# e #

(Unboxed e, Arbitrary e) => Arbitrary (SBytes# e) Source # 
Instance details

Defined in Test.SDP.Arbitrary

Methods

arbitrary :: Gen (SBytes# e) #

shrink :: SBytes# e -> [SBytes# e] #

Default (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

def :: SBytes# e #

Nullable (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

lzero :: SBytes# e #

isNull :: SBytes# e -> Bool #

Estimate (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

(<.=>) :: SBytes# e -> Int -> Ordering #

(<==>) :: Compare (SBytes# e) #

(.==) :: SBytes# e -> Int -> Bool #

(./=) :: SBytes# e -> Int -> Bool #

(.<=) :: SBytes# e -> Int -> Bool #

(.>=) :: SBytes# e -> Int -> Bool #

(.<) :: SBytes# e -> Int -> Bool #

(.>) :: SBytes# e -> Int -> Bool #

(.<.) :: SBytes# e -> SBytes# e -> Bool #

(.>.) :: SBytes# e -> SBytes# e -> Bool #

(.<=.) :: SBytes# e -> SBytes# e -> Bool #

(.>=.) :: SBytes# e -> SBytes# e -> Bool #

(.==.) :: SBytes# e -> SBytes# e -> Bool #

(./=.) :: SBytes# e -> SBytes# e -> Bool #

Unboxed e => Scan (SBytes# e) e 
Instance details

Defined in SDP.Prim.SBytes

Methods

scanl :: (b -> e -> b) -> b -> SBytes# e -> [b] #

scanl' :: (b -> e -> b) -> b -> SBytes# e -> [b] #

scanr :: (e -> b -> b) -> b -> SBytes# e -> [b] #

scanr' :: (e -> b -> b) -> b -> SBytes# e -> [b] #

scanl1 :: (e -> e -> e) -> SBytes# e -> [e] #

scanr1 :: (e -> e -> e) -> SBytes# e -> [e] #

Unboxed e => SetWith (SBytes# e) e 
Instance details

Defined in SDP.Prim.SBytes

Methods

setWith :: Compare e -> SBytes# e -> SBytes# e #

groupSetWith :: Compare e -> (e -> e -> e) -> SBytes# e -> SBytes# e #

insertWith :: Compare e -> e -> SBytes# e -> SBytes# e #

deleteWith :: Compare e -> e -> SBytes# e -> SBytes# e #

intersectionWith :: Compare e -> SBytes# e -> SBytes# e -> SBytes# e #

differenceWith :: Compare e -> SBytes# e -> SBytes# e -> SBytes# e #

symdiffWith :: Compare e -> SBytes# e -> SBytes# e -> SBytes# e #

unionWith :: Compare e -> SBytes# e -> SBytes# e -> SBytes# e #

intersectionsWith :: Foldable f => Compare e -> f (SBytes# e) -> SBytes# e #

differencesWith :: Foldable f => Compare e -> f (SBytes# e) -> SBytes# e #

unionsWith :: Foldable f => Compare e -> f (SBytes# e) -> SBytes# e #

symdiffsWith :: Foldable f => Compare e -> f (SBytes# e) -> SBytes# e #

isIntersectsWith :: Compare e -> SBytes# e -> SBytes# e -> Bool #

isDisjointWith :: Compare e -> SBytes# e -> SBytes# e -> Bool #

memberWith :: Compare e -> e -> SBytes# e -> Bool #

isSubsetWith :: Compare e -> SBytes# e -> SBytes# e -> Bool #

subsets :: SBytes# e -> [SBytes# e] #

lookupLTWith :: Compare e -> e -> SBytes# e -> Maybe e #

lookupGTWith :: Compare e -> e -> SBytes# e -> Maybe e #

lookupGEWith :: Compare e -> e -> SBytes# e -> Maybe e #

lookupLEWith :: Compare e -> e -> SBytes# e -> Maybe e #

(Unboxed e, Ord e) => Set (SBytes# e) e 
Instance details

Defined in SDP.Prim.SBytes

Methods

set :: SBytes# e -> SBytes# e #

insert :: e -> SBytes# e -> SBytes# e #

delete :: e -> SBytes# e -> SBytes# e #

(/\) :: SBytes# e -> SBytes# e -> SBytes# e #

(\/) :: SBytes# e -> SBytes# e -> SBytes# e #

(\\) :: SBytes# e -> SBytes# e -> SBytes# e #

(\^/) :: SBytes# e -> SBytes# e -> SBytes# e #

(/?\) :: SBytes# e -> SBytes# e -> Bool #

(\?/) :: SBytes# e -> SBytes# e -> Bool #

(\+/) :: SBytes# e -> SBytes# e -> Bool #

intersections :: Foldable f => f (SBytes# e) -> SBytes# e #

unions :: Foldable f => f (SBytes# e) -> SBytes# e #

differences :: Foldable f => f (SBytes# e) -> SBytes# e #

symdiffs :: Foldable f => f (SBytes# e) -> SBytes# e #

member :: e -> SBytes# e -> Bool #

lookupLT :: e -> SBytes# e -> Maybe e #

lookupGT :: e -> SBytes# e -> Maybe e #

lookupLE :: e -> SBytes# e -> Maybe e #

lookupGE :: e -> SBytes# e -> Maybe e #

Bordered (SBytes# e) Int 
Instance details

Defined in SDP.Prim.SBytes

Methods

bounds :: SBytes# e -> (Int, Int) #

lower :: SBytes# e -> Int #

upper :: SBytes# e -> Int #

sizeOf :: SBytes# e -> Int #

sizesOf :: SBytes# e -> [Int] #

indexIn :: SBytes# e -> Int -> Bool #

indices :: SBytes# e -> [Int] #

indexOf :: SBytes# e -> Int -> Int #

offsetOf :: SBytes# e -> Int -> Int #

Unboxed e => Linear (SBytes# e) e 
Instance details

Defined in SDP.Prim.SBytes

Methods

uncons :: SBytes# e -> (e, SBytes# e) #

uncons' :: SBytes# e -> Maybe (e, SBytes# e) #

toHead :: e -> SBytes# e -> SBytes# e #

head :: SBytes# e -> e #

tail :: SBytes# e -> SBytes# e #

unsnoc :: SBytes# e -> (SBytes# e, e) #

unsnoc' :: SBytes# e -> Maybe (SBytes# e, e) #

toLast :: SBytes# e -> e -> SBytes# e #

init :: SBytes# e -> SBytes# e #

last :: SBytes# e -> e #

single :: e -> SBytes# e #

(++) :: SBytes# e -> SBytes# e -> SBytes# e #

replicate :: Int -> e -> SBytes# e #

fromList :: [e] -> SBytes# e #

fromListN :: Int -> [e] -> SBytes# e #

listR :: SBytes# e -> [e] #

listL :: SBytes# e -> [e] #

fromFoldable :: Foldable f => f e -> SBytes# e #

(!^) :: SBytes# e -> Int -> e #

write :: SBytes# e -> Int -> e -> SBytes# e #

concat :: Foldable f => f (SBytes# e) -> SBytes# e #

concatMap :: Foldable f => (a -> SBytes# e) -> f a -> SBytes# e #

intersperse :: e -> SBytes# e -> SBytes# e #

filter :: (e -> Bool) -> SBytes# e -> SBytes# e #

except :: (e -> Bool) -> SBytes# e -> SBytes# e #

partition :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

partitions :: Foldable f => f (e -> Bool) -> SBytes# e -> [SBytes# e] #

select :: (e -> Maybe a) -> SBytes# e -> [a] #

select' :: (t e ~ SBytes# e, Linear1 t a) => (e -> Maybe a) -> SBytes# e -> t a #

extract :: (e -> Maybe a) -> SBytes# e -> ([a], SBytes# e) #

extract' :: (t e ~ SBytes# e, Linear1 t a) => (e -> Maybe a) -> SBytes# e -> (t a, SBytes# e) #

selects :: Foldable f => f (e -> Maybe a) -> SBytes# e -> ([[a]], SBytes# e) #

selects' :: (Foldable f, t e ~ SBytes# e, Linear1 t a) => f (e -> Maybe a) -> SBytes# e -> ([t a], SBytes# e) #

isSubseqOf :: SBytes# e -> SBytes# e -> Bool #

reverse :: SBytes# e -> SBytes# e #

force :: SBytes# e -> SBytes# e #

subsequences :: SBytes# e -> [SBytes# e] #

iterate :: Int -> (e -> e) -> e -> SBytes# e #

nub :: SBytes# e -> SBytes# e #

nubBy :: Equal e -> SBytes# e -> SBytes# e #

ofoldr :: (Int -> e -> b -> b) -> b -> SBytes# e -> b #

ofoldl :: (Int -> b -> e -> b) -> b -> SBytes# e -> b #

ofoldr' :: (Int -> e -> b -> b) -> b -> SBytes# e -> b #

ofoldl' :: (Int -> b -> e -> b) -> b -> SBytes# e -> b #

o_foldr :: (e -> b -> b) -> b -> SBytes# e -> b #

o_foldl :: (b -> e -> b) -> b -> SBytes# e -> b #

o_foldr' :: (e -> b -> b) -> b -> SBytes# e -> b #

o_foldl' :: (b -> e -> b) -> b -> SBytes# e -> b #

Unboxed e => Split (SBytes# e) e 
Instance details

Defined in SDP.Prim.SBytes

Methods

take :: Int -> SBytes# e -> SBytes# e #

drop :: Int -> SBytes# e -> SBytes# e #

keep :: Int -> SBytes# e -> SBytes# e #

sans :: Int -> SBytes# e -> SBytes# e #

save :: Int -> SBytes# e -> SBytes# e #

skip :: Int -> SBytes# e -> SBytes# e #

split :: Int -> SBytes# e -> (SBytes# e, SBytes# e) #

divide :: Int -> SBytes# e -> (SBytes# e, SBytes# e) #

splits :: Foldable f => f Int -> SBytes# e -> [SBytes# e] #

divides :: Foldable f => f Int -> SBytes# e -> [SBytes# e] #

parts :: Foldable f => f Int -> SBytes# e -> [SBytes# e] #

chunks :: Int -> SBytes# e -> [SBytes# e] #

splitBy :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

divideBy :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

splitsBy :: (e -> Bool) -> SBytes# e -> [SBytes# e] #

splitsOn :: SBytes# e -> SBytes# e -> [SBytes# e] #

replaceBy :: SBytes# e -> SBytes# e -> SBytes# e -> SBytes# e #

removeAll :: SBytes# e -> SBytes# e -> SBytes# e #

combo :: Equal e -> SBytes# e -> Int #

justifyL :: Int -> e -> SBytes# e -> SBytes# e #

justifyR :: Int -> e -> SBytes# e -> SBytes# e #

each :: Int -> SBytes# e -> SBytes# e #

eachFrom :: Int -> Int -> SBytes# e -> SBytes# e #

isPrefixOf :: SBytes# e -> SBytes# e -> Bool #

isSuffixOf :: SBytes# e -> SBytes# e -> Bool #

isInfixOf :: SBytes# e -> SBytes# e -> Bool #

prefix :: (e -> Bool) -> SBytes# e -> Int #

suffix :: (e -> Bool) -> SBytes# e -> Int #

infixes :: SBytes# e -> SBytes# e -> [Int] #

dropSide :: (e -> Bool) -> SBytes# e -> SBytes# e #

takeWhile :: (e -> Bool) -> SBytes# e -> SBytes# e #

dropWhile :: (e -> Bool) -> SBytes# e -> SBytes# e #

takeEnd :: (e -> Bool) -> SBytes# e -> SBytes# e #

dropEnd :: (e -> Bool) -> SBytes# e -> SBytes# e #

spanl :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

breakl :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

spanr :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

breakr :: (e -> Bool) -> SBytes# e -> (SBytes# e, SBytes# e) #

selectWhile :: (e -> Maybe a) -> SBytes# e -> [a] #

selectEnd :: (e -> Maybe a) -> SBytes# e -> [a] #

extractWhile :: (e -> Maybe a) -> SBytes# e -> ([a], SBytes# e) #

extractEnd :: (e -> Maybe a) -> SBytes# e -> (SBytes# e, [a]) #

selectWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SBytes# e -> t a #

selectEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SBytes# e -> t a #

extractWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SBytes# e -> (t a, SBytes# e) #

extractEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> SBytes# e -> (SBytes# e, t a) #

Unboxed e => Sort (SBytes# e) e 
Instance details

Defined in SDP.Prim.SBytes

Methods

sortedBy :: (e -> e -> Bool) -> SBytes# e -> Bool #

sortBy :: Compare e -> SBytes# e -> SBytes# e #

Unboxed e => Indexed (SBytes# e) Int e 
Instance details

Defined in SDP.Prim.SBytes

Methods

assoc :: (Int, Int) -> [(Int, e)] -> SBytes# e #

assoc' :: (Int, Int) -> e -> [(Int, e)] -> SBytes# e #

fromIndexed :: Indexed m j e => m -> SBytes# e #

write' :: SBytes# e -> Int -> e -> SBytes# e #

accum :: (e -> e' -> e) -> SBytes# e -> [(Int, e')] -> SBytes# e #

imap :: Map m j e => (Int, Int) -> m -> (Int -> j) -> SBytes# e #

update' :: SBytes# e -> (e -> e) -> Int -> SBytes# e #

updates' :: SBytes# e -> (Int -> e -> e) -> SBytes# e #

Unboxed e => Map (SBytes# e) Int e 
Instance details

Defined in SDP.Prim.SBytes

Methods

assocs :: SBytes# e -> [(Int, e)] #

toMap :: [(Int, e)] -> SBytes# e #

toMap' :: e -> [(Int, e)] -> SBytes# e #

insert' :: Int -> e -> SBytes# e -> SBytes# e #

delete' :: Int -> SBytes# e -> SBytes# e #

member' :: Int -> SBytes# e -> Bool #

(//) :: SBytes# e -> [(Int, e)] -> SBytes# e #

(.!) :: SBytes# e -> Int -> e #

(!) :: SBytes# e -> Int -> e #

(!?) :: SBytes# e -> Int -> Maybe e #

filter' :: (Int -> e -> Bool) -> SBytes# e -> SBytes# e #

union' :: (e -> e -> e) -> SBytes# e -> SBytes# e -> SBytes# e #

difference' :: (e -> e -> Maybe e) -> SBytes# e -> SBytes# e -> SBytes# e #

intersection' :: (e -> e -> e) -> SBytes# e -> SBytes# e -> SBytes# e #

update :: SBytes# e -> (Int -> e -> e) -> SBytes# e #

lookupLT' :: Int -> SBytes# e -> Maybe (Int, e) #

lookupGT' :: Int -> SBytes# e -> Maybe (Int, e) #

lookupLE' :: Int -> SBytes# e -> Maybe (Int, e) #

lookupGE' :: Int -> SBytes# e -> Maybe (Int, e) #

keys :: SBytes# e -> [Int] #

(.$) :: (e -> Bool) -> SBytes# e -> Maybe Int #

(*$) :: (e -> Bool) -> SBytes# e -> [Int] #

kfoldr :: (Int -> e -> b -> b) -> b -> SBytes# e -> b #

kfoldl :: (Int -> b -> e -> b) -> b -> SBytes# e -> b #

kfoldr' :: (Int -> e -> b -> b) -> b -> SBytes# e -> b #

kfoldl' :: (Int -> b -> e -> b) -> b -> SBytes# e -> b #

Unboxed e => Thaw (ST s) (SBytes# e) (STBytes# s e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

thaw :: SBytes# e -> ST s (STBytes# s e) #

unsafeThaw :: SBytes# e -> ST s (STBytes# s e) #

Unboxed e => Freeze (ST s) (STBytes# s e) (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

Methods

freeze :: STBytes# s e -> ST s (SBytes# e) #

unsafeFreeze :: STBytes# s e -> ST s (SBytes# e) #

type Item (SBytes# e) 
Instance details

Defined in SDP.Prim.SBytes

type Item (SBytes# e) = e

data AnyBorder (rep :: Type -> Type) i e #

AnyBorder is template, that appends arbitrary bounds to any structure.

Constructors

AnyBorder !i !i !(rep e) 

Instances

Instances details
(Index i, Thaw m imm (rep e), Bordered1 rep Int e) => Thaw m imm (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

thaw :: imm -> m (AnyBorder rep i e) #

unsafeThaw :: imm -> m (AnyBorder rep i e) #

(Index i, Freeze m mut (rep e), Bordered1 rep Int e) => Freeze m mut (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

freeze :: mut -> m (AnyBorder rep i e) #

unsafeFreeze :: mut -> m (AnyBorder rep i e) #

(Index i, Thaw m (rep e) mut) => Thaw m (AnyBorder rep i e) mut 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

thaw :: AnyBorder rep i e -> m mut #

unsafeThaw :: AnyBorder rep i e -> m mut #

(Index i, Freeze m (rep e) imm) => Freeze m (AnyBorder rep i e) imm 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

freeze :: AnyBorder rep i e -> m imm #

unsafeFreeze :: AnyBorder rep i e -> m imm #

(Index i, BorderedM1 m rep Int e) => BorderedM m (AnyBorder rep i e) i 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

getBounds :: AnyBorder rep i e -> m (i, i) #

getLower :: AnyBorder rep i e -> m i #

getUpper :: AnyBorder rep i e -> m i #

getSizeOf :: AnyBorder rep i e -> m Int #

getSizesOf :: AnyBorder rep i e -> m [Int] #

nowIndexIn :: AnyBorder rep i e -> i -> m Bool #

getOffsetOf :: AnyBorder rep i e -> i -> m Int #

getIndexOf :: AnyBorder rep i e -> Int -> m i #

getIndices :: AnyBorder rep i e -> m [i] #

(Index i, LinearM1 m rep e, BorderedM1 m rep Int e) => LinearM m (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

newNull :: m (AnyBorder rep i e) #

nowNull :: AnyBorder rep i e -> m Bool #

singleM :: e -> m (AnyBorder rep i e) #

getHead :: AnyBorder rep i e -> m e #

getLast :: AnyBorder rep i e -> m e #

prepend :: e -> AnyBorder rep i e -> m (AnyBorder rep i e) #

append :: AnyBorder rep i e -> e -> m (AnyBorder rep i e) #

newLinear :: [e] -> m (AnyBorder rep i e) #

newLinearN :: Int -> [e] -> m (AnyBorder rep i e) #

fromFoldableM :: Foldable f => f e -> m (AnyBorder rep i e) #

getLeft :: AnyBorder rep i e -> m [e] #

getRight :: AnyBorder rep i e -> m [e] #

(!#>) :: AnyBorder rep i e -> Int -> m e #

writeM :: AnyBorder rep i e -> Int -> e -> m () #

copied :: AnyBorder rep i e -> m (AnyBorder rep i e) #

copied' :: AnyBorder rep i e -> Int -> Int -> m (AnyBorder rep i e) #

reversed :: AnyBorder rep i e -> m (AnyBorder rep i e) #

merged :: Foldable f => f (AnyBorder rep i e) -> m (AnyBorder rep i e) #

filled :: Int -> e -> m (AnyBorder rep i e) #

copyTo :: AnyBorder rep i e -> Int -> AnyBorder rep i e -> Int -> Int -> m () #

ofoldrM :: (Int -> e -> r -> m r) -> r -> AnyBorder rep i e -> m r #

ofoldlM :: (Int -> r -> e -> m r) -> r -> AnyBorder rep i e -> m r #

ofoldrM' :: (Int -> e -> r -> m r) -> r -> AnyBorder rep i e -> m r #

ofoldlM' :: (Int -> r -> e -> m r) -> r -> AnyBorder rep i e -> m r #

foldrM :: (e -> r -> m r) -> r -> AnyBorder rep i e -> m r #

foldlM :: (r -> e -> m r) -> r -> AnyBorder rep i e -> m r #

foldrM' :: (e -> r -> m r) -> r -> AnyBorder rep i e -> m r #

foldlM' :: (r -> e -> m r) -> r -> AnyBorder rep i e -> m r #

swapM :: AnyBorder rep i e -> Int -> Int -> m () #

(Index i, BorderedM1 m rep Int e, SplitM1 m rep e) => SplitM m (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

takeM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e) #

dropM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e) #

keepM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e) #

sansM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e) #

splitM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e, AnyBorder rep i e) #

divideM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e, AnyBorder rep i e) #

splitsM :: Foldable f => f Int -> AnyBorder rep i e -> m [AnyBorder rep i e] #

dividesM :: Foldable f => f Int -> AnyBorder rep i e -> m [AnyBorder rep i e] #

partsM :: Foldable f => f Int -> AnyBorder rep i e -> m [AnyBorder rep i e] #

chunksM :: Int -> AnyBorder rep i e -> m [AnyBorder rep i e] #

eachM :: Int -> AnyBorder rep i e -> m (AnyBorder rep i e) #

prefixM :: (e -> Bool) -> AnyBorder rep i e -> m Int #

suffixM :: (e -> Bool) -> AnyBorder rep i e -> m Int #

mprefix :: (e -> m Bool) -> AnyBorder rep i e -> m Int #

msuffix :: (e -> m Bool) -> AnyBorder rep i e -> m Int #

(Index i, SortM1 m rep e) => SortM m (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

sortedMBy :: (e -> e -> Bool) -> AnyBorder rep i e -> m Bool #

sortMBy :: Compare e -> AnyBorder rep i e -> m () #

(Index i, IndexedM1 m rep Int e) => IndexedM m (AnyBorder rep i e) i e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

fromAssocs :: (i, i) -> [(i, e)] -> m (AnyBorder rep i e) #

fromAssocs' :: (i, i) -> e -> [(i, e)] -> m (AnyBorder rep i e) #

writeM' :: AnyBorder rep i e -> i -> e -> m () #

swapM' :: AnyBorder rep i e -> i -> i -> m () #

fromIndexed' :: Indexed v' j e => v' -> m (AnyBorder rep i e) #

fromIndexedM :: IndexedM m v' j e => v' -> m (AnyBorder rep i e) #

reshaped :: IndexedM m v' j e => (i, i) -> v' -> (i -> j) -> m (AnyBorder rep i e) #

fromAccum :: (e -> e' -> e) -> AnyBorder rep i e -> [(i, e')] -> m (AnyBorder rep i e) #

updateM' :: AnyBorder rep i e -> (e -> e) -> i -> m () #

(Index i, MapM1 m rep Int e, LinearM1 m rep e, BorderedM1 m rep Int e) => MapM m (AnyBorder rep i e) i e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

newMap :: [(i, e)] -> m (AnyBorder rep i e) #

newMap' :: e -> [(i, e)] -> m (AnyBorder rep i e) #

getAssocs :: AnyBorder rep i e -> m [(i, e)] #

(>!) :: AnyBorder rep i e -> i -> m e #

(!>) :: AnyBorder rep i e -> i -> m e #

(!?>) :: AnyBorder rep i e -> i -> m (Maybe e) #

updateM :: AnyBorder rep i e -> (i -> e -> e) -> m (AnyBorder rep i e) #

overwrite :: AnyBorder rep i e -> [(i, e)] -> m (AnyBorder rep i e) #

memberM' :: AnyBorder rep i e -> i -> m Bool #

getKeys :: AnyBorder rep i e -> m [i] #

(.?) :: (e -> Bool) -> AnyBorder rep i e -> m (Maybe i) #

(*?) :: (e -> Bool) -> AnyBorder rep i e -> m [i] #

kfoldrM :: (i -> e -> acc -> m acc) -> acc -> AnyBorder rep i e -> m acc #

kfoldlM :: (i -> acc -> e -> m acc) -> acc -> AnyBorder rep i e -> m acc #

kfoldrM' :: (i -> e -> acc -> m acc) -> acc -> AnyBorder rep i e -> m acc #

kfoldlM' :: (i -> acc -> e -> m acc) -> acc -> AnyBorder rep i e -> m acc #

(Index i, Thaw1 m imm mut e) => Thaw m (AnyBorder imm i e) (AnyBorder mut i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

thaw :: AnyBorder imm i e -> m (AnyBorder mut i e) #

unsafeThaw :: AnyBorder imm i e -> m (AnyBorder mut i e) #

(Index i, Freeze1 m mut imm e) => Freeze m (AnyBorder mut i e) (AnyBorder imm i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

freeze :: AnyBorder mut i e -> m (AnyBorder imm i e) #

unsafeFreeze :: AnyBorder mut i e -> m (AnyBorder imm i e) #

(Bordered1 rep Int e, Split1 rep e) => Shaped (AnyBorder rep) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

defaultRebound :: (Index i, Index j, Bordered2 (AnyBorder rep) i e) => AnyBorder rep i e -> AnyBorder rep j e #

rebound :: Index i => AnyBorder rep i e -> (i, i) -> AnyBorder rep i e #

reshape :: (Index i, Index j) => AnyBorder rep i e -> (j, j) -> AnyBorder rep j e #

(!!) :: SubIndex i j => AnyBorder rep i e -> (i :|: j) -> AnyBorder rep j e #

slices :: SubIndex i j => AnyBorder rep i e -> [AnyBorder rep j e] #

unslice :: (Foldable f, SubIndex i j) => f (AnyBorder rep j e) -> AnyBorder rep i e #

(Index i, Functor rep) => Functor (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

fmap :: (a -> b) -> AnyBorder rep i a -> AnyBorder rep i b #

(<$) :: a -> AnyBorder rep i b -> AnyBorder rep i a #

(Index i, Applicative rep) => Applicative (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

pure :: a -> AnyBorder rep i a #

(<*>) :: AnyBorder rep i (a -> b) -> AnyBorder rep i a -> AnyBorder rep i b #

liftA2 :: (a -> b -> c) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c #

(*>) :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i b #

(<*) :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i a #

(Index i, Foldable rep) => Foldable (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

fold :: Monoid m => AnyBorder rep i m -> m #

foldMap :: Monoid m => (a -> m) -> AnyBorder rep i a -> m #

foldMap' :: Monoid m => (a -> m) -> AnyBorder rep i a -> m #

foldr :: (a -> b -> b) -> b -> AnyBorder rep i a -> b #

foldr' :: (a -> b -> b) -> b -> AnyBorder rep i a -> b #

foldl :: (b -> a -> b) -> b -> AnyBorder rep i a -> b #

foldl' :: (b -> a -> b) -> b -> AnyBorder rep i a -> b #

foldr1 :: (a -> a -> a) -> AnyBorder rep i a -> a #

foldl1 :: (a -> a -> a) -> AnyBorder rep i a -> a #

toList :: AnyBorder rep i a -> [a] #

null :: AnyBorder rep i a -> Bool #

length :: AnyBorder rep i a -> Int #

elem :: Eq a => a -> AnyBorder rep i a -> Bool #

maximum :: Ord a => AnyBorder rep i a -> a #

minimum :: Ord a => AnyBorder rep i a -> a #

sum :: Num a => AnyBorder rep i a -> a #

product :: Num a => AnyBorder rep i a -> a #

(Index i, Traversable rep) => Traversable (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

traverse :: Applicative f => (a -> f b) -> AnyBorder rep i a -> f (AnyBorder rep i b) #

sequenceA :: Applicative f => AnyBorder rep i (f a) -> f (AnyBorder rep i a) #

mapM :: Monad m => (a -> m b) -> AnyBorder rep i a -> m (AnyBorder rep i b) #

sequence :: Monad m => AnyBorder rep i (m a) -> m (AnyBorder rep i a) #

(Index i, Eq1 rep) => Eq1 (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

liftEq :: (a -> b -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> Bool #

(Index i, Ord1 rep) => Ord1 (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

liftCompare :: (a -> b -> Ordering) -> AnyBorder rep i a -> AnyBorder rep i b -> Ordering #

(Index i, Zip rep) => Zip (AnyBorder rep i) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

zap :: AnyBorder rep i (a -> b) -> AnyBorder rep i a -> AnyBorder rep i b #

all2 :: (a -> b -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> Bool #

all3 :: (a -> b -> c -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> Bool #

all4 :: (a -> b -> c -> d -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> Bool #

all5 :: (a -> b -> c -> d -> e -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> Bool #

all6 :: (a -> b -> c -> d -> e -> f -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> Bool #

any2 :: (a -> b -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> Bool #

any3 :: (a -> b -> c -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> Bool #

any4 :: (a -> b -> c -> d -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> Bool #

any5 :: (a -> b -> c -> d -> e -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> Bool #

any6 :: (a -> b -> c -> d -> e -> f -> Bool) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> Bool #

zip :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i (a, b) #

zip3 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i (a, b, c) #

zip4 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i (a, b, c, d) #

zip5 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i (a, b, c, d, e) #

zip6 :: AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> AnyBorder rep i (a, b, c, d, e, f) #

zipWith :: (a -> b -> c) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c #

zipWith3 :: (a -> b -> c -> d) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d #

zipWith4 :: (a -> b -> c -> d -> e) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e #

zipWith5 :: (a -> b -> c -> d -> e -> f) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f #

zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> AnyBorder rep i a -> AnyBorder rep i b -> AnyBorder rep i c -> AnyBorder rep i d -> AnyBorder rep i e -> AnyBorder rep i f -> AnyBorder rep i g #

(Index i, IsList (rep e), Bordered1 rep Int e) => IsList (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Associated Types

type Item (AnyBorder rep i e) #

Methods

fromList :: [Item (AnyBorder rep i e)] -> AnyBorder rep i e #

fromListN :: Int -> [Item (AnyBorder rep i e)] -> AnyBorder rep i e #

toList :: AnyBorder rep i e -> [Item (AnyBorder rep i e)] #

(Index i, Eq (rep e)) => Eq (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

(==) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(/=) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(Typeable rep, Typeable e, Data i, Data (rep e)) => Data (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnyBorder rep i e -> c (AnyBorder rep i e) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (AnyBorder rep i e) #

toConstr :: AnyBorder rep i e -> Constr #

dataTypeOf :: AnyBorder rep i e -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (AnyBorder rep i e)) #

dataCast2 :: Typeable t => (forall d e0. (Data d, Data e0) => c (t d e0)) -> Maybe (c (AnyBorder rep i e)) #

gmapT :: (forall b. Data b => b -> b) -> AnyBorder rep i e -> AnyBorder rep i e #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnyBorder rep i e -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnyBorder rep i e -> r #

gmapQ :: (forall d. Data d => d -> u) -> AnyBorder rep i e -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> AnyBorder rep i e -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnyBorder rep i e -> m (AnyBorder rep i e) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnyBorder rep i e -> m (AnyBorder rep i e) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnyBorder rep i e -> m (AnyBorder rep i e) #

(Index i, Ord (rep e)) => Ord (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

compare :: AnyBorder rep i e -> AnyBorder rep i e -> Ordering #

(<) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(<=) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(>) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(>=) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

max :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

min :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

(Index i, Read i, Read e, Indexed1 rep Int e) => Read (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

readsPrec :: Int -> ReadS (AnyBorder rep i e) #

readList :: ReadS [AnyBorder rep i e] #

readPrec :: ReadPrec (AnyBorder rep i e) #

readListPrec :: ReadPrec [AnyBorder rep i e] #

(Indexed1 rep Int e, Index i, Show i, Show e) => Show (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

showsPrec :: Int -> AnyBorder rep i e -> ShowS #

show :: AnyBorder rep i e -> String #

showList :: [AnyBorder rep i e] -> ShowS #

(Indexed1 rep Int Char, Index i, Show i) => Show (AnyBorder rep i Char) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

showsPrec :: Int -> AnyBorder rep i Char -> ShowS #

show :: AnyBorder rep i Char -> String #

showList :: [AnyBorder rep i Char] -> ShowS #

(Index i, IsString (rep Char), Bordered1 rep Int Char) => IsString (AnyBorder rep i Char) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

fromString :: String -> AnyBorder rep i Char #

Generic (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Associated Types

type Rep (AnyBorder rep i e) :: Type -> Type #

Methods

from :: AnyBorder rep i e -> Rep (AnyBorder rep i e) x #

to :: Rep (AnyBorder rep i e) x -> AnyBorder rep i e #

Linear1 (AnyBorder rep i) e => Semigroup (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

(<>) :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

sconcat :: NonEmpty (AnyBorder rep i e) -> AnyBorder rep i e #

stimes :: Integral b => b -> AnyBorder rep i e -> AnyBorder rep i e #

Linear1 (AnyBorder rep i) e => Monoid (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

mempty :: AnyBorder rep i e #

mappend :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

mconcat :: [AnyBorder rep i e] -> AnyBorder rep i e #

(Index i, Bordered1 rep Int e, Arbitrary (rep e)) => Arbitrary (AnyBorder rep i e) Source # 
Instance details

Defined in Test.SDP.Arbitrary

Methods

arbitrary :: Gen (AnyBorder rep i e) #

shrink :: AnyBorder rep i e -> [AnyBorder rep i e] #

Linear1 (AnyBorder rep i) e => Default (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

def :: AnyBorder rep i e #

(Index i, Bordered (rep e) Int, Nullable (rep e)) => Nullable (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

lzero :: AnyBorder rep i e #

isNull :: AnyBorder rep i e -> Bool #

Index i => Estimate (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

(<.=>) :: AnyBorder rep i e -> Int -> Ordering #

(<==>) :: Compare (AnyBorder rep i e) #

(.==) :: AnyBorder rep i e -> Int -> Bool #

(./=) :: AnyBorder rep i e -> Int -> Bool #

(.<=) :: AnyBorder rep i e -> Int -> Bool #

(.>=) :: AnyBorder rep i e -> Int -> Bool #

(.<) :: AnyBorder rep i e -> Int -> Bool #

(.>) :: AnyBorder rep i e -> Int -> Bool #

(.<.) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(.>.) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(.<=.) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(.>=.) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(.==.) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(./=.) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

Linear1 (AnyBorder rep i) e => Scan (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

scanl :: (b -> e -> b) -> b -> AnyBorder rep i e -> [b] #

scanl' :: (b -> e -> b) -> b -> AnyBorder rep i e -> [b] #

scanr :: (e -> b -> b) -> b -> AnyBorder rep i e -> [b] #

scanr' :: (e -> b -> b) -> b -> AnyBorder rep i e -> [b] #

scanl1 :: (e -> e -> e) -> AnyBorder rep i e -> [e] #

scanr1 :: (e -> e -> e) -> AnyBorder rep i e -> [e] #

(Index i, SetWith1 rep e, Linear1 rep e, Bordered1 rep Int e) => SetWith (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

setWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e #

groupSetWith :: Compare e -> (e -> e -> e) -> AnyBorder rep i e -> AnyBorder rep i e #

insertWith :: Compare e -> e -> AnyBorder rep i e -> AnyBorder rep i e #

deleteWith :: Compare e -> e -> AnyBorder rep i e -> AnyBorder rep i e #

intersectionWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

differenceWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

symdiffWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

unionWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

intersectionsWith :: Foldable f => Compare e -> f (AnyBorder rep i e) -> AnyBorder rep i e #

differencesWith :: Foldable f => Compare e -> f (AnyBorder rep i e) -> AnyBorder rep i e #

unionsWith :: Foldable f => Compare e -> f (AnyBorder rep i e) -> AnyBorder rep i e #

symdiffsWith :: Foldable f => Compare e -> f (AnyBorder rep i e) -> AnyBorder rep i e #

isIntersectsWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> Bool #

isDisjointWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> Bool #

memberWith :: Compare e -> e -> AnyBorder rep i e -> Bool #

isSubsetWith :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e -> Bool #

subsets :: AnyBorder rep i e -> [AnyBorder rep i e] #

lookupLTWith :: Compare e -> e -> AnyBorder rep i e -> Maybe e #

lookupGTWith :: Compare e -> e -> AnyBorder rep i e -> Maybe e #

lookupGEWith :: Compare e -> e -> AnyBorder rep i e -> Maybe e #

lookupLEWith :: Compare e -> e -> AnyBorder rep i e -> Maybe e #

(SetWith1 (AnyBorder rep i) e, Nullable (AnyBorder rep i e), Ord e) => Set (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

set :: AnyBorder rep i e -> AnyBorder rep i e #

insert :: e -> AnyBorder rep i e -> AnyBorder rep i e #

delete :: e -> AnyBorder rep i e -> AnyBorder rep i e #

(/\) :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

(\/) :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

(\\) :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

(\^/) :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

(/?\) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(\?/) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

(\+/) :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

intersections :: Foldable f => f (AnyBorder rep i e) -> AnyBorder rep i e #

unions :: Foldable f => f (AnyBorder rep i e) -> AnyBorder rep i e #

differences :: Foldable f => f (AnyBorder rep i e) -> AnyBorder rep i e #

symdiffs :: Foldable f => f (AnyBorder rep i e) -> AnyBorder rep i e #

member :: e -> AnyBorder rep i e -> Bool #

lookupLT :: e -> AnyBorder rep i e -> Maybe e #

lookupGT :: e -> AnyBorder rep i e -> Maybe e #

lookupLE :: e -> AnyBorder rep i e -> Maybe e #

lookupGE :: e -> AnyBorder rep i e -> Maybe e #

Index i => Bordered (AnyBorder rep i e) i 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

bounds :: AnyBorder rep i e -> (i, i) #

lower :: AnyBorder rep i e -> i #

upper :: AnyBorder rep i e -> i #

sizeOf :: AnyBorder rep i e -> Int #

sizesOf :: AnyBorder rep i e -> [Int] #

indexIn :: AnyBorder rep i e -> i -> Bool #

indices :: AnyBorder rep i e -> [i] #

indexOf :: AnyBorder rep i e -> Int -> i #

offsetOf :: AnyBorder rep i e -> i -> Int #

(Index i, Linear1 rep e, Bordered1 rep Int e) => Linear (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

uncons :: AnyBorder rep i e -> (e, AnyBorder rep i e) #

uncons' :: AnyBorder rep i e -> Maybe (e, AnyBorder rep i e) #

toHead :: e -> AnyBorder rep i e -> AnyBorder rep i e #

head :: AnyBorder rep i e -> e #

tail :: AnyBorder rep i e -> AnyBorder rep i e #

unsnoc :: AnyBorder rep i e -> (AnyBorder rep i e, e) #

unsnoc' :: AnyBorder rep i e -> Maybe (AnyBorder rep i e, e) #

toLast :: AnyBorder rep i e -> e -> AnyBorder rep i e #

init :: AnyBorder rep i e -> AnyBorder rep i e #

last :: AnyBorder rep i e -> e #

single :: e -> AnyBorder rep i e #

(++) :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

replicate :: Int -> e -> AnyBorder rep i e #

fromList :: [e] -> AnyBorder rep i e #

fromListN :: Int -> [e] -> AnyBorder rep i e #

listR :: AnyBorder rep i e -> [e] #

listL :: AnyBorder rep i e -> [e] #

fromFoldable :: Foldable f => f e -> AnyBorder rep i e #

(!^) :: AnyBorder rep i e -> Int -> e #

write :: AnyBorder rep i e -> Int -> e -> AnyBorder rep i e #

concat :: Foldable f => f (AnyBorder rep i e) -> AnyBorder rep i e #

concatMap :: Foldable f => (a -> AnyBorder rep i e) -> f a -> AnyBorder rep i e #

intersperse :: e -> AnyBorder rep i e -> AnyBorder rep i e #

filter :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

except :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

partition :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

partitions :: Foldable f => f (e -> Bool) -> AnyBorder rep i e -> [AnyBorder rep i e] #

select :: (e -> Maybe a) -> AnyBorder rep i e -> [a] #

select' :: (t e ~ AnyBorder rep i e, Linear1 t a) => (e -> Maybe a) -> AnyBorder rep i e -> t a #

extract :: (e -> Maybe a) -> AnyBorder rep i e -> ([a], AnyBorder rep i e) #

extract' :: (t e ~ AnyBorder rep i e, Linear1 t a) => (e -> Maybe a) -> AnyBorder rep i e -> (t a, AnyBorder rep i e) #

selects :: Foldable f => f (e -> Maybe a) -> AnyBorder rep i e -> ([[a]], AnyBorder rep i e) #

selects' :: (Foldable f, t e ~ AnyBorder rep i e, Linear1 t a) => f (e -> Maybe a) -> AnyBorder rep i e -> ([t a], AnyBorder rep i e) #

isSubseqOf :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

reverse :: AnyBorder rep i e -> AnyBorder rep i e #

force :: AnyBorder rep i e -> AnyBorder rep i e #

subsequences :: AnyBorder rep i e -> [AnyBorder rep i e] #

iterate :: Int -> (e -> e) -> e -> AnyBorder rep i e #

nub :: AnyBorder rep i e -> AnyBorder rep i e #

nubBy :: Equal e -> AnyBorder rep i e -> AnyBorder rep i e #

ofoldr :: (Int -> e -> b -> b) -> b -> AnyBorder rep i e -> b #

ofoldl :: (Int -> b -> e -> b) -> b -> AnyBorder rep i e -> b #

ofoldr' :: (Int -> e -> b -> b) -> b -> AnyBorder rep i e -> b #

ofoldl' :: (Int -> b -> e -> b) -> b -> AnyBorder rep i e -> b #

o_foldr :: (e -> b -> b) -> b -> AnyBorder rep i e -> b #

o_foldl :: (b -> e -> b) -> b -> AnyBorder rep i e -> b #

o_foldr' :: (e -> b -> b) -> b -> AnyBorder rep i e -> b #

o_foldl' :: (b -> e -> b) -> b -> AnyBorder rep i e -> b #

(Index i, Split1 rep e, Bordered1 rep Int e) => Split (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

take :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

drop :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

keep :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

sans :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

save :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

skip :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

split :: Int -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

divide :: Int -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

splits :: Foldable f => f Int -> AnyBorder rep i e -> [AnyBorder rep i e] #

divides :: Foldable f => f Int -> AnyBorder rep i e -> [AnyBorder rep i e] #

parts :: Foldable f => f Int -> AnyBorder rep i e -> [AnyBorder rep i e] #

chunks :: Int -> AnyBorder rep i e -> [AnyBorder rep i e] #

splitBy :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

divideBy :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

splitsBy :: (e -> Bool) -> AnyBorder rep i e -> [AnyBorder rep i e] #

splitsOn :: AnyBorder rep i e -> AnyBorder rep i e -> [AnyBorder rep i e] #

replaceBy :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

removeAll :: AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

combo :: Equal e -> AnyBorder rep i e -> Int #

justifyL :: Int -> e -> AnyBorder rep i e -> AnyBorder rep i e #

justifyR :: Int -> e -> AnyBorder rep i e -> AnyBorder rep i e #

each :: Int -> AnyBorder rep i e -> AnyBorder rep i e #

eachFrom :: Int -> Int -> AnyBorder rep i e -> AnyBorder rep i e #

isPrefixOf :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

isSuffixOf :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

isInfixOf :: AnyBorder rep i e -> AnyBorder rep i e -> Bool #

prefix :: (e -> Bool) -> AnyBorder rep i e -> Int #

suffix :: (e -> Bool) -> AnyBorder rep i e -> Int #

infixes :: AnyBorder rep i e -> AnyBorder rep i e -> [Int] #

dropSide :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

takeWhile :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

dropWhile :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

takeEnd :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

dropEnd :: (e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

spanl :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

breakl :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

spanr :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

breakr :: (e -> Bool) -> AnyBorder rep i e -> (AnyBorder rep i e, AnyBorder rep i e) #

selectWhile :: (e -> Maybe a) -> AnyBorder rep i e -> [a] #

selectEnd :: (e -> Maybe a) -> AnyBorder rep i e -> [a] #

extractWhile :: (e -> Maybe a) -> AnyBorder rep i e -> ([a], AnyBorder rep i e) #

extractEnd :: (e -> Maybe a) -> AnyBorder rep i e -> (AnyBorder rep i e, [a]) #

selectWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyBorder rep i e -> t a #

selectEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyBorder rep i e -> t a #

extractWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyBorder rep i e -> (t a, AnyBorder rep i e) #

extractEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyBorder rep i e -> (AnyBorder rep i e, t a) #

(Index i, Sort (rep e) e) => Sort (AnyBorder rep i e) e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

sortedBy :: (e -> e -> Bool) -> AnyBorder rep i e -> Bool #

sortBy :: Compare e -> AnyBorder rep i e -> AnyBorder rep i e #

(Index i, Indexed1 rep Int e) => Indexed (AnyBorder rep i e) i e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

assoc :: (i, i) -> [(i, e)] -> AnyBorder rep i e #

assoc' :: (i, i) -> e -> [(i, e)] -> AnyBorder rep i e #

fromIndexed :: Indexed m j e => m -> AnyBorder rep i e #

write' :: AnyBorder rep i e -> i -> e -> AnyBorder rep i e #

accum :: (e -> e' -> e) -> AnyBorder rep i e -> [(i, e')] -> AnyBorder rep i e #

imap :: Map m j e => (i, i) -> m -> (i -> j) -> AnyBorder rep i e #

update' :: AnyBorder rep i e -> (e -> e) -> i -> AnyBorder rep i e #

updates' :: AnyBorder rep i e -> (i -> e -> e) -> AnyBorder rep i e #

(Index i, Indexed1 rep Int e) => Map (AnyBorder rep i e) i e 
Instance details

Defined in SDP.Templates.AnyBorder

Methods

assocs :: AnyBorder rep i e -> [(i, e)] #

toMap :: [(i, e)] -> AnyBorder rep i e #

toMap' :: e -> [(i, e)] -> AnyBorder rep i e #

insert' :: i -> e -> AnyBorder rep i e -> AnyBorder rep i e #

delete' :: i -> AnyBorder rep i e -> AnyBorder rep i e #

member' :: i -> AnyBorder rep i e -> Bool #

(//) :: AnyBorder rep i e -> [(i, e)] -> AnyBorder rep i e #

(.!) :: AnyBorder rep i e -> i -> e #

(!) :: AnyBorder rep i e -> i -> e #

(!?) :: AnyBorder rep i e -> i -> Maybe e #

filter' :: (i -> e -> Bool) -> AnyBorder rep i e -> AnyBorder rep i e #

union' :: (e -> e -> e) -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

difference' :: (e -> e -> Maybe e) -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

intersection' :: (e -> e -> e) -> AnyBorder rep i e -> AnyBorder rep i e -> AnyBorder rep i e #

update :: AnyBorder rep i e -> (i -> e -> e) -> AnyBorder rep i e #

lookupLT' :: i -> AnyBorder rep i e -> Maybe (i, e) #

lookupGT' :: i -> AnyBorder rep i e -> Maybe (i, e) #

lookupLE' :: i -> AnyBorder rep i e -> Maybe (i, e) #

lookupGE' :: i -> AnyBorder rep i e -> Maybe (i, e) #

keys :: AnyBorder rep i e -> [i] #

(.$) :: (e -> Bool) -> AnyBorder rep i e -> Maybe i #

(*$) :: (e -> Bool) -> AnyBorder rep i e -> [i] #

kfoldr :: (i -> e -> b -> b) -> b -> AnyBorder rep i e -> b #

kfoldl :: (i -> b -> e -> b) -> b -> AnyBorder rep i e -> b #

kfoldr' :: (i -> e -> b -> b) -> b -> AnyBorder rep i e -> b #

kfoldl' :: (i -> b -> e -> b) -> b -> AnyBorder rep i e -> b #

type Rep (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

type Rep (AnyBorder rep i e) = D1 ('MetaData "AnyBorder" "SDP.Templates.AnyBorder" "sdp-0.2-AH2T5KX1xmG8Wo3slp7kFT" 'False) (C1 ('MetaCons "AnyBorder" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 i) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 i) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (rep e)))))
type Item (AnyBorder rep i e) 
Instance details

Defined in SDP.Templates.AnyBorder

type Item (AnyBorder rep i e) = Item (rep e)

data AnyChunks (rep :: Type -> Type) e #

AnyChunks is list of data chunks. AnyChunks shouldn't contain empty chunks, so the AnyChunks constructor is made private (see fromChunks and fromChunksM).

Instances

Instances details
Thaw1 m imm mut e => Thaw m (imm e) (AnyChunks mut e)

Creates one-chunk mutable stream, may be memory inefficient.

Instance details

Defined in SDP.Templates.AnyChunks

Methods

thaw :: imm e -> m (AnyChunks mut e) #

unsafeThaw :: imm e -> m (AnyChunks mut e) #

Freeze1 m mut imm e => Freeze m (mut e) (AnyChunks imm e)

Creates one-chunk immutable stream, may be memory inefficient.

Instance details

Defined in SDP.Templates.AnyChunks

Methods

freeze :: mut e -> m (AnyChunks imm e) #

unsafeFreeze :: mut e -> m (AnyChunks imm e) #

BorderedM1 m rep Int e => BorderedM m (AnyChunks rep e) Int 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

getBounds :: AnyChunks rep e -> m (Int, Int) #

getLower :: AnyChunks rep e -> m Int #

getUpper :: AnyChunks rep e -> m Int #

getSizeOf :: AnyChunks rep e -> m Int #

getSizesOf :: AnyChunks rep e -> m [Int] #

nowIndexIn :: AnyChunks rep e -> Int -> m Bool #

getOffsetOf :: AnyChunks rep e -> Int -> m Int #

getIndexOf :: AnyChunks rep e -> Int -> m Int #

getIndices :: AnyChunks rep e -> m [Int] #

(BorderedM1 m rep Int e, SplitM1 m rep e) => LinearM m (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

newNull :: m (AnyChunks rep e) #

nowNull :: AnyChunks rep e -> m Bool #

singleM :: e -> m (AnyChunks rep e) #

getHead :: AnyChunks rep e -> m e #

getLast :: AnyChunks rep e -> m e #

prepend :: e -> AnyChunks rep e -> m (AnyChunks rep e) #

append :: AnyChunks rep e -> e -> m (AnyChunks rep e) #

newLinear :: [e] -> m (AnyChunks rep e) #

newLinearN :: Int -> [e] -> m (AnyChunks rep e) #

fromFoldableM :: Foldable f => f e -> m (AnyChunks rep e) #

getLeft :: AnyChunks rep e -> m [e] #

getRight :: AnyChunks rep e -> m [e] #

(!#>) :: AnyChunks rep e -> Int -> m e #

writeM :: AnyChunks rep e -> Int -> e -> m () #

copied :: AnyChunks rep e -> m (AnyChunks rep e) #

copied' :: AnyChunks rep e -> Int -> Int -> m (AnyChunks rep e) #

reversed :: AnyChunks rep e -> m (AnyChunks rep e) #

merged :: Foldable f => f (AnyChunks rep e) -> m (AnyChunks rep e) #

filled :: Int -> e -> m (AnyChunks rep e) #

copyTo :: AnyChunks rep e -> Int -> AnyChunks rep e -> Int -> Int -> m () #

ofoldrM :: (Int -> e -> r -> m r) -> r -> AnyChunks rep e -> m r #

ofoldlM :: (Int -> r -> e -> m r) -> r -> AnyChunks rep e -> m r #

ofoldrM' :: (Int -> e -> r -> m r) -> r -> AnyChunks rep e -> m r #

ofoldlM' :: (Int -> r -> e -> m r) -> r -> AnyChunks rep e -> m r #

foldrM :: (e -> r -> m r) -> r -> AnyChunks rep e -> m r #

foldlM :: (r -> e -> m r) -> r -> AnyChunks rep e -> m r #

foldrM' :: (e -> r -> m r) -> r -> AnyChunks rep e -> m r #

foldlM' :: (r -> e -> m r) -> r -> AnyChunks rep e -> m r #

swapM :: AnyChunks rep e -> Int -> Int -> m () #

(BorderedM1 m rep Int e, SplitM1 m rep e) => SplitM m (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

takeM :: Int -> AnyChunks rep e -> m (AnyChunks rep e) #

dropM :: Int -> AnyChunks rep e -> m (AnyChunks rep e) #

keepM :: Int -> AnyChunks rep e -> m (AnyChunks rep e) #

sansM :: Int -> AnyChunks rep e -> m (AnyChunks rep e) #

splitM :: Int -> AnyChunks rep e -> m (AnyChunks rep e, AnyChunks rep e) #

divideM :: Int -> AnyChunks rep e -> m (AnyChunks rep e, AnyChunks rep e) #

splitsM :: Foldable f => f Int -> AnyChunks rep e -> m [AnyChunks rep e] #

dividesM :: Foldable f => f Int -> AnyChunks rep e -> m [AnyChunks rep e] #

partsM :: Foldable f => f Int -> AnyChunks rep e -> m [AnyChunks rep e] #

chunksM :: Int -> AnyChunks rep e -> m [AnyChunks rep e] #

eachM :: Int -> AnyChunks rep e -> m (AnyChunks rep e) #

prefixM :: (e -> Bool) -> AnyChunks rep e -> m Int #

suffixM :: (e -> Bool) -> AnyChunks rep e -> m Int #

mprefix :: (e -> m Bool) -> AnyChunks rep e -> m Int #

msuffix :: (e -> m Bool) -> AnyChunks rep e -> m Int #

(BorderedM1 m rep Int e, SortM1 m rep e, SplitM1 m rep e, LinearM1 m rep e) => SortM m (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

sortedMBy :: (e -> e -> Bool) -> AnyChunks rep e -> m Bool #

sortMBy :: Compare e -> AnyChunks rep e -> m () #

(SplitM1 m rep e, IndexedM1 m rep Int e) => IndexedM m (AnyChunks rep e) Int e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

fromAssocs :: (Int, Int) -> [(Int, e)] -> m (AnyChunks rep e) #

fromAssocs' :: (Int, Int) -> e -> [(Int, e)] -> m (AnyChunks rep e) #

writeM' :: AnyChunks rep e -> Int -> e -> m () #

swapM' :: AnyChunks rep e -> Int -> Int -> m () #

fromIndexed' :: Indexed v' j e => v' -> m (AnyChunks rep e) #

fromIndexedM :: IndexedM m v' j e => v' -> m (AnyChunks rep e) #

reshaped :: IndexedM m v' j e => (Int, Int) -> v' -> (Int -> j) -> m (AnyChunks rep e) #

fromAccum :: (e -> e' -> e) -> AnyChunks rep e -> [(Int, e')] -> m (AnyChunks rep e) #

updateM' :: AnyChunks rep e -> (e -> e) -> Int -> m () #

(SplitM1 m rep e, MapM1 m rep Int e, BorderedM1 m rep Int e) => MapM m (AnyChunks rep e) Int e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

newMap :: [(Int, e)] -> m (AnyChunks rep e) #

newMap' :: e -> [(Int, e)] -> m (AnyChunks rep e) #

getAssocs :: AnyChunks rep e -> m [(Int, e)] #

(>!) :: AnyChunks rep e -> Int -> m e #

(!>) :: AnyChunks rep e -> Int -> m e #

(!?>) :: AnyChunks rep e -> Int -> m (Maybe e) #

updateM :: AnyChunks rep e -> (Int -> e -> e) -> m (AnyChunks rep e) #

overwrite :: AnyChunks rep e -> [(Int, e)] -> m (AnyChunks rep e) #

memberM' :: AnyChunks rep e -> Int -> m Bool #

getKeys :: AnyChunks rep e -> m [Int] #

(.?) :: (e -> Bool) -> AnyChunks rep e -> m (Maybe Int) #

(*?) :: (e -> Bool) -> AnyChunks rep e -> m [Int] #

kfoldrM :: (Int -> e -> acc -> m acc) -> acc -> AnyChunks rep e -> m acc #

kfoldlM :: (Int -> acc -> e -> m acc) -> acc -> AnyChunks rep e -> m acc #

kfoldrM' :: (Int -> e -> acc -> m acc) -> acc -> AnyChunks rep e -> m acc #

kfoldlM' :: (Int -> acc -> e -> m acc) -> acc -> AnyChunks rep e -> m acc #

(Linear1 imm e, Thaw1 m imm mut e) => Thaw m (AnyChunks imm e) (mut e)

Creates new local immutable structure and thaw it as fast, as possible.

Instance details

Defined in SDP.Templates.AnyChunks

Methods

thaw :: AnyChunks imm e -> m (mut e) #

unsafeThaw :: AnyChunks imm e -> m (mut e) #

(LinearM1 m mut e, Freeze1 m mut imm e) => Freeze m (AnyChunks mut e) (imm e)

Creates new immutable structure using merged.

Instance details

Defined in SDP.Templates.AnyChunks

Methods

freeze :: AnyChunks mut e -> m (imm e) #

unsafeFreeze :: AnyChunks mut e -> m (imm e) #

Thaw1 m imm mut e => Thaw m (AnyChunks imm e) (AnyChunks mut e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

thaw :: AnyChunks imm e -> m (AnyChunks mut e) #

unsafeThaw :: AnyChunks imm e -> m (AnyChunks mut e) #

Freeze1 m mut imm e => Freeze m (AnyChunks mut e) (AnyChunks imm e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

freeze :: AnyChunks mut e -> m (AnyChunks imm e) #

unsafeFreeze :: AnyChunks mut e -> m (AnyChunks imm e) #

Functor rep => Functor (AnyChunks rep) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

fmap :: (a -> b) -> AnyChunks rep a -> AnyChunks rep b #

(<$) :: a -> AnyChunks rep b -> AnyChunks rep a #

Applicative rep => Applicative (AnyChunks rep) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

pure :: a -> AnyChunks rep a #

(<*>) :: AnyChunks rep (a -> b) -> AnyChunks rep a -> AnyChunks rep b #

liftA2 :: (a -> b -> c) -> AnyChunks rep a -> AnyChunks rep b -> AnyChunks rep c #

(*>) :: AnyChunks rep a -> AnyChunks rep b -> AnyChunks rep b #

(<*) :: AnyChunks rep a -> AnyChunks rep b -> AnyChunks rep a #

Foldable rep => Foldable (AnyChunks rep) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

fold :: Monoid m => AnyChunks rep m -> m #

foldMap :: Monoid m => (a -> m) -> AnyChunks rep a -> m #

foldMap' :: Monoid m => (a -> m) -> AnyChunks rep a -> m #

foldr :: (a -> b -> b) -> b -> AnyChunks rep a -> b #

foldr' :: (a -> b -> b) -> b -> AnyChunks rep a -> b #

foldl :: (b -> a -> b) -> b -> AnyChunks rep a -> b #

foldl' :: (b -> a -> b) -> b -> AnyChunks rep a -> b #

foldr1 :: (a -> a -> a) -> AnyChunks rep a -> a #

foldl1 :: (a -> a -> a) -> AnyChunks rep a -> a #

toList :: AnyChunks rep a -> [a] #

null :: AnyChunks rep a -> Bool #

length :: AnyChunks rep a -> Int #

elem :: Eq a => a -> AnyChunks rep a -> Bool #

maximum :: Ord a => AnyChunks rep a -> a #

minimum :: Ord a => AnyChunks rep a -> a #

sum :: Num a => AnyChunks rep a -> a #

product :: Num a => AnyChunks rep a -> a #

Traversable rep => Traversable (AnyChunks rep) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

traverse :: Applicative f => (a -> f b) -> AnyChunks rep a -> f (AnyChunks rep b) #

sequenceA :: Applicative f => AnyChunks rep (f a) -> f (AnyChunks rep a) #

mapM :: Monad m => (a -> m b) -> AnyChunks rep a -> m (AnyChunks rep b) #

sequence :: Monad m => AnyChunks rep (m a) -> m (AnyChunks rep a) #

Linear1 (AnyChunks rep) e => IsList (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Associated Types

type Item (AnyChunks rep e) #

Methods

fromList :: [Item (AnyChunks rep e)] -> AnyChunks rep e #

fromListN :: Int -> [Item (AnyChunks rep e)] -> AnyChunks rep e #

toList :: AnyChunks rep e -> [Item (AnyChunks rep e)] #

(Eq (rep e), Bordered1 rep Int e, Split1 rep e) => Eq (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

(==) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(/=) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(Typeable rep, Typeable e, Data (rep e)) => Data (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnyChunks rep e -> c (AnyChunks rep e) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (AnyChunks rep e) #

toConstr :: AnyChunks rep e -> Constr #

dataTypeOf :: AnyChunks rep e -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (AnyChunks rep e)) #

dataCast2 :: Typeable t => (forall d e0. (Data d, Data e0) => c (t d e0)) -> Maybe (c (AnyChunks rep e)) #

gmapT :: (forall b. Data b => b -> b) -> AnyChunks rep e -> AnyChunks rep e #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnyChunks rep e -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnyChunks rep e -> r #

gmapQ :: (forall d. Data d => d -> u) -> AnyChunks rep e -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> AnyChunks rep e -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnyChunks rep e -> m (AnyChunks rep e) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnyChunks rep e -> m (AnyChunks rep e) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnyChunks rep e -> m (AnyChunks rep e) #

(Ord (rep e), Bordered1 rep Int e, Split1 rep e) => Ord (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

compare :: AnyChunks rep e -> AnyChunks rep e -> Ordering #

(<) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(<=) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(>) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(>=) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

max :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

min :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

(Indexed1 rep Int e, Read e) => Read (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

(Indexed1 rep Int e, Show e) => Show (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

showsPrec :: Int -> AnyChunks rep e -> ShowS #

show :: AnyChunks rep e -> String #

showList :: [AnyChunks rep e] -> ShowS #

Indexed1 rep Int Char => Show (AnyChunks rep Char) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

showsPrec :: Int -> AnyChunks rep Char -> ShowS #

show :: AnyChunks rep Char -> String #

showList :: [AnyChunks rep Char] -> ShowS #

Linear1 (AnyChunks rep) Char => IsString (AnyChunks rep Char) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

fromString :: String -> AnyChunks rep Char #

Generic (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Associated Types

type Rep (AnyChunks rep e) :: Type -> Type #

Methods

from :: AnyChunks rep e -> Rep (AnyChunks rep e) x #

to :: Rep (AnyChunks rep e) x -> AnyChunks rep e #

Semigroup (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

(<>) :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

sconcat :: NonEmpty (AnyChunks rep e) -> AnyChunks rep e #

stimes :: Integral b => b -> AnyChunks rep e -> AnyChunks rep e #

Monoid (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

mempty :: AnyChunks rep e #

mappend :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

mconcat :: [AnyChunks rep e] -> AnyChunks rep e #

(Bordered1 rep Int e, Linear1 rep e, Arbitrary e) => Arbitrary (AnyChunks rep e) Source # 
Instance details

Defined in Test.SDP.Arbitrary

Methods

arbitrary :: Gen (AnyChunks rep e) #

shrink :: AnyChunks rep e -> [AnyChunks rep e] #

Default (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

def :: AnyChunks rep e #

Nullable (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

lzero :: AnyChunks rep e #

isNull :: AnyChunks rep e -> Bool #

Bordered1 rep Int e => Estimate (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

(<.=>) :: AnyChunks rep e -> Int -> Ordering #

(<==>) :: Compare (AnyChunks rep e) #

(.==) :: AnyChunks rep e -> Int -> Bool #

(./=) :: AnyChunks rep e -> Int -> Bool #

(.<=) :: AnyChunks rep e -> Int -> Bool #

(.>=) :: AnyChunks rep e -> Int -> Bool #

(.<) :: AnyChunks rep e -> Int -> Bool #

(.>) :: AnyChunks rep e -> Int -> Bool #

(.<.) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(.>.) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(.<=.) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(.>=.) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(.==.) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(./=.) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

Linear1 (AnyChunks rep) e => Scan (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

scanl :: (b -> e -> b) -> b -> AnyChunks rep e -> [b] #

scanl' :: (b -> e -> b) -> b -> AnyChunks rep e -> [b] #

scanr :: (e -> b -> b) -> b -> AnyChunks rep e -> [b] #

scanr' :: (e -> b -> b) -> b -> AnyChunks rep e -> [b] #

scanl1 :: (e -> e -> e) -> AnyChunks rep e -> [e] #

scanr1 :: (e -> e -> e) -> AnyChunks rep e -> [e] #

(SetWith1 rep e, Linear1 rep e, Ord (rep e), Bordered1 rep Int e) => SetWith (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

setWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e #

groupSetWith :: Compare e -> (e -> e -> e) -> AnyChunks rep e -> AnyChunks rep e #

insertWith :: Compare e -> e -> AnyChunks rep e -> AnyChunks rep e #

deleteWith :: Compare e -> e -> AnyChunks rep e -> AnyChunks rep e #

intersectionWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

differenceWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

symdiffWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

unionWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

intersectionsWith :: Foldable f => Compare e -> f (AnyChunks rep e) -> AnyChunks rep e #

differencesWith :: Foldable f => Compare e -> f (AnyChunks rep e) -> AnyChunks rep e #

unionsWith :: Foldable f => Compare e -> f (AnyChunks rep e) -> AnyChunks rep e #

symdiffsWith :: Foldable f => Compare e -> f (AnyChunks rep e) -> AnyChunks rep e #

isIntersectsWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> Bool #

isDisjointWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> Bool #

memberWith :: Compare e -> e -> AnyChunks rep e -> Bool #

isSubsetWith :: Compare e -> AnyChunks rep e -> AnyChunks rep e -> Bool #

subsets :: AnyChunks rep e -> [AnyChunks rep e] #

lookupLTWith :: Compare e -> e -> AnyChunks rep e -> Maybe e #

lookupGTWith :: Compare e -> e -> AnyChunks rep e -> Maybe e #

lookupGEWith :: Compare e -> e -> AnyChunks rep e -> Maybe e #

lookupLEWith :: Compare e -> e -> AnyChunks rep e -> Maybe e #

(Nullable (AnyChunks rep e), SetWith1 (AnyChunks rep) e, Ord e) => Set (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

set :: AnyChunks rep e -> AnyChunks rep e #

insert :: e -> AnyChunks rep e -> AnyChunks rep e #

delete :: e -> AnyChunks rep e -> AnyChunks rep e #

(/\) :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

(\/) :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

(\\) :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

(\^/) :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

(/?\) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(\?/) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

(\+/) :: AnyChunks rep e -> AnyChunks rep e -> Bool #

intersections :: Foldable f => f (AnyChunks rep e) -> AnyChunks rep e #

unions :: Foldable f => f (AnyChunks rep e) -> AnyChunks rep e #

differences :: Foldable f => f (AnyChunks rep e) -> AnyChunks rep e #

symdiffs :: Foldable f => f (AnyChunks rep e) -> AnyChunks rep e #

member :: e -> AnyChunks rep e -> Bool #

lookupLT :: e -> AnyChunks rep e -> Maybe e #

lookupGT :: e -> AnyChunks rep e -> Maybe e #

lookupLE :: e -> AnyChunks rep e -> Maybe e #

lookupGE :: e -> AnyChunks rep e -> Maybe e #

Bordered1 rep Int e => Bordered (AnyChunks rep e) Int 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

bounds :: AnyChunks rep e -> (Int, Int) #

lower :: AnyChunks rep e -> Int #

upper :: AnyChunks rep e -> Int #

sizeOf :: AnyChunks rep e -> Int #

sizesOf :: AnyChunks rep e -> [Int] #

indexIn :: AnyChunks rep e -> Int -> Bool #

indices :: AnyChunks rep e -> [Int] #

indexOf :: AnyChunks rep e -> Int -> Int #

offsetOf :: AnyChunks rep e -> Int -> Int #

(Bordered1 rep Int e, Linear1 rep e) => Linear (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

uncons :: AnyChunks rep e -> (e, AnyChunks rep e) #

uncons' :: AnyChunks rep e -> Maybe (e, AnyChunks rep e) #

toHead :: e -> AnyChunks rep e -> AnyChunks rep e #

head :: AnyChunks rep e -> e #

tail :: AnyChunks rep e -> AnyChunks rep e #

unsnoc :: AnyChunks rep e -> (AnyChunks rep e, e) #

unsnoc' :: AnyChunks rep e -> Maybe (AnyChunks rep e, e) #

toLast :: AnyChunks rep e -> e -> AnyChunks rep e #

init :: AnyChunks rep e -> AnyChunks rep e #

last :: AnyChunks rep e -> e #

single :: e -> AnyChunks rep e #

(++) :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

replicate :: Int -> e -> AnyChunks rep e #

fromList :: [e] -> AnyChunks rep e #

fromListN :: Int -> [e] -> AnyChunks rep e #

listR :: AnyChunks rep e -> [e] #

listL :: AnyChunks rep e -> [e] #

fromFoldable :: Foldable f => f e -> AnyChunks rep e #

(!^) :: AnyChunks rep e -> Int -> e #

write :: AnyChunks rep e -> Int -> e -> AnyChunks rep e #

concat :: Foldable f => f (AnyChunks rep e) -> AnyChunks rep e #

concatMap :: Foldable f => (a -> AnyChunks rep e) -> f a -> AnyChunks rep e #

intersperse :: e -> AnyChunks rep e -> AnyChunks rep e #

filter :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

except :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

partition :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

partitions :: Foldable f => f (e -> Bool) -> AnyChunks rep e -> [AnyChunks rep e] #

select :: (e -> Maybe a) -> AnyChunks rep e -> [a] #

select' :: (t e ~ AnyChunks rep e, Linear1 t a) => (e -> Maybe a) -> AnyChunks rep e -> t a #

extract :: (e -> Maybe a) -> AnyChunks rep e -> ([a], AnyChunks rep e) #

extract' :: (t e ~ AnyChunks rep e, Linear1 t a) => (e -> Maybe a) -> AnyChunks rep e -> (t a, AnyChunks rep e) #

selects :: Foldable f => f (e -> Maybe a) -> AnyChunks rep e -> ([[a]], AnyChunks rep e) #

selects' :: (Foldable f, t e ~ AnyChunks rep e, Linear1 t a) => f (e -> Maybe a) -> AnyChunks rep e -> ([t a], AnyChunks rep e) #

isSubseqOf :: AnyChunks rep e -> AnyChunks rep e -> Bool #

reverse :: AnyChunks rep e -> AnyChunks rep e #

force :: AnyChunks rep e -> AnyChunks rep e #

subsequences :: AnyChunks rep e -> [AnyChunks rep e] #

iterate :: Int -> (e -> e) -> e -> AnyChunks rep e #

nub :: AnyChunks rep e -> AnyChunks rep e #

nubBy :: Equal e -> AnyChunks rep e -> AnyChunks rep e #

ofoldr :: (Int -> e -> b -> b) -> b -> AnyChunks rep e -> b #

ofoldl :: (Int -> b -> e -> b) -> b -> AnyChunks rep e -> b #

ofoldr' :: (Int -> e -> b -> b) -> b -> AnyChunks rep e -> b #

ofoldl' :: (Int -> b -> e -> b) -> b -> AnyChunks rep e -> b #

o_foldr :: (e -> b -> b) -> b -> AnyChunks rep e -> b #

o_foldl :: (b -> e -> b) -> b -> AnyChunks rep e -> b #

o_foldr' :: (e -> b -> b) -> b -> AnyChunks rep e -> b #

o_foldl' :: (b -> e -> b) -> b -> AnyChunks rep e -> b #

(Bordered1 rep Int e, Split1 rep e) => Split (AnyChunks rep e) e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

take :: Int -> AnyChunks rep e -> AnyChunks rep e #

drop :: Int -> AnyChunks rep e -> AnyChunks rep e #

keep :: Int -> AnyChunks rep e -> AnyChunks rep e #

sans :: Int -> AnyChunks rep e -> AnyChunks rep e #

save :: Int -> AnyChunks rep e -> AnyChunks rep e #

skip :: Int -> AnyChunks rep e -> AnyChunks rep e #

split :: Int -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

divide :: Int -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

splits :: Foldable f => f Int -> AnyChunks rep e -> [AnyChunks rep e] #

divides :: Foldable f => f Int -> AnyChunks rep e -> [AnyChunks rep e] #

parts :: Foldable f => f Int -> AnyChunks rep e -> [AnyChunks rep e] #

chunks :: Int -> AnyChunks rep e -> [AnyChunks rep e] #

splitBy :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

divideBy :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

splitsBy :: (e -> Bool) -> AnyChunks rep e -> [AnyChunks rep e] #

splitsOn :: AnyChunks rep e -> AnyChunks rep e -> [AnyChunks rep e] #

replaceBy :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

removeAll :: AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

combo :: Equal e -> AnyChunks rep e -> Int #

justifyL :: Int -> e -> AnyChunks rep e -> AnyChunks rep e #

justifyR :: Int -> e -> AnyChunks rep e -> AnyChunks rep e #

each :: Int -> AnyChunks rep e -> AnyChunks rep e #

eachFrom :: Int -> Int -> AnyChunks rep e -> AnyChunks rep e #

isPrefixOf :: AnyChunks rep e -> AnyChunks rep e -> Bool #

isSuffixOf :: AnyChunks rep e -> AnyChunks rep e -> Bool #

isInfixOf :: AnyChunks rep e -> AnyChunks rep e -> Bool #

prefix :: (e -> Bool) -> AnyChunks rep e -> Int #

suffix :: (e -> Bool) -> AnyChunks rep e -> Int #

infixes :: AnyChunks rep e -> AnyChunks rep e -> [Int] #

dropSide :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

takeWhile :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

dropWhile :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

takeEnd :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

dropEnd :: (e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

spanl :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

breakl :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

spanr :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

breakr :: (e -> Bool) -> AnyChunks rep e -> (AnyChunks rep e, AnyChunks rep e) #

selectWhile :: (e -> Maybe a) -> AnyChunks rep e -> [a] #

selectEnd :: (e -> Maybe a) -> AnyChunks rep e -> [a] #

extractWhile :: (e -> Maybe a) -> AnyChunks rep e -> ([a], AnyChunks rep e) #

extractEnd :: (e -> Maybe a) -> AnyChunks rep e -> (AnyChunks rep e, [a]) #

selectWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyChunks rep e -> t a #

selectEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyChunks rep e -> t a #

extractWhile' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyChunks rep e -> (t a, AnyChunks rep e) #

extractEnd' :: (t e ~ l, Split1 t a) => (e -> Maybe a) -> AnyChunks rep e -> (AnyChunks rep e, t a) #

Indexed1 rep Int e => Indexed (AnyChunks rep e) Int e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

assoc :: (Int, Int) -> [(Int, e)] -> AnyChunks rep e #

assoc' :: (Int, Int) -> e -> [(Int, e)] -> AnyChunks rep e #

fromIndexed :: Indexed m j e => m -> AnyChunks rep e #

write' :: AnyChunks rep e -> Int -> e -> AnyChunks rep e #

accum :: (e -> e' -> e) -> AnyChunks rep e -> [(Int, e')] -> AnyChunks rep e #

imap :: Map m j e => (Int, Int) -> m -> (Int -> j) -> AnyChunks rep e #

update' :: AnyChunks rep e -> (e -> e) -> Int -> AnyChunks rep e #

updates' :: AnyChunks rep e -> (Int -> e -> e) -> AnyChunks rep e #

Indexed1 rep Int e => Map (AnyChunks rep e) Int e 
Instance details

Defined in SDP.Templates.AnyChunks

Methods

assocs :: AnyChunks rep e -> [(Int, e)] #

toMap :: [(Int, e)] -> AnyChunks rep e #

toMap' :: e -> [(Int, e)] -> AnyChunks rep e #

insert' :: Int -> e -> AnyChunks rep e -> AnyChunks rep e #

delete' :: Int -> AnyChunks rep e -> AnyChunks rep e #

member' :: Int -> AnyChunks rep e -> Bool #

(//) :: AnyChunks rep e -> [(Int, e)] -> AnyChunks rep e #

(.!) :: AnyChunks rep e -> Int -> e #

(!) :: AnyChunks rep e -> Int -> e #

(!?) :: AnyChunks rep e -> Int -> Maybe e #

filter' :: (Int -> e -> Bool) -> AnyChunks rep e -> AnyChunks rep e #

union' :: (e -> e -> e) -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

difference' :: (e -> e -> Maybe e) -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

intersection' :: (e -> e -> e) -> AnyChunks rep e -> AnyChunks rep e -> AnyChunks rep e #

update :: AnyChunks rep e -> (Int -> e -> e) -> AnyChunks rep e #

lookupLT' :: Int -> AnyChunks rep e -> Maybe (Int, e) #

lookupGT' :: Int -> AnyChunks rep e -> Maybe (Int, e) #

lookupLE' :: Int -> AnyChunks rep e -> Maybe (Int, e) #

lookupGE' :: Int -> AnyChunks rep e -> Maybe (Int, e) #

keys :: AnyChunks rep e -> [Int] #

(.$) :: (e -> Bool) -> AnyChunks rep e -> Maybe Int #

(*$) :: (e -> Bool) -> AnyChunks rep e -> [Int] #

kfoldr :: (Int -> e -> b -> b) -> b -> AnyChunks rep e -> b #

kfoldl :: (Int -> b -> e -> b) -> b -> AnyChunks rep e -> b #

kfoldr' :: (Int -> e -> b -> b) -> b -> AnyChunks rep e -> b #

kfoldl' :: (Int -> b -> e -> b) -> b -> AnyChunks rep e -> b #

type Rep (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

type Rep (AnyChunks rep e) = D1 ('MetaData "AnyChunks" "SDP.Templates.AnyChunks" "sdp-0.2-AH2T5KX1xmG8Wo3slp7kFT" 'True) (C1 ('MetaCons "AnyChunks" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [rep e])))
type Item (AnyChunks rep e) 
Instance details

Defined in SDP.Templates.AnyChunks

type Item (AnyChunks rep e) = e

Orphan instances

Arbitrary E Source # 
Instance details

Methods

arbitrary :: Gen E #

shrink :: E -> [E] #

Arbitrary e => Arbitrary (SArray# e) Source # 
Instance details

Methods

arbitrary :: Gen (SArray# e) #

shrink :: SArray# e -> [SArray# e] #

(Unboxed e, Arbitrary e) => Arbitrary (SBytes# e) Source # 
Instance details

Methods

arbitrary :: Gen (SBytes# e) #

shrink :: SBytes# e -> [SBytes# e] #

(Bordered1 rep Int e, Linear1 rep e, Arbitrary e) => Arbitrary (AnyChunks rep e) Source # 
Instance details

Methods

arbitrary :: Gen (AnyChunks rep e) #

shrink :: AnyChunks rep e -> [AnyChunks rep e] #

(Arbitrary i, Arbitrary i') => Arbitrary (i' :& i) Source # 
Instance details

Methods

arbitrary :: Gen (i' :& i) #

shrink :: (i' :& i) -> [i' :& i] #

(Index i, Bordered1 rep Int e, Arbitrary (rep e)) => Arbitrary (AnyBorder rep i e) Source # 
Instance details

Methods

arbitrary :: Gen (AnyBorder rep i e) #

shrink :: AnyBorder rep i e -> [AnyBorder rep i e] #