Copyright | (c) Roman Leshchinskiy 2008-2010 |
---|---|
License | BSD-style |
Maintainer | Roman Leshchinskiy <rl@cse.unsw.edu.au> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Data.Vector.Primitive.Mutable
Contents
Description
Mutable primitive vectors.
Synopsis
- data MVector s a = MVector !Int !Int !(MutableByteArray s)
- type IOVector = MVector RealWorld
- type STVector s = MVector s
- class Prim a
- length :: Prim a => MVector s a -> Int
- null :: Prim a => MVector s a -> Bool
- slice :: Prim a => Int -> Int -> MVector s a -> MVector s a
- init :: Prim a => MVector s a -> MVector s a
- tail :: Prim a => MVector s a -> MVector s a
- take :: Prim a => Int -> MVector s a -> MVector s a
- drop :: Prim a => Int -> MVector s a -> MVector s a
- splitAt :: Prim a => Int -> MVector s a -> (MVector s a, MVector s a)
- unsafeSlice :: Prim a => Int -> Int -> MVector s a -> MVector s a
- unsafeInit :: Prim a => MVector s a -> MVector s a
- unsafeTail :: Prim a => MVector s a -> MVector s a
- unsafeTake :: Prim a => Int -> MVector s a -> MVector s a
- unsafeDrop :: Prim a => Int -> MVector s a -> MVector s a
- overlaps :: Prim a => MVector s a -> MVector s a -> Bool
- new :: (PrimMonad m, Prim a) => Int -> m (MVector (PrimState m) a)
- unsafeNew :: (PrimMonad m, Prim a) => Int -> m (MVector (PrimState m) a)
- replicate :: (PrimMonad m, Prim a) => Int -> a -> m (MVector (PrimState m) a)
- replicateM :: (PrimMonad m, Prim a) => Int -> m a -> m (MVector (PrimState m) a)
- clone :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> m (MVector (PrimState m) a)
- grow :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a)
- unsafeGrow :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a)
- clear :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> m ()
- read :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m a
- write :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> a -> m ()
- modify :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> (a -> a) -> Int -> m ()
- swap :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> Int -> m ()
- unsafeRead :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m a
- unsafeWrite :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> a -> m ()
- unsafeModify :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> (a -> a) -> Int -> m ()
- unsafeSwap :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> Int -> m ()
- nextPermutation :: (PrimMonad m, Ord e, Prim e) => MVector (PrimState m) e -> m Bool
- set :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> a -> m ()
- copy :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
- move :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
- unsafeCopy :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
- unsafeMove :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
Mutable vectors of primitive types
Mutable vectors of primitive types.
Constructors
MVector !Int !Int !(MutableByteArray s) | offset, length, underlying mutable byte array |
Instances
Class of types supporting primitive array operations
Minimal complete definition
sizeOf#, alignment#, indexByteArray#, readByteArray#, writeByteArray#, setByteArray#, indexOffAddr#, readOffAddr#, writeOffAddr#, setOffAddr#
Instances
Prim Char | |
Defined in Data.Primitive.Types Methods alignment# :: Char -> Int# # indexByteArray# :: ByteArray# -> Int# -> Char # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Char#) # writeByteArray# :: MutableByteArray# s -> Int# -> Char -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Char -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Char # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Char#) # writeOffAddr# :: Addr# -> Int# -> Char -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Char -> State# s -> State# s # | |
Prim Double | |
Defined in Data.Primitive.Types Methods alignment# :: Double -> Int# # indexByteArray# :: ByteArray# -> Int# -> Double # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Double#) # writeByteArray# :: MutableByteArray# s -> Int# -> Double -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Double -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Double # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Double#) # writeOffAddr# :: Addr# -> Int# -> Double -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Double -> State# s -> State# s # | |
Prim Float | |
Defined in Data.Primitive.Types Methods alignment# :: Float -> Int# # indexByteArray# :: ByteArray# -> Int# -> Float # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Float#) # writeByteArray# :: MutableByteArray# s -> Int# -> Float -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Float -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Float # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Float#) # writeOffAddr# :: Addr# -> Int# -> Float -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Float -> State# s -> State# s # | |
Prim Int | |
Defined in Data.Primitive.Types Methods alignment# :: Int -> Int# # indexByteArray# :: ByteArray# -> Int# -> Int # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Int#) # writeByteArray# :: MutableByteArray# s -> Int# -> Int -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Int # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Int#) # writeOffAddr# :: Addr# -> Int# -> Int -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Int -> State# s -> State# s # | |
Prim Int8 | |
Defined in Data.Primitive.Types Methods alignment# :: Int8 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Int8 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Int8#) # writeByteArray# :: MutableByteArray# s -> Int# -> Int8 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int8 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Int8 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Int8#) # writeOffAddr# :: Addr# -> Int# -> Int8 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Int8 -> State# s -> State# s # | |
Prim Int16 | |
Defined in Data.Primitive.Types Methods alignment# :: Int16 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Int16 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Int16#) # writeByteArray# :: MutableByteArray# s -> Int# -> Int16 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int16 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Int16 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Int16#) # writeOffAddr# :: Addr# -> Int# -> Int16 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Int16 -> State# s -> State# s # | |
Prim Int32 | |
Defined in Data.Primitive.Types Methods alignment# :: Int32 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Int32 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Int32#) # writeByteArray# :: MutableByteArray# s -> Int# -> Int32 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int32 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Int32 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Int32#) # writeOffAddr# :: Addr# -> Int# -> Int32 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Int32 -> State# s -> State# s # | |
Prim Int64 | |
Defined in Data.Primitive.Types Methods alignment# :: Int64 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Int64 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Int64#) # writeByteArray# :: MutableByteArray# s -> Int# -> Int64 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int64 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Int64 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Int64#) # writeOffAddr# :: Addr# -> Int# -> Int64 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Int64 -> State# s -> State# s # | |
Prim Word | |
Defined in Data.Primitive.Types Methods alignment# :: Word -> Int# # indexByteArray# :: ByteArray# -> Int# -> Word # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Word#) # writeByteArray# :: MutableByteArray# s -> Int# -> Word -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Word # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Word#) # writeOffAddr# :: Addr# -> Int# -> Word -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Word -> State# s -> State# s # | |
Prim Word8 | |
Defined in Data.Primitive.Types Methods alignment# :: Word8 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Word8 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Word8#) # writeByteArray# :: MutableByteArray# s -> Int# -> Word8 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word8 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Word8 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Word8#) # writeOffAddr# :: Addr# -> Int# -> Word8 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Word8 -> State# s -> State# s # | |
Prim Word16 | |
Defined in Data.Primitive.Types Methods alignment# :: Word16 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Word16 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Word16#) # writeByteArray# :: MutableByteArray# s -> Int# -> Word16 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word16 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Word16 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Word16#) # writeOffAddr# :: Addr# -> Int# -> Word16 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Word16 -> State# s -> State# s # | |
Prim Word32 | |
Defined in Data.Primitive.Types Methods alignment# :: Word32 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Word32 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Word32#) # writeByteArray# :: MutableByteArray# s -> Int# -> Word32 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word32 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Word32 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Word32#) # writeOffAddr# :: Addr# -> Int# -> Word32 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Word32 -> State# s -> State# s # | |
Prim Word64 | |
Defined in Data.Primitive.Types Methods alignment# :: Word64 -> Int# # indexByteArray# :: ByteArray# -> Int# -> Word64 # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Word64#) # writeByteArray# :: MutableByteArray# s -> Int# -> Word64 -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word64 -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Word64 # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Word64#) # writeOffAddr# :: Addr# -> Int# -> Word64 -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Word64 -> State# s -> State# s # | |
Prim Addr | |
Defined in Data.Primitive.Types Methods alignment# :: Addr -> Int# # indexByteArray# :: ByteArray# -> Int# -> Addr # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Addr#) # writeByteArray# :: MutableByteArray# s -> Int# -> Addr -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Addr -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Addr # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Addr#) # writeOffAddr# :: Addr# -> Int# -> Addr -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Addr -> State# s -> State# s # | |
Prim CInt | |
Defined in Data.Primitive.Types Methods alignment# :: CInt -> Int# # indexByteArray# :: ByteArray# -> Int# -> CInt # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CInt#) # writeByteArray# :: MutableByteArray# s -> Int# -> CInt -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CInt -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CInt # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CInt#) # writeOffAddr# :: Addr# -> Int# -> CInt -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CInt -> State# s -> State# s # | |
Prim CBool | |
Defined in Data.Primitive.Types Methods alignment# :: CBool -> Int# # indexByteArray# :: ByteArray# -> Int# -> CBool # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CBool#) # writeByteArray# :: MutableByteArray# s -> Int# -> CBool -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CBool -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CBool # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CBool#) # writeOffAddr# :: Addr# -> Int# -> CBool -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CBool -> State# s -> State# s # | |
Prim CChar | |
Defined in Data.Primitive.Types Methods alignment# :: CChar -> Int# # indexByteArray# :: ByteArray# -> Int# -> CChar # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CChar#) # writeByteArray# :: MutableByteArray# s -> Int# -> CChar -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CChar -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CChar # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CChar#) # writeOffAddr# :: Addr# -> Int# -> CChar -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CChar -> State# s -> State# s # | |
Prim CClock | |
Defined in Data.Primitive.Types Methods alignment# :: CClock -> Int# # indexByteArray# :: ByteArray# -> Int# -> CClock # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CClock#) # writeByteArray# :: MutableByteArray# s -> Int# -> CClock -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CClock -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CClock # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CClock#) # writeOffAddr# :: Addr# -> Int# -> CClock -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CClock -> State# s -> State# s # | |
Prim CDouble | |
Defined in Data.Primitive.Types Methods alignment# :: CDouble -> Int# # indexByteArray# :: ByteArray# -> Int# -> CDouble # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CDouble#) # writeByteArray# :: MutableByteArray# s -> Int# -> CDouble -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CDouble -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CDouble # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CDouble#) # writeOffAddr# :: Addr# -> Int# -> CDouble -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CDouble -> State# s -> State# s # | |
Prim CFloat | |
Defined in Data.Primitive.Types Methods alignment# :: CFloat -> Int# # indexByteArray# :: ByteArray# -> Int# -> CFloat # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CFloat#) # writeByteArray# :: MutableByteArray# s -> Int# -> CFloat -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CFloat -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CFloat # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CFloat#) # writeOffAddr# :: Addr# -> Int# -> CFloat -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CFloat -> State# s -> State# s # | |
Prim CIntMax | |
Defined in Data.Primitive.Types Methods alignment# :: CIntMax -> Int# # indexByteArray# :: ByteArray# -> Int# -> CIntMax # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CIntMax#) # writeByteArray# :: MutableByteArray# s -> Int# -> CIntMax -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CIntMax -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CIntMax # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CIntMax#) # writeOffAddr# :: Addr# -> Int# -> CIntMax -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CIntMax -> State# s -> State# s # | |
Prim CIntPtr | |
Defined in Data.Primitive.Types Methods alignment# :: CIntPtr -> Int# # indexByteArray# :: ByteArray# -> Int# -> CIntPtr # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CIntPtr#) # writeByteArray# :: MutableByteArray# s -> Int# -> CIntPtr -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CIntPtr -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CIntPtr # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CIntPtr#) # writeOffAddr# :: Addr# -> Int# -> CIntPtr -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CIntPtr -> State# s -> State# s # | |
Prim CLLong | |
Defined in Data.Primitive.Types Methods alignment# :: CLLong -> Int# # indexByteArray# :: ByteArray# -> Int# -> CLLong # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CLLong#) # writeByteArray# :: MutableByteArray# s -> Int# -> CLLong -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CLLong -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CLLong # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CLLong#) # writeOffAddr# :: Addr# -> Int# -> CLLong -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CLLong -> State# s -> State# s # | |
Prim CLong | |
Defined in Data.Primitive.Types Methods alignment# :: CLong -> Int# # indexByteArray# :: ByteArray# -> Int# -> CLong # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CLong#) # writeByteArray# :: MutableByteArray# s -> Int# -> CLong -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CLong -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CLong # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CLong#) # writeOffAddr# :: Addr# -> Int# -> CLong -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CLong -> State# s -> State# s # | |
Prim CPtrdiff | |
Defined in Data.Primitive.Types Methods alignment# :: CPtrdiff -> Int# # indexByteArray# :: ByteArray# -> Int# -> CPtrdiff # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CPtrdiff#) # writeByteArray# :: MutableByteArray# s -> Int# -> CPtrdiff -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CPtrdiff -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CPtrdiff # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CPtrdiff#) # writeOffAddr# :: Addr# -> Int# -> CPtrdiff -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CPtrdiff -> State# s -> State# s # | |
Prim CSChar | |
Defined in Data.Primitive.Types Methods alignment# :: CSChar -> Int# # indexByteArray# :: ByteArray# -> Int# -> CSChar # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CSChar#) # writeByteArray# :: MutableByteArray# s -> Int# -> CSChar -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CSChar -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CSChar # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CSChar#) # writeOffAddr# :: Addr# -> Int# -> CSChar -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CSChar -> State# s -> State# s # | |
Prim CSUSeconds | |
Defined in Data.Primitive.Types Methods sizeOf# :: CSUSeconds -> Int# # alignment# :: CSUSeconds -> Int# # indexByteArray# :: ByteArray# -> Int# -> CSUSeconds # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CSUSeconds#) # writeByteArray# :: MutableByteArray# s -> Int# -> CSUSeconds -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CSUSeconds -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CSUSeconds # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CSUSeconds#) # writeOffAddr# :: Addr# -> Int# -> CSUSeconds -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CSUSeconds -> State# s -> State# s # | |
Prim CShort | |
Defined in Data.Primitive.Types Methods alignment# :: CShort -> Int# # indexByteArray# :: ByteArray# -> Int# -> CShort # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CShort#) # writeByteArray# :: MutableByteArray# s -> Int# -> CShort -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CShort -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CShort # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CShort#) # writeOffAddr# :: Addr# -> Int# -> CShort -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CShort -> State# s -> State# s # | |
Prim CSigAtomic | |
Defined in Data.Primitive.Types Methods sizeOf# :: CSigAtomic -> Int# # alignment# :: CSigAtomic -> Int# # indexByteArray# :: ByteArray# -> Int# -> CSigAtomic # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CSigAtomic#) # writeByteArray# :: MutableByteArray# s -> Int# -> CSigAtomic -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CSigAtomic -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CSigAtomic # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CSigAtomic#) # writeOffAddr# :: Addr# -> Int# -> CSigAtomic -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CSigAtomic -> State# s -> State# s # | |
Prim CSize | |
Defined in Data.Primitive.Types Methods alignment# :: CSize -> Int# # indexByteArray# :: ByteArray# -> Int# -> CSize # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CSize#) # writeByteArray# :: MutableByteArray# s -> Int# -> CSize -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CSize -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CSize # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CSize#) # writeOffAddr# :: Addr# -> Int# -> CSize -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CSize -> State# s -> State# s # | |
Prim CTime | |
Defined in Data.Primitive.Types Methods alignment# :: CTime -> Int# # indexByteArray# :: ByteArray# -> Int# -> CTime # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CTime#) # writeByteArray# :: MutableByteArray# s -> Int# -> CTime -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CTime -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CTime # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CTime#) # writeOffAddr# :: Addr# -> Int# -> CTime -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CTime -> State# s -> State# s # | |
Prim CUChar | |
Defined in Data.Primitive.Types Methods alignment# :: CUChar -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUChar # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUChar#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUChar -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUChar -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUChar # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUChar#) # writeOffAddr# :: Addr# -> Int# -> CUChar -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUChar -> State# s -> State# s # | |
Prim CUInt | |
Defined in Data.Primitive.Types Methods alignment# :: CUInt -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUInt # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUInt#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUInt -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUInt -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUInt # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUInt#) # writeOffAddr# :: Addr# -> Int# -> CUInt -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUInt -> State# s -> State# s # | |
Prim CUIntMax | |
Defined in Data.Primitive.Types Methods alignment# :: CUIntMax -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUIntMax # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUIntMax#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUIntMax -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUIntMax -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUIntMax # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUIntMax#) # writeOffAddr# :: Addr# -> Int# -> CUIntMax -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUIntMax -> State# s -> State# s # | |
Prim CUIntPtr | |
Defined in Data.Primitive.Types Methods alignment# :: CUIntPtr -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUIntPtr # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUIntPtr#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUIntPtr -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUIntPtr -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUIntPtr # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUIntPtr#) # writeOffAddr# :: Addr# -> Int# -> CUIntPtr -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUIntPtr -> State# s -> State# s # | |
Prim CULLong | |
Defined in Data.Primitive.Types Methods alignment# :: CULLong -> Int# # indexByteArray# :: ByteArray# -> Int# -> CULLong # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CULLong#) # writeByteArray# :: MutableByteArray# s -> Int# -> CULLong -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CULLong -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CULLong # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CULLong#) # writeOffAddr# :: Addr# -> Int# -> CULLong -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CULLong -> State# s -> State# s # | |
Prim CULong | |
Defined in Data.Primitive.Types Methods alignment# :: CULong -> Int# # indexByteArray# :: ByteArray# -> Int# -> CULong # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CULong#) # writeByteArray# :: MutableByteArray# s -> Int# -> CULong -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CULong -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CULong # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CULong#) # writeOffAddr# :: Addr# -> Int# -> CULong -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CULong -> State# s -> State# s # | |
Prim CUSeconds | |
Defined in Data.Primitive.Types Methods sizeOf# :: CUSeconds -> Int# # alignment# :: CUSeconds -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUSeconds # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUSeconds#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUSeconds -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUSeconds -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUSeconds # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUSeconds#) # writeOffAddr# :: Addr# -> Int# -> CUSeconds -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUSeconds -> State# s -> State# s # | |
Prim CUShort | |
Defined in Data.Primitive.Types Methods alignment# :: CUShort -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUShort # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUShort#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUShort -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUShort -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUShort # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUShort#) # writeOffAddr# :: Addr# -> Int# -> CUShort -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUShort -> State# s -> State# s # | |
Prim CWchar | |
Defined in Data.Primitive.Types Methods alignment# :: CWchar -> Int# # indexByteArray# :: ByteArray# -> Int# -> CWchar # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CWchar#) # writeByteArray# :: MutableByteArray# s -> Int# -> CWchar -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CWchar -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CWchar # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CWchar#) # writeOffAddr# :: Addr# -> Int# -> CWchar -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CWchar -> State# s -> State# s # | |
Prim CBlkCnt | |
Defined in Data.Primitive.Types Methods alignment# :: CBlkCnt -> Int# # indexByteArray# :: ByteArray# -> Int# -> CBlkCnt # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CBlkCnt#) # writeByteArray# :: MutableByteArray# s -> Int# -> CBlkCnt -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CBlkCnt -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CBlkCnt # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CBlkCnt#) # writeOffAddr# :: Addr# -> Int# -> CBlkCnt -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CBlkCnt -> State# s -> State# s # | |
Prim CBlkSize | |
Defined in Data.Primitive.Types Methods alignment# :: CBlkSize -> Int# # indexByteArray# :: ByteArray# -> Int# -> CBlkSize # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CBlkSize#) # writeByteArray# :: MutableByteArray# s -> Int# -> CBlkSize -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CBlkSize -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CBlkSize # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CBlkSize#) # writeOffAddr# :: Addr# -> Int# -> CBlkSize -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CBlkSize -> State# s -> State# s # | |
Prim CCc | |
Defined in Data.Primitive.Types Methods alignment# :: CCc -> Int# # indexByteArray# :: ByteArray# -> Int# -> CCc # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CCc#) # writeByteArray# :: MutableByteArray# s -> Int# -> CCc -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CCc -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CCc # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CCc#) # writeOffAddr# :: Addr# -> Int# -> CCc -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CCc -> State# s -> State# s # | |
Prim CClockId | |
Defined in Data.Primitive.Types Methods alignment# :: CClockId -> Int# # indexByteArray# :: ByteArray# -> Int# -> CClockId # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CClockId#) # writeByteArray# :: MutableByteArray# s -> Int# -> CClockId -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CClockId -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CClockId # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CClockId#) # writeOffAddr# :: Addr# -> Int# -> CClockId -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CClockId -> State# s -> State# s # | |
Prim CDev | |
Defined in Data.Primitive.Types Methods alignment# :: CDev -> Int# # indexByteArray# :: ByteArray# -> Int# -> CDev # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CDev#) # writeByteArray# :: MutableByteArray# s -> Int# -> CDev -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CDev -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CDev # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CDev#) # writeOffAddr# :: Addr# -> Int# -> CDev -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CDev -> State# s -> State# s # | |
Prim CFsBlkCnt | |
Defined in Data.Primitive.Types Methods sizeOf# :: CFsBlkCnt -> Int# # alignment# :: CFsBlkCnt -> Int# # indexByteArray# :: ByteArray# -> Int# -> CFsBlkCnt # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CFsBlkCnt#) # writeByteArray# :: MutableByteArray# s -> Int# -> CFsBlkCnt -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CFsBlkCnt -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CFsBlkCnt # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CFsBlkCnt#) # writeOffAddr# :: Addr# -> Int# -> CFsBlkCnt -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CFsBlkCnt -> State# s -> State# s # | |
Prim CFsFilCnt | |
Defined in Data.Primitive.Types Methods sizeOf# :: CFsFilCnt -> Int# # alignment# :: CFsFilCnt -> Int# # indexByteArray# :: ByteArray# -> Int# -> CFsFilCnt # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CFsFilCnt#) # writeByteArray# :: MutableByteArray# s -> Int# -> CFsFilCnt -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CFsFilCnt -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CFsFilCnt # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CFsFilCnt#) # writeOffAddr# :: Addr# -> Int# -> CFsFilCnt -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CFsFilCnt -> State# s -> State# s # | |
Prim CGid | |
Defined in Data.Primitive.Types Methods alignment# :: CGid -> Int# # indexByteArray# :: ByteArray# -> Int# -> CGid # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CGid#) # writeByteArray# :: MutableByteArray# s -> Int# -> CGid -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CGid -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CGid # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CGid#) # writeOffAddr# :: Addr# -> Int# -> CGid -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CGid -> State# s -> State# s # | |
Prim CId | |
Defined in Data.Primitive.Types Methods alignment# :: CId -> Int# # indexByteArray# :: ByteArray# -> Int# -> CId # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CId#) # writeByteArray# :: MutableByteArray# s -> Int# -> CId -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CId -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CId # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CId#) # writeOffAddr# :: Addr# -> Int# -> CId -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CId -> State# s -> State# s # | |
Prim CIno | |
Defined in Data.Primitive.Types Methods alignment# :: CIno -> Int# # indexByteArray# :: ByteArray# -> Int# -> CIno # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CIno#) # writeByteArray# :: MutableByteArray# s -> Int# -> CIno -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CIno -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CIno # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CIno#) # writeOffAddr# :: Addr# -> Int# -> CIno -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CIno -> State# s -> State# s # | |
Prim CKey | |
Defined in Data.Primitive.Types Methods alignment# :: CKey -> Int# # indexByteArray# :: ByteArray# -> Int# -> CKey # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CKey#) # writeByteArray# :: MutableByteArray# s -> Int# -> CKey -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CKey -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CKey # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CKey#) # writeOffAddr# :: Addr# -> Int# -> CKey -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CKey -> State# s -> State# s # | |
Prim CMode | |
Defined in Data.Primitive.Types Methods alignment# :: CMode -> Int# # indexByteArray# :: ByteArray# -> Int# -> CMode # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CMode#) # writeByteArray# :: MutableByteArray# s -> Int# -> CMode -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CMode -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CMode # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CMode#) # writeOffAddr# :: Addr# -> Int# -> CMode -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CMode -> State# s -> State# s # | |
Prim CNlink | |
Defined in Data.Primitive.Types Methods alignment# :: CNlink -> Int# # indexByteArray# :: ByteArray# -> Int# -> CNlink # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CNlink#) # writeByteArray# :: MutableByteArray# s -> Int# -> CNlink -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CNlink -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CNlink # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CNlink#) # writeOffAddr# :: Addr# -> Int# -> CNlink -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CNlink -> State# s -> State# s # | |
Prim COff | |
Defined in Data.Primitive.Types Methods alignment# :: COff -> Int# # indexByteArray# :: ByteArray# -> Int# -> COff # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, COff#) # writeByteArray# :: MutableByteArray# s -> Int# -> COff -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> COff -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> COff # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, COff#) # writeOffAddr# :: Addr# -> Int# -> COff -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> COff -> State# s -> State# s # | |
Prim CPid | |
Defined in Data.Primitive.Types Methods alignment# :: CPid -> Int# # indexByteArray# :: ByteArray# -> Int# -> CPid # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CPid#) # writeByteArray# :: MutableByteArray# s -> Int# -> CPid -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CPid -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CPid # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CPid#) # writeOffAddr# :: Addr# -> Int# -> CPid -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CPid -> State# s -> State# s # | |
Prim CRLim | |
Defined in Data.Primitive.Types Methods alignment# :: CRLim -> Int# # indexByteArray# :: ByteArray# -> Int# -> CRLim # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CRLim#) # writeByteArray# :: MutableByteArray# s -> Int# -> CRLim -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CRLim -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CRLim # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CRLim#) # writeOffAddr# :: Addr# -> Int# -> CRLim -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CRLim -> State# s -> State# s # | |
Prim CSpeed | |
Defined in Data.Primitive.Types Methods alignment# :: CSpeed -> Int# # indexByteArray# :: ByteArray# -> Int# -> CSpeed # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CSpeed#) # writeByteArray# :: MutableByteArray# s -> Int# -> CSpeed -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CSpeed -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CSpeed # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CSpeed#) # writeOffAddr# :: Addr# -> Int# -> CSpeed -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CSpeed -> State# s -> State# s # | |
Prim CSsize | |
Defined in Data.Primitive.Types Methods alignment# :: CSsize -> Int# # indexByteArray# :: ByteArray# -> Int# -> CSsize # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CSsize#) # writeByteArray# :: MutableByteArray# s -> Int# -> CSsize -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CSsize -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CSsize # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CSsize#) # writeOffAddr# :: Addr# -> Int# -> CSsize -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CSsize -> State# s -> State# s # | |
Prim CTcflag | |
Defined in Data.Primitive.Types Methods alignment# :: CTcflag -> Int# # indexByteArray# :: ByteArray# -> Int# -> CTcflag # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CTcflag#) # writeByteArray# :: MutableByteArray# s -> Int# -> CTcflag -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CTcflag -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CTcflag # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CTcflag#) # writeOffAddr# :: Addr# -> Int# -> CTcflag -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CTcflag -> State# s -> State# s # | |
Prim CTimer | |
Defined in Data.Primitive.Types Methods alignment# :: CTimer -> Int# # indexByteArray# :: ByteArray# -> Int# -> CTimer # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CTimer#) # writeByteArray# :: MutableByteArray# s -> Int# -> CTimer -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CTimer -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CTimer # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CTimer#) # writeOffAddr# :: Addr# -> Int# -> CTimer -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CTimer -> State# s -> State# s # | |
Prim CUid | |
Defined in Data.Primitive.Types Methods alignment# :: CUid -> Int# # indexByteArray# :: ByteArray# -> Int# -> CUid # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, CUid#) # writeByteArray# :: MutableByteArray# s -> Int# -> CUid -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> CUid -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> CUid # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, CUid#) # writeOffAddr# :: Addr# -> Int# -> CUid -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> CUid -> State# s -> State# s # | |
Prim Fd | |
Defined in Data.Primitive.Types Methods alignment# :: Fd -> Int# # indexByteArray# :: ByteArray# -> Int# -> Fd # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Fd#) # writeByteArray# :: MutableByteArray# s -> Int# -> Fd -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Fd -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Fd # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Fd#) # writeOffAddr# :: Addr# -> Int# -> Fd -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Fd -> State# s -> State# s # | |
Prim (Ptr a) | |
Defined in Data.Primitive.Types Methods alignment# :: Ptr a -> Int# # indexByteArray# :: ByteArray# -> Int# -> Ptr a # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, Ptr a#) # writeByteArray# :: MutableByteArray# s -> Int# -> Ptr a -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Ptr a -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> Ptr a # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, Ptr a#) # writeOffAddr# :: Addr# -> Int# -> Ptr a -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> Ptr a -> State# s -> State# s # | |
Prim (FunPtr a) | |
Defined in Data.Primitive.Types Methods alignment# :: FunPtr a -> Int# # indexByteArray# :: ByteArray# -> Int# -> FunPtr a # readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (#State# s, FunPtr a#) # writeByteArray# :: MutableByteArray# s -> Int# -> FunPtr a -> State# s -> State# s # setByteArray# :: MutableByteArray# s -> Int# -> Int# -> FunPtr a -> State# s -> State# s # indexOffAddr# :: Addr# -> Int# -> FunPtr a # readOffAddr# :: Addr# -> Int# -> State# s -> (#State# s, FunPtr a#) # writeOffAddr# :: Addr# -> Int# -> FunPtr a -> State# s -> State# s # setOffAddr# :: Addr# -> Int# -> Int# -> FunPtr a -> State# s -> State# s # |
Accessors
Length information
Extracting subvectors
slice :: Prim a => Int -> Int -> MVector s a -> MVector s a #
Yield a part of the mutable vector without copying it.
Yield a part of the mutable vector without copying it. No bounds checks are performed.
unsafeInit :: Prim a => MVector s a -> MVector s a #
unsafeTail :: Prim a => MVector s a -> MVector s a #
unsafeTake :: Prim a => Int -> MVector s a -> MVector s a #
unsafeDrop :: Prim a => Int -> MVector s a -> MVector s a #
Overlapping
Construction
Initialisation
new :: (PrimMonad m, Prim a) => Int -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length.
unsafeNew :: (PrimMonad m, Prim a) => Int -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length. The memory is not initialized.
replicate :: (PrimMonad m, Prim a) => Int -> a -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length (0 if the length is negative) and fill it with an initial value.
replicateM :: (PrimMonad m, Prim a) => Int -> m a -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length (0 if the length is negative) and fill it with values produced by repeatedly executing the monadic action.
clone :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> m (MVector (PrimState m) a) #
Create a copy of a mutable vector.
Growing
grow :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #
Grow a vector by the given number of elements. The number must be positive.
unsafeGrow :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #
Grow a vector by the given number of elements. The number must be positive but this is not checked.
Restricting memory usage
clear :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> m () #
Reset all elements of the vector to some undefined value, clearing all references to external objects. This is usually a noop for unboxed vectors.
Accessing individual elements
read :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m a #
Yield the element at the given position.
write :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> a -> m () #
Replace the element at the given position.
modify :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> (a -> a) -> Int -> m () #
Modify the element at the given position.
swap :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> Int -> m () #
Swap the elements at the given positions.
unsafeRead :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> m a #
Yield the element at the given position. No bounds checks are performed.
unsafeWrite :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> a -> m () #
Replace the element at the given position. No bounds checks are performed.
unsafeModify :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> (a -> a) -> Int -> m () #
Modify the element at the given position. No bounds checks are performed.
unsafeSwap :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> Int -> Int -> m () #
Swap the elements at the given positions. No bounds checks are performed.
Modifying vectors
nextPermutation :: (PrimMonad m, Ord e, Prim e) => MVector (PrimState m) e -> m Bool #
Compute the next (lexicographically) permutation of given vector in-place. Returns False when input is the last permtuation
Filling and copying
set :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> a -> m () #
Set all elements of the vector to the given value.
Arguments
:: (PrimMonad m, Prim a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Copy a vector. The two vectors must have the same length and may not overlap.
move :: (PrimMonad m, Prim a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #
Move the contents of a vector. The two vectors must have the same length.
If the vectors do not overlap, then this is equivalent to copy
.
Otherwise, the copying is performed as if the source vector were
copied to a temporary vector and then the temporary vector was copied
to the target vector.
Arguments
:: (PrimMonad m, Prim a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Copy a vector. The two vectors must have the same length and may not overlap. This is not checked.
Arguments
:: (PrimMonad m, Prim a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Move the contents of a vector. The two vectors must have the same length, but this is not checked.
If the vectors do not overlap, then this is equivalent to unsafeCopy
.
Otherwise, the copying is performed as if the source vector were
copied to a temporary vector and then the temporary vector was copied
to the target vector.