repa-3.4.1.3: High performance, regular, shape polymorphic parallel arrays.

Safe HaskellNone
LanguageHaskell98

Data.Array.Repa.Repr.Vector

Synopsis

Documentation

data V #

Arrays represented as boxed vectors.

This representation should only be used when your element type doesn't have an Unbox instsance. If it does, then use the Unboxed U representation will be faster.

Instances

Source V a #

Read elements from a boxed vector array.

Associated Types

data Array V sh a :: * #

Methods

extent :: Shape sh => Array V sh a -> sh #

index :: Shape sh => Array V sh a -> sh -> a #

unsafeIndex :: Shape sh => Array V sh a -> sh -> a #

linearIndex :: Shape sh => Array V sh a -> Int -> a #

unsafeLinearIndex :: Shape sh => Array V sh a -> Int -> a #

deepSeqArray :: Shape sh => Array V sh a -> b -> b #

Target V e #

Filling of boxed vector arrays.

Associated Types

data MVec V e :: * #

Methods

newMVec :: Int -> IO (MVec V e) #

unsafeWriteMVec :: MVec V e -> Int -> e -> IO () #

unsafeFreezeMVec :: sh -> MVec V e -> IO (Array V sh e) #

deepSeqMVec :: MVec V e -> a -> a #

touchMVec :: MVec V e -> IO () #

(Read sh, Read e) => Read (Array V sh e) # 

Methods

readsPrec :: Int -> ReadS (Array V sh e) #

readList :: ReadS [Array V sh e] #

readPrec :: ReadPrec (Array V sh e) #

readListPrec :: ReadPrec [Array V sh e] #

(Show sh, Show e) => Show (Array V sh e) # 

Methods

showsPrec :: Int -> Array V sh e -> ShowS #

show :: Array V sh e -> String #

showList :: [Array V sh e] -> ShowS #

data Array V # 
data Array V = AVector !sh !(Vector a)
data MVec V # 
data MVec V = MVector (IOVector e)

computeVectorS :: Load r1 sh e => Array r1 sh e -> Array V sh e #

Sequential computation of array elements.

  • This is an alias for compute with a more specific type.

computeVectorP :: (Load r1 sh e, Monad m) => Array r1 sh e -> m (Array V sh e) #

Parallel computation of array elements.

fromListVector :: Shape sh => sh -> [a] -> Array V sh a #

O(n). Convert a list to a boxed vector array.

  • This is an alias for fromList with a more specific type.

fromVector :: sh -> Vector e -> Array V sh e #

O(1). Wrap a boxed vector as an array.

toVector :: Array V sh e -> Vector e #

O(1). Unpack a boxed vector from an array.