unliftio-0.2.13: The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)

Safe Haskell | None
Language | Haskell2010

UnliftIO.Foreign

Contents

- Re-exported modules
- Unlifted Foreign.C.String
- Unlifted Foreign.C.Error
- Unlifted Foreign.Ptr
- Unlifted Foreign.ForeignPtr
- Unlifted Foreign.StablePtr
- Unlifted Foreign.Storable
- Unlifted Foreign.Marshal.Alloc
- Unlifted Foreign.Marshal.Array
- Unlifted Foreign.Marshal.Error
- Unlifted Foreign.Marshal.Pool
- Unlifted Foreign.Marshal.Utils

Description

Unlifted Foreign.

Since: 0.2.5.0

Synopsis

- type CString = Ptr CChar
- type CStringLen = (Ptr CChar, Int)
- peekCString :: MonadIO m => CString -> m String
- peekCStringLen :: MonadIO m => CStringLen -> m String
- newCString :: MonadIO m => String -> m CString
- newCStringLen :: MonadIO m => String -> m CStringLen
- withCString :: MonadUnliftIO m => String -> (CString -> m a) -> m a
- withCStringLen :: MonadUnliftIO m => String -> (CStringLen -> m a) -> m a
- charIsRepresentable :: Char -> IO Bool
- castCharToCChar :: Char -> CChar
- castCCharToChar :: CChar -> Char
- castCharToCUChar :: Char -> CUChar
- castCUCharToChar :: CUChar -> Char
- castCharToCSChar :: Char -> CSChar
- castCSCharToChar :: CSChar -> Char
- peekCAString :: MonadIO m => CString -> m String
- peekCAStringLen :: MonadIO m => CStringLen -> m String
- newCAString :: MonadIO m => String -> m CString
- newCAStringLen :: MonadIO m => String -> m CStringLen
- withCAString :: MonadUnliftIO m => String -> (CString -> m a) -> m a
- withCAStringLen :: MonadUnliftIO m => String -> (CStringLen -> m a) -> m a
- type CWString = Ptr CWchar
- type CWStringLen = (Ptr CWchar, Int)
- peekCWString :: MonadIO m => CWString -> m String
- peekCWStringLen :: MonadIO m => CWStringLen -> m String
- newCWString :: MonadIO m => String -> m CWString
- newCWStringLen :: MonadIO m => String -> m CWStringLen
- withCWString :: MonadUnliftIO m => String -> (CWString -> m a) -> m a
- withCWStringLen :: MonadUnliftIO m => String -> (CWStringLen -> m a) -> m a
- newtype Errno = Errno CInt
- eOK :: Errno
- e2BIG :: Errno
- eACCES :: Errno
- eADDRINUSE :: Errno
- eADDRNOTAVAIL :: Errno
- eADV :: Errno
- eAFNOSUPPORT :: Errno
- eAGAIN :: Errno
- eALREADY :: Errno
- eBADF :: Errno
- eBADMSG :: Errno
- eBADRPC :: Errno
- eBUSY :: Errno
- eCHILD :: Errno
- eCOMM :: Errno
- eCONNABORTED :: Errno
- eCONNREFUSED :: Errno
- eCONNRESET :: Errno
- eDEADLK :: Errno
- eDESTADDRREQ :: Errno
- eDIRTY :: Errno
- eDOM :: Errno
- eDQUOT :: Errno
- eEXIST :: Errno
- eFAULT :: Errno
- eFBIG :: Errno
- eFTYPE :: Errno
- eHOSTDOWN :: Errno
- eHOSTUNREACH :: Errno
- eIDRM :: Errno
- eILSEQ :: Errno
- eINPROGRESS :: Errno
- eINTR :: Errno
- eINVAL :: Errno
- eIO :: Errno
- eISCONN :: Errno
- eISDIR :: Errno
- eLOOP :: Errno
- eMFILE :: Errno
- eMLINK :: Errno
- eMSGSIZE :: Errno
- eMULTIHOP :: Errno
- eNAMETOOLONG :: Errno
- eNETDOWN :: Errno
- eNETRESET :: Errno
- eNETUNREACH :: Errno
- eNFILE :: Errno
- eNOBUFS :: Errno
- eNODATA :: Errno
- eNODEV :: Errno
- eNOENT :: Errno
- eNOEXEC :: Errno
- eNOLCK :: Errno
- eNOLINK :: Errno
- eNOMEM :: Errno
- eNOMSG :: Errno
- eNONET :: Errno
- eNOPROTOOPT :: Errno
- eNOSPC :: Errno
- eNOSR :: Errno
- eNOSTR :: Errno
- eNOSYS :: Errno
- eNOTBLK :: Errno
- eNOTCONN :: Errno
- eNOTDIR :: Errno
- eNOTEMPTY :: Errno
- eNOTSOCK :: Errno
- eNOTSUP :: Errno
- eNOTTY :: Errno
- eNXIO :: Errno
- eOPNOTSUPP :: Errno
- ePERM :: Errno
- ePFNOSUPPORT :: Errno
- ePIPE :: Errno
- ePROCLIM :: Errno
- ePROCUNAVAIL :: Errno
- ePROGMISMATCH :: Errno
- ePROGUNAVAIL :: Errno
- ePROTO :: Errno
- ePROTONOSUPPORT :: Errno
- ePROTOTYPE :: Errno
- eRANGE :: Errno
- eREMCHG :: Errno
- eREMOTE :: Errno
- eROFS :: Errno
- eRPCMISMATCH :: Errno
- eRREMOTE :: Errno
- eSHUTDOWN :: Errno
- eSOCKTNOSUPPORT :: Errno
- eSPIPE :: Errno
- eSRCH :: Errno
- eSRMNT :: Errno
- eSTALE :: Errno
- eTIME :: Errno
- eTIMEDOUT :: Errno
- eTOOMANYREFS :: Errno
- eTXTBSY :: Errno
- eUSERS :: Errno
- eWOULDBLOCK :: Errno
- eXDEV :: Errno
- isValidErrno :: Errno -> Bool
- getErrno :: MonadIO m => m Errno
- resetErrno :: MonadIO m => m ()
- errnoToIOError :: String -> Errno -> Maybe Handle -> Maybe String -> IOError
- throwErrno :: MonadIO m => String -> m a
- throwErrnoIf :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m a
- throwErrnoIf_ :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m ()
- throwErrnoIfRetry :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m a
- throwErrnoIfRetry_ :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m ()
- throwErrnoIfMinus1 :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m a
- throwErrnoIfMinus1_ :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m ()
- throwErrnoIfMinus1Retry :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m a
- throwErrnoIfMinus1Retry_ :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m ()
- throwErrnoIfNull :: MonadUnliftIO m => String -> m (Ptr a) -> m (Ptr a)
- throwErrnoIfNullRetry :: MonadUnliftIO m => String -> m (Ptr a) -> m (Ptr a)
- throwErrnoIfRetryMayBlock :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m b -> m a
- throwErrnoIfRetryMayBlock_ :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m b -> m ()
- throwErrnoIfMinus1RetryMayBlock :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m b -> m a
- throwErrnoIfMinus1RetryMayBlock_ :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m b -> m ()
- throwErrnoIfNullRetryMayBlock :: MonadUnliftIO m => String -> m (Ptr a) -> m b -> m (Ptr a)
- throwErrnoPath :: MonadIO m => String -> FilePath -> m a
- throwErrnoPathIf :: MonadUnliftIO m => (a -> Bool) -> String -> FilePath -> m a -> m a
- throwErrnoPathIf_ :: MonadUnliftIO m => (a -> Bool) -> String -> FilePath -> m a -> m ()
- throwErrnoPathIfNull :: MonadUnliftIO m => String -> FilePath -> m (Ptr a) -> m (Ptr a)
- throwErrnoPathIfMinus1 :: (MonadUnliftIO m, Eq a, Num a) => String -> FilePath -> m a -> m a
- throwErrnoPathIfMinus1_ :: (MonadUnliftIO m, Eq a, Num a) => String -> FilePath -> m a -> m ()
- data Ptr a
- nullPtr :: Ptr a
- castPtr :: Ptr a -> Ptr b
- plusPtr :: Ptr a -> Int -> Ptr b
- alignPtr :: Ptr a -> Int -> Ptr a
- minusPtr :: Ptr a -> Ptr b -> Int
- data FunPtr a
- nullFunPtr :: FunPtr a
- castFunPtr :: FunPtr a -> FunPtr b
- castFunPtrToPtr :: FunPtr a -> Ptr b
- castPtrToFunPtr :: Ptr a -> FunPtr b
- freeHaskellFunPtr :: MonadIO m => FunPtr a -> m ()
- newtype IntPtr = IntPtr Int
- ptrToIntPtr :: Ptr a -> IntPtr
- intPtrToPtr :: IntPtr -> Ptr a
- newtype WordPtr = WordPtr Word
- ptrToWordPtr :: Ptr a -> WordPtr
- wordPtrToPtr :: WordPtr -> Ptr a
- data ForeignPtr a
- type FinalizerPtr a = FunPtr (Ptr a -> IO ())
- type FinalizerEnvPtr env a = FunPtr (Ptr env -> Ptr a -> IO ())
- newForeignPtr :: MonadIO m => FinalizerPtr a -> Ptr a -> m (ForeignPtr a)
- newForeignPtr_ :: MonadIO m => Ptr a -> m (ForeignPtr a)
- addForeignPtrFinalizer :: MonadIO m => FinalizerPtr a -> ForeignPtr a -> m ()
- newForeignPtrEnv :: MonadIO m => FinalizerEnvPtr env a -> Ptr env -> Ptr a -> m (ForeignPtr a)
- addForeignPtrFinalizerEnv :: MonadIO m => FinalizerEnvPtr env a -> Ptr env -> ForeignPtr a -> m ()
- withForeignPtr :: MonadUnliftIO m => ForeignPtr a -> (Ptr a -> m b) -> m b
- finalizeForeignPtr :: MonadIO m => ForeignPtr a -> m ()
- touchForeignPtr :: MonadIO m => ForeignPtr a -> m ()
- castForeignPtr :: ForeignPtr a -> ForeignPtr b
- plusForeignPtr :: ForeignPtr a -> Int -> ForeignPtr b
- mallocForeignPtr :: (MonadIO m, Storable a) => m (ForeignPtr a)
- mallocForeignPtrBytes :: MonadIO m => Int -> m (ForeignPtr a)
- mallocForeignPtrArray :: (MonadIO m, Storable a) => Int -> m (ForeignPtr a)
- mallocForeignPtrArray0 :: (MonadIO m, Storable a) => Int -> m (ForeignPtr a)
- newGHCForeignPtr :: MonadUnliftIO m => Ptr a -> m () -> m (ForeignPtr a)
- addGHCForeignPtrFinalizer :: MonadUnliftIO m => ForeignPtr a -> m () -> m ()
- unsafeForeignPtrToPtr :: ForeignPtr a -> Ptr a
- data StablePtr a
- newStablePtr :: MonadIO m => a -> m (StablePtr a)
- deRefStablePtr :: MonadIO m => StablePtr a -> m a
- freeStablePtr :: MonadIO m => StablePtr a -> m ()
- castStablePtrToPtr :: StablePtr a -> Ptr ()
- castPtrToStablePtr :: Ptr () -> StablePtr a
- class Storable a where
  - sizeOf :: a -> Int
  - alignment :: a -> Int
  - peekElemOff :: Ptr a -> Int -> IO a
  - pokeElemOff :: Ptr a -> Int -> a -> IO ()
  - peekByteOff :: Ptr b -> Int -> IO a
  - pokeByteOff :: Ptr b -> Int -> a -> IO ()
  - peek :: Ptr a -> IO a
  - poke :: Ptr a -> a -> IO ()
