packages feed

bindings-apr-0.1: Bindings/APR/MMap.hsc

#include <bindings.dsl.h>
#include <apr_mmap.h>
#include "bindings.apr.ring.h"

module Bindings.APR.MMap where
#strict_import
import Bindings.APR
import Bindings.APR.ErrNo
import Bindings.APR.Pools
import Bindings.APR.File.Types

#num APR_MMAP_READ
#num APR_MMAP_WRITE

#starttype struct apr_mmap_t
#  field cntxt    , Ptr <apr_pool_t>
#  field mm       , Ptr ()
#  field size     , <apr_size_t>
#  apr_ring_entry_field link, <apr_mmap_t>
#stoptype

#if APR_HAS_MMAP

#num APR_MMAP_THRESHOLD
#num APR_MMAP_LIMIT

#cinline APR_MMAP_CANDIDATE, <apr_off_t> -> IO CInt

#ccall apr_mmap_create, Ptr (Ptr <apr_mmap_t>) -> Ptr <apr_file_t> -> <apr_off_t> -> <apr_size_t> -> <apr_int32_t> -> Ptr <apr_pool_t> -> IO <apr_status_t>
#ccall apr_mmap_dup   , Ptr (Ptr <apr_mmap_t>) -> Ptr <apr_mmap_t> -> Ptr <apr_pool_t> -> IO <apr_status_t>
#ccall apr_mmap_delete, Ptr <apr_mmap_t> -> IO <apr_status_t>
#ccall apr_mmap_offset, Ptr (Ptr ()) -> Ptr <apr_mmap_t> -> <apr_off_t> -> IO <apr_status_t>

#endif