primitive-indexed-0.1.0.0

Safe HaskellNone
LanguageHaskell2010

Data.Primitive.Indexed.PrimArray

Contents

Synopsis

Types

data PrimVector n a Source #

Instances

(Prim a, Eq a) => Eq (PrimVector k n a) Source # 

Methods

(==) :: PrimVector k n a -> PrimVector k n a -> Bool #

(/=) :: PrimVector k n a -> PrimVector k n a -> Bool #

(Prim a, Ord a) => Ord (PrimVector k n a) Source # 

Methods

compare :: PrimVector k n a -> PrimVector k n a -> Ordering #

(<) :: PrimVector k n a -> PrimVector k n a -> Bool #

(<=) :: PrimVector k n a -> PrimVector k n a -> Bool #

(>) :: PrimVector k n a -> PrimVector k n a -> Bool #

(>=) :: PrimVector k n a -> PrimVector k n a -> Bool #

max :: PrimVector k n a -> PrimVector k n a -> PrimVector k n a #

min :: PrimVector k n a -> PrimVector k n a -> PrimVector k n a #

Primops

new :: (PrimMonad m, Prim a) => Length n -> m (MutablePrimVector n (PrimState m) a) Source #

index :: Prim a => PrimVector n a -> Index n -> a Source #

read :: (PrimMonad m, Prim a) => MutablePrimVector n (PrimState m) a -> Index n -> m a Source #

write :: (PrimMonad m, Prim a) => MutablePrimVector n (PrimState m) a -> Index n -> a -> m () Source #

length :: Prim a => PrimVector n a -> Length n Source #

Get the length of a vector.

size :: Prim a => MutablePrimVector n s a -> Length n Source #

Get the length of a mutable vector.

unsafeFreeze :: PrimMonad m => MutablePrimVector n (PrimState m) a -> m (PrimVector n a) Source #

Freeze the mutable vector. The argument must not be reused after this function is called on it.

Array Interop

with :: PrimArray a -> (forall n. PrimVector n a -> b) -> b Source #