- alloca :: (MonadUnliftIO m, Storable a) => (Ptr a -> m b) -> m b
- allocaBytes :: MonadUnliftIO m => Int -> (Ptr a -> m b) -> m b
- allocaBytesAligned :: MonadUnliftIO m => Int -> Int -> (Ptr a -> m b) -> m b
- malloc :: (MonadIO m, Storable a) => m (Ptr a)
- mallocBytes :: MonadIO m => Int -> m (Ptr a)
- calloc :: (MonadIO m, Storable a) => m (Ptr a)
- callocBytes :: MonadIO m => Int -> m (Ptr a)
- realloc :: (MonadIO m, Storable b) => Ptr a -> m (Ptr b)
- reallocBytes :: MonadIO m => Ptr a -> Int -> m (Ptr a)
- free :: MonadIO m => Ptr a -> m ()
- finalizerFree :: FinalizerPtr a
- mallocArray :: (MonadIO m, Storable a) => Int -> m (Ptr a)
- mallocArray0 :: (MonadIO m, Storable a) => Int -> m (Ptr a)
- allocaArray :: (MonadUnliftIO m, Storable a) => Int -> (Ptr a -> m b) -> m b
- allocaArray0 :: (MonadUnliftIO m, Storable a) => Int -> (Ptr a -> m b) -> m b
- reallocArray :: (MonadIO m, Storable a) => Ptr a -> Int -> m (Ptr a)
- reallocArray0 :: (MonadIO m, Storable a) => Ptr a -> Int -> m (Ptr a)
- callocArray :: (MonadIO m, Storable a) => Int -> m (Ptr a)
- callocArray0 :: (MonadIO m, Storable a) => Int -> m (Ptr a)
- peekArray :: (MonadIO m, Storable a) => Int -> Ptr a -> m [a]
- peekArray0 :: (MonadIO m, Storable a, Eq a) => a -> Ptr a -> m [a]
- pokeArray :: (MonadIO m, Storable a) => Ptr a -> [a] -> m ()
- pokeArray0 :: (MonadIO m, Storable a) => a -> Ptr a -> [a] -> m ()
- newArray :: (MonadIO m, Storable a) => [a] -> m (Ptr a)
- newArray0 :: (MonadIO m, Storable a) => a -> [a] -> m (Ptr a)
- withArray :: (MonadUnliftIO m, Storable a) => [a] -> (Ptr a -> m b) -> m b
- withArray0 :: (MonadUnliftIO m, Storable a) => a -> [a] -> (Ptr a -> m b) -> m b
- withArrayLen :: (MonadUnliftIO m, Storable a) => [a] -> (Int -> Ptr a -> m b) -> m b
- withArrayLen0 :: (MonadUnliftIO m, Storable a) => a -> [a] -> (Int -> Ptr a -> m b) -> m b
- copyArray :: (MonadIO m, Storable a) => Ptr a -> Ptr a -> Int -> m ()
- moveArray :: (MonadIO m, Storable a) => Ptr a -> Ptr a -> Int -> m ()
- lengthArray0 :: (MonadIO m, Storable a, Eq a) => a -> Ptr a -> m Int
- advancePtr :: Storable a => Ptr a -> Int -> Ptr a
- throwIf :: MonadUnliftIO m => (a -> Bool) -> (a -> String) -> m a -> m a
- throwIf_ :: MonadUnliftIO m => (a -> Bool) -> (a -> String) -> m a -> m ()
- throwIfNeg :: (MonadUnliftIO m, Ord a, Num a) => (a -> String) -> m a -> m a
- throwIfNeg_ :: (MonadUnliftIO m, Ord a, Num a) => (a -> String) -> m a -> m ()
- throwIfNull :: MonadUnliftIO m => String -> m (Ptr a) -> m (Ptr a)
- data Pool
- newPool :: MonadIO m => m Pool
- freePool :: MonadIO m => Pool -> m ()
- withPool :: MonadUnliftIO m => (Pool -> m b) -> m b
- pooledMalloc :: (MonadIO m, Storable a) => Pool -> m (Ptr a)
- pooledMallocBytes :: MonadIO m => Pool -> Int -> m (Ptr a)
- pooledRealloc :: (MonadIO m, Storable a) => Pool -> Ptr a -> m (Ptr a)
- pooledReallocBytes :: MonadIO m => Pool -> Ptr a -> Int -> m (Ptr a)
- pooledMallocArray :: (MonadIO m, Storable a) => Pool -> Int -> m (Ptr a)
- pooledMallocArray0 :: (MonadIO m, Storable a) => Pool -> Int -> m (Ptr a)
- pooledReallocArray :: (MonadIO m, Storable a) => Pool -> Ptr a -> Int -> m (Ptr a)
- pooledReallocArray0 :: (MonadIO m, Storable a) => Pool -> Ptr a -> Int -> m (Ptr a)
- pooledNew :: (MonadIO m, Storable a) => Pool -> a -> m (Ptr a)
- pooledNewArray :: (MonadIO m, Storable a) => Pool -> [a] -> m (Ptr a)
- pooledNewArray0 :: (MonadIO m, Storable a) => Pool -> a -> [a] -> m (Ptr a)
- with :: (MonadUnliftIO m, Storable a) => a -> (Ptr a -> m b) -> m b
- new :: (MonadIO m, Storable a) => a -> m (Ptr a)
- fromBool :: Num a => Bool -> a
- toBool :: (Eq a, Num a) => a -> Bool
- maybeNew :: MonadIO m => (a -> m (Ptr b)) -> Maybe a -> m (Ptr b)
- maybeWith :: MonadIO m => (a -> (Ptr b -> m c) -> m c) -> Maybe a -> (Ptr b -> m c) -> m c
- maybePeek :: MonadUnliftIO m => (Ptr a -> m b) -> Ptr a -> m (Maybe b)
- withMany :: (a -> (b -> res) -> res) -> [a] -> ([b] -> res) -> res
- copyBytes :: MonadIO m => Ptr a -> Ptr a -> Int -> m ()
- moveBytes :: MonadIO m => Ptr a -> Ptr a -> Int -> m ()
- fillBytes :: MonadIO m => Ptr a -> Word8 -> Int -> m ()

# Re-exported modules

# Unlifted Foreign.C.String

type CString = Ptr CChar #

type CStringLen = (Ptr CChar, Int) #

peekCString :: MonadIO m => CString -> m String Source #

Lifted `peekCString`.

Since: 0.2.5.0

peekCStringLen :: MonadIO m => CStringLen -> m String Source #

Lifted `peekCStringLen`.

Since: 0.2.5.0

newCString :: MonadIO m => String -> m CString Source #

Lifted `newCString`.

Since: 0.2.5.0

newCStringLen :: MonadIO m => String -> m CStringLen Source #

Lifted `newCStringLen`.

Since: 0.2.5.0

withCString :: MonadUnliftIO m => String -> (CString -> m a) -> m a Source #

Unlifted `withCString`.

Since: 0.2.5.0

withCStringLen :: MonadUnliftIO m => String -> (CStringLen -> m a) -> m a Source #

Unlifted `withCStringLen`.

Since: 0.2.5.0

charIsRepresentable :: Char -> IO Bool #

castCharToCChar :: Char -> CChar #

castCCharToChar :: CChar -> Char #

castCharToCUChar :: Char -> CUChar #

castCUCharToChar :: CUChar -> Char #

castCharToCSChar :: Char -> CSChar #

castCSCharToChar :: CSChar -> Char #

peekCAString :: MonadIO m => CString -> m String Source #

Lifted `peekCAString`.

Since: 0.2.5.0

peekCAStringLen :: MonadIO m => CStringLen -> m String Source #

Lifted `peekCAStringLen`.

Since: 0.2.5.0

newCAString :: MonadIO m => String -> m CString Source #

Lifted `newCAString`.

Since: 0.2.5.0

newCAStringLen :: MonadIO m => String -> m CStringLen Source #

Lifted `newCAStringLen`.

Since: 0.2.5.0

withCAString :: MonadUnliftIO m => String -> (CString -> m a) -> m a Source #

Unlifted `withCAString`.

Since: 0.2.5.0

withCAStringLen :: MonadUnliftIO m => String -> (CStringLen -> m a) -> m a Source #

Unlifted `withCAStringLen`.

Since: 0.2.5.0

type CWString = Ptr CWchar #

type CWStringLen = (Ptr CWchar, Int) #

peekCWString :: MonadIO m => CWString -> m String Source #

Lifted `peekCWString`.

Since: 0.2.5.0

peekCWStringLen :: MonadIO m => CWStringLen -> m String Source #

Lifted `peekCWStringLen`.

Since: 0.2.5.0

newCWString :: MonadIO m => String -> m CWString Source #

Lifted `newCWString`.

Since: 0.2.5.0

newCWStringLen :: MonadIO m => String -> m CWStringLen Source #

Lifted `newCWStringLen`.

Since: 0.2.5.0

withCWString :: MonadUnliftIO m => String -> (CWString -> m a) -> m a Source #

Unlifted `withCWString`.

Since: 0.2.5.0

withCWStringLen :: MonadUnliftIO m => String -> (CWStringLen -> m a) -> m a Source #

Unlifted `withCWStringLen`.

Since: 0.2.5.0

# Unlifted Foreign.C.Error

newtype Errno #

Constructors

Errno CInt |

#### Instances

Instances details

Eq Errno |
Instance details Defined in Foreign.C.Error Methods (==) :: Errno -> Errno -> Bool (/=) :: Errno -> Errno -> Bool

eOK :: Errno #

e2BIG :: Errno #

eACCES :: Errno #

eADDRINUSE :: Errno #

eADDRNOTAVAIL :: Errno #

eADV :: Errno #

eAFNOSUPPORT :: Errno #

eAGAIN :: Errno #

eALREADY :: Errno #

eBADF :: Errno #

eBADMSG :: Errno #

eBADRPC :: Errno #

eBUSY :: Errno #

eCHILD :: Errno #

eCOMM :: Errno #

eCONNABORTED :: Errno #

eCONNREFUSED :: Errno #

eCONNRESET :: Errno #

eDEADLK :: Errno #

eDESTADDRREQ :: Errno #

eDIRTY :: Errno #

eDOM :: Errno #

eDQUOT :: Errno #

eEXIST :: Errno #

eFAULT :: Errno #

eFBIG :: Errno #

eFTYPE :: Errno #

eHOSTDOWN :: Errno #

eHOSTUNREACH :: Errno #

eIDRM :: Errno #

eILSEQ :: Errno #

eINPROGRESS :: Errno #

eINTR :: Errno #

eINVAL :: Errno #

eIO :: Errno #

eISCONN :: Errno #

eISDIR :: Errno #

eLOOP :: Errno #

eMFILE :: Errno #

eMLINK :: Errno #

eMSGSIZE :: Errno #

eMULTIHOP :: Errno #

eNAMETOOLONG :: Errno #

eNETDOWN :: Errno #

eNETRESET :: Errno #

eNETUNREACH :: Errno #

eNFILE :: Errno #

eNOBUFS :: Errno #

eNODATA :: Errno #

eNODEV :: Errno #

eNOENT :: Errno #

eNOEXEC :: Errno #

eNOLCK :: Errno #

eNOLINK :: Errno #

eNOMEM :: Errno #

eNOMSG :: Errno #

eNONET :: Errno #

eNOPROTOOPT :: Errno #

eNOSPC :: Errno #

eNOSR :: Errno #

eNOSTR :: Errno #

eNOSYS :: Errno #

eNOTBLK :: Errno #

eNOTCONN :: Errno #

eNOTDIR :: Errno #

eNOTEMPTY :: Errno #

eNOTSOCK :: Errno #

eNOTSUP :: Errno #

eNOTTY :: Errno #

eNXIO :: Errno #

eOPNOTSUPP :: Errno #

ePERM :: Errno #

ePFNOSUPPORT :: Errno #

ePIPE :: Errno #

ePROCLIM :: Errno #

ePROCUNAVAIL :: Errno #

ePROGMISMATCH :: Errno #

ePROGUNAVAIL :: Errno #

ePROTO :: Errno #

ePROTONOSUPPORT :: Errno #

ePROTOTYPE :: Errno #

eRANGE :: Errno #

eREMCHG :: Errno #

eREMOTE :: Errno #

eROFS :: Errno #

eRPCMISMATCH :: Errno #

eRREMOTE :: Errno #

eSHUTDOWN :: Errno #

eSOCKTNOSUPPORT :: Errno #

eSPIPE :: Errno #

eSRCH :: Errno #

eSRMNT :: Errno #

eSTALE :: Errno #

eTIME :: Errno #

eTIMEDOUT :: Errno #

eTOOMANYREFS :: Errno #

eTXTBSY :: Errno #

eUSERS :: Errno #

eWOULDBLOCK :: Errno #

eXDEV :: Errno #

isValidErrno :: Errno -> Bool #

getErrno :: MonadIO m => m Errno Source #

Lifted `getErrno`.

Since: 0.2.5.0

resetErrno :: MonadIO m => m () Source #

Lifted `resetErrno`.

Since: 0.2.5.0

errnoToIOError :: String -> Errno -> Maybe Handle -> Maybe String -> IOError #

throwErrno :: MonadIO m => String -> m a Source #

Lifted `throwErrno`.

Since: 0.2.5.0

throwErrnoIf :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m a Source #

Unlifted `throwErrnoIf`.

Since: 0.2.5.0

throwErrnoIf_ :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m () Source #

Unlifted `throwErrnoIf_`.

Since: 0.2.5.0

throwErrnoIfRetry :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m a Source #

Unlifted `throwErrnoIfRetry`.

Since: 0.2.5.0

throwErrnoIfRetry_ :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m () Source #

Unlifted `throwErrnoIfRetry_`.

Since: 0.2.5.0

throwErrnoIfMinus1 :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m a Source #

Unlifted `throwErrnoIfMinus1`.

Since: 0.2.5.0

throwErrnoIfMinus1_ :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m () Source #

Unlifted `throwErrnoIfMinus1_`

Since: 0.2.5.0

throwErrnoIfMinus1Retry :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m a Source #

Unlifted `throwErrnoIfMinus1Retry`.

Since: 0.2.5.0

throwErrnoIfMinus1Retry_ :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m () Source #

