--- /dev/null
+#include <bindings.dsl.h>
+#include <apr_rmm.h>
+
+module Bindings.APR.RMM where
+#strict_import
+import Bindings.APR
+import Bindings.APR.AnyLock
+import Bindings.APR.ErrNo
+import Bindings.APR.Pools
+
+#opaque_t apr_rmm_t
+#integral_t apr_rmm_off_t
+
+#ccall apr_rmm_init , Ptr (Ptr <apr_rmm_t>) -> Ptr <apr_anylock_t> -> Ptr () -> <apr_size_t> -> Ptr <apr_pool_t> -> IO <apr_status_t>
+#ccall apr_rmm_destroy , Ptr <apr_rmm_t> -> IO <apr_status_t>
+#ccall apr_rmm_attach , Ptr (Ptr <apr_rmm_t>) -> Ptr <apr_anylock_t> -> Ptr () -> Ptr <apr_pool_t> -> IO <apr_status_t>
+#ccall apr_rmm_detach , Ptr <apr_rmm_t> -> IO <apr_status_t>
+#ccall apr_rmm_malloc , Ptr <apr_rmm_t> -> <apr_size_t> -> IO <apr_rmm_off_t>
+#ccall apr_rmm_realloc , Ptr <apr_rmm_t> -> Ptr () -> <apr_size_t> -> IO <apr_rmm_off_t>
+#ccall apr_rmm_calloc , Ptr <apr_rmm_t> -> <apr_size_t> -> IO <apr_rmm_off_t>
+#ccall apr_rmm_free , Ptr <apr_rmm_t> -> <apr_rmm_off_t> -> IO <apr_status_t>
+#ccall apr_rmm_addr_get, Ptr <apr_rmm_t> -> <apr_rmm_off_t> -> IO (Ptr ())
+#ccall apr_rmm_offset_get , Ptr <apr_rmm_t> -> Ptr () -> IO <apr_rmm_off_t>
+#ccall apr_rmm_overhead_get, CInt -> IO <apr_size_t>