Class of types supporting primitive array operations. This includes
interfacing with GC-managed memory (functions suffixed with ByteArray#)
and interfacing with unmanaged memory (functions suffixed with Addr#).
Endianness is platform-dependent.
Methods
sizeOfType# :: Proxy a -> Int#The size of values of type
ain bytes. This has to be used with TypeApplications:sizeOfType @a.sizeOf# :: a -> Int#The size of values of type
ain bytes. The argument is not used.It is recommended to use sizeOfType# instead.
alignmentOfType# :: Proxy a -> Int#The alignment of values of type
ain bytes. This has to be used with TypeApplications:alignmentOfType @a.alignment# :: a -> Int#The alignment of values of type
ain bytes. The argument is not used.It is recommended to use alignmentOfType# instead.
indexByteArray# :: ByteArray# -> Int# -> aRead a value from the array. The offset is in elements of type
arather than in bytes.readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, a #)Read a value from the mutable array. The offset is in elements of type
arather than in bytes.writeByteArray# :: MutableByteArray# s -> Int# -> a -> State# s -> State# sWrite a value to the mutable array. The offset is in elements of type
arather than in bytes.setByteArray# :: MutableByteArray# s -> Int# -> Int# -> a -> State# s -> State# sFill a slice of the mutable array with a value. The offset and length of the chunk are in elements of type
arather than in bytes.indexOffAddr# :: Addr# -> Int# -> aRead a value from a memory position given by an address and an offset. The memory block the address refers to must be immutable. The offset is in elements of type
arather than in bytes.readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, a #)Read a value from a memory position given by an address and an offset. The offset is in elements of type
arather than in bytes.writeOffAddr# :: Addr# -> Int# -> a -> State# s -> State# sWrite a value to a memory position given by an address and an offset. The offset is in elements of type
arather than in bytes.setOffAddr# :: Addr# -> Int# -> Int# -> a -> State# s -> State# sFill a memory block given by an address, an offset and a length. The offset and length are in elements of type
arather than in bytes.
Instances77Prim, …
Prim CBoolDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CCharDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CClockDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CDoubleDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CFloatDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CIntDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CIntMaxDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CIntPtrDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CLLongDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CLongDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CPtrdiffDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CSCharDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CSUSecondsDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CShortDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CSigAtomicDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CSizeDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CTimeDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUCharDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUIntDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUIntMaxDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUIntPtrDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CULLongDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CULongDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUSecondsDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUShortDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CWcharDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim IntPtrDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim WordPtrDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Int16Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Int32Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Int64Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Int8Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CBlkCntDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CBlkSizeDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CCcDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CClockIdDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CDevDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CFsBlkCntDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CFsFilCntDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CGidDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CIdDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CInoDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CKeyDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CModeDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CNlinkDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim COffDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CPidDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CRLimDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CSpeedDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CSsizeDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CTcflagDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CTimerDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CUidDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim FdDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Word16Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Word32Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Word64Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim Word8Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim CharDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim DoubleDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim FloatDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim IntDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim WordDefined in primitive-0.9.1.0 · Data.Primitive.TypesPrim (FunPtr a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim (Ptr a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim (StablePtr a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Complex a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (First a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Last a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Max a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Min a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Identity a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Down a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Dual a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Product a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Sum a)Defined in primitive-0.9.1.0 · Data.Primitive.TypesPrim a => Prim (Const a b)Defined in primitive-0.9.1.0 · Data.Primitive.Types