base-compat-0.13.1: A compatibility layer for base
Safe HaskellTrustworthy
LanguageHaskell2010

Foreign.ForeignPtr.Safe.Compat

Synopsis

Finalised data pointers

data ForeignPtr a #

Instances

Instances details
Show (ForeignPtr a) 
Instance details

Defined in GHC.ForeignPtr

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

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

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

Basic operations

newForeignPtr_ :: Ptr a -> IO (ForeignPtr a) #

newForeignPtrEnv :: FinalizerEnvPtr env a -> Ptr env -> Ptr a -> IO (ForeignPtr a) #

withForeignPtr :: ForeignPtr a -> (Ptr a -> IO b) -> IO b #

Low-level operations

Allocating managed memory

mallocForeignPtr :: Storable a => IO (ForeignPtr a) #

mallocForeignPtrArray :: Storable a => Int -> IO (ForeignPtr a) #

mallocForeignPtrArray0 :: Storable a => Int -> IO (ForeignPtr a) #