repa-array-4.1.0.1: Bulk array representations and operators.

Safe HaskellNone
LanguageHaskell98

Data.Repa.Array.Material.Auto

Synopsis

Documentation

data A Source

Arrays where the elements that are automatically layed out into some efficient runtime representation.

The implementation uses type families to chose unboxed representations for all elements that can be unboxed. In particular: arrays of unboxed tuples are represented as tuples of unboxed arrays, and nested arrays are represented using a segment descriptor and a single single flat vector containing all the elements.

Constructors

Auto 

Fields

autoLength :: Int
 

Instances

Eq A 
Show A 
Layout A 
Bulk A Char 
Bulk A Double 
Bulk A Float 
Bulk A Int 
Bulk A Int8 
Bulk A Int16 
Bulk A Int32 
Bulk A Int64 
Bulk A Word8 
Bulk A Date32 
Windowable A Char 
Windowable A Double 
Windowable A Float 
Windowable A Int 
Windowable A Int8 
Windowable A Int16 
Windowable A Int32 
Windowable A Int64 
Windowable A Word8 
Windowable A Date32 
Target A Char 
Target A Double 
Target A Float 
Target A Int 
Target A Int8 
Target A Int16 
Target A Int32 
Target A Int64 
Target A Word8 
Target A Date32 
Convert F Char A Char 
Convert F Double A Double 
Convert F Float A Float 
Convert F Int A Int 
Convert F Int8 A Int8 
Convert F Int16 A Int16 
Convert F Int32 A Int32 
Convert F Int64 A Int64 
Convert F Word8 A Word8 
Convert A Char F Char 
Convert A Double F Double 
Convert A Float F Float 
Convert A Int F Int 
Convert A Int8 F Int8 
Convert A Int16 F Int16 
Convert A Int32 F Int32 
Convert A Int64 F Int64 
Convert A Word8 F Word8 
Bulk A a => Bulk A [a] 
Bulk A a => Windowable A [a] 
Target A [a] 
(Bulk A a, Bulk A b) => Bulk A (a, b) 
(Bulk A a, Bulk A b) => Bulk A ((:*:) a b) 
(Bulk A a, Windowable r a, (~) * (Index r) Int) => Bulk A (Array r a) 
(Windowable A a, Windowable A b) => Windowable A (a, b) 
(Windowable A a, Windowable A b) => Windowable A ((:*:) a b) 
(Bulk A a, Windowable l a, (~) * (Index l) Int) => Windowable A (Array l a) 
(Target A a, Target A b) => Target A (a, b) 
(Target A a, Target A b) => Target A ((:*:) a b) 
(Bulk l a, Target l a, (~) * (Index l) Int) => Target A (Array l a) 
Convert r1 a1 r2 a2 => Convert N (Array r1 a1) A (Array r2 a2) 
Convert r1 a1 r2 a2 => Convert A (Array r1 a1) A (Array r2 a2) 
Convert r1 a1 r2 a2 => Convert A (Array r1 a1) N (Array r2 a2) 
(Convert A a1 A a2, Convert A b1 A b2) => Convert A (a1, b1) (T2 A A) (a2, b2) 
Eq (Name A) 
Show (Name A) 
Eq (Array A Char) 
Eq a => Eq (Array A [a]) 
Eq (Array (T2 A A) (a, b)) => Eq (Array A (a, b)) 
(Eq (Array A a), Eq (Array A b)) => Eq (Array A ((:*:) a b)) 
Show (Array A Char) 
Show (Array A Double) 
Show (Array A Float) 
Show (Array A Int) 
Show (Array A Int8) 
Show (Array A Int16) 
Show (Array A Int32) 
Show (Array A Int64) 
Show a => Show (Array A [a]) 
Show (Array A Word8) 
Show (Array (T2 A A) (a, b)) => Show (Array A (a, b)) 
(Show (Array A a), Show (Array A b)) => Show (Array A ((:*:) a b)) 
Show (Array A a) => Show (Array A (Array A a)) 
Show (Array A Date32) 
Unpack (Array F Char) t => Unpack (Array A Char) t 
Unpack (Buffer F Char) t => Unpack (Buffer A Char) t 
Unpack (Buffer F Double) t => Unpack (Buffer A Double) t 
Unpack (Buffer F Float) t => Unpack (Buffer A Float) t 
Unpack (Buffer F Int) t => Unpack (Buffer A Int) t 
Unpack (Buffer F Int8) t => Unpack (Buffer A Int8) t 
Unpack (Buffer F Int16) t => Unpack (Buffer A Int16) t 
Unpack (Buffer F Int32) t => Unpack (Buffer A Int32) t 
Unpack (Buffer F Int64) t => Unpack (Buffer A Int64) t 
Unpack (Buffer F Word8) t => Unpack (Buffer A Word8) t 
Unpack (Buffer (T2 A A) (a, b)) t => Unpack (Buffer A (a, b)) t 
Unpack (Buffer N (Array l a)) t => Unpack (Buffer A (Array l a)) t 
Unpack (Buffer F Date32) t => Unpack (Buffer A Date32) t 
Unpack (Buffer A [a]) (Buffer A [a]) 
(Unpack (Buffer A a) tA, Unpack (Buffer A b) tB) => Unpack (Buffer A ((:*:) a b)) (tA, tB) 
(Convert A a1 A a2, Convert A b1 A b2) => Convert (T2 A A) (a1, b1) A (a2, b2) 
data Name A = A 
type Index A = Int 
data Array A Char = AArray_Char !(Array F Char) 
data Array A Double = AArray_Double !(Array F Double) 
data Array A Float = AArray_Float !(Array F Float) 
data Array A Int = AArray_Int !(Array F Int) 
data Array A Int8 = AArray_Int8 !(Array F Int8) 
data Array A Int16 = AArray_Int16 !(Array F Int16) 
data Array A Int32 = AArray_Int32 !(Array F Int32) 
data Array A Int64 = AArray_Int64 !(Array F Int64) 
data Array A Word8 = AArray_Word8 !(Array F Word8) 
data Array A Date32 = AArray_Date32 !(Array F Date32) 
data Buffer A Char = ABuffer_Char !(Buffer F Char) 
data Buffer A Double = ABuffer_Double !(Buffer F Double) 
data Buffer A Float = ABuffer_Float !(Buffer F Float) 
data Buffer A Int = ABuffer_Int !(Buffer F Int) 
data Buffer A Int8 = ABuffer_Int8 !(Buffer F Int8) 
data Buffer A Int16 = ABuffer_Int16 !(Buffer F Int16) 
data Buffer A Int32 = ABuffer_Int32 !(Buffer F Int32) 
data Buffer A Int64 = ABuffer_Int64 !(Buffer F Int64) 
data Buffer A Word8 = ABuffer_Word8 !(Buffer F Word8) 
data Buffer A Date32 = ABuffer_Date32 !(Buffer F Date32) 
data Array A [a] = AArray_List !(Array B [a]) 
data Buffer A [a] = ABuffer_List !(Buffer B [a]) 
data Array A (a, b) = AArray_T2 !(Array (T2 A A) (a, b)) 
data Array A ((:*:) a b) = AArray_Prod !(Array A a) !(Array A b) 
data Array A (Array r a) = AArray_Array !(Array N (Array r a)) 
data Buffer A (a, b) = ABuffer_T2 !(Buffer (T2 A A) (a, b)) 
data Buffer A ((:*:) a b) = ABuffer_Prod !(Buffer A a) !(Buffer A b) 
data Buffer A (Array l a) = ABuffer_Array !(Buffer N (Array l a))