Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- newtype IxPtr s = IxPtr {}
- class ReadMem r where
- indexMemInBytes :: LiftedPrim a => r -> ByteCount -> a
- cloneArrayMemInBytes :: r -> ByteCount -> ByteCount -> ByteArray
- readSBSMem :: ReadMem r => r -> ByteCount -> ByteCount -> ShortByteString
- viewSBSMem :: ShortByteString -> ByteArray
- viewBSMem :: ByteString -> Ptr Word8
- viewVecMem :: Vector Word8 -> Ptr Word8
- class PrimMonad m => WriteMem q m where
- writeMemInBytes :: LiftedPrim a => a -> q (PrimState m) -> ByteCount -> m ()
- copyArrayMemInBytes :: ByteArray -> ByteCount -> ByteCount -> q (PrimState m) -> ByteCount -> m ()
- setMemInBytes :: LiftedPrim a => ByteCount -> a -> q (PrimState m) -> ByteCount -> m ()
- writeSBSMem :: WriteMem q m => ShortByteString -> ByteCount -> q (PrimState m) -> ByteCount -> m ()
- allocBAMem :: PrimMonad m => ByteCount -> ByteCount -> m (MutableByteArray (PrimState m), Maybe (IO ()))
- allocPtrMem :: PrimMonad m => ByteCount -> ByteCount -> m (IxPtr (PrimState m), Maybe (IO ()))
- freezeBAMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m ByteArray
- freezeSBSMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m ShortByteString
- freezeBSMem :: PrimMonad m => IxPtr (PrimState m) -> ByteCount -> ByteCount -> m ByteString
- freezeVecMem :: PrimMonad m => IxPtr (PrimState m) -> ByteCount -> ByteCount -> m (Vector Word8)
- mutAllocBAMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m (MutableByteArray (PrimState m), Maybe (IO ()))
- mutFreezeBAMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m ByteCount
- mutAllocVecMem :: PrimMonad m => MVector (PrimState m) Word8 -> ByteCount -> ByteCount -> m (IxPtr (PrimState m), Maybe (IO ()))
- mutFreezeVecMem :: PrimMonad m => IxPtr (PrimState m) -> ByteCount -> ByteCount -> m ByteCount
Documentation
A wrapper over Ptr
with an additional phantom type index to align with ST
state.
Instances
PrimMonad m => WriteMem IxPtr m Source # | |
Defined in Dahdit.Mem writeMemInBytes :: LiftedPrim a => a -> IxPtr (PrimState m) -> ByteCount -> m () Source # copyArrayMemInBytes :: ByteArray -> ByteCount -> ByteCount -> IxPtr (PrimState m) -> ByteCount -> m () Source # setMemInBytes :: LiftedPrim a => ByteCount -> a -> IxPtr (PrimState m) -> ByteCount -> m () Source # | |
Show (IxPtr s) Source # | |
Eq (IxPtr s) Source # | |
Ord (IxPtr s) Source # | |
class ReadMem r where Source #
indexMemInBytes :: LiftedPrim a => r -> ByteCount -> a Source #
cloneArrayMemInBytes :: r -> ByteCount -> ByteCount -> ByteArray Source #
Instances
ReadMem ByteArray Source # | |
Defined in Dahdit.Mem indexMemInBytes :: LiftedPrim a => ByteArray -> ByteCount -> a Source # cloneArrayMemInBytes :: ByteArray -> ByteCount -> ByteCount -> ByteArray Source # | |
ReadMem (Ptr Word8) Source # | |
Defined in Dahdit.Mem indexMemInBytes :: LiftedPrim a => Ptr Word8 -> ByteCount -> a Source # cloneArrayMemInBytes :: Ptr Word8 -> ByteCount -> ByteCount -> ByteArray Source # |
readSBSMem :: ReadMem r => r -> ByteCount -> ByteCount -> ShortByteString Source #
class PrimMonad m => WriteMem q m where Source #
writeMemInBytes :: LiftedPrim a => a -> q (PrimState m) -> ByteCount -> m () Source #
copyArrayMemInBytes :: ByteArray -> ByteCount -> ByteCount -> q (PrimState m) -> ByteCount -> m () Source #
setMemInBytes :: LiftedPrim a => ByteCount -> a -> q (PrimState m) -> ByteCount -> m () Source #
Instances
PrimMonad m => WriteMem IxPtr m Source # | |
Defined in Dahdit.Mem writeMemInBytes :: LiftedPrim a => a -> IxPtr (PrimState m) -> ByteCount -> m () Source # copyArrayMemInBytes :: ByteArray -> ByteCount -> ByteCount -> IxPtr (PrimState m) -> ByteCount -> m () Source # setMemInBytes :: LiftedPrim a => ByteCount -> a -> IxPtr (PrimState m) -> ByteCount -> m () Source # | |
PrimMonad m => WriteMem MutableByteArray m Source # | |
Defined in Dahdit.Mem writeMemInBytes :: LiftedPrim a => a -> MutableByteArray (PrimState m) -> ByteCount -> m () Source # copyArrayMemInBytes :: ByteArray -> ByteCount -> ByteCount -> MutableByteArray (PrimState m) -> ByteCount -> m () Source # setMemInBytes :: LiftedPrim a => ByteCount -> a -> MutableByteArray (PrimState m) -> ByteCount -> m () Source # |
writeSBSMem :: WriteMem q m => ShortByteString -> ByteCount -> q (PrimState m) -> ByteCount -> m () Source #
allocBAMem :: PrimMonad m => ByteCount -> ByteCount -> m (MutableByteArray (PrimState m), Maybe (IO ())) Source #
allocPtrMem :: PrimMonad m => ByteCount -> ByteCount -> m (IxPtr (PrimState m), Maybe (IO ())) Source #
freezeBAMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m ByteArray Source #
freezeSBSMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m ShortByteString Source #
freezeBSMem :: PrimMonad m => IxPtr (PrimState m) -> ByteCount -> ByteCount -> m ByteString Source #
freezeVecMem :: PrimMonad m => IxPtr (PrimState m) -> ByteCount -> ByteCount -> m (Vector Word8) Source #
mutAllocBAMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m (MutableByteArray (PrimState m), Maybe (IO ())) Source #
mutFreezeBAMem :: PrimMonad m => MutableByteArray (PrimState m) -> ByteCount -> ByteCount -> m ByteCount Source #