|
| Foreign.Marshal.Alloc | | Portability | portable | | Stability | provisional | | Maintainer | ffi@haskell.org |
|
|
|
|
| Contents |
- Allocation
|
|
| Description |
| Marshalling support: basic routines for memory allocation
|
|
| Synopsis |
|
|
|
|
| Allocation |
|
| malloc :: (Storable a) => IO (Ptr a) |
| Allocate space for storable type. The size of the area allocated
is determined by the sizeOf method from the instance of
Storable for the appropriate type.
|
|
| mallocBytes :: Int -> IO (Ptr a) |
| Allocate given number of bytes of storage, equivalent to C's malloc().
|
|
| alloca :: (Storable a) => (Ptr a -> IO b) -> IO b |
Temporarily allocate space for a storable type. - the pointer passed as an argument to the function must not escape from
this function; in other words, in alloca f the allocated storage must
not be used after f returns
|
|
| allocaBytes :: Int -> (Ptr a -> IO b) -> IO b |
Temporarily allocate the given number of bytes of storage. - the pointer passed as an argument to the function must not escape from
this function; in other words, in allocaBytes n f the allocated storage
must not be used after f returns
|
|
| realloc :: (Storable b) => Ptr a -> IO (Ptr b) |
| Adjust a malloc'ed storage area to the given size of the required type
(corresponds to C's realloc()).
|
|
| reallocBytes :: Ptr a -> Int -> IO (Ptr a) |
| Adjust a malloc'ed storage area to the given size (equivalent to
C's realloc()).
|
|
| free :: Ptr a -> IO () |
| Free malloc'ed storage (equivalent to
C's free())
|
|
| finalizerFree :: FinalizerPtr a |
| A pointer to a foreign function equivalent to free, which may be used
as a finalizer for storage allocated with malloc or mallocBytes. |
|
| Produced by Haddock version 0.4 |