Unlifted `throwErrnoIfMinus1Retry_`.

Since: 0.2.5.0

throwErrnoIfNull :: MonadUnliftIO m => String -> m (Ptr a) -> m (Ptr a) Source #

Unlifted `throwErrnoIfNull`.

Since: 0.2.5.0

throwErrnoIfNullRetry :: MonadUnliftIO m => String -> m (Ptr a) -> m (Ptr a) Source #

Unlifted `throwErrnoIfNullRetry`.

Since: 0.2.5.0

throwErrnoIfRetryMayBlock :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m b -> m a Source #

Unlifted `throwErrnoIfRetryMayBlock`.

Since: 0.2.5.0

throwErrnoIfRetryMayBlock_ :: MonadUnliftIO m => (a -> Bool) -> String -> m a -> m b -> m () Source #

Unlifted `throwErrnoIfRetryMayBlock_`.

Since: 0.2.5.0

throwErrnoIfMinus1RetryMayBlock :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m b -> m a Source #

Unlifted `throwErrnoIfMinus1RetryMayBlock`.

Since: 0.2.5.0

throwErrnoIfMinus1RetryMayBlock_ :: (MonadUnliftIO m, Eq a, Num a) => String -> m a -> m b -> m () Source #

Unlifted `throwErrnoIfMinus1RetryMayBlock_`

Since: 0.2.5.0

throwErrnoIfNullRetryMayBlock :: MonadUnliftIO m => String -> m (Ptr a) -> m b -> m (Ptr a) Source #

Unlifted `throwErrnoIfNullRetryMayBlock`.

Since: 0.2.5.0

throwErrnoPath :: MonadIO m => String -> FilePath -> m a Source #

Lifted `throwErrnoPath`.

Since: 0.2.5.0

throwErrnoPathIf :: MonadUnliftIO m => (a -> Bool) -> String -> FilePath -> m a -> m a Source #

Unlifted `throwErrnoPathIf`.

Since: 0.2.5.0

throwErrnoPathIf_ :: MonadUnliftIO m => (a -> Bool) -> String -> FilePath -> m a -> m () Source #

Unlifted `throwErrnoPathIf_`.

Since: 0.2.5.0

throwErrnoPathIfNull :: MonadUnliftIO m => String -> FilePath -> m (Ptr a) -> m (Ptr a) Source #

Unlifted `throwErrnoPathIfNull`.

Since: 0.2.5.0

throwErrnoPathIfMinus1 :: (MonadUnliftIO m, Eq a, Num a) => String -> FilePath -> m a -> m a Source #

Unlifted `throwErrnoPathIfMinus1`.

Since: 0.2.5.0

throwErrnoPathIfMinus1_ :: (MonadUnliftIO m, Eq a, Num a) => String -> FilePath -> m a -> m () Source #

Unlifted `throwErrnoPathIfMinus1_`.

Since: 0.2.5.0

# Unlifted Foreign.Ptr

data Ptr a #

#### Instances

Instances details

