]> gitweb @ CieloNegro.org - bindings-apr.git/blob - Bindings/APR/MMap.hsc
de1d94d2b11d60ddf4c65131199f09812a64574c
[bindings-apr.git] / Bindings / APR / MMap.hsc
1 #include <bindings.dsl.h>
2 #include <apr_mmap.h>
3 #include "bindings.apr.ring.h"
4
5 module Bindings.APR.MMap where
6 #strict_import
7 import Bindings.APR
8 import Bindings.APR.ErrNo
9 import Bindings.APR.Pools
10 import Bindings.APR.File.Types
11
12 #num APR_MMAP_READ
13 #num APR_MMAP_WRITE
14
15 #starttype struct apr_mmap_t
16 #  field cntxt    , Ptr <apr_pool_t>
17 #  field mm       , Ptr ()
18 #  field size     , <apr_size_t>
19 #  apr_ring_entry_field link, <apr_mmap_t>
20 #stoptype
21
22 #if APR_HAS_MMAP
23
24 #num APR_MMAP_THRESHOLD
25 #num APR_MMAP_LIMIT
26
27 #cinline APR_MMAP_CANDIDATE, <apr_off_t> -> IO CInt
28
29 #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>
30 #ccall apr_mmap_dup   , Ptr (Ptr <apr_mmap_t>) -> Ptr <apr_mmap_t> -> Ptr <apr_pool_t> -> IO <apr_status_t>
31 #ccall apr_mmap_delete, Ptr <apr_mmap_t> -> IO <apr_status_t>
32 #ccall apr_mmap_offset, Ptr (Ptr ()) -> Ptr <apr_mmap_t> -> <apr_off_t> -> IO <apr_status_t>
33
34 #endif