Z-Data-0.1.3.0: Array, vector and text
Copyright(c) Dong Han 2017-2019
LicenseBSD
Maintainerwinterland1989@gmail.com
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Z.Data.Array.UnalignedAccess

Description

This module implements unaligned element access with ghc primitives (> 8.6).

Synopsis

Documentation

newtype UnalignedSize a Source #

Constructors

UnalignedSize 

Instances

Instances details
Eq (UnalignedSize a) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

Show (UnalignedSize a) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

class UnalignedAccess a where Source #

Primitive types which can be unaligned accessed

Instances

Instances details
UnalignedAccess Char Source #

Char's instance use 31bit wide char prim-op.

Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Double Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Float Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Int Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Int8 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Int16 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Int32 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Int64 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Word Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Word8 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Word16 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Word32 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess Word64 Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CChar Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CSChar Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CUChar Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CShort Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CUShort Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CInt Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CUInt Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CLong Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CULong Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CLLong Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CULLong Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CBool Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CFloat Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CDouble Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CPtrdiff Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CSize Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CWchar Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CSigAtomic Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CClock Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CTime Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CUSeconds Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CSUSeconds Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CIntPtr Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CUIntPtr Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CIntMax Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess CUIntMax Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Char) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Double) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Float) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Char) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Double) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Float) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

writeWord8ArrayAs :: (PrimMonad m, UnalignedAccess a) => MutableByteArray (PrimState m) -> Int -> a -> m () Source #

Lifted version of writeWord8ArrayAs#

readWord8ArrayAs :: (PrimMonad m, UnalignedAccess a) => MutableByteArray (PrimState m) -> Int -> m a Source #

Lifted version of readWord8ArrayAs#

indexWord8ArrayAs :: UnalignedAccess a => ByteArray -> Int -> a Source #

Lifted version of indexWord8ArrayAs#

writePrimWord8ArrayAs :: (PrimMonad m, UnalignedAccess a) => MutablePrimArray (PrimState m) Word8 -> Int -> a -> m () Source #

Lifted version of writeWord8ArrayAs#

readPrimWord8ArrayAs :: (PrimMonad m, UnalignedAccess a) => MutablePrimArray (PrimState m) Word8 -> Int -> m a Source #

Lifted version of readWord8ArrayAs#

newtype LE a Source #

little endianess wrapper

Constructors

LE 

Fields

Instances

Instances details
Eq a => Eq (LE a) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

Methods

(==) :: LE a -> LE a -> Bool #

(/=) :: LE a -> LE a -> Bool #

Show a => Show (LE a) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

Methods

showsPrec :: Int -> LE a -> ShowS #

show :: LE a -> String #

showList :: [LE a] -> ShowS #

UnalignedAccess (LE Char) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Double) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Float) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Int64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (LE Word64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

newtype BE a Source #

big endianess wrapper

Constructors

BE 

Fields

Instances

Instances details
Eq a => Eq (BE a) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

Methods

(==) :: BE a -> BE a -> Bool #

(/=) :: BE a -> BE a -> Bool #

Show a => Show (BE a) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

Methods

showsPrec :: Int -> BE a -> ShowS #

show :: BE a -> String #

showList :: [BE a] -> ShowS #

UnalignedAccess (BE Char) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Double) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Float) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Int64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word16) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word32) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess

UnalignedAccess (BE Word64) Source # 
Instance details

Defined in Z.Data.Array.UnalignedAccess