lmdb_sys/
ffi.rs

1/* automatically generated by rust-bindgen and modified by hand */
2
3pub enum MDB_env { }
4pub enum MDB_txn { }
5pub type MDB_dbi = ::libc::c_uint;
6pub enum MDB_cursor { }
7
8#[repr(C)]
9pub struct MDB_val {
10    pub mv_size: ::libc::size_t,
11    pub mv_data: *mut ::libc::c_void,
12}
13
14pub type MDB_cmp_func = extern "C" fn(a: *const MDB_val, b: *const MDB_val) -> ::libc::c_int;
15pub type MDB_rel_func = extern "C" fn (item: *mut MDB_val, oldptr: *mut ::libc::c_void, newptr: *mut ::libc::c_void, relctx: *mut ::libc::c_void) -> ();
16
17pub const MDB_FIRST: ::libc::c_uint = 0;
18pub const MDB_FIRST_DUP: ::libc::c_uint = 1;
19pub const MDB_GET_BOTH: ::libc::c_uint = 2;
20pub const MDB_GET_BOTH_RANGE: ::libc::c_uint = 3;
21pub const MDB_GET_CURRENT: ::libc::c_uint = 4;
22pub const MDB_GET_MULTIPLE: ::libc::c_uint = 5;
23pub const MDB_LAST: ::libc::c_uint = 6;
24pub const MDB_LAST_DUP: ::libc::c_uint = 7;
25pub const MDB_NEXT: ::libc::c_uint = 8;
26pub const MDB_NEXT_DUP: ::libc::c_uint = 9;
27pub const MDB_NEXT_MULTIPLE: ::libc::c_uint = 10;
28pub const MDB_NEXT_NODUP: ::libc::c_uint = 11;
29pub const MDB_PREV: ::libc::c_uint = 12;
30pub const MDB_PREV_DUP: ::libc::c_uint = 13;
31pub const MDB_PREV_NODUP: ::libc::c_uint = 14;
32pub const MDB_SET: ::libc::c_uint = 15;
33pub const MDB_SET_KEY: ::libc::c_uint = 16;
34pub const MDB_SET_RANGE: ::libc::c_uint = 17;
35pub type MDB_cursor_op = ::libc::c_uint;
36
37#[repr(C)]
38#[derive(Clone, Copy)]
39pub struct MDB_stat {
40    pub ms_psize: ::libc::c_uint,
41    pub ms_depth: ::libc::c_uint,
42    pub ms_branch_pages: ::libc::size_t,
43    pub ms_leaf_pages: ::libc::size_t,
44    pub ms_overflow_pages: ::libc::size_t,
45    pub ms_entries: ::libc::size_t,
46}
47
48#[repr(C)]
49pub struct MDB_envinfo {
50    pub me_mapaddr: *mut ::libc::c_void,
51    pub me_mapsize: ::libc::size_t,
52    pub me_last_pgno: ::libc::size_t,
53    pub me_last_txnid: ::libc::size_t,
54    pub me_maxreaders: ::libc::c_uint,
55    pub me_numreaders: ::libc::c_uint,
56}
57
58pub type MDB_assert_func = extern "C" fn(env: *mut MDB_env, msg: *const ::libc::c_char) -> ();
59pub type MDB_msg_func = extern "C" fn(msg: *const ::libc::c_char, ctx: *mut ::libc::c_void) -> ::libc::c_int;
60
61extern "C" {
62    pub fn mdb_version(major: *mut ::libc::c_int, minor: *mut ::libc::c_int, patch: *mut ::libc::c_int) -> *mut ::libc::c_char;
63    pub fn mdb_strerror(err: ::libc::c_int) -> *mut ::libc::c_char;
64    pub fn mdb_env_create(env: *mut *mut MDB_env) -> ::libc::c_int;
65    pub fn mdb_env_open(env: *mut MDB_env, path: *const ::libc::c_char, flags: ::libc::c_uint, mode: super::mode_t) -> ::libc::c_int;
66    pub fn mdb_env_copy(env: *mut MDB_env, path: *const ::libc::c_char) -> ::libc::c_int;
67    pub fn mdb_env_copyfd(env: *mut MDB_env, fd: ::libc::c_int) -> ::libc::c_int;
68    pub fn mdb_env_copy2(env: *mut MDB_env, path: *const ::libc::c_char, flags: ::libc::c_uint) -> ::libc::c_int;
69    pub fn mdb_env_copyfd2(env: *mut MDB_env, fd: ::libc::c_int, flags: ::libc::c_uint) -> ::libc::c_int;
70    pub fn mdb_env_stat(env: *mut MDB_env, stat: *mut MDB_stat) -> ::libc::c_int;
71    pub fn mdb_env_info(env: *mut MDB_env, stat: *mut MDB_envinfo) -> ::libc::c_int;
72    pub fn mdb_env_sync(env: *mut MDB_env, force: ::libc::c_int) -> ::libc::c_int;
73    pub fn mdb_env_close(env: *mut MDB_env) -> ();
74    pub fn mdb_env_set_flags(env: *mut MDB_env, flags: ::libc::c_uint, onoff: ::libc::c_int) -> ::libc::c_int;
75    pub fn mdb_env_get_flags(env: *mut MDB_env, flags: *mut ::libc::c_uint) -> ::libc::c_int;
76    pub fn mdb_env_get_path(env: *mut MDB_env, path: *mut *const ::libc::c_char) -> ::libc::c_int;
77    pub fn mdb_env_get_fd(env: *mut MDB_env, fd: *mut ::libc::c_int) -> ::libc::c_int;
78    pub fn mdb_env_set_mapsize(env: *mut MDB_env, size: ::libc::size_t) -> ::libc::c_int;
79    pub fn mdb_env_set_maxreaders(env: *mut MDB_env, readers: ::libc::c_uint) -> ::libc::c_int;
80    pub fn mdb_env_get_maxreaders(env: *mut MDB_env, readers: *mut ::libc::c_uint) -> ::libc::c_int;
81    pub fn mdb_env_set_maxdbs(env: *mut MDB_env, dbs: MDB_dbi) -> ::libc::c_int;
82    pub fn mdb_env_get_maxkeysize(env: *mut MDB_env) -> ::libc::c_int;
83    pub fn mdb_env_set_userctx(env: *mut MDB_env, ctx: *mut ::libc::c_void) -> ::libc::c_int;
84    pub fn mdb_env_get_userctx(env: *mut MDB_env) -> *mut ::libc::c_void;
85    pub fn mdb_env_set_assert(env: *mut MDB_env, func: *mut ::std::option::Option<extern "C" fn() -> ()>) -> ::libc::c_int;
86    pub fn mdb_txn_begin(env: *mut MDB_env, parent: *mut MDB_txn, flags: ::libc::c_uint, txn: *mut *mut MDB_txn) -> ::libc::c_int;
87    pub fn mdb_txn_env(txn: *mut MDB_txn) -> *mut MDB_env;
88    pub fn mdb_txn_id(txn: *mut MDB_txn) -> ::libc::size_t;
89    pub fn mdb_txn_commit(txn: *mut MDB_txn) -> ::libc::c_int;
90    pub fn mdb_txn_abort(txn: *mut MDB_txn) -> ();
91    pub fn mdb_txn_reset(txn: *mut MDB_txn) -> ();
92    pub fn mdb_txn_renew(txn: *mut MDB_txn) -> ::libc::c_int;
93    pub fn mdb_dbi_open(txn: *mut MDB_txn, name: *const ::libc::c_char, flags: ::libc::c_uint, dbi: *mut MDB_dbi) -> ::libc::c_int;
94    pub fn mdb_stat(txn: *mut MDB_txn, dbi: MDB_dbi, stat: *mut MDB_stat) -> ::libc::c_int;
95    pub fn mdb_dbi_flags(txn: *mut MDB_txn, dbi: MDB_dbi, flags: *mut ::libc::c_uint) -> ::libc::c_int;
96    pub fn mdb_dbi_close(env: *mut MDB_env, dbi: MDB_dbi) -> ();
97    pub fn mdb_drop(txn: *mut MDB_txn, dbi: MDB_dbi, del: ::libc::c_int) -> ::libc::c_int;
98    pub fn mdb_set_compare(txn: *mut MDB_txn, dbi: MDB_dbi, cmp: *mut MDB_cmp_func) -> ::libc::c_int;
99    pub fn mdb_set_dupsort(txn: *mut MDB_txn, dbi: MDB_dbi, cmp: *mut MDB_cmp_func) -> ::libc::c_int;
100    pub fn mdb_set_relfunc(txn: *mut MDB_txn, dbi: MDB_dbi, rel: *mut MDB_rel_func) -> ::libc::c_int;
101    pub fn mdb_set_relctx(txn: *mut MDB_txn, dbi: MDB_dbi, ctx: *mut ::libc::c_void) -> ::libc::c_int;
102    pub fn mdb_get(txn: *mut MDB_txn, dbi: MDB_dbi, key: *mut MDB_val, data: *mut MDB_val) -> ::libc::c_int;
103    pub fn mdb_put(txn: *mut MDB_txn, dbi: MDB_dbi, key: *mut MDB_val, data: *mut MDB_val, flags: ::libc::c_uint) -> ::libc::c_int;
104    pub fn mdb_del(txn: *mut MDB_txn, dbi: MDB_dbi, key: *mut MDB_val, data: *mut MDB_val) -> ::libc::c_int;
105    pub fn mdb_cursor_open(txn: *mut MDB_txn, dbi: MDB_dbi, cursor: *mut *mut MDB_cursor) -> ::libc::c_int;
106    pub fn mdb_cursor_close(cursor: *mut MDB_cursor) -> ();
107    pub fn mdb_cursor_renew(txn: *mut MDB_txn, cursor: *mut MDB_cursor) -> ::libc::c_int;
108    pub fn mdb_cursor_txn(cursor: *mut MDB_cursor) -> *mut MDB_txn;
109    pub fn mdb_cursor_dbi(cursor: *mut MDB_cursor) -> MDB_dbi;
110    pub fn mdb_cursor_get(cursor: *mut MDB_cursor, key: *mut MDB_val, data: *mut MDB_val, op: MDB_cursor_op) -> ::libc::c_int;
111    pub fn mdb_cursor_put(cursor: *mut MDB_cursor, key: *mut MDB_val, data: *mut MDB_val, flags: ::libc::c_uint) -> ::libc::c_int;
112    pub fn mdb_cursor_del(cursor: *mut MDB_cursor, flags: ::libc::c_uint) -> ::libc::c_int;
113    pub fn mdb_cursor_count(cursor: *mut MDB_cursor, countp: *mut ::libc::size_t) -> ::libc::c_int;
114    pub fn mdb_cmp(txn: *mut MDB_txn, dbi: MDB_dbi, a: *const MDB_val, b: *const MDB_val) -> ::libc::c_int;
115    pub fn mdb_dcmp(txn: *mut MDB_txn, dbi: MDB_dbi, a: *const MDB_val, b: *const MDB_val) -> ::libc::c_int;
116    pub fn mdb_reader_list(env: *mut MDB_env, func: *mut MDB_msg_func, ctx: *mut ::libc::c_void) -> ::libc::c_int;
117    pub fn mdb_reader_check(env: *mut MDB_env, dead: *mut ::libc::c_int) -> ::libc::c_int;
118}