Safe Haskell | None |
---|---|
Language | Haskell2010 |
RIO.Vector
Description
Generic Vector
interface. Import as:
import qualified RIO.Vector as V
This module does not export any partial or unsafe functions. For those, see RIO.Vector.Partial and RIO.Vector.Unsafe
Synopsis
- class MVector (Mutable v) a => Vector (v :: Type -> Type) a
- length :: Vector v a => v a -> Int
- null :: Vector v a => v a -> Bool
- (!?) :: Vector v a => v a -> Int -> Maybe a
- slice :: (HasCallStack, Vector v a) => Int -> Int -> v a -> v a
- take :: Vector v a => Int -> v a -> v a
- drop :: Vector v a => Int -> v a -> v a
- splitAt :: Vector v a => Int -> v a -> (v a, v a)
- empty :: Vector v a => v a
- singleton :: Vector v a => a -> v a
- replicate :: Vector v a => Int -> a -> v a
- generate :: Vector v a => Int -> (Int -> a) -> v a
- iterateN :: Vector v a => Int -> (a -> a) -> a -> v a
- replicateM :: (Monad m, Vector v a) => Int -> m a -> m (v a)
- generateM :: (Monad m, Vector v a) => Int -> (Int -> m a) -> m (v a)
- iterateNM :: (Monad m, Vector v a) => Int -> (a -> m a) -> a -> m (v a)
- create :: Vector v a => (forall s. ST s (Mutable v s a)) -> v a
- createT :: (Traversable f, Vector v a) => (forall s. ST s (f (Mutable v s a))) -> f (v a)
- unfoldr :: Vector v a => (b -> Maybe (a, b)) -> b -> v a
- unfoldrN :: Vector v a => Int -> (b -> Maybe (a, b)) -> b -> v a
- unfoldrM :: (Monad m, Vector v a) => (b -> m (Maybe (a, b))) -> b -> m (v a)
- unfoldrNM :: (Monad m, Vector v a) => Int -> (b -> m (Maybe (a, b))) -> b -> m (v a)
- constructN :: Vector v a => Int -> (v a -> a) -> v a
- constructrN :: Vector v a => Int -> (v a -> a) -> v a
- enumFromN :: (Vector v a, Num a) => a -> Int -> v a
- enumFromStepN :: (Vector v a, Num a) => a -> a -> Int -> v a
- enumFromTo :: (Vector v a, Enum a) => a -> a -> v a
- enumFromThenTo :: (Vector v a, Enum a) => a -> a -> a -> v a
- cons :: Vector v a => a -> v a -> v a
- snoc :: Vector v a => v a -> a -> v a
- (++) :: Vector v a => v a -> v a -> v a
- concat :: Vector v a => [v a] -> v a
- concatNE :: Vector v a => NonEmpty (v a) -> v a
- force :: Vector v a => v a -> v a
- reverse :: Vector v a => v a -> v a
- modify :: Vector v a => (forall s. Mutable v s a -> ST s ()) -> v a -> v a
- indexed :: (Vector v a, Vector v (Int, a)) => v a -> v (Int, a)
- map :: (Vector v a, Vector v b) => (a -> b) -> v a -> v b
- imap :: (Vector v a, Vector v b) => (Int -> a -> b) -> v a -> v b
- concatMap :: (Vector v a, Vector v b) => (a -> v b) -> v a -> v b
- mapM :: (Monad m, Vector v a, Vector v b) => (a -> m b) -> v a -> m (v b)
- imapM :: (Monad m, Vector v a, Vector v b) => (Int -> a -> m b) -> v a -> m (v b)
- mapM_ :: (Monad m, Vector v a) => (a -> m b) -> v a -> m ()
- imapM_ :: (Monad m, Vector v a) => (Int -> a -> m b) -> v a -> m ()
- forM :: (Monad m, Vector v a, Vector v b) => v a -> (a -> m b) -> m (v b)
- forM_ :: (Monad m, Vector v a) => v a -> (a -> m b) -> m ()
- zipWith :: (Vector v a, Vector v b, Vector v c) => (a -> b -> c) -> v a -> v b -> v c
- zipWith3 :: (Vector v a, Vector v b, Vector v c, Vector v d) => (a -> b -> c -> d) -> v a -> v b -> v c -> v d
- zipWith4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e) => (a -> b -> c -> d -> e) -> v a -> v b -> v c -> v d -> v e
- zipWith5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f) => (a -> b -> c -> d -> e -> f) -> v a -> v b -> v c -> v d -> v e -> v f
- zipWith6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v g) => (a -> b -> c -> d -> e -> f -> g) -> v a -> v b -> v c -> v d -> v e -> v f -> v g
- izipWith :: (Vector v a, Vector v b, Vector v c) => (Int -> a -> b -> c) -> v a -> v b -> v c
- izipWith3 :: (Vector v a, Vector v b, Vector v c, Vector v d) => (Int -> a -> b -> c -> d) -> v a -> v b -> v c -> v d
- izipWith4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e) => (Int -> a -> b -> c -> d -> e) -> v a -> v b -> v c -> v d -> v e
- izipWith5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f) => (Int -> a -> b -> c -> d -> e -> f) -> v a -> v b -> v c -> v d -> v e -> v f
- izipWith6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v g) => (Int -> a -> b -> c -> d -> e -> f -> g) -> v a -> v b -> v c -> v d -> v e -> v f -> v g
- zip :: (Vector v a, Vector v b, Vector v (a, b)) => v a -> v b -> v (a, b)
- zip3 :: (Vector v a, Vector v b, Vector v c, Vector v (a, b, c)) => v a -> v b -> v c -> v (a, b, c)
- zip4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v (a, b, c, d)) => v a -> v b -> v c -> v d -> v (a, b, c, d)
- zip5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v (a, b, c, d, e)) => v a -> v b -> v c -> v d -> v e -> v (a, b, c, d, e)
- zip6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v (a, b, c, d, e, f)) => v a -> v b -> v c -> v d -> v e -> v f -> v (a, b, c, d, e, f)
- zipWithM :: (Monad m, Vector v a, Vector v b, Vector v c) => (a -> b -> m c) -> v a -> v b -> m (v c)
- izipWithM :: (Monad m, Vector v a, Vector v b, Vector v c) => (Int -> a -> b -> m c) -> v a -> v b -> m (v c)
- zipWithM_ :: (Monad m, Vector v a, Vector v b) => (a -> b -> m c) -> v a -> v b -> m ()
- izipWithM_ :: (Monad m, Vector v a, Vector v b) => (Int -> a -> b -> m c) -> v a -> v b -> m ()
- unzip :: (Vector v a, Vector v b, Vector v (a, b)) => v (a, b) -> (v a, v b)
- unzip3 :: (Vector v a, Vector v b, Vector v c, Vector v (a, b, c)) => v (a, b, c) -> (v a, v b, v c)
- unzip4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v (a, b, c, d)) => v (a, b, c, d) -> (v a, v b, v c, v d)
- unzip5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v (a, b, c, d, e)) => v (a, b, c, d, e) -> (v a, v b, v c, v d, v e)
- unzip6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v (a, b, c, d, e, f)) => v (a, b, c, d, e, f) -> (v a, v b, v c, v d, v e, v f)
- filter :: Vector v a => (a -> Bool) -> v a -> v a
- ifilter :: Vector v a => (Int -> a -> Bool) -> v a -> v a
- uniq :: (Vector v a, Eq a) => v a -> v a
- mapMaybe :: (Vector v a, Vector v b) => (a -> Maybe b) -> v a -> v b
- imapMaybe :: (Vector v a, Vector v b) => (Int -> a -> Maybe b) -> v a -> v b
- filterM :: (Monad m, Vector v a) => (a -> m Bool) -> v a -> m (v a)
- takeWhile :: Vector v a => (a -> Bool) -> v a -> v a
- dropWhile :: Vector v a => (a -> Bool) -> v a -> v a
- partition :: Vector v a => (a -> Bool) -> v a -> (v a, v a)
- unstablePartition :: Vector v a => (a -> Bool) -> v a -> (v a, v a)
- span :: Vector v a => (a -> Bool) -> v a -> (v a, v a)
- break :: Vector v a => (a -> Bool) -> v a -> (v a, v a)
- elem :: (Vector v a, Eq a) => a -> v a -> Bool
- notElem :: (Vector v a, Eq a) => a -> v a -> Bool
- find :: Vector v a => (a -> Bool) -> v a -> Maybe a
- findIndex :: Vector v a => (a -> Bool) -> v a -> Maybe Int
- findIndices :: (Vector v a, Vector v Int) => (a -> Bool) -> v a -> v Int
- elemIndex :: (Vector v a, Eq a) => a -> v a -> Maybe Int
- elemIndices :: (Vector v a, Vector v Int, Eq a) => a -> v a -> v Int
- foldl :: Vector v b => (a -> b -> a) -> a -> v b -> a
- foldl' :: Vector v b => (a -> b -> a) -> a -> v b -> a
- foldr :: Vector v a => (a -> b -> b) -> b -> v a -> b
- foldr' :: Vector v a => (a -> b -> b) -> b -> v a -> b
- ifoldl :: Vector v b => (a -> Int -> b -> a) -> a -> v b -> a
- ifoldl' :: Vector v b => (a -> Int -> b -> a) -> a -> v b -> a
- ifoldr :: Vector v a => (Int -> a -> b -> b) -> b -> v a -> b
- ifoldr' :: Vector v a => (Int -> a -> b -> b) -> b -> v a -> b
- all :: Vector v a => (a -> Bool) -> v a -> Bool
- any :: Vector v a => (a -> Bool) -> v a -> Bool
- and :: Vector v Bool => v Bool -> Bool
- or :: Vector v Bool => v Bool -> Bool
- sum :: (Vector v a, Num a) => v a -> a
- product :: (Vector v a, Num a) => v a -> a
- foldM :: (Monad m, Vector v b) => (a -> b -> m a) -> a -> v b -> m a
- ifoldM :: (Monad m, Vector v b) => (a -> Int -> b -> m a) -> a -> v b -> m a
- foldM' :: (Monad m, Vector v b) => (a -> b -> m a) -> a -> v b -> m a
- ifoldM' :: (Monad m, Vector v b) => (a -> Int -> b -> m a) -> a -> v b -> m a
- foldM_ :: (Monad m, Vector v b) => (a -> b -> m a) -> a -> v b -> m ()
- ifoldM_ :: (Monad m, Vector v b) => (a -> Int -> b -> m a) -> a -> v b -> m ()
- foldM'_ :: (Monad m, Vector v b) => (a -> b -> m a) -> a -> v b -> m ()
- ifoldM'_ :: (Monad m, Vector v b) => (a -> Int -> b -> m a) -> a -> v b -> m ()
- sequence :: (Monad m, Vector v a, Vector v (m a)) => v (m a) -> m (v a)
- sequence_ :: (Monad m, Vector v (m a)) => v (m a) -> m ()
- prescanl :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a
- prescanl' :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a
- postscanl :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a
- postscanl' :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a
- scanl :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a
- scanl' :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a
- iscanl :: (Vector v a, Vector v b) => (Int -> a -> b -> a) -> a -> v b -> v a
- iscanl' :: (Vector v a, Vector v b) => (Int -> a -> b -> a) -> a -> v b -> v a
- prescanr :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b
- prescanr' :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b
- postscanr :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b
- postscanr' :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b
- scanr :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b
- scanr' :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b
- iscanr :: (Vector v a, Vector v b) => (Int -> a -> b -> b) -> b -> v a -> v b
- iscanr' :: (Vector v a, Vector v b) => (Int -> a -> b -> b) -> b -> v a -> v b
- toList :: Vector v a => v a -> [a]
- fromList :: Vector v a => [a] -> v a
- fromListN :: Vector v a => Int -> [a] -> v a
- convert :: (Vector v a, Vector w a) => v a -> w a
- freeze :: (PrimMonad m, Vector v a) => Mutable v (PrimState m) a -> m (v a)
- thaw :: (PrimMonad m, Vector v a) => v a -> m (Mutable v (PrimState m) a)
- copy :: (HasCallStack, PrimMonad m, Vector v a) => Mutable v (PrimState m) a -> v a -> m ()
- stream :: Vector v a => v a -> Bundle v a
- unstream :: Vector v a => Bundle v a -> v a
- streamR :: forall v a (u :: Type -> Type). Vector v a => v a -> Bundle u a
- unstreamR :: Vector v a => Bundle v a -> v a
- new :: Vector v a => New v a -> v a
- clone :: Vector v a => v a -> New v a
- eq :: (Vector v a, Eq a) => v a -> v a -> Bool
- cmp :: (Vector v a, Ord a) => v a -> v a -> Ordering
- eqBy :: (Vector v a, Vector v b) => (a -> b -> Bool) -> v a -> v b -> Bool
- cmpBy :: (Vector v a, Vector v b) => (a -> b -> Ordering) -> v a -> v b -> Ordering
- showsPrec :: (Vector v a, Show a) => Int -> v a -> ShowS
- readPrec :: (Vector v a, Read a) => ReadPrec (v a)
- liftShowsPrec :: Vector v a => (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> v a -> ShowS
- liftReadsPrec :: Vector v a => (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (v a)
- gfoldl :: (Vector v a, Data a) => (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> v a -> c (v a)
- dataCast :: (Vector v a, Data a, Typeable v, Typeable t) => (forall d. Data d => c (t d)) -> Maybe (c (v a))
- mkType :: String -> DataType
Immutable vectors
class MVector (Mutable v) a => Vector (v :: Type -> Type) a #
Minimal complete definition
basicUnsafeFreeze, basicUnsafeThaw, basicLength, basicUnsafeSlice, basicUnsafeIndexM
Instances
Vector Vector a | |
Defined in Data.Vector Methods basicUnsafeFreeze :: Mutable Vector s a -> ST s (Vector a) # basicUnsafeThaw :: Vector a -> ST s (Mutable Vector s a) # basicLength :: Vector a -> Int # basicUnsafeSlice :: Int -> Int -> Vector a -> Vector a # basicUnsafeIndexM :: Vector a -> Int -> Box a # basicUnsafeCopy :: Mutable Vector s a -> Vector a -> ST s () # | |
Prim a => Vector Vector a | |
Defined in Data.Vector.Primitive Methods basicUnsafeFreeze :: Mutable Vector s a -> ST s (Vector a) # basicUnsafeThaw :: Vector a -> ST s (Mutable Vector s a) # basicLength :: Vector a -> Int # basicUnsafeSlice :: Int -> Int -> Vector a -> Vector a # basicUnsafeIndexM :: Vector a -> Int -> Box a # basicUnsafeCopy :: Mutable Vector s a -> Vector a -> ST s () # | |
Storable a => Vector Vector a | |
Defined in Data.Vector.Storable Methods basicUnsafeFreeze :: Mutable Vector s a -> ST s (Vector a) # basicUnsafeThaw :: Vector a -> ST s (Mutable Vector s a) # basicLength :: Vector a -> Int # basicUnsafeSlice :: Int -> Int -> Vector a -> Vector a # basicUnsafeIndexM :: Vector a -> Int -> Box a # basicUnsafeCopy :: Mutable Vector s a -> Vector a -> ST s () # | |
Vector Vector a | |
Defined in Data.Vector.Strict Methods basicUnsafeFreeze :: Mutable Vector s a -> ST s (Vector a) # basicUnsafeThaw :: Vector a -> ST s (Mutable Vector s a) # basicLength :: Vector a -> Int # basicUnsafeSlice :: Int -> Int -> Vector a -> Vector a # basicUnsafeIndexM :: Vector a -> Int -> Box a # basicUnsafeCopy :: Mutable Vector s a -> Vector a -> ST s () # | |
Vector Vector All | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s All -> ST s (Vector All) # basicUnsafeThaw :: Vector All -> ST s (Mutable Vector s All) # basicLength :: Vector All -> Int # basicUnsafeSlice :: Int -> Int -> Vector All -> Vector All # basicUnsafeIndexM :: Vector All -> Int -> Box All # basicUnsafeCopy :: Mutable Vector s All -> Vector All -> ST s () # | |
Vector Vector Any | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Any -> ST s (Vector Any) # basicUnsafeThaw :: Vector Any -> ST s (Mutable Vector s Any) # basicLength :: Vector Any -> Int # basicUnsafeSlice :: Int -> Int -> Vector Any -> Vector Any # basicUnsafeIndexM :: Vector Any -> Int -> Box Any # basicUnsafeCopy :: Mutable Vector s Any -> Vector Any -> ST s () # | |
Vector Vector Int16 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Int16 -> ST s (Vector Int16) # basicUnsafeThaw :: Vector Int16 -> ST s (Mutable Vector s Int16) # basicLength :: Vector Int16 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Int16 -> Vector Int16 # basicUnsafeIndexM :: Vector Int16 -> Int -> Box Int16 # basicUnsafeCopy :: Mutable Vector s Int16 -> Vector Int16 -> ST s () # | |
Vector Vector Int32 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Int32 -> ST s (Vector Int32) # basicUnsafeThaw :: Vector Int32 -> ST s (Mutable Vector s Int32) # basicLength :: Vector Int32 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Int32 -> Vector Int32 # basicUnsafeIndexM :: Vector Int32 -> Int -> Box Int32 # basicUnsafeCopy :: Mutable Vector s Int32 -> Vector Int32 -> ST s () # | |
Vector Vector Int64 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Int64 -> ST s (Vector Int64) # basicUnsafeThaw :: Vector Int64 -> ST s (Mutable Vector s Int64) # basicLength :: Vector Int64 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Int64 -> Vector Int64 # basicUnsafeIndexM :: Vector Int64 -> Int -> Box Int64 # basicUnsafeCopy :: Mutable Vector s Int64 -> Vector Int64 -> ST s () # | |
Vector Vector Int8 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Int8 -> ST s (Vector Int8) # basicUnsafeThaw :: Vector Int8 -> ST s (Mutable Vector s Int8) # basicLength :: Vector Int8 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Int8 -> Vector Int8 # basicUnsafeIndexM :: Vector Int8 -> Int -> Box Int8 # basicUnsafeCopy :: Mutable Vector s Int8 -> Vector Int8 -> ST s () # | |
Vector Vector Word16 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Word16 -> ST s (Vector Word16) # basicUnsafeThaw :: Vector Word16 -> ST s (Mutable Vector s Word16) # basicLength :: Vector Word16 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Word16 -> Vector Word16 # basicUnsafeIndexM :: Vector Word16 -> Int -> Box Word16 # basicUnsafeCopy :: Mutable Vector s Word16 -> Vector Word16 -> ST s () # | |
Vector Vector Word32 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Word32 -> ST s (Vector Word32) # basicUnsafeThaw :: Vector Word32 -> ST s (Mutable Vector s Word32) # basicLength :: Vector Word32 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Word32 -> Vector Word32 # basicUnsafeIndexM :: Vector Word32 -> Int -> Box Word32 # basicUnsafeCopy :: Mutable Vector s Word32 -> Vector Word32 -> ST s () # | |
Vector Vector Word64 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Word64 -> ST s (Vector Word64) # basicUnsafeThaw :: Vector Word64 -> ST s (Mutable Vector s Word64) # basicLength :: Vector Word64 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Word64 -> Vector Word64 # basicUnsafeIndexM :: Vector Word64 -> Int -> Box Word64 # basicUnsafeCopy :: Mutable Vector s Word64 -> Vector Word64 -> ST s () # | |
Vector Vector Word8 | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Word8 -> ST s (Vector Word8) # basicUnsafeThaw :: Vector Word8 -> ST s (Mutable Vector s Word8) # basicLength :: Vector Word8 -> Int # basicUnsafeSlice :: Int -> Int -> Vector Word8 -> Vector Word8 # basicUnsafeIndexM :: Vector Word8 -> Int -> Box Word8 # basicUnsafeCopy :: Mutable Vector s Word8 -> Vector Word8 -> ST s () # | |
Vector Vector () | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s () -> ST s (Vector ()) # basicUnsafeThaw :: Vector () -> ST s (Mutable Vector s ()) # basicLength :: Vector () -> Int # basicUnsafeSlice :: Int -> Int -> Vector () -> Vector () # basicUnsafeIndexM :: Vector () -> Int -> Box () # basicUnsafeCopy :: Mutable Vector s () -> Vector () -> ST s () # | |
Vector Vector Bool | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Bool -> ST s (Vector Bool) # basicUnsafeThaw :: Vector Bool -> ST s (Mutable Vector s Bool) # basicLength :: Vector Bool -> Int # basicUnsafeSlice :: Int -> Int -> Vector Bool -> Vector Bool # basicUnsafeIndexM :: Vector Bool -> Int -> Box Bool # basicUnsafeCopy :: Mutable Vector s Bool -> Vector Bool -> ST s () # | |
Vector Vector Char | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Char -> ST s (Vector Char) # basicUnsafeThaw :: Vector Char -> ST s (Mutable Vector s Char) # basicLength :: Vector Char -> Int # basicUnsafeSlice :: Int -> Int -> Vector Char -> Vector Char # basicUnsafeIndexM :: Vector Char -> Int -> Box Char # basicUnsafeCopy :: Mutable Vector s Char -> Vector Char -> ST s () # | |
Vector Vector Double | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Double -> ST s (Vector Double) # basicUnsafeThaw :: Vector Double -> ST s (Mutable Vector s Double) # basicLength :: Vector Double -> Int # basicUnsafeSlice :: Int -> Int -> Vector Double -> Vector Double # basicUnsafeIndexM :: Vector Double -> Int -> Box Double # basicUnsafeCopy :: Mutable Vector s Double -> Vector Double -> ST s () # | |
Vector Vector Float | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Float -> ST s (Vector Float) # basicUnsafeThaw :: Vector Float -> ST s (Mutable Vector s Float) # basicLength :: Vector Float -> Int # basicUnsafeSlice :: Int -> Int -> Vector Float -> Vector Float # basicUnsafeIndexM :: Vector Float -> Int -> Box Float # basicUnsafeCopy :: Mutable Vector s Float -> Vector Float -> ST s () # | |
Vector Vector Int | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Int -> ST s (Vector Int) # basicUnsafeThaw :: Vector Int -> ST s (Mutable Vector s Int) # basicLength :: Vector Int -> Int # basicUnsafeSlice :: Int -> Int -> Vector Int -> Vector Int # basicUnsafeIndexM :: Vector Int -> Int -> Box Int # basicUnsafeCopy :: Mutable Vector s Int -> Vector Int -> ST s () # | |
Vector Vector Word | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s Word -> ST s (Vector Word) # basicUnsafeThaw :: Vector Word -> ST s (Mutable Vector s Word) # basicLength :: Vector Word -> Int # basicUnsafeSlice :: Int -> Int -> Vector Word -> Vector Word # basicUnsafeIndexM :: Vector Word -> Int -> Box Word # basicUnsafeCopy :: Mutable Vector s Word -> Vector Word -> ST s () # | |
Unbox a => Vector Vector (Complex a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Complex a) -> ST s (Vector (Complex a)) # basicUnsafeThaw :: Vector (Complex a) -> ST s (Mutable Vector s (Complex a)) # basicLength :: Vector (Complex a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Complex a) -> Vector (Complex a) # basicUnsafeIndexM :: Vector (Complex a) -> Int -> Box (Complex a) # basicUnsafeCopy :: Mutable Vector s (Complex a) -> Vector (Complex a) -> ST s () # | |
Unbox a => Vector Vector (Identity a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Identity a) -> ST s (Vector (Identity a)) # basicUnsafeThaw :: Vector (Identity a) -> ST s (Mutable Vector s (Identity a)) # basicLength :: Vector (Identity a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Identity a) -> Vector (Identity a) # basicUnsafeIndexM :: Vector (Identity a) -> Int -> Box (Identity a) # basicUnsafeCopy :: Mutable Vector s (Identity a) -> Vector (Identity a) -> ST s () # | |
Unbox a => Vector Vector (Down a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Down a) -> ST s (Vector (Down a)) # basicUnsafeThaw :: Vector (Down a) -> ST s (Mutable Vector s (Down a)) # basicLength :: Vector (Down a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Down a) -> Vector (Down a) # basicUnsafeIndexM :: Vector (Down a) -> Int -> Box (Down a) # basicUnsafeCopy :: Mutable Vector s (Down a) -> Vector (Down a) -> ST s () # | |
Unbox a => Vector Vector (First a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (First a) -> ST s (Vector (First a)) # basicUnsafeThaw :: Vector (First a) -> ST s (Mutable Vector s (First a)) # basicLength :: Vector (First a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (First a) -> Vector (First a) # basicUnsafeIndexM :: Vector (First a) -> Int -> Box (First a) # basicUnsafeCopy :: Mutable Vector s (First a) -> Vector (First a) -> ST s () # | |
Unbox a => Vector Vector (Last a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Last a) -> ST s (Vector (Last a)) # basicUnsafeThaw :: Vector (Last a) -> ST s (Mutable Vector s (Last a)) # basicLength :: Vector (Last a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Last a) -> Vector (Last a) # basicUnsafeIndexM :: Vector (Last a) -> Int -> Box (Last a) # basicUnsafeCopy :: Mutable Vector s (Last a) -> Vector (Last a) -> ST s () # | |
Unbox a => Vector Vector (Max a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Max a) -> ST s (Vector (Max a)) # basicUnsafeThaw :: Vector (Max a) -> ST s (Mutable Vector s (Max a)) # basicLength :: Vector (Max a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Max a) -> Vector (Max a) # basicUnsafeIndexM :: Vector (Max a) -> Int -> Box (Max a) # basicUnsafeCopy :: Mutable Vector s (Max a) -> Vector (Max a) -> ST s () # | |
Unbox a => Vector Vector (Min a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Min a) -> ST s (Vector (Min a)) # basicUnsafeThaw :: Vector (Min a) -> ST s (Mutable Vector s (Min a)) # basicLength :: Vector (Min a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Min a) -> Vector (Min a) # basicUnsafeIndexM :: Vector (Min a) -> Int -> Box (Min a) # basicUnsafeCopy :: Mutable Vector s (Min a) -> Vector (Min a) -> ST s () # | |
Unbox a => Vector Vector (WrappedMonoid a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (WrappedMonoid a) -> ST s (Vector (WrappedMonoid a)) # basicUnsafeThaw :: Vector (WrappedMonoid a) -> ST s (Mutable Vector s (WrappedMonoid a)) # basicLength :: Vector (WrappedMonoid a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (WrappedMonoid a) -> Vector (WrappedMonoid a) # basicUnsafeIndexM :: Vector (WrappedMonoid a) -> Int -> Box (WrappedMonoid a) # basicUnsafeCopy :: Mutable Vector s (WrappedMonoid a) -> Vector (WrappedMonoid a) -> ST s () # elemseq :: Vector (WrappedMonoid a) -> WrappedMonoid a -> b -> b # | |
Unbox a => Vector Vector (Dual a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Dual a) -> ST s (Vector (Dual a)) # basicUnsafeThaw :: Vector (Dual a) -> ST s (Mutable Vector s (Dual a)) # basicLength :: Vector (Dual a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Dual a) -> Vector (Dual a) # basicUnsafeIndexM :: Vector (Dual a) -> Int -> Box (Dual a) # basicUnsafeCopy :: Mutable Vector s (Dual a) -> Vector (Dual a) -> ST s () # | |
Unbox a => Vector Vector (Product a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Product a) -> ST s (Vector (Product a)) # basicUnsafeThaw :: Vector (Product a) -> ST s (Mutable Vector s (Product a)) # basicLength :: Vector (Product a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Product a) -> Vector (Product a) # basicUnsafeIndexM :: Vector (Product a) -> Int -> Box (Product a) # basicUnsafeCopy :: Mutable Vector s (Product a) -> Vector (Product a) -> ST s () # | |
Unbox a => Vector Vector (Sum a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Sum a) -> ST s (Vector (Sum a)) # basicUnsafeThaw :: Vector (Sum a) -> ST s (Mutable Vector s (Sum a)) # basicLength :: Vector (Sum a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Sum a) -> Vector (Sum a) # basicUnsafeIndexM :: Vector (Sum a) -> Int -> Box (Sum a) # basicUnsafeCopy :: Mutable Vector s (Sum a) -> Vector (Sum a) -> ST s () # | |
Vector Vector (DoNotUnboxLazy a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (DoNotUnboxLazy a) -> ST s (Vector (DoNotUnboxLazy a)) # basicUnsafeThaw :: Vector (DoNotUnboxLazy a) -> ST s (Mutable Vector s (DoNotUnboxLazy a)) # basicLength :: Vector (DoNotUnboxLazy a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (DoNotUnboxLazy a) -> Vector (DoNotUnboxLazy a) # basicUnsafeIndexM :: Vector (DoNotUnboxLazy a) -> Int -> Box (DoNotUnboxLazy a) # basicUnsafeCopy :: Mutable Vector s (DoNotUnboxLazy a) -> Vector (DoNotUnboxLazy a) -> ST s () # elemseq :: Vector (DoNotUnboxLazy a) -> DoNotUnboxLazy a -> b -> b # | |
NFData a => Vector Vector (DoNotUnboxNormalForm a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (DoNotUnboxNormalForm a) -> ST s (Vector (DoNotUnboxNormalForm a)) # basicUnsafeThaw :: Vector (DoNotUnboxNormalForm a) -> ST s (Mutable Vector s (DoNotUnboxNormalForm a)) # basicLength :: Vector (DoNotUnboxNormalForm a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (DoNotUnboxNormalForm a) -> Vector (DoNotUnboxNormalForm a) # basicUnsafeIndexM :: Vector (DoNotUnboxNormalForm a) -> Int -> Box (DoNotUnboxNormalForm a) # basicUnsafeCopy :: Mutable Vector s (DoNotUnboxNormalForm a) -> Vector (DoNotUnboxNormalForm a) -> ST s () # elemseq :: Vector (DoNotUnboxNormalForm a) -> DoNotUnboxNormalForm a -> b -> b # | |
Vector Vector (DoNotUnboxStrict a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (DoNotUnboxStrict a) -> ST s (Vector (DoNotUnboxStrict a)) # basicUnsafeThaw :: Vector (DoNotUnboxStrict a) -> ST s (Mutable Vector s (DoNotUnboxStrict a)) # basicLength :: Vector (DoNotUnboxStrict a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (DoNotUnboxStrict a) -> Vector (DoNotUnboxStrict a) # basicUnsafeIndexM :: Vector (DoNotUnboxStrict a) -> Int -> Box (DoNotUnboxStrict a) # basicUnsafeCopy :: Mutable Vector s (DoNotUnboxStrict a) -> Vector (DoNotUnboxStrict a) -> ST s () # elemseq :: Vector (DoNotUnboxStrict a) -> DoNotUnboxStrict a -> b -> b # | |
Prim a => Vector Vector (UnboxViaPrim a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (UnboxViaPrim a) -> ST s (Vector (UnboxViaPrim a)) # basicUnsafeThaw :: Vector (UnboxViaPrim a) -> ST s (Mutable Vector s (UnboxViaPrim a)) # basicLength :: Vector (UnboxViaPrim a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (UnboxViaPrim a) -> Vector (UnboxViaPrim a) # basicUnsafeIndexM :: Vector (UnboxViaPrim a) -> Int -> Box (UnboxViaPrim a) # basicUnsafeCopy :: Mutable Vector s (UnboxViaPrim a) -> Vector (UnboxViaPrim a) -> ST s () # elemseq :: Vector (UnboxViaPrim a) -> UnboxViaPrim a -> b -> b # | |
(Unbox a, Unbox b) => Vector Vector (Arg a b) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Arg a b) -> ST s (Vector (Arg a b)) # basicUnsafeThaw :: Vector (Arg a b) -> ST s (Mutable Vector s (Arg a b)) # basicLength :: Vector (Arg a b) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Arg a b) -> Vector (Arg a b) # basicUnsafeIndexM :: Vector (Arg a b) -> Int -> Box (Arg a b) # basicUnsafeCopy :: Mutable Vector s (Arg a b) -> Vector (Arg a b) -> ST s () # | |
(IsoUnbox a b, Unbox b) => Vector Vector (As a b) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (As a b) -> ST s (Vector (As a b)) # basicUnsafeThaw :: Vector (As a b) -> ST s (Mutable Vector s (As a b)) # basicLength :: Vector (As a b) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (As a b) -> Vector (As a b) # basicUnsafeIndexM :: Vector (As a b) -> Int -> Box (As a b) # basicUnsafeCopy :: Mutable Vector s (As a b) -> Vector (As a b) -> ST s () # | |
(Unbox a, Unbox b) => Vector Vector (a, b) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (a, b) -> ST s (Vector (a, b)) # basicUnsafeThaw :: Vector (a, b) -> ST s (Mutable Vector s (a, b)) # basicLength :: Vector (a, b) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (a, b) -> Vector (a, b) # basicUnsafeIndexM :: Vector (a, b) -> Int -> Box (a, b) # basicUnsafeCopy :: Mutable Vector s (a, b) -> Vector (a, b) -> ST s () # | |
Unbox a => Vector Vector (Const a b) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Const a b) -> ST s (Vector (Const a b)) # basicUnsafeThaw :: Vector (Const a b) -> ST s (Mutable Vector s (Const a b)) # basicLength :: Vector (Const a b) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Const a b) -> Vector (Const a b) # basicUnsafeIndexM :: Vector (Const a b) -> Int -> Box (Const a b) # basicUnsafeCopy :: Mutable Vector s (Const a b) -> Vector (Const a b) -> ST s () # | |
Unbox (f a) => Vector Vector (Alt f a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Alt f a) -> ST s (Vector (Alt f a)) # basicUnsafeThaw :: Vector (Alt f a) -> ST s (Mutable Vector s (Alt f a)) # basicLength :: Vector (Alt f a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Alt f a) -> Vector (Alt f a) # basicUnsafeIndexM :: Vector (Alt f a) -> Int -> Box (Alt f a) # basicUnsafeCopy :: Mutable Vector s (Alt f a) -> Vector (Alt f a) -> ST s () # | |
(Unbox a, Unbox b, Unbox c) => Vector Vector (a, b, c) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (a, b, c) -> ST s (Vector (a, b, c)) # basicUnsafeThaw :: Vector (a, b, c) -> ST s (Mutable Vector s (a, b, c)) # basicLength :: Vector (a, b, c) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (a, b, c) -> Vector (a, b, c) # basicUnsafeIndexM :: Vector (a, b, c) -> Int -> Box (a, b, c) # basicUnsafeCopy :: Mutable Vector s (a, b, c) -> Vector (a, b, c) -> ST s () # | |
(Unbox a, Unbox b, Unbox c, Unbox d) => Vector Vector (a, b, c, d) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (a, b, c, d) -> ST s (Vector (a, b, c, d)) # basicUnsafeThaw :: Vector (a, b, c, d) -> ST s (Mutable Vector s (a, b, c, d)) # basicLength :: Vector (a, b, c, d) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (a, b, c, d) -> Vector (a, b, c, d) # basicUnsafeIndexM :: Vector (a, b, c, d) -> Int -> Box (a, b, c, d) # basicUnsafeCopy :: Mutable Vector s (a, b, c, d) -> Vector (a, b, c, d) -> ST s () # elemseq :: Vector (a, b, c, d) -> (a, b, c, d) -> b0 -> b0 # | |
Unbox (f (g a)) => Vector Vector (Compose f g a) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (Compose f g a) -> ST s (Vector (Compose f g a)) # basicUnsafeThaw :: Vector (Compose f g a) -> ST s (Mutable Vector s (Compose f g a)) # basicLength :: Vector (Compose f g a) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (Compose f g a) -> Vector (Compose f g a) # basicUnsafeIndexM :: Vector (Compose f g a) -> Int -> Box (Compose f g a) # basicUnsafeCopy :: Mutable Vector s (Compose f g a) -> Vector (Compose f g a) -> ST s () # elemseq :: Vector (Compose f g a) -> Compose f g a -> b -> b # | |
(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => Vector Vector (a, b, c, d, e) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (a, b, c, d, e) -> ST s (Vector (a, b, c, d, e)) # basicUnsafeThaw :: Vector (a, b, c, d, e) -> ST s (Mutable Vector s (a, b, c, d, e)) # basicLength :: Vector (a, b, c, d, e) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (a, b, c, d, e) -> Vector (a, b, c, d, e) # basicUnsafeIndexM :: Vector (a, b, c, d, e) -> Int -> Box (a, b, c, d, e) # basicUnsafeCopy :: Mutable Vector s (a, b, c, d, e) -> Vector (a, b, c, d, e) -> ST s () # elemseq :: Vector (a, b, c, d, e) -> (a, b, c, d, e) -> b0 -> b0 # | |
(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => Vector Vector (a, b, c, d, e, f) | |
Defined in Data.Vector.Unboxed.Base Methods basicUnsafeFreeze :: Mutable Vector s (a, b, c, d, e, f) -> ST s (Vector (a, b, c, d, e, f)) # basicUnsafeThaw :: Vector (a, b, c, d, e, f) -> ST s (Mutable Vector s (a, b, c, d, e, f)) # basicLength :: Vector (a, b, c, d, e, f) -> Int # basicUnsafeSlice :: Int -> Int -> Vector (a, b, c, d, e, f) -> Vector (a, b, c, d, e, f) # basicUnsafeIndexM :: Vector (a, b, c, d, e, f) -> Int -> Box (a, b, c, d, e, f) # basicUnsafeCopy :: Mutable Vector s (a, b, c, d, e, f) -> Vector (a, b, c, d, e, f) -> ST s () # elemseq :: Vector (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> b0 -> b0 # |
Accessors
Length information
Indexing
Extracting subvectors
Construction
Initialisation
Monadic initialisation
replicateM :: (Monad m, Vector v a) => Int -> m a -> m (v a) #
createT :: (Traversable f, Vector v a) => (forall s. ST s (f (Mutable v s a))) -> f (v a) #
Unfolding
constructN :: Vector v a => Int -> (v a -> a) -> v a #
constructrN :: Vector v a => Int -> (v a -> a) -> v a #
Enumeration
enumFromStepN :: (Vector v a, Num a) => a -> a -> Int -> v a #
enumFromTo :: (Vector v a, Enum a) => a -> a -> v a #
enumFromThenTo :: (Vector v a, Enum a) => a -> a -> a -> v a #
Concatenation
Restricting memory usage
Modifying vectors
Permutations
Safe destructive update
Elementwise operations
Indexing
Mapping
Monadic mapping
Zipping
zipWith3 :: (Vector v a, Vector v b, Vector v c, Vector v d) => (a -> b -> c -> d) -> v a -> v b -> v c -> v d #
zipWith4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e) => (a -> b -> c -> d -> e) -> v a -> v b -> v c -> v d -> v e #
zipWith5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f) => (a -> b -> c -> d -> e -> f) -> v a -> v b -> v c -> v d -> v e -> v f #
zipWith6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v g) => (a -> b -> c -> d -> e -> f -> g) -> v a -> v b -> v c -> v d -> v e -> v f -> v g #
izipWith3 :: (Vector v a, Vector v b, Vector v c, Vector v d) => (Int -> a -> b -> c -> d) -> v a -> v b -> v c -> v d #
izipWith4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e) => (Int -> a -> b -> c -> d -> e) -> v a -> v b -> v c -> v d -> v e #
izipWith5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f) => (Int -> a -> b -> c -> d -> e -> f) -> v a -> v b -> v c -> v d -> v e -> v f #
izipWith6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v g) => (Int -> a -> b -> c -> d -> e -> f -> g) -> v a -> v b -> v c -> v d -> v e -> v f -> v g #
zip3 :: (Vector v a, Vector v b, Vector v c, Vector v (a, b, c)) => v a -> v b -> v c -> v (a, b, c) #
zip4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v (a, b, c, d)) => v a -> v b -> v c -> v d -> v (a, b, c, d) #
zip5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v (a, b, c, d, e)) => v a -> v b -> v c -> v d -> v e -> v (a, b, c, d, e) #
zip6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v (a, b, c, d, e, f)) => v a -> v b -> v c -> v d -> v e -> v f -> v (a, b, c, d, e, f) #
Monadic zipping
zipWithM :: (Monad m, Vector v a, Vector v b, Vector v c) => (a -> b -> m c) -> v a -> v b -> m (v c) #
izipWithM :: (Monad m, Vector v a, Vector v b, Vector v c) => (Int -> a -> b -> m c) -> v a -> v b -> m (v c) #
Unzipping
unzip3 :: (Vector v a, Vector v b, Vector v c, Vector v (a, b, c)) => v (a, b, c) -> (v a, v b, v c) #
unzip4 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v (a, b, c, d)) => v (a, b, c, d) -> (v a, v b, v c, v d) #
unzip5 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v (a, b, c, d, e)) => v (a, b, c, d, e) -> (v a, v b, v c, v d, v e) #
unzip6 :: (Vector v a, Vector v b, Vector v c, Vector v d, Vector v e, Vector v f, Vector v (a, b, c, d, e, f)) => v (a, b, c, d, e, f) -> (v a, v b, v c, v d, v e, v f) #
Working with predicates
Filtering
Partitioning
unstablePartition :: Vector v a => (a -> Bool) -> v a -> (v a, v a) #
Searching
Folding
Specialised folds
Monadic folds
Monadic sequencing
Prefix sums (scans)
postscanl' :: (Vector v a, Vector v b) => (a -> b -> a) -> a -> v b -> v a #
postscanr' :: (Vector v a, Vector v b) => (a -> b -> b) -> b -> v a -> v b #
Conversions
Lists
Different vector types
Mutable vectors
Fusion support
Conversion to/from Bundles
Recycling support
Utilities
Comparisons
Show and Read
liftShowsPrec :: Vector v a => (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> v a -> ShowS #
liftReadsPrec :: Vector v a => (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (v a) #
Data
and Typeable
gfoldl :: (Vector v a, Data a) => (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> v a -> c (v a) #