NFData1 Ptr |
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> Ptr a -> ()
Generic1 (URec (Ptr ()) :: k -> Type) |
Instance details Defined in GHC.Generics Associated Types type Rep1 (URec (Ptr ())) :: k -> Type Methods from1 :: forall (a :: k0). URec (Ptr ()) a -> Rep1 (URec (Ptr ())) a to1 :: forall (a :: k0). Rep1 (URec (Ptr ())) a -> URec (Ptr ()) a
Eq (Ptr a) |
Instance details Defined in GHC.Ptr Methods (==) :: Ptr a -> Ptr a -> Bool (/=) :: Ptr a -> Ptr a -> Bool
Ord (Ptr a) |
Instance details Defined in GHC.Ptr Methods compare :: Ptr a -> Ptr a -> Ordering (<) :: Ptr a -> Ptr a -> Bool (<=) :: Ptr a -> Ptr a -> Bool (>) :: Ptr a -> Ptr a -> Bool (>=) :: Ptr a -> Ptr a -> Bool max :: Ptr a -> Ptr a -> Ptr a min :: Ptr a -> Ptr a -> Ptr a
Show (Ptr a) |
Instance details Defined in GHC.Ptr Methods showsPrec :: Int -> Ptr a -> ShowS show :: Ptr a -> String showList :: [Ptr a] -> ShowS
NFData (Ptr a) |
Instance details Defined in Control.DeepSeq Methods rnf :: Ptr a -> ()
Storable (Ptr a) |
Instance details Defined in Foreign.Storable Methods sizeOf :: Ptr a -> Int # alignment :: Ptr a -> Int # peekElemOff :: Ptr (Ptr a) -> Int -> IO (Ptr a) # pokeElemOff :: Ptr (Ptr a) -> Int -> Ptr a -> IO () # peekByteOff :: Ptr b -> Int -> IO (Ptr a) # pokeByteOff :: Ptr b -> Int -> Ptr a -> IO () # peek :: Ptr (Ptr a) -> IO (Ptr a) # poke :: Ptr (Ptr a) -> Ptr a -> IO () #
Hashable (Ptr a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Ptr a -> Int hash :: Ptr a -> Int
Functor (URec (Ptr ()) :: Type -> Type) |
Instance details Defined in GHC.Generics Methods fmap :: (a -> b) -> URec (Ptr ()) a -> URec (Ptr ()) b (<$) :: a -> URec (Ptr ()) b -> URec (Ptr ()) a
Foldable (URec (Ptr ()) :: Type -> Type) |

Instance details

Defined in Data.Foldable

Methods

fold :: Monoid m => URec (Ptr ()) m -> m

foldMap :: Monoid m => (a -> m) -> URec (Ptr ()) a -> m

foldMap' :: Monoid m => (a -> m) -> URec (Ptr ()) a -> m

foldr :: (a -> b -> b) -> b -> URec (Ptr ()) a -> b

foldr' :: (a -> b -> b) -> b -> URec (Ptr ()) a -> b

foldl :: (b -> a -> b) -> b -> URec (Ptr ()) a -> b

foldl' :: (b -> a -> b) -> b -> URec (Ptr ()) a -> b

foldr1 :: (a -> a -> a) -> URec (Ptr ()) a -> a

foldl1 :: (a -> a -> a) -> URec (Ptr ()) a -> a

toList :: URec (Ptr ()) a -> [a]

null :: URec (Ptr ()) a -> Bool

length :: URec (Ptr ()) a -> Int

elem :: Eq a => a -> URec (Ptr ()) a -> Bool

maximum :: Ord a => URec (Ptr ()) a -> a

minimum :: Ord a => URec (Ptr ()) a -> a

sum :: Num a => URec (Ptr ()) a -> a

product :: Num a => URec (Ptr ()) a -> a

Traversable (URec (Ptr ()) :: Type -> Type) |
Instance details Defined in Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> URec (Ptr ()) a -> f (URec (Ptr ()) b) sequenceA :: Applicative f => URec (Ptr ()) (f a) -> f (URec (Ptr ()) a) mapM :: Monad m => (a -> m b) -> URec (Ptr ()) a -> m (URec (Ptr ()) b) sequence :: Monad m => URec (Ptr ()) (m a) -> m (URec (Ptr ()) a)
Eq (URec (Ptr ()) p) |
Instance details Defined in GHC.Generics Methods (==) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool (/=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool
Ord (URec (Ptr ()) p) |

Instance details

Defined in GHC.Generics

Methods

compare :: URec (Ptr ()) p -> URec (Ptr ()) p -> Ordering

(<) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool

(<=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool

(>) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool

(>=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool

max :: URec (Ptr ()) p -> URec (Ptr ()) p -> URec (Ptr ()) p

min :: URec (Ptr ()) p -> URec (Ptr ()) p -> URec (Ptr ()) p

Generic (URec (Ptr ()) p) |
Instance details Defined in GHC.Generics Associated Types type Rep (URec (Ptr ()) p) :: Type -> Type Methods from :: URec (Ptr ()) p -> Rep (URec (Ptr ()) p) x to :: Rep (URec (Ptr ()) p) x -> URec (Ptr ()) p
data URec (Ptr ()) (p :: k) |

Instance details

Defined in GHC.Generics

data URec (Ptr ()) (p :: k) = UAddr {

- uAddr# :: Addr#

}

type Rep1 (URec (Ptr ()) :: k -> Type) |
Instance details Defined in GHC.Generics type Rep1 (URec (Ptr ()) :: k -> Type) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UAddr" 'PrefixI 'True) (S1 ('MetaSel ('Just "uAddr#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UAddr :: k -> Type)))
type Rep (URec (Ptr ()) p) |
Instance details Defined in GHC.Generics type Rep (URec (Ptr ()) p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UAddr" 'PrefixI 'True) (S1 ('MetaSel ('Just "uAddr#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UAddr :: Type -> Type)))

nullPtr :: Ptr a #

castPtr :: Ptr a -> Ptr b #

plusPtr :: Ptr a -> Int -> Ptr b #

alignPtr :: Ptr a -> Int -> Ptr a #

minusPtr :: Ptr a -> Ptr b -> Int #

data FunPtr a #

#### Instances

Instances details

NFData1 FunPtr |
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> FunPtr a -> ()
Eq (FunPtr a) |
Instance details Defined in GHC.Ptr Methods (==) :: FunPtr a -> FunPtr a -> Bool (/=) :: FunPtr a -> FunPtr a -> Bool
Ord (FunPtr a) |
Instance details Defined in GHC.Ptr Methods compare :: FunPtr a -> FunPtr a -> Ordering (<) :: FunPtr a -> FunPtr a -> Bool (<=) :: FunPtr a -> FunPtr a -> Bool (>) :: FunPtr a -> FunPtr a -> Bool (>=) :: FunPtr a -> FunPtr a -> Bool max :: FunPtr a -> FunPtr a -> FunPtr a min :: FunPtr a -> FunPtr a -> FunPtr a
Show (FunPtr a) |
Instance details Defined in GHC.Ptr Methods showsPrec :: Int -> FunPtr a -> ShowS show :: FunPtr a -> String showList :: [FunPtr a] -> ShowS
NFData (FunPtr a) |
Instance details Defined in Control.DeepSeq Methods rnf :: FunPtr a -> ()
Storable (FunPtr a) |

Instance details

Defined in Foreign.Storable

Methods

sizeOf :: FunPtr a -> Int #

alignment :: FunPtr a -> Int #

peekElemOff :: Ptr (FunPtr a) -> Int -> IO (FunPtr a) #

pokeElemOff :: Ptr (FunPtr a) -> Int -> FunPtr a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (FunPtr a) #

pokeByteOff :: Ptr b -> Int -> FunPtr a -> IO () #

peek :: Ptr (FunPtr a) -> IO (FunPtr a) #

poke :: Ptr (FunPtr a) -> FunPtr a -> IO () #

Hashable (FunPtr a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> FunPtr a -> Int hash :: FunPtr a -> Int

nullFunPtr :: FunPtr a #

castFunPtr :: FunPtr a -> FunPtr b #

castFunPtrToPtr :: FunPtr a -> Ptr b #

castPtrToFunPtr :: Ptr a -> FunPtr b #

freeHaskellFunPtr :: MonadIO m => FunPtr a -> m () Source #

Lifted `freeHaskellFunPtr`.

Since: 0.2.5.0

newtype IntPtr #

Constructors

IntPtr Int |

#### Instances

Instances details

Bounded IntPtr |
Instance details Defined in Foreign.Ptr Methods minBound :: IntPtr maxBound :: IntPtr
Enum IntPtr |
Instance details Defined in Foreign.Ptr Methods succ :: IntPtr -> IntPtr pred :: IntPtr -> IntPtr toEnum :: Int -> IntPtr fromEnum :: IntPtr -> Int enumFrom :: IntPtr -> [IntPtr] enumFromThen :: IntPtr -> IntPtr -> [IntPtr] enumFromTo :: IntPtr -> IntPtr -> [IntPtr] enumFromThenTo :: IntPtr -> IntPtr -> IntPtr -> [IntPtr]
Eq IntPtr |
Instance details Defined in Foreign.Ptr Methods (==) :: IntPtr -> IntPtr -> Bool (/=) :: IntPtr -> IntPtr -> Bool
Integral IntPtr |
Instance details Defined in Foreign.Ptr Methods quot :: IntPtr -> IntPtr -> IntPtr rem :: IntPtr -> IntPtr -> IntPtr div :: IntPtr -> IntPtr -> IntPtr mod :: IntPtr -> IntPtr -> IntPtr quotRem :: IntPtr -> IntPtr -> (IntPtr, IntPtr) divMod :: IntPtr -> IntPtr -> (IntPtr, IntPtr) toInteger :: IntPtr -> Integer
Num IntPtr |
Instance details Defined in Foreign.Ptr Methods (+) :: IntPtr -> IntPtr -> IntPtr (-) :: IntPtr -> IntPtr -> IntPtr (*) :: IntPtr -> IntPtr -> IntPtr negate :: IntPtr -> IntPtr abs :: IntPtr -> IntPtr signum :: IntPtr -> IntPtr fromInteger :: Integer -> IntPtr
Ord IntPtr |
Instance details Defined in Foreign.Ptr Methods compare :: IntPtr -> IntPtr -> Ordering (<) :: IntPtr -> IntPtr -> Bool (<=) :: IntPtr -> IntPtr -> Bool (>) :: IntPtr -> IntPtr -> Bool (>=) :: IntPtr -> IntPtr -> Bool max :: IntPtr -> IntPtr -> IntPtr min :: IntPtr -> IntPtr -> IntPtr
Read IntPtr |
Instance details Defined in Foreign.Ptr Methods readsPrec :: Int -> ReadS IntPtr readList :: ReadS [IntPtr] readPrec :: ReadPrec IntPtr readListPrec :: ReadPrec [IntPtr]
Real IntPtr |
Instance details Defined in Foreign.Ptr Methods toRational :: IntPtr -> Rational
Show IntPtr |
Instance details Defined in Foreign.Ptr Methods showsPrec :: Int -> IntPtr -> ShowS show :: IntPtr -> String showList :: [IntPtr] -> ShowS
Bits IntPtr |

Instance details

Defined in Foreign.Ptr

Methods

(.&.) :: IntPtr -> IntPtr -> IntPtr

(.|.) :: IntPtr -> IntPtr -> IntPtr

xor :: IntPtr -> IntPtr -> IntPtr

complement :: IntPtr -> IntPtr

shift :: IntPtr -> Int -> IntPtr

rotate :: IntPtr -> Int -> IntPtr

zeroBits :: IntPtr

bit :: Int -> IntPtr

setBit :: IntPtr -> Int -> IntPtr

clearBit :: IntPtr -> Int -> IntPtr

complementBit :: IntPtr -> Int -> IntPtr

testBit :: IntPtr -> Int -> Bool

bitSizeMaybe :: IntPtr -> Maybe Int

bitSize :: IntPtr -> Int

isSigned :: IntPtr -> Bool

shiftL :: IntPtr -> Int -> IntPtr

unsafeShiftL :: IntPtr -> Int -> IntPtr

shiftR :: IntPtr -> Int -> IntPtr

unsafeShiftR :: IntPtr -> Int -> IntPtr

rotateL :: IntPtr -> Int -> IntPtr

rotateR :: IntPtr -> Int -> IntPtr

popCount :: IntPtr -> Int

FiniteBits IntPtr |
Instance details Defined in Foreign.Ptr Methods finiteBitSize :: IntPtr -> Int countLeadingZeros :: IntPtr -> Int countTrailingZeros :: IntPtr -> Int
Storable IntPtr |
Instance details Defined in Foreign.Ptr Methods sizeOf :: IntPtr -> Int # alignment :: IntPtr -> Int # peekElemOff :: Ptr IntPtr -> Int -> IO IntPtr # pokeElemOff :: Ptr IntPtr -> Int -> IntPtr -> IO () # peekByteOff :: Ptr b -> Int -> IO IntPtr # pokeByteOff :: Ptr b -> Int -> IntPtr -> IO () # peek :: Ptr IntPtr -> IO IntPtr # poke :: Ptr IntPtr -> IntPtr -> IO () #
Hashable IntPtr |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> IntPtr -> Int hash :: IntPtr -> Int

ptrToIntPtr :: Ptr a -> IntPtr #

intPtrToPtr :: IntPtr -> Ptr a #

newtype WordPtr #

Constructors

WordPtr Word |

#### Instances

Instances details

Bounded WordPtr |
Instance details Defined in Foreign.Ptr Methods minBound :: WordPtr maxBound :: WordPtr
Enum WordPtr |
Instance details Defined in Foreign.Ptr Methods succ :: WordPtr -> WordPtr pred :: WordPtr -> WordPtr toEnum :: Int -> WordPtr fromEnum :: WordPtr -> Int enumFrom :: WordPtr -> [WordPtr] enumFromThen :: WordPtr -> WordPtr -> [WordPtr] enumFromTo :: WordPtr -> WordPtr -> [WordPtr] enumFromThenTo :: WordPtr -> WordPtr -> WordPtr -> [WordPtr]
Eq WordPtr |
Instance details Defined in Foreign.Ptr Methods (==) :: WordPtr -> WordPtr -> Bool (/=) :: WordPtr -> WordPtr -> Bool
Integral WordPtr |
Instance details Defined in Foreign.Ptr Methods quot :: WordPtr -> WordPtr -> WordPtr rem :: WordPtr -> WordPtr -> WordPtr div :: WordPtr -> WordPtr -> WordPtr mod :: WordPtr -> WordPtr -> WordPtr quotRem :: WordPtr -> WordPtr -> (WordPtr, WordPtr) divMod :: WordPtr -> WordPtr -> (WordPtr, WordPtr) toInteger :: WordPtr -> Integer
Num WordPtr |
Instance details Defined in Foreign.Ptr Methods (+) :: WordPtr -> WordPtr -> WordPtr (-) :: WordPtr -> WordPtr -> WordPtr (*) :: WordPtr -> WordPtr -> WordPtr negate :: WordPtr -> WordPtr abs :: WordPtr -> WordPtr signum :: WordPtr -> WordPtr fromInteger :: Integer -> WordPtr
Ord WordPtr |
Instance details Defined in Foreign.Ptr Methods compare :: WordPtr -> WordPtr -> Ordering (<) :: WordPtr -> WordPtr -> Bool (<=) :: WordPtr -> WordPtr -> Bool (>) :: WordPtr -> WordPtr -> Bool (>=) :: WordPtr -> WordPtr -> Bool max :: WordPtr -> WordPtr -> WordPtr min :: WordPtr -> WordPtr -> WordPtr
Read WordPtr |
Instance details Defined in Foreign.Ptr Methods readsPrec :: Int -> ReadS WordPtr readList :: ReadS [WordPtr] readPrec :: ReadPrec WordPtr readListPrec :: ReadPrec [WordPtr]
Real WordPtr |
Instance details Defined in Foreign.Ptr Methods toRational :: WordPtr -> Rational
Show WordPtr |
Instance details Defined in Foreign.Ptr Methods showsPrec :: Int -> WordPtr -> ShowS show :: WordPtr -> String showList :: [WordPtr] -> ShowS
Bits WordPtr |

Instance details

Defined in Foreign.Ptr

Methods

(.&.) :: WordPtr -> WordPtr -> WordPtr

(.|.) :: WordPtr -> WordPtr -> WordPtr

xor :: WordPtr -> WordPtr -> WordPtr

complement :: WordPtr -> WordPtr

shift :: WordPtr -> Int -> WordPtr

rotate :: WordPtr -> Int -> WordPtr

zeroBits :: WordPtr

bit :: Int -> WordPtr

setBit :: WordPtr -> Int -> WordPtr

clearBit :: WordPtr -> Int -> WordPtr

complementBit :: WordPtr -> Int -> WordPtr

testBit :: WordPtr -> Int -> Bool

bitSizeMaybe :: WordPtr -> Maybe Int

bitSize :: WordPtr -> Int

isSigned :: WordPtr -> Bool

shiftL :: WordPtr -> Int -> WordPtr

unsafeShiftL :: WordPtr -> Int -> WordPtr

shiftR :: WordPtr -> Int -> WordPtr

unsafeShiftR :: WordPtr -> Int -> WordPtr

rotateL :: WordPtr -> Int -> WordPtr

rotateR :: WordPtr -> Int -> WordPtr

popCount :: WordPtr -> Int

FiniteBits WordPtr |
Instance details Defined in Foreign.Ptr Methods finiteBitSize :: WordPtr -> Int countLeadingZeros :: WordPtr -> Int countTrailingZeros :: WordPtr -> Int
Storable WordPtr |
Instance details Defined in Foreign.Ptr Methods sizeOf :: WordPtr -> Int # alignment :: WordPtr -> Int # peekElemOff :: Ptr WordPtr -> Int -> IO WordPtr # pokeElemOff :: Ptr WordPtr -> Int -> WordPtr -> IO () # peekByteOff :: Ptr b -> Int -> IO WordPtr # pokeByteOff :: Ptr b -> Int -> WordPtr -> IO () # peek :: Ptr WordPtr -> IO WordPtr # poke :: Ptr WordPtr -> WordPtr -> IO () #
Hashable WordPtr |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> WordPtr -> Int hash :: WordPtr -> Int

ptrToWordPtr :: Ptr a -> WordPtr #

wordPtrToPtr :: WordPtr -> Ptr a #

# Unlifted Foreign.ForeignPtr

data ForeignPtr a #

#### Instances

Instances details

Eq (ForeignPtr a) |
Instance details Defined in GHC.ForeignPtr Methods (==) :: ForeignPtr a -> ForeignPtr a -> Bool (/=) :: ForeignPtr a -> ForeignPtr a -> Bool
Ord (ForeignPtr a) |
Instance details Defined in GHC.ForeignPtr Methods compare :: ForeignPtr a -> ForeignPtr a -> Ordering (<) :: ForeignPtr a -> ForeignPtr a -> Bool (<=) :: ForeignPtr a -> ForeignPtr a -> Bool (>) :: ForeignPtr a -> ForeignPtr a -> Bool (>=) :: ForeignPtr a -> ForeignPtr a -> Bool max :: ForeignPtr a -> ForeignPtr a -> ForeignPtr a min :: ForeignPtr a -> ForeignPtr a -> ForeignPtr a
Show (ForeignPtr a) |
Instance details Defined in GHC.ForeignPtr Methods showsPrec :: Int -> ForeignPtr a -> ShowS show :: ForeignPtr a -> String showList :: [ForeignPtr a] -> ShowS

type FinalizerPtr a = FunPtr (Ptr a -> IO ()) #

type FinalizerEnvPtr env a = FunPtr (Ptr env -> Ptr a -> IO ()) #

newForeignPtr :: MonadIO m => FinalizerPtr a -> Ptr a -> m (ForeignPtr a) Source #

Lifted `newForeignPtr`.

Since: 0.2.5.0

newForeignPtr_ :: MonadIO m => Ptr a -> m (ForeignPtr a) Source #

Lifted `newForeignPtr_`.

Since: 0.2.5.0

addForeignPtrFinalizer :: MonadIO m => FinalizerPtr a -> ForeignPtr a -> m () Source #

Lifted `addForeignPtrFinalizer`.

Since: 0.2.5.0

newForeignPtrEnv :: MonadIO m => FinalizerEnvPtr env a -> Ptr env -> Ptr a -> m (ForeignPtr a) Source #

Lifted `newForeignPtrEnv`.

Since: 0.2.5.0

addForeignPtrFinalizerEnv :: MonadIO m => FinalizerEnvPtr env a -> Ptr env -> ForeignPtr a -> m () Source #

Lifted `addForeignPtrFinalizerEnv`.

Since: 0.2.5.0

withForeignPtr :: MonadUnliftIO m => ForeignPtr a -> (Ptr a -> m b) -> m b Source #

Unlifted `withForeignPtr`.

Since: 0.2.5.0

finalizeForeignPtr :: MonadIO m => ForeignPtr a -> m () Source #

Lifted `finalizeForeignPtr`.

Since: 0.2.5.0

touchForeignPtr :: MonadIO m => ForeignPtr a -> m () Source #

Lifted `touchForeignPtr`.

Since: 0.2.5.0

castForeignPtr :: ForeignPtr a -> ForeignPtr b #

plusForeignPtr :: ForeignPtr a -> Int -> ForeignPtr b #

mallocForeignPtr :: (MonadIO m, Storable a) => m (ForeignPtr a) Source #

Lifted `mallocForeignPtr`.

Since: 0.2.5.0

mallocForeignPtrBytes :: MonadIO m => Int -> m (ForeignPtr a) Source #

Lifted `mallocForeignPtrBytes`.

Since: 0.2.5.0

mallocForeignPtrArray :: (MonadIO m, Storable a) => Int -> m (ForeignPtr a) Source #

Lifted `mallocForeignPtrArray`.

Since: 0.2.5.0

mallocForeignPtrArray0 :: (MonadIO m, Storable a) => Int -> m (ForeignPtr a) Source #

Lifted `mallocForeignPtrArray0`.

Since: 0.2.5.0

newGHCForeignPtr :: MonadUnliftIO m => Ptr a -> m () -> m (ForeignPtr a) Source #

Unlifted `newForeignPtr`.

Since: 0.2.5.0

addGHCForeignPtrFinalizer :: MonadUnliftIO m => ForeignPtr a -> m () -> m () Source #

Unlifted `addForeignPtrFinalizer`.

Since: 0.2.5.0

unsafeForeignPtrToPtr :: ForeignPtr a -> Ptr a #

# Unlifted Foreign.StablePtr

data StablePtr a #

#### Instances

Instances details

Eq (StablePtr a) |
Instance details Defined in GHC.Stable Methods (==) :: StablePtr a -> StablePtr a -> Bool (/=) :: StablePtr a -> StablePtr a -> Bool
Storable (StablePtr a) |

Instance details

Defined in Foreign.Storable

Methods

sizeOf :: StablePtr a -> Int #

alignment :: StablePtr a -> Int #

peekElemOff :: Ptr (StablePtr a) -> Int -> IO (StablePtr a) #

pokeElemOff :: Ptr (StablePtr a) -> Int -> StablePtr a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (StablePtr a) #

pokeByteOff :: Ptr b -> Int -> StablePtr a -> IO () #

peek :: Ptr (StablePtr a) -> IO (StablePtr a) #

poke :: Ptr (StablePtr a) -> StablePtr a -> IO () #

newStablePtr :: MonadIO m => a -> m (StablePtr a) Source #

Lifted `newStablePtr`.

Since: 0.2.5.0

deRefStablePtr :: MonadIO m => StablePtr a -> m a Source #

Lifted `deRefStablePtr`.

Since: 0.2.5.0

freeStablePtr :: MonadIO m => StablePtr a -> m () Source #

Lifted `freeStablePtr`.

Since: 0.2.5.0

castStablePtrToPtr :: StablePtr a -> Ptr () #

castPtrToStablePtr :: Ptr () -> StablePtr a #

# Unlifted Foreign.Storable

class Storable a where #

Minimal complete definition

sizeOf, alignment, (peek | peekElemOff | peekByteOff), (poke | pokeElemOff | pokeByteOff)

Methods

sizeOf :: a -> Int #

alignment :: a -> Int #

peekElemOff :: Ptr a -> Int -> IO a #

pokeElemOff :: Ptr a -> Int -> a -> IO () #

peekByteOff :: Ptr b -> Int -> IO a #

pokeByteOff :: Ptr b -> Int -> a -> IO () #

peek :: Ptr a -> IO a #

poke :: Ptr a -> a -> IO () #

#### Instances

Instances details

Storable Bool |
Instance details Defined in Foreign.Storable Methods sizeOf :: Bool -> Int # alignment :: Bool -> Int # peekElemOff :: Ptr Bool -> Int -> IO Bool # pokeElemOff :: Ptr Bool -> Int -> Bool -> IO () # peekByteOff :: Ptr b -> Int -> IO Bool # pokeByteOff :: Ptr b -> Int -> Bool -> IO () # peek :: Ptr Bool -> IO Bool # poke :: Ptr Bool -> Bool -> IO () #
Storable Char |
Instance details Defined in Foreign.Storable Methods sizeOf :: Char -> Int # alignment :: Char -> Int # peekElemOff :: Ptr Char -> Int -> IO Char # pokeElemOff :: Ptr Char -> Int -> Char -> IO () # peekByteOff :: Ptr b -> Int -> IO Char # pokeByteOff :: Ptr b -> Int -> Char -> IO () # peek :: Ptr Char -> IO Char # poke :: Ptr Char -> Char -> IO () #
Storable Double |
Instance details Defined in Foreign.Storable Methods sizeOf :: Double -> Int # alignment :: Double -> Int # peekElemOff :: Ptr Double -> Int -> IO Double # pokeElemOff :: Ptr Double -> Int -> Double -> IO () # peekByteOff :: Ptr b -> Int -> IO Double # pokeByteOff :: Ptr b -> Int -> Double -> IO () # peek :: Ptr Double -> IO Double # poke :: Ptr Double -> Double -> IO () #
Storable Float |
Instance details Defined in Foreign.Storable Methods sizeOf :: Float -> Int # alignment :: Float -> Int # peekElemOff :: Ptr Float -> Int -> IO Float # pokeElemOff :: Ptr Float -> Int -> Float -> IO () # peekByteOff :: Ptr b -> Int -> IO Float # pokeByteOff :: Ptr b -> Int -> Float -> IO () # peek :: Ptr Float -> IO Float # poke :: Ptr Float -> Float -> IO () #
Storable Int |
Instance details Defined in Foreign.Storable Methods sizeOf :: Int -> Int # alignment :: Int -> Int # peekElemOff :: Ptr Int -> Int -> IO Int # pokeElemOff :: Ptr Int -> Int -> Int -> IO () # peekByteOff :: Ptr b -> Int -> IO Int # pokeByteOff :: Ptr b -> Int -> Int -> IO () # peek :: Ptr Int -> IO Int # poke :: Ptr Int -> Int -> IO () #
Storable Int8 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Int8 -> Int # alignment :: Int8 -> Int # peekElemOff :: Ptr Int8 -> Int -> IO Int8 # pokeElemOff :: Ptr Int8 -> Int -> Int8 -> IO () # peekByteOff :: Ptr b -> Int -> IO Int8 # pokeByteOff :: Ptr b -> Int -> Int8 -> IO () # peek :: Ptr Int8 -> IO Int8 # poke :: Ptr Int8 -> Int8 -> IO () #
Storable Int16 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Int16 -> Int # alignment :: Int16 -> Int # peekElemOff :: Ptr Int16 -> Int -> IO Int16 # pokeElemOff :: Ptr Int16 -> Int -> Int16 -> IO () # peekByteOff :: Ptr b -> Int -> IO Int16 # pokeByteOff :: Ptr b -> Int -> Int16 -> IO () # peek :: Ptr Int16 -> IO Int16 # poke :: Ptr Int16 -> Int16 -> IO () #
Storable Int32 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Int32 -> Int # alignment :: Int32 -> Int # peekElemOff :: Ptr Int32 -> Int -> IO Int32 # pokeElemOff :: Ptr Int32 -> Int -> Int32 -> IO () # peekByteOff :: Ptr b -> Int -> IO Int32 # pokeByteOff :: Ptr b -> Int -> Int32 -> IO () # peek :: Ptr Int32 -> IO Int32 # poke :: Ptr Int32 -> Int32 -> IO () #
Storable Int64 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Int64 -> Int # alignment :: Int64 -> Int # peekElemOff :: Ptr Int64 -> Int -> IO Int64 # pokeElemOff :: Ptr Int64 -> Int -> Int64 -> IO () # peekByteOff :: Ptr b -> Int -> IO Int64 # pokeByteOff :: Ptr b -> Int -> Int64 -> IO () # peek :: Ptr Int64 -> IO Int64 # poke :: Ptr Int64 -> Int64 -> IO () #
Storable Word |
Instance details Defined in Foreign.Storable Methods sizeOf :: Word -> Int # alignment :: Word -> Int # peekElemOff :: Ptr Word -> Int -> IO Word # pokeElemOff :: Ptr Word -> Int -> Word -> IO () # peekByteOff :: Ptr b -> Int -> IO Word # pokeByteOff :: Ptr b -> Int -> Word -> IO () # peek :: Ptr Word -> IO Word # poke :: Ptr Word -> Word -> IO () #
Storable Word8 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Word8 -> Int # alignment :: Word8 -> Int # peekElemOff :: Ptr Word8 -> Int -> IO Word8 # pokeElemOff :: Ptr Word8 -> Int -> Word8 -> IO () # peekByteOff :: Ptr b -> Int -> IO Word8 # pokeByteOff :: Ptr b -> Int -> Word8 -> IO () # peek :: Ptr Word8 -> IO Word8 # poke :: Ptr Word8 -> Word8 -> IO () #
Storable Word16 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Word16 -> Int # alignment :: Word16 -> Int # peekElemOff :: Ptr Word16 -> Int -> IO Word16 # pokeElemOff :: Ptr Word16 -> Int -> Word16 -> IO () # peekByteOff :: Ptr b -> Int -> IO Word16 # pokeByteOff :: Ptr b -> Int -> Word16 -> IO () # peek :: Ptr Word16 -> IO Word16 # poke :: Ptr Word16 -> Word16 -> IO () #
Storable Word32 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Word32 -> Int # alignment :: Word32 -> Int # peekElemOff :: Ptr Word32 -> Int -> IO Word32 # pokeElemOff :: Ptr Word32 -> Int -> Word32 -> IO () # peekByteOff :: Ptr b -> Int -> IO Word32 # pokeByteOff :: Ptr b -> Int -> Word32 -> IO () # peek :: Ptr Word32 -> IO Word32 # poke :: Ptr Word32 -> Word32 -> IO () #
Storable Word64 |
Instance details Defined in Foreign.Storable Methods sizeOf :: Word64 -> Int # alignment :: Word64 -> Int # peekElemOff :: Ptr Word64 -> Int -> IO Word64 # pokeElemOff :: Ptr Word64 -> Int -> Word64 -> IO () # peekByteOff :: Ptr b -> Int -> IO Word64 # pokeByteOff :: Ptr b -> Int -> Word64 -> IO () # peek :: Ptr Word64 -> IO Word64 # poke :: Ptr Word64 -> Word64 -> IO () #
Storable () |
Instance details Defined in Foreign.Storable Methods sizeOf :: () -> Int # alignment :: () -> Int # peekElemOff :: Ptr () -> Int -> IO () # pokeElemOff :: Ptr () -> Int -> () -> IO () # peekByteOff :: Ptr b -> Int -> IO () # pokeByteOff :: Ptr b -> Int -> () -> IO () # peek :: Ptr () -> IO () # poke :: Ptr () -> () -> IO () #
Storable CChar |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CChar -> Int # alignment :: CChar -> Int # peekElemOff :: Ptr CChar -> Int -> IO CChar # pokeElemOff :: Ptr CChar -> Int -> CChar -> IO () # peekByteOff :: Ptr b -> Int -> IO CChar # pokeByteOff :: Ptr b -> Int -> CChar -> IO () # peek :: Ptr CChar -> IO CChar # poke :: Ptr CChar -> CChar -> IO () #
Storable CInt |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CInt -> Int # alignment :: CInt -> Int # peekElemOff :: Ptr CInt -> Int -> IO CInt # pokeElemOff :: Ptr CInt -> Int -> CInt -> IO () # peekByteOff :: Ptr b -> Int -> IO CInt # pokeByteOff :: Ptr b -> Int -> CInt -> IO () # peek :: Ptr CInt -> IO CInt # poke :: Ptr CInt -> CInt -> IO () #
Storable Fd |
Instance details Defined in System.Posix.Types Methods sizeOf :: Fd -> Int # alignment :: Fd -> Int # peekElemOff :: Ptr Fd -> Int -> IO Fd # pokeElemOff :: Ptr Fd -> Int -> Fd -> IO () # peekByteOff :: Ptr b -> Int -> IO Fd # pokeByteOff :: Ptr b -> Int -> Fd -> IO () # peek :: Ptr Fd -> IO Fd # poke :: Ptr Fd -> Fd -> IO () #
Storable CBool |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CBool -> Int # alignment :: CBool -> Int # peekElemOff :: Ptr CBool -> Int -> IO CBool # pokeElemOff :: Ptr CBool -> Int -> CBool -> IO () # peekByteOff :: Ptr b -> Int -> IO CBool # pokeByteOff :: Ptr b -> Int -> CBool -> IO () # peek :: Ptr CBool -> IO CBool # poke :: Ptr CBool -> CBool -> IO () #
Storable CClock |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CClock -> Int # alignment :: CClock -> Int # peekElemOff :: Ptr CClock -> Int -> IO CClock # pokeElemOff :: Ptr CClock -> Int -> CClock -> IO () # peekByteOff :: Ptr b -> Int -> IO CClock # pokeByteOff :: Ptr b -> Int -> CClock -> IO () # peek :: Ptr CClock -> IO CClock # poke :: Ptr CClock -> CClock -> IO () #
Storable CDouble |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CDouble -> Int # alignment :: CDouble -> Int # peekElemOff :: Ptr CDouble -> Int -> IO CDouble # pokeElemOff :: Ptr CDouble -> Int -> CDouble -> IO () # peekByteOff :: Ptr b -> Int -> IO CDouble # pokeByteOff :: Ptr b -> Int -> CDouble -> IO () # peek :: Ptr CDouble -> IO CDouble # poke :: Ptr CDouble -> CDouble -> IO () #
Storable CFloat |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CFloat -> Int # alignment :: CFloat -> Int # peekElemOff :: Ptr CFloat -> Int -> IO CFloat # pokeElemOff :: Ptr CFloat -> Int -> CFloat -> IO () # peekByteOff :: Ptr b -> Int -> IO CFloat # pokeByteOff :: Ptr b -> Int -> CFloat -> IO () # peek :: Ptr CFloat -> IO CFloat # poke :: Ptr CFloat -> CFloat -> IO () #
Storable CIntMax |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CIntMax -> Int # alignment :: CIntMax -> Int # peekElemOff :: Ptr CIntMax -> Int -> IO CIntMax # pokeElemOff :: Ptr CIntMax -> Int -> CIntMax -> IO () # peekByteOff :: Ptr b -> Int -> IO CIntMax # pokeByteOff :: Ptr b -> Int -> CIntMax -> IO () # peek :: Ptr CIntMax -> IO CIntMax # poke :: Ptr CIntMax -> CIntMax -> IO () #
Storable CIntPtr |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CIntPtr -> Int # alignment :: CIntPtr -> Int # peekElemOff :: Ptr CIntPtr -> Int -> IO CIntPtr # pokeElemOff :: Ptr CIntPtr -> Int -> CIntPtr -> IO () # peekByteOff :: Ptr b -> Int -> IO CIntPtr # pokeByteOff :: Ptr b -> Int -> CIntPtr -> IO () # peek :: Ptr CIntPtr -> IO CIntPtr # poke :: Ptr CIntPtr -> CIntPtr -> IO () #
Storable CLLong |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CLLong -> Int # alignment :: CLLong -> Int # peekElemOff :: Ptr CLLong -> Int -> IO CLLong # pokeElemOff :: Ptr CLLong -> Int -> CLLong -> IO () # peekByteOff :: Ptr b -> Int -> IO CLLong # pokeByteOff :: Ptr b -> Int -> CLLong -> IO () # peek :: Ptr CLLong -> IO CLLong # poke :: Ptr CLLong -> CLLong -> IO () #
Storable CLong |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CLong -> Int # alignment :: CLong -> Int # peekElemOff :: Ptr CLong -> Int -> IO CLong # pokeElemOff :: Ptr CLong -> Int -> CLong -> IO () # peekByteOff :: Ptr b -> Int -> IO CLong # pokeByteOff :: Ptr b -> Int -> CLong -> IO () # peek :: Ptr CLong -> IO CLong # poke :: Ptr CLong -> CLong -> IO () #
Storable CPtrdiff |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CPtrdiff -> Int # alignment :: CPtrdiff -> Int # peekElemOff :: Ptr CPtrdiff -> Int -> IO CPtrdiff # pokeElemOff :: Ptr CPtrdiff -> Int -> CPtrdiff -> IO () # peekByteOff :: Ptr b -> Int -> IO CPtrdiff # pokeByteOff :: Ptr b -> Int -> CPtrdiff -> IO () # peek :: Ptr CPtrdiff -> IO CPtrdiff # poke :: Ptr CPtrdiff -> CPtrdiff -> IO () #
Storable CSChar |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CSChar -> Int # alignment :: CSChar -> Int # peekElemOff :: Ptr CSChar -> Int -> IO CSChar # pokeElemOff :: Ptr CSChar -> Int -> CSChar -> IO () # peekByteOff :: Ptr b -> Int -> IO CSChar # pokeByteOff :: Ptr b -> Int -> CSChar -> IO () # peek :: Ptr CSChar -> IO CSChar # poke :: Ptr CSChar -> CSChar -> IO () #
Storable CSUSeconds |

Instance details

Defined in Foreign.C.Types

Methods

sizeOf :: CSUSeconds -> Int #

alignment :: CSUSeconds -> Int #

peekElemOff :: Ptr CSUSeconds -> Int -> IO CSUSeconds #

pokeElemOff :: Ptr CSUSeconds -> Int -> CSUSeconds -> IO () #

peekByteOff :: Ptr b -> Int -> IO CSUSeconds #

pokeByteOff :: Ptr b -> Int -> CSUSeconds -> IO () #

peek :: Ptr CSUSeconds -> IO CSUSeconds #

poke :: Ptr CSUSeconds -> CSUSeconds -> IO () #

Storable CShort |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CShort -> Int # alignment :: CShort -> Int # peekElemOff :: Ptr CShort -> Int -> IO CShort # pokeElemOff :: Ptr CShort -> Int -> CShort -> IO () # peekByteOff :: Ptr b -> Int -> IO CShort # pokeByteOff :: Ptr b -> Int -> CShort -> IO () # peek :: Ptr CShort -> IO CShort # poke :: Ptr CShort -> CShort -> IO () #
Storable CSigAtomic |

Instance details

Defined in Foreign.C.Types

Methods

sizeOf :: CSigAtomic -> Int #

alignment :: CSigAtomic -> Int #

peekElemOff :: Ptr CSigAtomic -> Int -> IO CSigAtomic #

pokeElemOff :: Ptr CSigAtomic -> Int -> CSigAtomic -> IO () #

peekByteOff :: Ptr b -> Int -> IO CSigAtomic #

pokeByteOff :: Ptr b -> Int -> CSigAtomic -> IO () #

peek :: Ptr CSigAtomic -> IO CSigAtomic #

poke :: Ptr CSigAtomic -> CSigAtomic -> IO () #

Storable CSize |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CSize -> Int # alignment :: CSize -> Int # peekElemOff :: Ptr CSize -> Int -> IO CSize # pokeElemOff :: Ptr CSize -> Int -> CSize -> IO () # peekByteOff :: Ptr b -> Int -> IO CSize # pokeByteOff :: Ptr b -> Int -> CSize -> IO () # peek :: Ptr CSize -> IO CSize # poke :: Ptr CSize -> CSize -> IO () #
Storable CTime |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CTime -> Int # alignment :: CTime -> Int # peekElemOff :: Ptr CTime -> Int -> IO CTime # pokeElemOff :: Ptr CTime -> Int -> CTime -> IO () # peekByteOff :: Ptr b -> Int -> IO CTime # pokeByteOff :: Ptr b -> Int -> CTime -> IO () # peek :: Ptr CTime -> IO CTime # poke :: Ptr CTime -> CTime -> IO () #
Storable CUChar |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CUChar -> Int # alignment :: CUChar -> Int # peekElemOff :: Ptr CUChar -> Int -> IO CUChar # pokeElemOff :: Ptr CUChar -> Int -> CUChar -> IO () # peekByteOff :: Ptr b -> Int -> IO CUChar # pokeByteOff :: Ptr b -> Int -> CUChar -> IO () # peek :: Ptr CUChar -> IO CUChar # poke :: Ptr CUChar -> CUChar -> IO () #
Storable CUInt |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CUInt -> Int # alignment :: CUInt -> Int # peekElemOff :: Ptr CUInt -> Int -> IO CUInt # pokeElemOff :: Ptr CUInt -> Int -> CUInt -> IO () # peekByteOff :: Ptr b -> Int -> IO CUInt # pokeByteOff :: Ptr b -> Int -> CUInt -> IO () # peek :: Ptr CUInt -> IO CUInt # poke :: Ptr CUInt -> CUInt -> IO () #
Storable CUIntMax |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CUIntMax -> Int # alignment :: CUIntMax -> Int # peekElemOff :: Ptr CUIntMax -> Int -> IO CUIntMax # pokeElemOff :: Ptr CUIntMax -> Int -> CUIntMax -> IO () # peekByteOff :: Ptr b -> Int -> IO CUIntMax # pokeByteOff :: Ptr b -> Int -> CUIntMax -> IO () # peek :: Ptr CUIntMax -> IO CUIntMax # poke :: Ptr CUIntMax -> CUIntMax -> IO () #
Storable CUIntPtr |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CUIntPtr -> Int # alignment :: CUIntPtr -> Int # peekElemOff :: Ptr CUIntPtr -> Int -> IO CUIntPtr # pokeElemOff :: Ptr CUIntPtr -> Int -> CUIntPtr -> IO () # peekByteOff :: Ptr b -> Int -> IO CUIntPtr # pokeByteOff :: Ptr b -> Int -> CUIntPtr -> IO () # peek :: Ptr CUIntPtr -> IO CUIntPtr # poke :: Ptr CUIntPtr -> CUIntPtr -> IO () #
Storable CULLong |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CULLong -> Int # alignment :: CULLong -> Int # peekElemOff :: Ptr CULLong -> Int -> IO CULLong # pokeElemOff :: Ptr CULLong -> Int -> CULLong -> IO () # peekByteOff :: Ptr b -> Int -> IO CULLong # pokeByteOff :: Ptr b -> Int -> CULLong -> IO () # peek :: Ptr CULLong -> IO CULLong # poke :: Ptr CULLong -> CULLong -> IO () #
Storable CULong |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CULong -> Int # alignment :: CULong -> Int # peekElemOff :: Ptr CULong -> Int -> IO CULong # pokeElemOff :: Ptr CULong -> Int -> CULong -> IO () # peekByteOff :: Ptr b -> Int -> IO CULong # pokeByteOff :: Ptr b -> Int -> CULong -> IO () # peek :: Ptr CULong -> IO CULong # poke :: Ptr CULong -> CULong -> IO () #
Storable CUSeconds |

Instance details

Defined in Foreign.C.Types

Methods

sizeOf :: CUSeconds -> Int #

alignment :: CUSeconds -> Int #

peekElemOff :: Ptr CUSeconds -> Int -> IO CUSeconds #

pokeElemOff :: Ptr CUSeconds -> Int -> CUSeconds -> IO () #

peekByteOff :: Ptr b -> Int -> IO CUSeconds #

pokeByteOff :: Ptr b -> Int -> CUSeconds -> IO () #

peek :: Ptr CUSeconds -> IO CUSeconds #

poke :: Ptr CUSeconds -> CUSeconds -> IO () #

Storable CUShort |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CUShort -> Int # alignment :: CUShort -> Int # peekElemOff :: Ptr CUShort -> Int -> IO CUShort # pokeElemOff :: Ptr CUShort -> Int -> CUShort -> IO () # peekByteOff :: Ptr b -> Int -> IO CUShort # pokeByteOff :: Ptr b -> Int -> CUShort -> IO () # peek :: Ptr CUShort -> IO CUShort # poke :: Ptr CUShort -> CUShort -> IO () #
Storable CWchar |
Instance details Defined in Foreign.C.Types Methods sizeOf :: CWchar -> Int # alignment :: CWchar -> Int # peekElemOff :: Ptr CWchar -> Int -> IO CWchar # pokeElemOff :: Ptr CWchar -> Int -> CWchar -> IO () # peekByteOff :: Ptr b -> Int -> IO CWchar # pokeByteOff :: Ptr b -> Int -> CWchar -> IO () # peek :: Ptr CWchar -> IO CWchar # poke :: Ptr CWchar -> CWchar -> IO () #
Storable Fingerprint |

Instance details

Defined in Foreign.Storable

Methods

sizeOf :: Fingerprint -> Int #

alignment :: Fingerprint -> Int #

peekElemOff :: Ptr Fingerprint -> Int -> IO Fingerprint #

pokeElemOff :: Ptr Fingerprint -> Int -> Fingerprint -> IO () #

peekByteOff :: Ptr b -> Int -> IO Fingerprint #

pokeByteOff :: Ptr b -> Int -> Fingerprint -> IO () #

peek :: Ptr Fingerprint -> IO Fingerprint #

poke :: Ptr Fingerprint -> Fingerprint -> IO () #

Storable IntPtr |
Instance details Defined in Foreign.Ptr Methods sizeOf :: IntPtr -> Int # alignment :: IntPtr -> Int # peekElemOff :: Ptr IntPtr -> Int -> IO IntPtr # pokeElemOff :: Ptr IntPtr -> Int -> IntPtr -> IO () # peekByteOff :: Ptr b -> Int -> IO IntPtr # pokeByteOff :: Ptr b -> Int -> IntPtr -> IO () # peek :: Ptr IntPtr -> IO IntPtr # poke :: Ptr IntPtr -> IntPtr -> IO () #
Storable WordPtr |
Instance details Defined in Foreign.Ptr Methods sizeOf :: WordPtr -> Int # alignment :: WordPtr -> Int # peekElemOff :: Ptr WordPtr -> Int -> IO WordPtr # pokeElemOff :: Ptr WordPtr -> Int -> WordPtr -> IO () # peekByteOff :: Ptr b -> Int -> IO WordPtr # pokeByteOff :: Ptr b -> Int -> WordPtr -> IO () # peek :: Ptr WordPtr -> IO WordPtr # poke :: Ptr WordPtr -> WordPtr -> IO () #
Storable CMode |
Instance details Defined in System.Posix.Types Methods sizeOf :: CMode -> Int # alignment :: CMode -> Int # peekElemOff :: Ptr CMode -> Int -> IO CMode # pokeElemOff :: Ptr CMode -> Int -> CMode -> IO () # peekByteOff :: Ptr b -> Int -> IO CMode # pokeByteOff :: Ptr b -> Int -> CMode -> IO () # peek :: Ptr CMode -> IO CMode # poke :: Ptr CMode -> CMode -> IO () #
Storable CDev |
Instance details Defined in System.Posix.Types Methods sizeOf :: CDev -> Int # alignment :: CDev -> Int # peekElemOff :: Ptr CDev -> Int -> IO CDev # pokeElemOff :: Ptr CDev -> Int -> CDev -> IO () # peekByteOff :: Ptr b -> Int -> IO CDev # pokeByteOff :: Ptr b -> Int -> CDev -> IO () # peek :: Ptr CDev -> IO CDev # poke :: Ptr CDev -> CDev -> IO () #
Storable CIno |
Instance details Defined in System.Posix.Types Methods sizeOf :: CIno -> Int # alignment :: CIno -> Int # peekElemOff :: Ptr CIno -> Int -> IO CIno # pokeElemOff :: Ptr CIno -> Int -> CIno -> IO () # peekByteOff :: Ptr b -> Int -> IO CIno # pokeByteOff :: Ptr b -> Int -> CIno -> IO () # peek :: Ptr CIno -> IO CIno # poke :: Ptr CIno -> CIno -> IO () #
Storable CSsize |
Instance details Defined in System.Posix.Types Methods sizeOf :: CSsize -> Int # alignment :: CSsize -> Int # peekElemOff :: Ptr CSsize -> Int -> IO CSsize # pokeElemOff :: Ptr CSsize -> Int -> CSsize -> IO () # peekByteOff :: Ptr b -> Int -> IO CSsize # pokeByteOff :: Ptr b -> Int -> CSsize -> IO () # peek :: Ptr CSsize -> IO CSsize # poke :: Ptr CSsize -> CSsize -> IO () #
Storable COff |
Instance details Defined in System.Posix.Types Methods sizeOf :: COff -> Int # alignment :: COff -> Int # peekElemOff :: Ptr COff -> Int -> IO COff # pokeElemOff :: Ptr COff -> Int -> COff -> IO () # peekByteOff :: Ptr b -> Int -> IO COff # pokeByteOff :: Ptr b -> Int -> COff -> IO () # peek :: Ptr COff -> IO COff # poke :: Ptr COff -> COff -> IO () #
Storable CTimeSpec |

Instance details

Defined in System.Posix.Files.Common

Methods

sizeOf :: CTimeSpec -> Int #

alignment :: CTimeSpec -> Int #

peekElemOff :: Ptr CTimeSpec -> Int -> IO CTimeSpec #

pokeElemOff :: Ptr CTimeSpec -> Int -> CTimeSpec -> IO () #

peekByteOff :: Ptr b -> Int -> IO CTimeSpec #

pokeByteOff :: Ptr b -> Int -> CTimeSpec -> IO () #

peek :: Ptr CTimeSpec -> IO CTimeSpec #

poke :: Ptr CTimeSpec -> CTimeSpec -> IO () #

Storable CPid |
Instance details Defined in System.Posix.Types Methods sizeOf :: CPid -> Int # alignment :: CPid -> Int # peekElemOff :: Ptr CPid -> Int -> IO CPid # pokeElemOff :: Ptr CPid -> Int -> CPid -> IO () # peekByteOff :: Ptr b -> Int -> IO CPid # pokeByteOff :: Ptr b -> Int -> CPid -> IO () # peek :: Ptr CPid -> IO CPid # poke :: Ptr CPid -> CPid -> IO () #
Storable CTcflag |
Instance details Defined in System.Posix.Types Methods sizeOf :: CTcflag -> Int # alignment :: CTcflag -> Int # peekElemOff :: Ptr CTcflag -> Int -> IO CTcflag # pokeElemOff :: Ptr CTcflag -> Int -> CTcflag -> IO () # peekByteOff :: Ptr b -> Int -> IO CTcflag # pokeByteOff :: Ptr b -> Int -> CTcflag -> IO () # peek :: Ptr CTcflag -> IO CTcflag # poke :: Ptr CTcflag -> CTcflag -> IO () #
Storable CBlkCnt |
Instance details Defined in System.Posix.Types Methods sizeOf :: CBlkCnt -> Int # alignment :: CBlkCnt -> Int # peekElemOff :: Ptr CBlkCnt -> Int -> IO CBlkCnt # pokeElemOff :: Ptr CBlkCnt -> Int -> CBlkCnt -> IO () # peekByteOff :: Ptr b -> Int -> IO CBlkCnt # pokeByteOff :: Ptr b -> Int -> CBlkCnt -> IO () # peek :: Ptr CBlkCnt -> IO CBlkCnt # poke :: Ptr CBlkCnt -> CBlkCnt -> IO () #
Storable CBlkSize |

Instance details

Defined in System.Posix.Types

Methods

sizeOf :: CBlkSize -> Int #

alignment :: CBlkSize -> Int #

peekElemOff :: Ptr CBlkSize -> Int -> IO CBlkSize #

pokeElemOff :: Ptr CBlkSize -> Int -> CBlkSize -> IO () #

peekByteOff :: Ptr b -> Int -> IO CBlkSize #

pokeByteOff :: Ptr b -> Int -> CBlkSize -> IO () #

peek :: Ptr CBlkSize -> IO CBlkSize #

poke :: Ptr CBlkSize -> CBlkSize -> IO () #

Storable CCc |
Instance details Defined in System.Posix.Types Methods sizeOf :: CCc -> Int # alignment :: CCc -> Int # peekElemOff :: Ptr CCc -> Int -> IO CCc # pokeElemOff :: Ptr CCc -> Int -> CCc -> IO () # peekByteOff :: Ptr b -> Int -> IO CCc # pokeByteOff :: Ptr b -> Int -> CCc -> IO () # peek :: Ptr CCc -> IO CCc # poke :: Ptr CCc -> CCc -> IO () #
Storable CClockId |

Instance details

Defined in System.Posix.Types

Methods

sizeOf :: CClockId -> Int #

alignment :: CClockId -> Int #

peekElemOff :: Ptr CClockId -> Int -> IO CClockId #

pokeElemOff :: Ptr CClockId -> Int -> CClockId -> IO () #

peekByteOff :: Ptr b -> Int -> IO CClockId #

pokeByteOff :: Ptr b -> Int -> CClockId -> IO () #

peek :: Ptr CClockId -> IO CClockId #

poke :: Ptr CClockId -> CClockId -> IO () #

Storable CFsBlkCnt |

Instance details

Defined in System.Posix.Types

Methods

sizeOf :: CFsBlkCnt -> Int #

alignment :: CFsBlkCnt -> Int #

peekElemOff :: Ptr CFsBlkCnt -> Int -> IO CFsBlkCnt #

pokeElemOff :: Ptr CFsBlkCnt -> Int -> CFsBlkCnt -> IO () #

peekByteOff :: Ptr b -> Int -> IO CFsBlkCnt #

pokeByteOff :: Ptr b -> Int -> CFsBlkCnt -> IO () #

peek :: Ptr CFsBlkCnt -> IO CFsBlkCnt #

poke :: Ptr CFsBlkCnt -> CFsBlkCnt -> IO () #

Storable CFsFilCnt |

Instance details

Defined in System.Posix.Types

Methods

sizeOf :: CFsFilCnt -> Int #

alignment :: CFsFilCnt -> Int #

peekElemOff :: Ptr CFsFilCnt -> Int -> IO CFsFilCnt #

pokeElemOff :: Ptr CFsFilCnt -> Int -> CFsFilCnt -> IO () #

peekByteOff :: Ptr b -> Int -> IO CFsFilCnt #

pokeByteOff :: Ptr b -> Int -> CFsFilCnt -> IO () #

peek :: Ptr CFsFilCnt -> IO CFsFilCnt #

poke :: Ptr CFsFilCnt -> CFsFilCnt -> IO () #

Storable CGid |
Instance details Defined in System.Posix.Types Methods sizeOf :: CGid -> Int # alignment :: CGid -> Int # peekElemOff :: Ptr CGid -> Int -> IO CGid # pokeElemOff :: Ptr CGid -> Int -> CGid -> IO () # peekByteOff :: Ptr b -> Int -> IO CGid # pokeByteOff :: Ptr b -> Int -> CGid -> IO () # peek :: Ptr CGid -> IO CGid # poke :: Ptr CGid -> CGid -> IO () #
Storable CId |
Instance details Defined in System.Posix.Types Methods sizeOf :: CId -> Int # alignment :: CId -> Int # peekElemOff :: Ptr CId -> Int -> IO CId # pokeElemOff :: Ptr CId -> Int -> CId -> IO () # peekByteOff :: Ptr b -> Int -> IO CId # pokeByteOff :: Ptr b -> Int -> CId -> IO () # peek :: Ptr CId -> IO CId # poke :: Ptr CId -> CId -> IO () #
Storable CKey |
Instance details Defined in System.Posix.Types Methods sizeOf :: CKey -> Int # alignment :: CKey -> Int # peekElemOff :: Ptr CKey -> Int -> IO CKey # pokeElemOff :: Ptr CKey -> Int -> CKey -> IO () # peekByteOff :: Ptr b -> Int -> IO CKey # pokeByteOff :: Ptr b -> Int -> CKey -> IO () # peek :: Ptr CKey -> IO CKey # poke :: Ptr CKey -> CKey -> IO () #
Storable CNlink |
Instance details Defined in System.Posix.Types Methods sizeOf :: CNlink -> Int # alignment :: CNlink -> Int # peekElemOff :: Ptr CNlink -> Int -> IO CNlink # pokeElemOff :: Ptr CNlink -> Int -> CNlink -> IO () # peekByteOff :: Ptr b -> Int -> IO CNlink # pokeByteOff :: Ptr b -> Int -> CNlink -> IO () # peek :: Ptr CNlink -> IO CNlink # poke :: Ptr CNlink -> CNlink -> IO () #
Storable CRLim |
Instance details Defined in System.Posix.Types Methods sizeOf :: CRLim -> Int # alignment :: CRLim -> Int # peekElemOff :: Ptr CRLim -> Int -> IO CRLim # pokeElemOff :: Ptr CRLim -> Int -> CRLim -> IO () # peekByteOff :: Ptr b -> Int -> IO CRLim # pokeByteOff :: Ptr b -> Int -> CRLim -> IO () # peek :: Ptr CRLim -> IO CRLim # poke :: Ptr CRLim -> CRLim -> IO () #
Storable CSpeed |
Instance details Defined in System.Posix.Types Methods sizeOf :: CSpeed -> Int # alignment :: CSpeed -> Int # peekElemOff :: Ptr CSpeed -> Int -> IO CSpeed # pokeElemOff :: Ptr CSpeed -> Int -> CSpeed -> IO () # peekByteOff :: Ptr b -> Int -> IO CSpeed # pokeByteOff :: Ptr b -> Int -> CSpeed -> IO () # peek :: Ptr CSpeed -> IO CSpeed # poke :: Ptr CSpeed -> CSpeed -> IO () #
Storable CTimer |
Instance details Defined in System.Posix.Types Methods sizeOf :: CTimer -> Int # alignment :: CTimer -> Int # peekElemOff :: Ptr CTimer -> Int -> IO CTimer # pokeElemOff :: Ptr CTimer -> Int -> CTimer -> IO () # peekByteOff :: Ptr b -> Int -> IO CTimer # pokeByteOff :: Ptr b -> Int -> CTimer -> IO () # peek :: Ptr CTimer -> IO CTimer # poke :: Ptr CTimer -> CTimer -> IO () #
Storable CUid |
Instance details Defined in System.Posix.Types Methods sizeOf :: CUid -> Int # alignment :: CUid -> Int # peekElemOff :: Ptr CUid -> Int -> IO CUid # pokeElemOff :: Ptr CUid -> Int -> CUid -> IO () # peekByteOff :: Ptr b -> Int -> IO CUid # pokeByteOff :: Ptr b -> Int -> CUid -> IO () # peek :: Ptr CUid -> IO CUid # poke :: Ptr CUid -> CUid -> IO () #
Storable CTimeVal |

Instance details

Defined in System.Posix.Files.Common

Methods

sizeOf :: CTimeVal -> Int #

alignment :: CTimeVal -> Int #

peekElemOff :: Ptr CTimeVal -> Int -> IO CTimeVal #

pokeElemOff :: Ptr CTimeVal -> Int -> CTimeVal -> IO () #

peekByteOff :: Ptr b -> Int -> IO CTimeVal #

pokeByteOff :: Ptr b -> Int -> CTimeVal -> IO () #

peek :: Ptr CTimeVal -> IO CTimeVal #

poke :: Ptr CTimeVal -> CTimeVal -> IO () #

(Storable a, Integral a) => Storable (Ratio a) |

Instance details

Defined in Foreign.Storable

Methods

sizeOf :: Ratio a -> Int #

alignment :: Ratio a -> Int #

peekElemOff :: Ptr (Ratio a) -> Int -> IO (Ratio a) #

pokeElemOff :: Ptr (Ratio a) -> Int -> Ratio a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Ratio a) #

pokeByteOff :: Ptr b -> Int -> Ratio a -> IO () #

peek :: Ptr (Ratio a) -> IO (Ratio a) #

poke :: Ptr (Ratio a) -> Ratio a -> IO () #

Storable (StablePtr a) |

Instance details

Defined in Foreign.Storable

Methods

sizeOf :: StablePtr a -> Int #

alignment :: StablePtr a -> Int #

peekElemOff :: Ptr (StablePtr a) -> Int -> IO (StablePtr a) #

pokeElemOff :: Ptr (StablePtr a) -> Int -> StablePtr a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (StablePtr a) #

pokeByteOff :: Ptr b -> Int -> StablePtr a -> IO () #

peek :: Ptr (StablePtr a) -> IO (StablePtr a) #

poke :: Ptr (StablePtr a) -> StablePtr a -> IO () #

Storable (Ptr a) |
Instance details Defined in Foreign.Storable Methods sizeOf :: Ptr a -> Int # alignment :: Ptr a -> Int # peekElemOff :: Ptr (Ptr a) -> Int -> IO (Ptr a) # pokeElemOff :: Ptr (Ptr a) -> Int -> Ptr a -> IO () # peekByteOff :: Ptr b -> Int -> IO (Ptr a) # pokeByteOff :: Ptr b -> Int -> Ptr a -> IO () # peek :: Ptr (Ptr a) -> IO (Ptr a) # poke :: Ptr (Ptr a) -> Ptr a -> IO () #
Storable (FunPtr a) |

Instance details

Defined in Foreign.Storable

Methods

sizeOf :: FunPtr a -> Int #

alignment :: FunPtr a -> Int #

peekElemOff :: Ptr (FunPtr a) -> Int -> IO (FunPtr a) #

pokeElemOff :: Ptr (FunPtr a) -> Int -> FunPtr a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (FunPtr a) #

pokeByteOff :: Ptr b -> Int -> FunPtr a -> IO () #

peek :: Ptr (FunPtr a) -> IO (FunPtr a) #

poke :: Ptr (FunPtr a) -> FunPtr a -> IO () #

Storable a => Storable (Identity a) |

Instance details

Defined in Data.Functor.Identity

Methods

sizeOf :: Identity a -> Int #

alignment :: Identity a -> Int #

peekElemOff :: Ptr (Identity a) -> Int -> IO (Identity a) #

pokeElemOff :: Ptr (Identity a) -> Int -> Identity a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Identity a) #

pokeByteOff :: Ptr b -> Int -> Identity a -> IO () #

peek :: Ptr (Identity a) -> IO (Identity a) #

poke :: Ptr (Identity a) -> Identity a -> IO () #

Storable a => Storable (Complex a) |

Instance details

Defined in Data.Complex

Methods

sizeOf :: Complex a -> Int #

alignment :: Complex a -> Int #

peekElemOff :: Ptr (Complex a) -> Int -> IO (Complex a) #

pokeElemOff :: Ptr (Complex a) -> Int -> Complex a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Complex a) #

pokeByteOff :: Ptr b -> Int -> Complex a -> IO () #

peek :: Ptr (Complex a) -> IO (Complex a) #

poke :: Ptr (Complex a) -> Complex a -> IO () #

Storable a => Storable (Const a b) |

Instance details

Defined in Data.Functor.Const

Methods

sizeOf :: Const a b -> Int #

alignment :: Const a b -> Int #

peekElemOff :: Ptr (Const a b) -> Int -> IO (Const a b) #

pokeElemOff :: Ptr (Const a b) -> Int -> Const a b -> IO () #

peekByteOff :: Ptr b0 -> Int -> IO (Const a b) #

pokeByteOff :: Ptr b0 -> Int -> Const a b -> IO () #

peek :: Ptr (Const a b) -> IO (Const a b) #

poke :: Ptr (Const a b) -> Const a b -> IO () #

# Unlifted Foreign.Marshal.Alloc

alloca :: (MonadUnliftIO m, Storable a) => (Ptr a -> m b) -> m b Source #

Unlifted `alloca`.

Since: 0.2.5.0

allocaBytes :: MonadUnliftIO m => Int -> (Ptr a -> m b) -> m b Source #

Unlifted `allocaBytes`.

Since: 0.2.5.0

allocaBytesAligned :: MonadUnliftIO m => Int -> Int -> (Ptr a -> m b) -> m b Source #

Unlifted `allocaBytesAligned`.

Since: 0.2.5.0

malloc :: (MonadIO m, Storable a) => m (Ptr a) Source #

Lifted `malloc`.

Since: 0.2.5.0

mallocBytes :: MonadIO m => Int -> m (Ptr a) Source #

Lifted `mallocBytes`.

Since: 0.2.5.0

calloc :: (MonadIO m, Storable a) => m (Ptr a) Source #

Lifted `calloc`.

Since: 0.2.5.0

callocBytes :: MonadIO m => Int -> m (Ptr a) Source #

Lifted `callocBytes`.

Since: 0.2.5.0

realloc :: (MonadIO m, Storable b) => Ptr a -> m (Ptr b) Source #

Lifted `realloc`.

Since: 0.2.5.0

reallocBytes :: MonadIO m => Ptr a -> Int -> m (Ptr a) Source #

Lifted `reallocBytes`.

Since: 0.2.5.0

free :: MonadIO m => Ptr a -> m () Source #

Lifted `free`.

Since: 0.2.5.0

finalizerFree :: FinalizerPtr a #

# Unlifted Foreign.Marshal.Array

mallocArray :: (MonadIO m, Storable a) => Int -> m (Ptr a) Source #

Lifted `mallocArray`.

Since: 0.2.5.0

mallocArray0 :: (MonadIO m, Storable a) => Int -> m (Ptr a) Source #

Lifted `mallocArray0`.

Since: 0.2.5.0

allocaArray :: (MonadUnliftIO m, Storable a) => Int -> (Ptr a -> m b) -> m b Source #

Unlifted `allocaArray`.

Since: 0.2.5.0

allocaArray0 :: (MonadUnliftIO m, Storable a) => Int -> (Ptr a -> m b) -> m b Source #

Unlifted `allocaArray0`.

Since: 0.2.5.0

reallocArray :: (MonadIO m, Storable a) => Ptr a -> Int -> m (Ptr a) Source #

Lifted `reallocArray`.

Since: 0.2.5.0

reallocArray0 :: (MonadIO m, Storable a) => Ptr a -> Int -> m (Ptr a) Source #

Lifted `reallocArray0`.

Since: 0.2.5.0

callocArray :: (MonadIO m, Storable a) => Int -> m (Ptr a) Source #

Lifted `callocArray`.

Since: 0.2.5.0

callocArray0 :: (MonadIO m, Storable a) => Int -> m (Ptr a) Source #

Lifted `callocArray0`.

Since: 0.2.5.0

peekArray :: (MonadIO m, Storable a) => Int -> Ptr a -> m [a] Source #

Lifted `peekArray`.

Since: 0.2.5.0

peekArray0 :: (MonadIO m, Storable a, Eq a) => a -> Ptr a -> m [a] Source #

Lifted `peekArray0`.

Since: 0.2.5.0

pokeArray :: (MonadIO m, Storable a) => Ptr a -> [a] -> m () Source #

Lifted `pokeArray`.

Since: 0.2.5.0

pokeArray0 :: (MonadIO m, Storable a) => a -> Ptr a -> [a] -> m () Source #

Lifted `pokeArray0`.

Since: 0.2.5.0

newArray :: (MonadIO m, Storable a) => [a] -> m (Ptr a) Source #

Lifted `newArray`.

Since: 0.2.5.0

newArray0 :: (MonadIO m, Storable a) => a -> [a] -> m (Ptr a) Source #

Lifted `newArray0`

Since: 0.2.5.0

withArray :: (MonadUnliftIO m, Storable a) => [a] -> (Ptr a -> m b) -> m b Source #

Unlifted `withArray`.

Since: 0.2.5.0

withArray0 :: (MonadUnliftIO m, Storable a) => a -> [a] -> (Ptr a -> m b) -> m b Source #

Unlifted `withArray0`.

Since: 0.2.5.0

withArrayLen :: (MonadUnliftIO m, Storable a) => [a] -> (Int -> Ptr a -> m b) -> m b Source #

Unlifted `withArrayLen`.

Since: 0.2.5.0

withArrayLen0 :: (MonadUnliftIO m, Storable a) => a -> [a] -> (Int -> Ptr a -> m b) -> m b Source #

Unlifted `withArrayLen0`.

Since: 0.2.5.0

copyArray :: (MonadIO m, Storable a) => Ptr a -> Ptr a -> Int -> m () Source #

Lifted `copyArray`.

Since: 0.2.5.0

moveArray :: (MonadIO m, Storable a) => Ptr a -> Ptr a -> Int -> m () Source #

Lifted `moveArray`.

Since: 0.2.5.0

lengthArray0 :: (MonadIO m, Storable a, Eq a) => a -> Ptr a -> m Int Source #

Lifted `lengthArray0`.

Since: 0.2.5.0

advancePtr :: Storable a => Ptr a -> Int -> Ptr a #

# Unlifted Foreign.Marshal.Error

throwIf :: MonadUnliftIO m => (a -> Bool) -> (a -> String) -> m a -> m a Source #

Unlifted `throwIf`.

Since: 0.2.5.0

throwIf_ :: MonadUnliftIO m => (a -> Bool) -> (a -> String) -> m a -> m () Source #

Unlifted `throwIf_`.

Since: 0.2.5.0

throwIfNeg :: (MonadUnliftIO m, Ord a, Num a) => (a -> String) -> m a -> m a Source #

Unlifted `throwIfNeg`.

Since: 0.2.5.0

throwIfNeg_ :: (MonadUnliftIO m, Ord a, Num a) => (a -> String) -> m a -> m () Source #

Unlifted `throwIfNeg_`.

Since: 0.2.5.0

throwIfNull :: MonadUnliftIO m => String -> m (Ptr a) -> m (Ptr a) Source #

Unlifted `throwIfNull`.

Since: 0.2.5.0

# Unlifted Foreign.Marshal.Pool

data Pool #

newPool :: MonadIO m => m Pool Source #

Lifted `newPool`.

Since: 0.2.5.0

freePool :: MonadIO m => Pool -> m () Source #

Lifted `freePool`.

Since: 0.2.5.0

withPool :: MonadUnliftIO m => (Pool -> m b) -> m b Source #

Unlifted `withPool`.

Since: 0.2.5.0

pooledMalloc :: (MonadIO m, Storable a) => Pool -> m (Ptr a) Source #

Lifted `pooledMalloc`.

Since: 0.2.5.0

pooledMallocBytes :: MonadIO m => Pool -> Int -> m (Ptr a) Source #

Lifted `pooledMallocBytes`.

Since: 0.2.5.0

pooledRealloc :: (MonadIO m, Storable a) => Pool -> Ptr a -> m (Ptr a) Source #

Lifted `pooledRealloc`.

Since: 0.2.5.0

pooledReallocBytes :: MonadIO m => Pool -> Ptr a -> Int -> m (Ptr a) Source #

Lifted `pooledReallocBytes`.

Since: 0.2.5.0

pooledMallocArray :: (MonadIO m, Storable a) => Pool -> Int -> m (Ptr a) Source #

Lifted `pooledMallocArray`.

Since: 0.2.5.0

pooledMallocArray0 :: (MonadIO m, Storable a) => Pool -> Int -> m (Ptr a) Source #

Lifted `pooledMallocArray0`.

Since: 0.2.5.0

pooledReallocArray :: (MonadIO m, Storable a) => Pool -> Ptr a -> Int -> m (Ptr a) Source #

Lifted `pooledReallocArray`.

Since: 0.2.5.0

pooledReallocArray0 :: (MonadIO m, Storable a) => Pool -> Ptr a -> Int -> m (Ptr a) Source #

Lifted `pooledReallocArray0`.

Since: 0.2.5.0

pooledNew :: (MonadIO m, Storable a) => Pool -> a -> m (Ptr a) Source #

Lifted `pooledNew`.

Since: 0.2.5.0

pooledNewArray :: (MonadIO m, Storable a) => Pool -> [a] -> m (Ptr a) Source #

Lifted `pooledNewArray`.

Since: 0.2.5.0

pooledNewArray0 :: (MonadIO m, Storable a) => Pool -> a -> [a] -> m (Ptr a) Source #

Lifted `pooledNewArray0`.

Since: 0.2.5.0

# Unlifted Foreign.Marshal.Utils

with :: (MonadUnliftIO m, Storable a) => a -> (Ptr a -> m b) -> m b Source #

Unlifted `with`.

Since: 0.2.5.0

new :: (MonadIO m, Storable a) => a -> m (Ptr a) Source #

Lifted `new`.

Since: 0.2.5.0

fromBool :: Num a => Bool -> a #

toBool :: (Eq a, Num a) => a -> Bool #

maybeNew :: MonadIO m => (a -> m (Ptr b)) -> Maybe a -> m (Ptr b) Source #

Lifted `maybeNew`.

Since: 0.2.5.0

maybeWith :: MonadIO m => (a -> (Ptr b -> m c) -> m c) -> Maybe a -> (Ptr b -> m c) -> m c Source #

Lifted `maybeWith`.

Since: 0.2.5.0

maybePeek :: MonadUnliftIO m => (Ptr a -> m b) -> Ptr a -> m (Maybe b) Source #

Unlifted `maybePeek`.

Since: 0.2.5.0

withMany :: (a -> (b -> res) -> res) -> [a] -> ([b] -> res) -> res #

copyBytes :: MonadIO m => Ptr a -> Ptr a -> Int -> m () Source #

Lifted `copyBytes`.

Since: 0.2.5.0

moveBytes :: MonadIO m => Ptr a -> Ptr a -> Int -> m () Source #

Lifted `moveBytes`.

Since: 0.2.5.0

fillBytes :: MonadIO m => Ptr a -> Word8 -> Int -> m () Source #

Lifted `fillBytes`.

Since: 0.2.5.0