sqlite3/
ffi.rs

1/* automatically generated by rust-bindgen */
2
3pub type __int128_t = ::libc::c_void;
4pub type __uint128_t = ::libc::c_void;
5pub type __builtin_va_list = [__va_list_tag; 1];
6pub type __gnuc_va_list = __builtin_va_list;
7pub type va_list = __gnuc_va_list;
8pub enum Struct_sqlite3 { }
9pub type sqlite3 = Struct_sqlite3;
10pub type sqlite_int64 = ::libc::c_longlong;
11pub type sqlite_uint64 = ::libc::c_ulonglong;
12pub type sqlite3_int64 = sqlite_int64;
13pub type sqlite3_uint64 = sqlite_uint64;
14pub type sqlite3_callback =
15    ::std::option::Option<extern "C" fn
16                              (arg1: *mut ::libc::c_void, arg2: ::libc::c_int,
17                               arg3: *mut *mut ::libc::c_char,
18                               arg4: *mut *mut ::libc::c_char)
19                              -> ::libc::c_int>;
20pub type sqlite3_file = Struct_sqlite3_file;
21#[repr(C)]
22pub struct Struct_sqlite3_file {
23    pub pMethods: *const Struct_sqlite3_io_methods,
24}
25pub type sqlite3_io_methods = Struct_sqlite3_io_methods;
26#[repr(C)]
27pub struct Struct_sqlite3_io_methods {
28    pub iVersion: ::libc::c_int,
29    pub xClose: ::std::option::Option<extern "C" fn(arg1: *mut sqlite3_file)
30                                          -> ::libc::c_int>,
31    pub xRead: ::std::option::Option<extern "C" fn
32                                         (arg1: *mut sqlite3_file,
33                                          arg2: *mut ::libc::c_void,
34                                          arg3: ::libc::c_int,
35                                          arg4: sqlite3_int64)
36                                         -> ::libc::c_int>,
37    pub xWrite: ::std::option::Option<extern "C" fn
38                                          (arg1: *mut sqlite3_file,
39                                           arg2: *const ::libc::c_void,
40                                           arg3: ::libc::c_int,
41                                           arg4: sqlite3_int64)
42                                          -> ::libc::c_int>,
43    pub xTruncate: ::std::option::Option<extern "C" fn
44                                             (arg1: *mut sqlite3_file,
45                                              arg2: sqlite3_int64)
46                                             -> ::libc::c_int>,
47    pub xSync: ::std::option::Option<extern "C" fn
48                                         (arg1: *mut sqlite3_file,
49                                          arg2: ::libc::c_int)
50                                         -> ::libc::c_int>,
51    pub xFileSize: ::std::option::Option<extern "C" fn
52                                             (arg1: *mut sqlite3_file,
53                                              arg2: *mut sqlite3_int64)
54                                             -> ::libc::c_int>,
55    pub xLock: ::std::option::Option<extern "C" fn
56                                         (arg1: *mut sqlite3_file,
57                                          arg2: ::libc::c_int)
58                                         -> ::libc::c_int>,
59    pub xUnlock: ::std::option::Option<extern "C" fn
60                                           (arg1: *mut sqlite3_file,
61                                            arg2: ::libc::c_int)
62                                           -> ::libc::c_int>,
63    pub xCheckReservedLock: ::std::option::Option<extern "C" fn
64                                                      (arg1:
65                                                           *mut sqlite3_file,
66                                                       arg2:
67                                                           *mut ::libc::c_int)
68                                                      -> ::libc::c_int>,
69    pub xFileControl: ::std::option::Option<extern "C" fn
70                                                (arg1: *mut sqlite3_file,
71                                                 arg2: ::libc::c_int,
72                                                 arg3: *mut ::libc::c_void)
73                                                -> ::libc::c_int>,
74    pub xSectorSize: ::std::option::Option<extern "C" fn
75                                               (arg1: *mut sqlite3_file)
76                                               -> ::libc::c_int>,
77    pub xDeviceCharacteristics: ::std::option::Option<extern "C" fn
78                                                          (arg1:
79                                                               *mut sqlite3_file)
80                                                          -> ::libc::c_int>,
81    pub xShmMap: ::std::option::Option<extern "C" fn
82                                           (arg1: *mut sqlite3_file,
83                                            arg2: ::libc::c_int,
84                                            arg3: ::libc::c_int,
85                                            arg4: ::libc::c_int,
86                                            arg5: *mut *mut ::libc::c_void)
87                                           -> ::libc::c_int>,
88    pub xShmLock: ::std::option::Option<extern "C" fn
89                                            (arg1: *mut sqlite3_file,
90                                             arg2: ::libc::c_int,
91                                             arg3: ::libc::c_int,
92                                             arg4: ::libc::c_int)
93                                            -> ::libc::c_int>,
94    pub xShmBarrier: ::std::option::Option<extern "C" fn
95                                               (arg1: *mut sqlite3_file)>,
96    pub xShmUnmap: ::std::option::Option<extern "C" fn
97                                             (arg1: *mut sqlite3_file,
98                                              arg2: ::libc::c_int)
99                                             -> ::libc::c_int>,
100    pub xFetch: ::std::option::Option<extern "C" fn
101                                          (arg1: *mut sqlite3_file,
102                                           arg2: sqlite3_int64,
103                                           arg3: ::libc::c_int,
104                                           arg4: *mut *mut ::libc::c_void)
105                                          -> ::libc::c_int>,
106    pub xUnfetch: ::std::option::Option<extern "C" fn
107                                            (arg1: *mut sqlite3_file,
108                                             arg2: sqlite3_int64,
109                                             arg3: *mut ::libc::c_void)
110                                            -> ::libc::c_int>,
111}
112pub enum Struct_sqlite3_mutex { }
113pub type sqlite3_mutex = Struct_sqlite3_mutex;
114pub type sqlite3_vfs = Struct_sqlite3_vfs;
115pub type sqlite3_syscall_ptr = ::std::option::Option<extern "C" fn()>;
116#[repr(C)]
117pub struct Struct_sqlite3_vfs {
118    pub iVersion: ::libc::c_int,
119    pub szOsFile: ::libc::c_int,
120    pub mxPathname: ::libc::c_int,
121    pub pNext: *mut sqlite3_vfs,
122    pub zName: *const ::libc::c_char,
123    pub pAppData: *mut ::libc::c_void,
124    pub xOpen: ::std::option::Option<extern "C" fn
125                                         (arg1: *mut sqlite3_vfs,
126                                          arg2: *const ::libc::c_char,
127                                          arg3: *mut sqlite3_file,
128                                          arg4: ::libc::c_int,
129                                          arg5: *mut ::libc::c_int)
130                                         -> ::libc::c_int>,
131    pub xDelete: ::std::option::Option<extern "C" fn
132                                           (arg1: *mut sqlite3_vfs,
133                                            arg2: *const ::libc::c_char,
134                                            arg3: ::libc::c_int)
135                                           -> ::libc::c_int>,
136    pub xAccess: ::std::option::Option<extern "C" fn
137                                           (arg1: *mut sqlite3_vfs,
138                                            arg2: *const ::libc::c_char,
139                                            arg3: ::libc::c_int,
140                                            arg4: *mut ::libc::c_int)
141                                           -> ::libc::c_int>,
142    pub xFullPathname: ::std::option::Option<extern "C" fn
143                                                 (arg1: *mut sqlite3_vfs,
144                                                  arg2: *const ::libc::c_char,
145                                                  arg3: ::libc::c_int,
146                                                  arg4: *mut ::libc::c_char)
147                                                 -> ::libc::c_int>,
148    pub xDlOpen: ::std::option::Option<extern "C" fn
149                                           (arg1: *mut sqlite3_vfs,
150                                            arg2: *const ::libc::c_char)
151                                           -> *mut ::libc::c_void>,
152    pub xDlError: ::std::option::Option<extern "C" fn
153                                            (arg1: *mut sqlite3_vfs,
154                                             arg2: ::libc::c_int,
155                                             arg3: *mut ::libc::c_char)>,
156    pub xDlSym: ::std::option::Option<extern "C" fn
157                                          (arg1: *mut sqlite3_vfs,
158                                           arg2: *mut ::libc::c_void,
159                                           arg3: *const ::libc::c_char)
160                                          ->
161                                              ::std::option::Option<extern "C" fn
162                                                                        ()>>,
163    pub xDlClose: ::std::option::Option<extern "C" fn
164                                            (arg1: *mut sqlite3_vfs,
165                                             arg2: *mut ::libc::c_void)>,
166    pub xRandomness: ::std::option::Option<extern "C" fn
167                                               (arg1: *mut sqlite3_vfs,
168                                                arg2: ::libc::c_int,
169                                                arg3: *mut ::libc::c_char)
170                                               -> ::libc::c_int>,
171    pub xSleep: ::std::option::Option<extern "C" fn
172                                          (arg1: *mut sqlite3_vfs,
173                                           arg2: ::libc::c_int)
174                                          -> ::libc::c_int>,
175    pub xCurrentTime: ::std::option::Option<extern "C" fn
176                                                (arg1: *mut sqlite3_vfs,
177                                                 arg2: *mut ::libc::c_double)
178                                                -> ::libc::c_int>,
179    pub xGetLastError: ::std::option::Option<extern "C" fn
180                                                 (arg1: *mut sqlite3_vfs,
181                                                  arg2: ::libc::c_int,
182                                                  arg3: *mut ::libc::c_char)
183                                                 -> ::libc::c_int>,
184    pub xCurrentTimeInt64: ::std::option::Option<extern "C" fn
185                                                     (arg1: *mut sqlite3_vfs,
186                                                      arg2:
187                                                          *mut sqlite3_int64)
188                                                     -> ::libc::c_int>,
189    pub xSetSystemCall: ::std::option::Option<extern "C" fn
190                                                  (arg1: *mut sqlite3_vfs,
191                                                   arg2:
192                                                       *const ::libc::c_char,
193                                                   arg3: sqlite3_syscall_ptr)
194                                                  -> ::libc::c_int>,
195    pub xGetSystemCall: ::std::option::Option<extern "C" fn
196                                                  (arg1: *mut sqlite3_vfs,
197                                                   arg2:
198                                                       *const ::libc::c_char)
199                                                  -> sqlite3_syscall_ptr>,
200    pub xNextSystemCall: ::std::option::Option<extern "C" fn
201                                                   (arg1: *mut sqlite3_vfs,
202                                                    arg2:
203                                                        *const ::libc::c_char)
204                                                   -> *const ::libc::c_char>,
205}
206pub type sqlite3_mem_methods = Struct_sqlite3_mem_methods;
207#[repr(C)]
208pub struct Struct_sqlite3_mem_methods {
209    pub xMalloc: ::std::option::Option<extern "C" fn(arg1: ::libc::c_int)
210                                           -> *mut ::libc::c_void>,
211    pub xFree: ::std::option::Option<extern "C" fn
212                                         (arg1: *mut ::libc::c_void)>,
213    pub xRealloc: ::std::option::Option<extern "C" fn
214                                            (arg1: *mut ::libc::c_void,
215                                             arg2: ::libc::c_int)
216                                            -> *mut ::libc::c_void>,
217    pub xSize: ::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void)
218                                         -> ::libc::c_int>,
219    pub xRoundup: ::std::option::Option<extern "C" fn(arg1: ::libc::c_int)
220                                            -> ::libc::c_int>,
221    pub xInit: ::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void)
222                                         -> ::libc::c_int>,
223    pub xShutdown: ::std::option::Option<extern "C" fn
224                                             (arg1: *mut ::libc::c_void)>,
225    pub pAppData: *mut ::libc::c_void,
226}
227pub enum Struct_sqlite3_stmt { }
228pub type sqlite3_stmt = Struct_sqlite3_stmt;
229pub enum Struct_Mem { }
230pub type sqlite3_value = Struct_Mem;
231pub enum Struct_sqlite3_context { }
232pub type sqlite3_context = Struct_sqlite3_context;
233pub type sqlite3_destructor_type =
234    ::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void)>;
235pub type sqlite3_vtab = Struct_sqlite3_vtab;
236pub type sqlite3_index_info = Struct_sqlite3_index_info;
237pub type sqlite3_vtab_cursor = Struct_sqlite3_vtab_cursor;
238pub type sqlite3_module = Struct_sqlite3_module;
239#[repr(C)]
240pub struct Struct_sqlite3_module {
241    pub iVersion: ::libc::c_int,
242    pub xCreate: ::std::option::Option<extern "C" fn
243                                           (arg1: *mut sqlite3,
244                                            arg2: *mut ::libc::c_void,
245                                            arg3: ::libc::c_int,
246                                            arg4:
247                                                *const *const ::libc::c_char,
248                                            arg5: *mut *mut sqlite3_vtab,
249                                            arg6: *mut *mut ::libc::c_char)
250                                           -> ::libc::c_int>,
251    pub xConnect: ::std::option::Option<extern "C" fn
252                                            (arg1: *mut sqlite3,
253                                             arg2: *mut ::libc::c_void,
254                                             arg3: ::libc::c_int,
255                                             arg4:
256                                                 *const *const ::libc::c_char,
257                                             arg5: *mut *mut sqlite3_vtab,
258                                             arg6: *mut *mut ::libc::c_char)
259                                            -> ::libc::c_int>,
260    pub xBestIndex: ::std::option::Option<extern "C" fn
261                                              (arg1: *mut sqlite3_vtab,
262                                               arg2: *mut sqlite3_index_info)
263                                              -> ::libc::c_int>,
264    pub xDisconnect: ::std::option::Option<extern "C" fn
265                                               (arg1: *mut sqlite3_vtab)
266                                               -> ::libc::c_int>,
267    pub xDestroy: ::std::option::Option<extern "C" fn(arg1: *mut sqlite3_vtab)
268                                            -> ::libc::c_int>,
269    pub xOpen: ::std::option::Option<extern "C" fn
270                                         (arg1: *mut sqlite3_vtab,
271                                          arg2: *mut *mut sqlite3_vtab_cursor)
272                                         -> ::libc::c_int>,
273    pub xClose: ::std::option::Option<extern "C" fn
274                                          (arg1: *mut sqlite3_vtab_cursor)
275                                          -> ::libc::c_int>,
276    pub xFilter: ::std::option::Option<extern "C" fn
277                                           (arg1: *mut sqlite3_vtab_cursor,
278                                            arg2: ::libc::c_int,
279                                            arg3: *const ::libc::c_char,
280                                            arg4: ::libc::c_int,
281                                            arg5: *mut *mut sqlite3_value)
282                                           -> ::libc::c_int>,
283    pub xNext: ::std::option::Option<extern "C" fn
284                                         (arg1: *mut sqlite3_vtab_cursor)
285                                         -> ::libc::c_int>,
286    pub xEof: ::std::option::Option<extern "C" fn
287                                        (arg1: *mut sqlite3_vtab_cursor)
288                                        -> ::libc::c_int>,
289    pub xColumn: ::std::option::Option<extern "C" fn
290                                           (arg1: *mut sqlite3_vtab_cursor,
291                                            arg2: *mut sqlite3_context,
292                                            arg3: ::libc::c_int)
293                                           -> ::libc::c_int>,
294    pub xRowid: ::std::option::Option<extern "C" fn
295                                          (arg1: *mut sqlite3_vtab_cursor,
296                                           arg2: *mut sqlite3_int64)
297                                          -> ::libc::c_int>,
298    pub xUpdate: ::std::option::Option<extern "C" fn
299                                           (arg1: *mut sqlite3_vtab,
300                                            arg2: ::libc::c_int,
301                                            arg3: *mut *mut sqlite3_value,
302                                            arg4: *mut sqlite3_int64)
303                                           -> ::libc::c_int>,
304    pub xBegin: ::std::option::Option<extern "C" fn(arg1: *mut sqlite3_vtab)
305                                          -> ::libc::c_int>,
306    pub xSync: ::std::option::Option<extern "C" fn(arg1: *mut sqlite3_vtab)
307                                         -> ::libc::c_int>,
308    pub xCommit: ::std::option::Option<extern "C" fn(arg1: *mut sqlite3_vtab)
309                                           -> ::libc::c_int>,
310    pub xRollback: ::std::option::Option<extern "C" fn
311                                             (arg1: *mut sqlite3_vtab)
312                                             -> ::libc::c_int>,
313    pub xFindFunction: ::std::option::Option<extern "C" fn
314                                                 (arg1: *mut sqlite3_vtab,
315                                                  arg2: ::libc::c_int,
316                                                  arg3: *const ::libc::c_char,
317                                                  arg4:
318                                                      *mut ::std::option::Option<extern "C" fn
319                                                                                     (arg1:
320                                                                                          *mut sqlite3_context,
321                                                                                      arg2:
322                                                                                          ::libc::c_int,
323                                                                                      arg3:
324                                                                                          *mut *mut sqlite3_value)>,
325                                                  arg5:
326                                                      *mut *mut ::libc::c_void)
327                                                 -> ::libc::c_int>,
328    pub xRename: ::std::option::Option<extern "C" fn
329                                           (arg1: *mut sqlite3_vtab,
330                                            arg2: *const ::libc::c_char)
331                                           -> ::libc::c_int>,
332    pub xSavepoint: ::std::option::Option<extern "C" fn
333                                              (arg1: *mut sqlite3_vtab,
334                                               arg2: ::libc::c_int)
335                                              -> ::libc::c_int>,
336    pub xRelease: ::std::option::Option<extern "C" fn
337                                            (arg1: *mut sqlite3_vtab,
338                                             arg2: ::libc::c_int)
339                                            -> ::libc::c_int>,
340    pub xRollbackTo: ::std::option::Option<extern "C" fn
341                                               (arg1: *mut sqlite3_vtab,
342                                                arg2: ::libc::c_int)
343                                               -> ::libc::c_int>,
344}
345#[repr(C)]
346pub struct Struct_sqlite3_index_info {
347    pub nConstraint: ::libc::c_int,
348    pub aConstraint: *mut Struct_sqlite3_index_constraint,
349    pub nOrderBy: ::libc::c_int,
350    pub aOrderBy: *mut Struct_sqlite3_index_orderby,
351    pub aConstraintUsage: *mut Struct_sqlite3_index_constraint_usage,
352    pub idxNum: ::libc::c_int,
353    pub idxStr: *mut ::libc::c_char,
354    pub needToFreeIdxStr: ::libc::c_int,
355    pub orderByConsumed: ::libc::c_int,
356    pub estimatedCost: ::libc::c_double,
357    pub estimatedRows: sqlite3_int64,
358}
359#[repr(C)]
360pub struct Struct_sqlite3_index_constraint {
361    pub iColumn: ::libc::c_int,
362    pub op: ::libc::c_uchar,
363    pub usable: ::libc::c_uchar,
364    pub iTermOffset: ::libc::c_int,
365}
366#[repr(C)]
367pub struct Struct_sqlite3_index_orderby {
368    pub iColumn: ::libc::c_int,
369    pub desc: ::libc::c_uchar,
370}
371#[repr(C)]
372pub struct Struct_sqlite3_index_constraint_usage {
373    pub argvIndex: ::libc::c_int,
374    pub omit: ::libc::c_uchar,
375}
376#[repr(C)]
377pub struct Struct_sqlite3_vtab {
378    pub pModule: *const sqlite3_module,
379    pub nRef: ::libc::c_int,
380    pub zErrMsg: *mut ::libc::c_char,
381}
382#[repr(C)]
383pub struct Struct_sqlite3_vtab_cursor {
384    pub pVtab: *mut sqlite3_vtab,
385}
386pub enum Struct_sqlite3_blob { }
387pub type sqlite3_blob = Struct_sqlite3_blob;
388pub type sqlite3_mutex_methods = Struct_sqlite3_mutex_methods;
389#[repr(C)]
390pub struct Struct_sqlite3_mutex_methods {
391    pub xMutexInit: ::std::option::Option<extern "C" fn() -> ::libc::c_int>,
392    pub xMutexEnd: ::std::option::Option<extern "C" fn() -> ::libc::c_int>,
393    pub xMutexAlloc: ::std::option::Option<extern "C" fn(arg1: ::libc::c_int)
394                                               -> *mut sqlite3_mutex>,
395    pub xMutexFree: ::std::option::Option<extern "C" fn
396                                              (arg1: *mut sqlite3_mutex)>,
397    pub xMutexEnter: ::std::option::Option<extern "C" fn
398                                               (arg1: *mut sqlite3_mutex)>,
399    pub xMutexTry: ::std::option::Option<extern "C" fn
400                                             (arg1: *mut sqlite3_mutex)
401                                             -> ::libc::c_int>,
402    pub xMutexLeave: ::std::option::Option<extern "C" fn
403                                               (arg1: *mut sqlite3_mutex)>,
404    pub xMutexHeld: ::std::option::Option<extern "C" fn
405                                              (arg1: *mut sqlite3_mutex)
406                                              -> ::libc::c_int>,
407    pub xMutexNotheld: ::std::option::Option<extern "C" fn
408                                                 (arg1: *mut sqlite3_mutex)
409                                                 -> ::libc::c_int>,
410}
411pub enum Struct_sqlite3_pcache { }
412pub type sqlite3_pcache = Struct_sqlite3_pcache;
413pub type sqlite3_pcache_page = Struct_sqlite3_pcache_page;
414#[repr(C)]
415pub struct Struct_sqlite3_pcache_page {
416    pub pBuf: *mut ::libc::c_void,
417    pub pExtra: *mut ::libc::c_void,
418}
419pub type sqlite3_pcache_methods2 = Struct_sqlite3_pcache_methods2;
420#[repr(C)]
421pub struct Struct_sqlite3_pcache_methods2 {
422    pub iVersion: ::libc::c_int,
423    pub pArg: *mut ::libc::c_void,
424    pub xInit: ::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void)
425                                         -> ::libc::c_int>,
426    pub xShutdown: ::std::option::Option<extern "C" fn
427                                             (arg1: *mut ::libc::c_void)>,
428    pub xCreate: ::std::option::Option<extern "C" fn
429                                           (arg1: ::libc::c_int,
430                                            arg2: ::libc::c_int,
431                                            arg3: ::libc::c_int)
432                                           -> *mut sqlite3_pcache>,
433    pub xCachesize: ::std::option::Option<extern "C" fn
434                                              (arg1: *mut sqlite3_pcache,
435                                               arg2: ::libc::c_int)>,
436    pub xPagecount: ::std::option::Option<extern "C" fn
437                                              (arg1: *mut sqlite3_pcache)
438                                              -> ::libc::c_int>,
439    pub xFetch: ::std::option::Option<extern "C" fn
440                                          (arg1: *mut sqlite3_pcache,
441                                           arg2: ::libc::c_uint,
442                                           arg3: ::libc::c_int)
443                                          -> *mut sqlite3_pcache_page>,
444    pub xUnpin: ::std::option::Option<extern "C" fn
445                                          (arg1: *mut sqlite3_pcache,
446                                           arg2: *mut sqlite3_pcache_page,
447                                           arg3: ::libc::c_int)>,
448    pub xRekey: ::std::option::Option<extern "C" fn
449                                          (arg1: *mut sqlite3_pcache,
450                                           arg2: *mut sqlite3_pcache_page,
451                                           arg3: ::libc::c_uint,
452                                           arg4: ::libc::c_uint)>,
453    pub xTruncate: ::std::option::Option<extern "C" fn
454                                             (arg1: *mut sqlite3_pcache,
455                                              arg2: ::libc::c_uint)>,
456    pub xDestroy: ::std::option::Option<extern "C" fn
457                                            (arg1: *mut sqlite3_pcache)>,
458    pub xShrink: ::std::option::Option<extern "C" fn
459                                           (arg1: *mut sqlite3_pcache)>,
460}
461pub type sqlite3_pcache_methods = Struct_sqlite3_pcache_methods;
462#[repr(C)]
463pub struct Struct_sqlite3_pcache_methods {
464    pub pArg: *mut ::libc::c_void,
465    pub xInit: ::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void)
466                                         -> ::libc::c_int>,
467    pub xShutdown: ::std::option::Option<extern "C" fn
468                                             (arg1: *mut ::libc::c_void)>,
469    pub xCreate: ::std::option::Option<extern "C" fn
470                                           (arg1: ::libc::c_int,
471                                            arg2: ::libc::c_int)
472                                           -> *mut sqlite3_pcache>,
473    pub xCachesize: ::std::option::Option<extern "C" fn
474                                              (arg1: *mut sqlite3_pcache,
475                                               arg2: ::libc::c_int)>,
476    pub xPagecount: ::std::option::Option<extern "C" fn
477                                              (arg1: *mut sqlite3_pcache)
478                                              -> ::libc::c_int>,
479    pub xFetch: ::std::option::Option<extern "C" fn
480                                          (arg1: *mut sqlite3_pcache,
481                                           arg2: ::libc::c_uint,
482                                           arg3: ::libc::c_int)
483                                          -> *mut ::libc::c_void>,
484    pub xUnpin: ::std::option::Option<extern "C" fn
485                                          (arg1: *mut sqlite3_pcache,
486                                           arg2: *mut ::libc::c_void,
487                                           arg3: ::libc::c_int)>,
488    pub xRekey: ::std::option::Option<extern "C" fn
489                                          (arg1: *mut sqlite3_pcache,
490                                           arg2: *mut ::libc::c_void,
491                                           arg3: ::libc::c_uint,
492                                           arg4: ::libc::c_uint)>,
493    pub xTruncate: ::std::option::Option<extern "C" fn
494                                             (arg1: *mut sqlite3_pcache,
495                                              arg2: ::libc::c_uint)>,
496    pub xDestroy: ::std::option::Option<extern "C" fn
497                                            (arg1: *mut sqlite3_pcache)>,
498}
499pub enum Struct_sqlite3_backup { }
500pub type sqlite3_backup = Struct_sqlite3_backup;
501pub type sqlite3_rtree_geometry = Struct_sqlite3_rtree_geometry;
502#[repr(C)]
503pub struct Struct_sqlite3_rtree_geometry {
504    pub pContext: *mut ::libc::c_void,
505    pub nParam: ::libc::c_int,
506    pub aParam: *mut ::libc::c_double,
507    pub pUser: *mut ::libc::c_void,
508    pub xDelUser: ::std::option::Option<extern "C" fn
509                                            (arg1: *mut ::libc::c_void)>,
510}
511pub type __va_list_tag = Struct___va_list_tag;
512#[repr(C)]
513pub struct Struct___va_list_tag {
514    pub gp_offset: ::libc::c_uint,
515    pub fp_offset: ::libc::c_uint,
516    pub overflow_arg_area: *mut ::libc::c_void,
517    pub reg_save_area: *mut ::libc::c_void,
518}
519#[link(name = "sqlite3")]
520extern "C" {
521    pub static mut sqlite3_version: *const ::libc::c_char;
522    pub static mut sqlite3_temp_directory: *mut ::libc::c_char;
523    pub static mut sqlite3_data_directory: *mut ::libc::c_char;
524    pub fn sqlite3_libversion() -> *const ::libc::c_char;
525    pub fn sqlite3_sourceid() -> *const ::libc::c_char;
526    pub fn sqlite3_libversion_number() -> ::libc::c_int;
527    pub fn sqlite3_compileoption_used(zOptName: *const ::libc::c_char) ->
528     ::libc::c_int;
529    pub fn sqlite3_compileoption_get(N: ::libc::c_int) ->
530     *const ::libc::c_char;
531    pub fn sqlite3_threadsafe() -> ::libc::c_int;
532    pub fn sqlite3_close(arg1: *mut sqlite3) -> ::libc::c_int;
533    pub fn sqlite3_close_v2(arg1: *mut sqlite3) -> ::libc::c_int;
534    pub fn sqlite3_exec(arg1: *mut sqlite3, sql: *const ::libc::c_char,
535                        callback:
536                            ::std::option::Option<extern "C" fn
537                                                      (arg1:
538                                                           *mut ::libc::c_void,
539                                                       arg2: ::libc::c_int,
540                                                       arg3:
541                                                           *mut *mut ::libc::c_char,
542                                                       arg4:
543                                                           *mut *mut ::libc::c_char)
544                                                      -> ::libc::c_int>,
545                        arg2: *mut ::libc::c_void,
546                        errmsg: *mut *mut ::libc::c_char) -> ::libc::c_int;
547    pub fn sqlite3_initialize() -> ::libc::c_int;
548    pub fn sqlite3_shutdown() -> ::libc::c_int;
549    pub fn sqlite3_os_init() -> ::libc::c_int;
550    pub fn sqlite3_os_end() -> ::libc::c_int;
551    pub fn sqlite3_config(arg1: ::libc::c_int, ...) -> ::libc::c_int;
552    pub fn sqlite3_db_config(arg1: *mut sqlite3, op: ::libc::c_int, ...) ->
553     ::libc::c_int;
554    pub fn sqlite3_extended_result_codes(arg1: *mut sqlite3,
555                                         onoff: ::libc::c_int) ->
556     ::libc::c_int;
557    pub fn sqlite3_last_insert_rowid(arg1: *mut sqlite3) -> sqlite3_int64;
558    pub fn sqlite3_changes(arg1: *mut sqlite3) -> ::libc::c_int;
559    pub fn sqlite3_total_changes(arg1: *mut sqlite3) -> ::libc::c_int;
560    pub fn sqlite3_interrupt(arg1: *mut sqlite3);
561    pub fn sqlite3_complete(sql: *const ::libc::c_char) -> ::libc::c_int;
562    pub fn sqlite3_complete16(sql: *const ::libc::c_void) -> ::libc::c_int;
563    pub fn sqlite3_busy_handler(arg1: *mut sqlite3,
564                                arg2:
565                                    ::std::option::Option<extern "C" fn
566                                                              (arg1:
567                                                                   *mut ::libc::c_void,
568                                                               arg2:
569                                                                   ::libc::c_int)
570                                                              ->
571                                                                  ::libc::c_int>,
572                                arg3: *mut ::libc::c_void) -> ::libc::c_int;
573    pub fn sqlite3_busy_timeout(arg1: *mut sqlite3, ms: ::libc::c_int) ->
574     ::libc::c_int;
575    pub fn sqlite3_get_table(db: *mut sqlite3, zSql: *const ::libc::c_char,
576                             pazResult: *mut *mut *mut ::libc::c_char,
577                             pnRow: *mut ::libc::c_int,
578                             pnColumn: *mut ::libc::c_int,
579                             pzErrmsg: *mut *mut ::libc::c_char) ->
580     ::libc::c_int;
581    pub fn sqlite3_free_table(result: *mut *mut ::libc::c_char);
582    pub fn sqlite3_mprintf(arg1: *const ::libc::c_char, ...) ->
583     *mut ::libc::c_char;
584    pub fn sqlite3_vmprintf(arg1: *const ::libc::c_char, arg2: va_list) ->
585     *mut ::libc::c_char;
586    pub fn sqlite3_snprintf(arg1: ::libc::c_int, arg2: *mut ::libc::c_char,
587                            arg3: *const ::libc::c_char, ...) ->
588     *mut ::libc::c_char;
589    pub fn sqlite3_vsnprintf(arg1: ::libc::c_int, arg2: *mut ::libc::c_char,
590                             arg3: *const ::libc::c_char, arg4: va_list) ->
591     *mut ::libc::c_char;
592    pub fn sqlite3_malloc(arg1: ::libc::c_int) -> *mut ::libc::c_void;
593    pub fn sqlite3_realloc(arg1: *mut ::libc::c_void, arg2: ::libc::c_int) ->
594     *mut ::libc::c_void;
595    pub fn sqlite3_free(arg1: *mut ::libc::c_void);
596    pub fn sqlite3_memory_used() -> sqlite3_int64;
597    pub fn sqlite3_memory_highwater(resetFlag: ::libc::c_int) ->
598     sqlite3_int64;
599    pub fn sqlite3_randomness(N: ::libc::c_int, P: *mut ::libc::c_void);
600    pub fn sqlite3_set_authorizer(arg1: *mut sqlite3,
601                                  xAuth:
602                                      ::std::option::Option<extern "C" fn
603                                                                (arg1:
604                                                                     *mut ::libc::c_void,
605                                                                 arg2:
606                                                                     ::libc::c_int,
607                                                                 arg3:
608                                                                     *const ::libc::c_char,
609                                                                 arg4:
610                                                                     *const ::libc::c_char,
611                                                                 arg5:
612                                                                     *const ::libc::c_char,
613                                                                 arg6:
614                                                                     *const ::libc::c_char)
615                                                                ->
616                                                                    ::libc::c_int>,
617                                  pUserData: *mut ::libc::c_void) ->
618     ::libc::c_int;
619    pub fn sqlite3_trace(arg1: *mut sqlite3,
620                         xTrace:
621                             ::std::option::Option<extern "C" fn
622                                                       (arg1:
623                                                            *mut ::libc::c_void,
624                                                        arg2:
625                                                            *const ::libc::c_char)>,
626                         arg2: *mut ::libc::c_void) -> *mut ::libc::c_void;
627    pub fn sqlite3_profile(arg1: *mut sqlite3,
628                           xProfile:
629                               ::std::option::Option<extern "C" fn
630                                                         (arg1:
631                                                              *mut ::libc::c_void,
632                                                          arg2:
633                                                              *const ::libc::c_char,
634                                                          arg3:
635                                                              sqlite3_uint64)>,
636                           arg2: *mut ::libc::c_void) -> *mut ::libc::c_void;
637    pub fn sqlite3_progress_handler(arg1: *mut sqlite3, arg2: ::libc::c_int,
638                                    arg3:
639                                        ::std::option::Option<extern "C" fn
640                                                                  (arg1:
641                                                                       *mut ::libc::c_void)
642                                                                  ->
643                                                                      ::libc::c_int>,
644                                    arg4: *mut ::libc::c_void);
645    pub fn sqlite3_open(filename: *const ::libc::c_char,
646                        ppDb: *mut *mut sqlite3) -> ::libc::c_int;
647    pub fn sqlite3_open16(filename: *const ::libc::c_void,
648                          ppDb: *mut *mut sqlite3) -> ::libc::c_int;
649    pub fn sqlite3_open_v2(filename: *const ::libc::c_char,
650                           ppDb: *mut *mut sqlite3, flags: ::libc::c_int,
651                           zVfs: *const ::libc::c_char) -> ::libc::c_int;
652    pub fn sqlite3_uri_parameter(zFilename: *const ::libc::c_char,
653                                 zParam: *const ::libc::c_char) ->
654     *const ::libc::c_char;
655    pub fn sqlite3_uri_boolean(zFile: *const ::libc::c_char,
656                               zParam: *const ::libc::c_char,
657                               bDefault: ::libc::c_int) -> ::libc::c_int;
658    pub fn sqlite3_uri_int64(arg1: *const ::libc::c_char,
659                             arg2: *const ::libc::c_char, arg3: sqlite3_int64)
660     -> sqlite3_int64;
661    pub fn sqlite3_errcode(db: *mut sqlite3) -> ::libc::c_int;
662    pub fn sqlite3_extended_errcode(db: *mut sqlite3) -> ::libc::c_int;
663    pub fn sqlite3_errmsg(arg1: *mut sqlite3) -> *const ::libc::c_char;
664    pub fn sqlite3_errmsg16(arg1: *mut sqlite3) -> *const ::libc::c_void;
665    pub fn sqlite3_errstr(arg1: ::libc::c_int) -> *const ::libc::c_char;
666    pub fn sqlite3_limit(arg1: *mut sqlite3, id: ::libc::c_int,
667                         newVal: ::libc::c_int) -> ::libc::c_int;
668    pub fn sqlite3_prepare(db: *mut sqlite3, zSql: *const ::libc::c_char,
669                           nByte: ::libc::c_int,
670                           ppStmt: *mut *mut sqlite3_stmt,
671                           pzTail: *mut *const ::libc::c_char) ->
672     ::libc::c_int;
673    pub fn sqlite3_prepare_v2(db: *mut sqlite3, zSql: *const ::libc::c_char,
674                              nByte: ::libc::c_int,
675                              ppStmt: *mut *mut sqlite3_stmt,
676                              pzTail: *mut *const ::libc::c_char) ->
677     ::libc::c_int;
678    pub fn sqlite3_prepare16(db: *mut sqlite3, zSql: *const ::libc::c_void,
679                             nByte: ::libc::c_int,
680                             ppStmt: *mut *mut sqlite3_stmt,
681                             pzTail: *mut *const ::libc::c_void) ->
682     ::libc::c_int;
683    pub fn sqlite3_prepare16_v2(db: *mut sqlite3, zSql: *const ::libc::c_void,
684                                nByte: ::libc::c_int,
685                                ppStmt: *mut *mut sqlite3_stmt,
686                                pzTail: *mut *const ::libc::c_void) ->
687     ::libc::c_int;
688    pub fn sqlite3_sql(pStmt: *mut sqlite3_stmt) -> *const ::libc::c_char;
689    pub fn sqlite3_stmt_readonly(pStmt: *mut sqlite3_stmt) -> ::libc::c_int;
690    pub fn sqlite3_stmt_busy(arg1: *mut sqlite3_stmt) -> ::libc::c_int;
691    pub fn sqlite3_bind_blob(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
692                             arg3: *const ::libc::c_void, n: ::libc::c_int,
693                             arg4:
694                                 ::std::option::Option<extern "C" fn
695                                                           (arg1:
696                                                                *mut ::libc::c_void)>)
697     -> ::libc::c_int;
698    pub fn sqlite3_bind_double(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
699                               arg3: ::libc::c_double) -> ::libc::c_int;
700    pub fn sqlite3_bind_int(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
701                            arg3: ::libc::c_int) -> ::libc::c_int;
702    pub fn sqlite3_bind_int64(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
703                              arg3: sqlite3_int64) -> ::libc::c_int;
704    pub fn sqlite3_bind_null(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int) ->
705     ::libc::c_int;
706    pub fn sqlite3_bind_text(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
707                             arg3: *const ::libc::c_char, n: ::libc::c_int,
708                             arg4:
709                                 ::std::option::Option<extern "C" fn
710                                                           (arg1:
711                                                                *mut ::libc::c_void)>)
712     -> ::libc::c_int;
713    pub fn sqlite3_bind_text16(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
714                               arg3: *const ::libc::c_void,
715                               arg4: ::libc::c_int,
716                               arg5:
717                                   ::std::option::Option<extern "C" fn
718                                                             (arg1:
719                                                                  *mut ::libc::c_void)>)
720     -> ::libc::c_int;
721    pub fn sqlite3_bind_value(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
722                              arg3: *const sqlite3_value) -> ::libc::c_int;
723    pub fn sqlite3_bind_zeroblob(arg1: *mut sqlite3_stmt, arg2: ::libc::c_int,
724                                 n: ::libc::c_int) -> ::libc::c_int;
725    pub fn sqlite3_bind_parameter_count(arg1: *mut sqlite3_stmt) ->
726     ::libc::c_int;
727    pub fn sqlite3_bind_parameter_name(arg1: *mut sqlite3_stmt,
728                                       arg2: ::libc::c_int) ->
729     *const ::libc::c_char;
730    pub fn sqlite3_bind_parameter_index(arg1: *mut sqlite3_stmt,
731                                        zName: *const ::libc::c_char) ->
732     ::libc::c_int;
733    pub fn sqlite3_clear_bindings(arg1: *mut sqlite3_stmt) -> ::libc::c_int;
734    pub fn sqlite3_column_count(pStmt: *mut sqlite3_stmt) -> ::libc::c_int;
735    pub fn sqlite3_column_name(arg1: *mut sqlite3_stmt, N: ::libc::c_int) ->
736     *const ::libc::c_char;
737    pub fn sqlite3_column_name16(arg1: *mut sqlite3_stmt, N: ::libc::c_int) ->
738     *const ::libc::c_void;
739    pub fn sqlite3_column_database_name(arg1: *mut sqlite3_stmt,
740                                        arg2: ::libc::c_int) ->
741     *const ::libc::c_char;
742    pub fn sqlite3_column_database_name16(arg1: *mut sqlite3_stmt,
743                                          arg2: ::libc::c_int) ->
744     *const ::libc::c_void;
745    pub fn sqlite3_column_table_name(arg1: *mut sqlite3_stmt,
746                                     arg2: ::libc::c_int) ->
747     *const ::libc::c_char;
748    pub fn sqlite3_column_table_name16(arg1: *mut sqlite3_stmt,
749                                       arg2: ::libc::c_int) ->
750     *const ::libc::c_void;
751    pub fn sqlite3_column_origin_name(arg1: *mut sqlite3_stmt,
752                                      arg2: ::libc::c_int) ->
753     *const ::libc::c_char;
754    pub fn sqlite3_column_origin_name16(arg1: *mut sqlite3_stmt,
755                                        arg2: ::libc::c_int) ->
756     *const ::libc::c_void;
757    pub fn sqlite3_column_decltype(arg1: *mut sqlite3_stmt,
758                                   arg2: ::libc::c_int) ->
759     *const ::libc::c_char;
760    pub fn sqlite3_column_decltype16(arg1: *mut sqlite3_stmt,
761                                     arg2: ::libc::c_int) ->
762     *const ::libc::c_void;
763    pub fn sqlite3_step(arg1: *mut sqlite3_stmt) -> ::libc::c_int;
764    pub fn sqlite3_data_count(pStmt: *mut sqlite3_stmt) -> ::libc::c_int;
765    pub fn sqlite3_column_blob(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
766     -> *const ::libc::c_void;
767    pub fn sqlite3_column_bytes(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
768     -> ::libc::c_int;
769    pub fn sqlite3_column_bytes16(arg1: *mut sqlite3_stmt,
770                                  iCol: ::libc::c_int) -> ::libc::c_int;
771    pub fn sqlite3_column_double(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
772     -> ::libc::c_double;
773    pub fn sqlite3_column_int(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int) ->
774     ::libc::c_int;
775    pub fn sqlite3_column_int64(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
776     -> sqlite3_int64;
777    pub fn sqlite3_column_text(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
778     -> *const ::libc::c_uchar;
779    pub fn sqlite3_column_text16(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
780     -> *const ::libc::c_void;
781    pub fn sqlite3_column_type(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
782     -> ::libc::c_int;
783    pub fn sqlite3_column_value(arg1: *mut sqlite3_stmt, iCol: ::libc::c_int)
784     -> *mut sqlite3_value;
785    pub fn sqlite3_finalize(pStmt: *mut sqlite3_stmt) -> ::libc::c_int;
786    pub fn sqlite3_reset(pStmt: *mut sqlite3_stmt) -> ::libc::c_int;
787    pub fn sqlite3_create_function(db: *mut sqlite3,
788                                   zFunctionName: *const ::libc::c_char,
789                                   nArg: ::libc::c_int,
790                                   eTextRep: ::libc::c_int,
791                                   pApp: *mut ::libc::c_void,
792                                   xFunc:
793                                       ::std::option::Option<extern "C" fn
794                                                                 (arg1:
795                                                                      *mut sqlite3_context,
796                                                                  arg2:
797                                                                      ::libc::c_int,
798                                                                  arg3:
799                                                                      *mut *mut sqlite3_value)>,
800                                   xStep:
801                                       ::std::option::Option<extern "C" fn
802                                                                 (arg1:
803                                                                      *mut sqlite3_context,
804                                                                  arg2:
805                                                                      ::libc::c_int,
806                                                                  arg3:
807                                                                      *mut *mut sqlite3_value)>,
808                                   xFinal:
809                                       ::std::option::Option<extern "C" fn
810                                                                 (arg1:
811                                                                      *mut sqlite3_context)>)
812     -> ::libc::c_int;
813    pub fn sqlite3_create_function16(db: *mut sqlite3,
814                                     zFunctionName: *const ::libc::c_void,
815                                     nArg: ::libc::c_int,
816                                     eTextRep: ::libc::c_int,
817                                     pApp: *mut ::libc::c_void,
818                                     xFunc:
819                                         ::std::option::Option<extern "C" fn
820                                                                   (arg1:
821                                                                        *mut sqlite3_context,
822                                                                    arg2:
823                                                                        ::libc::c_int,
824                                                                    arg3:
825                                                                        *mut *mut sqlite3_value)>,
826                                     xStep:
827                                         ::std::option::Option<extern "C" fn
828                                                                   (arg1:
829                                                                        *mut sqlite3_context,
830                                                                    arg2:
831                                                                        ::libc::c_int,
832                                                                    arg3:
833                                                                        *mut *mut sqlite3_value)>,
834                                     xFinal:
835                                         ::std::option::Option<extern "C" fn
836                                                                   (arg1:
837                                                                        *mut sqlite3_context)>)
838     -> ::libc::c_int;
839    pub fn sqlite3_create_function_v2(db: *mut sqlite3,
840                                      zFunctionName: *const ::libc::c_char,
841                                      nArg: ::libc::c_int,
842                                      eTextRep: ::libc::c_int,
843                                      pApp: *mut ::libc::c_void,
844                                      xFunc:
845                                          ::std::option::Option<extern "C" fn
846                                                                    (arg1:
847                                                                         *mut sqlite3_context,
848                                                                     arg2:
849                                                                         ::libc::c_int,
850                                                                     arg3:
851                                                                         *mut *mut sqlite3_value)>,
852                                      xStep:
853                                          ::std::option::Option<extern "C" fn
854                                                                    (arg1:
855                                                                         *mut sqlite3_context,
856                                                                     arg2:
857                                                                         ::libc::c_int,
858                                                                     arg3:
859                                                                         *mut *mut sqlite3_value)>,
860                                      xFinal:
861                                          ::std::option::Option<extern "C" fn
862                                                                    (arg1:
863                                                                         *mut sqlite3_context)>,
864                                      xDestroy:
865                                          ::std::option::Option<extern "C" fn
866                                                                    (arg1:
867                                                                         *mut ::libc::c_void)>)
868     -> ::libc::c_int;
869    pub fn sqlite3_aggregate_count(arg1: *mut sqlite3_context) ->
870     ::libc::c_int;
871    pub fn sqlite3_expired(arg1: *mut sqlite3_stmt) -> ::libc::c_int;
872    pub fn sqlite3_transfer_bindings(arg1: *mut sqlite3_stmt,
873                                     arg2: *mut sqlite3_stmt) ->
874     ::libc::c_int;
875    pub fn sqlite3_global_recover() -> ::libc::c_int;
876    pub fn sqlite3_thread_cleanup();
877    pub fn sqlite3_memory_alarm(arg1:
878                                    ::std::option::Option<extern "C" fn
879                                                              (arg1:
880                                                                   *mut ::libc::c_void,
881                                                               arg2:
882                                                                   sqlite3_int64,
883                                                               arg3:
884                                                                   ::libc::c_int)>,
885                                arg2: *mut ::libc::c_void,
886                                arg3: sqlite3_int64) -> ::libc::c_int;
887    pub fn sqlite3_value_blob(arg1: *mut sqlite3_value) ->
888     *const ::libc::c_void;
889    pub fn sqlite3_value_bytes(arg1: *mut sqlite3_value) -> ::libc::c_int;
890    pub fn sqlite3_value_bytes16(arg1: *mut sqlite3_value) -> ::libc::c_int;
891    pub fn sqlite3_value_double(arg1: *mut sqlite3_value) -> ::libc::c_double;
892    pub fn sqlite3_value_int(arg1: *mut sqlite3_value) -> ::libc::c_int;
893    pub fn sqlite3_value_int64(arg1: *mut sqlite3_value) -> sqlite3_int64;
894    pub fn sqlite3_value_text(arg1: *mut sqlite3_value) ->
895     *const ::libc::c_uchar;
896    pub fn sqlite3_value_text16(arg1: *mut sqlite3_value) ->
897     *const ::libc::c_void;
898    pub fn sqlite3_value_text16le(arg1: *mut sqlite3_value) ->
899     *const ::libc::c_void;
900    pub fn sqlite3_value_text16be(arg1: *mut sqlite3_value) ->
901     *const ::libc::c_void;
902    pub fn sqlite3_value_type(arg1: *mut sqlite3_value) -> ::libc::c_int;
903    pub fn sqlite3_value_numeric_type(arg1: *mut sqlite3_value) ->
904     ::libc::c_int;
905    pub fn sqlite3_aggregate_context(arg1: *mut sqlite3_context,
906                                     nBytes: ::libc::c_int) ->
907     *mut ::libc::c_void;
908    pub fn sqlite3_user_data(arg1: *mut sqlite3_context) ->
909     *mut ::libc::c_void;
910    pub fn sqlite3_context_db_handle(arg1: *mut sqlite3_context) ->
911     *mut sqlite3;
912    pub fn sqlite3_get_auxdata(arg1: *mut sqlite3_context, N: ::libc::c_int)
913     -> *mut ::libc::c_void;
914    pub fn sqlite3_set_auxdata(arg1: *mut sqlite3_context, N: ::libc::c_int,
915                               arg2: *mut ::libc::c_void,
916                               arg3:
917                                   ::std::option::Option<extern "C" fn
918                                                             (arg1:
919                                                                  *mut ::libc::c_void)>);
920    pub fn sqlite3_result_blob(arg1: *mut sqlite3_context,
921                               arg2: *const ::libc::c_void,
922                               arg3: ::libc::c_int,
923                               arg4:
924                                   ::std::option::Option<extern "C" fn
925                                                             (arg1:
926                                                                  *mut ::libc::c_void)>);
927    pub fn sqlite3_result_double(arg1: *mut sqlite3_context,
928                                 arg2: ::libc::c_double);
929    pub fn sqlite3_result_error(arg1: *mut sqlite3_context,
930                                arg2: *const ::libc::c_char,
931                                arg3: ::libc::c_int);
932    pub fn sqlite3_result_error16(arg1: *mut sqlite3_context,
933                                  arg2: *const ::libc::c_void,
934                                  arg3: ::libc::c_int);
935    pub fn sqlite3_result_error_toobig(arg1: *mut sqlite3_context);
936    pub fn sqlite3_result_error_nomem(arg1: *mut sqlite3_context);
937    pub fn sqlite3_result_error_code(arg1: *mut sqlite3_context,
938                                     arg2: ::libc::c_int);
939    pub fn sqlite3_result_int(arg1: *mut sqlite3_context,
940                              arg2: ::libc::c_int);
941    pub fn sqlite3_result_int64(arg1: *mut sqlite3_context,
942                                arg2: sqlite3_int64);
943    pub fn sqlite3_result_null(arg1: *mut sqlite3_context);
944    pub fn sqlite3_result_text(arg1: *mut sqlite3_context,
945                               arg2: *const ::libc::c_char,
946                               arg3: ::libc::c_int,
947                               arg4:
948                                   ::std::option::Option<extern "C" fn
949                                                             (arg1:
950                                                                  *mut ::libc::c_void)>);
951    pub fn sqlite3_result_text16(arg1: *mut sqlite3_context,
952                                 arg2: *const ::libc::c_void,
953                                 arg3: ::libc::c_int,
954                                 arg4:
955                                     ::std::option::Option<extern "C" fn
956                                                               (arg1:
957                                                                    *mut ::libc::c_void)>);
958    pub fn sqlite3_result_text16le(arg1: *mut sqlite3_context,
959                                   arg2: *const ::libc::c_void,
960                                   arg3: ::libc::c_int,
961                                   arg4:
962                                       ::std::option::Option<extern "C" fn
963                                                                 (arg1:
964                                                                      *mut ::libc::c_void)>);
965    pub fn sqlite3_result_text16be(arg1: *mut sqlite3_context,
966                                   arg2: *const ::libc::c_void,
967                                   arg3: ::libc::c_int,
968                                   arg4:
969                                       ::std::option::Option<extern "C" fn
970                                                                 (arg1:
971                                                                      *mut ::libc::c_void)>);
972    pub fn sqlite3_result_value(arg1: *mut sqlite3_context,
973                                arg2: *mut sqlite3_value);
974    pub fn sqlite3_result_zeroblob(arg1: *mut sqlite3_context,
975                                   n: ::libc::c_int);
976    pub fn sqlite3_create_collation(arg1: *mut sqlite3,
977                                    zName: *const ::libc::c_char,
978                                    eTextRep: ::libc::c_int,
979                                    pArg: *mut ::libc::c_void,
980                                    xCompare:
981                                        ::std::option::Option<extern "C" fn
982                                                                  (arg1:
983                                                                       *mut ::libc::c_void,
984                                                                   arg2:
985                                                                       ::libc::c_int,
986                                                                   arg3:
987                                                                       *const ::libc::c_void,
988                                                                   arg4:
989                                                                       ::libc::c_int,
990                                                                   arg5:
991                                                                       *const ::libc::c_void)
992                                                                  ->
993                                                                      ::libc::c_int>)
994     -> ::libc::c_int;
995    pub fn sqlite3_create_collation_v2(arg1: *mut sqlite3,
996                                       zName: *const ::libc::c_char,
997                                       eTextRep: ::libc::c_int,
998                                       pArg: *mut ::libc::c_void,
999                                       xCompare:
1000                                           ::std::option::Option<extern "C" fn
1001                                                                     (arg1:
1002                                                                          *mut ::libc::c_void,
1003                                                                      arg2:
1004                                                                          ::libc::c_int,
1005                                                                      arg3:
1006                                                                          *const ::libc::c_void,
1007                                                                      arg4:
1008                                                                          ::libc::c_int,
1009                                                                      arg5:
1010                                                                          *const ::libc::c_void)
1011                                                                     ->
1012                                                                         ::libc::c_int>,
1013                                       xDestroy:
1014                                           ::std::option::Option<extern "C" fn
1015                                                                     (arg1:
1016                                                                          *mut ::libc::c_void)>)
1017     -> ::libc::c_int;
1018    pub fn sqlite3_create_collation16(arg1: *mut sqlite3,
1019                                      zName: *const ::libc::c_void,
1020                                      eTextRep: ::libc::c_int,
1021                                      pArg: *mut ::libc::c_void,
1022                                      xCompare:
1023                                          ::std::option::Option<extern "C" fn
1024                                                                    (arg1:
1025                                                                         *mut ::libc::c_void,
1026                                                                     arg2:
1027                                                                         ::libc::c_int,
1028                                                                     arg3:
1029                                                                         *const ::libc::c_void,
1030                                                                     arg4:
1031                                                                         ::libc::c_int,
1032                                                                     arg5:
1033                                                                         *const ::libc::c_void)
1034                                                                    ->
1035                                                                        ::libc::c_int>)
1036     -> ::libc::c_int;
1037    pub fn sqlite3_collation_needed(arg1: *mut sqlite3,
1038                                    arg2: *mut ::libc::c_void,
1039                                    arg3:
1040                                        ::std::option::Option<extern "C" fn
1041                                                                  (arg1:
1042                                                                       *mut ::libc::c_void,
1043                                                                   arg2:
1044                                                                       *mut sqlite3,
1045                                                                   arg3:
1046                                                                       ::libc::c_int,
1047                                                                   arg4:
1048                                                                       *const ::libc::c_char)>)
1049     -> ::libc::c_int;
1050    pub fn sqlite3_collation_needed16(arg1: *mut sqlite3,
1051                                      arg2: *mut ::libc::c_void,
1052                                      arg3:
1053                                          ::std::option::Option<extern "C" fn
1054                                                                    (arg1:
1055                                                                         *mut ::libc::c_void,
1056                                                                     arg2:
1057                                                                         *mut sqlite3,
1058                                                                     arg3:
1059                                                                         ::libc::c_int,
1060                                                                     arg4:
1061                                                                         *const ::libc::c_void)>)
1062     -> ::libc::c_int;
1063    pub fn sqlite3_sleep(arg1: ::libc::c_int) -> ::libc::c_int;
1064    pub fn sqlite3_get_autocommit(arg1: *mut sqlite3) -> ::libc::c_int;
1065    pub fn sqlite3_db_handle(arg1: *mut sqlite3_stmt) -> *mut sqlite3;
1066    pub fn sqlite3_db_filename(db: *mut sqlite3,
1067                               zDbName: *const ::libc::c_char) ->
1068     *const ::libc::c_char;
1069    pub fn sqlite3_db_readonly(db: *mut sqlite3,
1070                               zDbName: *const ::libc::c_char) ->
1071     ::libc::c_int;
1072    pub fn sqlite3_next_stmt(pDb: *mut sqlite3, pStmt: *mut sqlite3_stmt) ->
1073     *mut sqlite3_stmt;
1074    pub fn sqlite3_commit_hook(arg1: *mut sqlite3,
1075                               arg2:
1076                                   ::std::option::Option<extern "C" fn
1077                                                             (arg1:
1078                                                                  *mut ::libc::c_void)
1079                                                             ->
1080                                                                 ::libc::c_int>,
1081                               arg3: *mut ::libc::c_void) ->
1082     *mut ::libc::c_void;
1083    pub fn sqlite3_rollback_hook(arg1: *mut sqlite3,
1084                                 arg2:
1085                                     ::std::option::Option<extern "C" fn
1086                                                               (arg1:
1087                                                                    *mut ::libc::c_void)>,
1088                                 arg3: *mut ::libc::c_void) ->
1089     *mut ::libc::c_void;
1090    pub fn sqlite3_update_hook(arg1: *mut sqlite3,
1091                               arg2:
1092                                   ::std::option::Option<extern "C" fn
1093                                                             (arg1:
1094                                                                  *mut ::libc::c_void,
1095                                                              arg2:
1096                                                                  ::libc::c_int,
1097                                                              arg3:
1098                                                                  *const ::libc::c_char,
1099                                                              arg4:
1100                                                                  *const ::libc::c_char,
1101                                                              arg5:
1102                                                                  sqlite3_int64)>,
1103                               arg3: *mut ::libc::c_void) ->
1104     *mut ::libc::c_void;
1105    pub fn sqlite3_enable_shared_cache(arg1: ::libc::c_int) -> ::libc::c_int;
1106    pub fn sqlite3_release_memory(arg1: ::libc::c_int) -> ::libc::c_int;
1107    pub fn sqlite3_db_release_memory(arg1: *mut sqlite3) -> ::libc::c_int;
1108    pub fn sqlite3_soft_heap_limit64(N: sqlite3_int64) -> sqlite3_int64;
1109    pub fn sqlite3_soft_heap_limit(N: ::libc::c_int);
1110    pub fn sqlite3_table_column_metadata(db: *mut sqlite3,
1111                                         zDbName: *const ::libc::c_char,
1112                                         zTableName: *const ::libc::c_char,
1113                                         zColumnName: *const ::libc::c_char,
1114                                         pzDataType:
1115                                             *mut *const ::libc::c_char,
1116                                         pzCollSeq:
1117                                             *mut *const ::libc::c_char,
1118                                         pNotNull: *mut ::libc::c_int,
1119                                         pPrimaryKey: *mut ::libc::c_int,
1120                                         pAutoinc: *mut ::libc::c_int) ->
1121     ::libc::c_int;
1122    pub fn sqlite3_load_extension(db: *mut sqlite3,
1123                                  zFile: *const ::libc::c_char,
1124                                  zProc: *const ::libc::c_char,
1125                                  pzErrMsg: *mut *mut ::libc::c_char) ->
1126     ::libc::c_int;
1127    pub fn sqlite3_enable_load_extension(db: *mut sqlite3,
1128                                         onoff: ::libc::c_int) ->
1129     ::libc::c_int;
1130    pub fn sqlite3_auto_extension(xEntryPoint:
1131                                      ::std::option::Option<extern "C" fn()>)
1132     -> ::libc::c_int;
1133    pub fn sqlite3_cancel_auto_extension(xEntryPoint:
1134                                             ::std::option::Option<extern "C" fn
1135                                                                       ()>) ->
1136     ::libc::c_int;
1137    pub fn sqlite3_reset_auto_extension();
1138    pub fn sqlite3_create_module(db: *mut sqlite3,
1139                                 zName: *const ::libc::c_char,
1140                                 p: *const sqlite3_module,
1141                                 pClientData: *mut ::libc::c_void) ->
1142     ::libc::c_int;
1143    pub fn sqlite3_create_module_v2(db: *mut sqlite3,
1144                                    zName: *const ::libc::c_char,
1145                                    p: *const sqlite3_module,
1146                                    pClientData: *mut ::libc::c_void,
1147                                    xDestroy:
1148                                        ::std::option::Option<extern "C" fn
1149                                                                  (arg1:
1150                                                                       *mut ::libc::c_void)>)
1151     -> ::libc::c_int;
1152    pub fn sqlite3_declare_vtab(arg1: *mut sqlite3,
1153                                zSQL: *const ::libc::c_char) -> ::libc::c_int;
1154    pub fn sqlite3_overload_function(arg1: *mut sqlite3,
1155                                     zFuncName: *const ::libc::c_char,
1156                                     nArg: ::libc::c_int) -> ::libc::c_int;
1157    pub fn sqlite3_blob_open(arg1: *mut sqlite3, zDb: *const ::libc::c_char,
1158                             zTable: *const ::libc::c_char,
1159                             zColumn: *const ::libc::c_char,
1160                             iRow: sqlite3_int64, flags: ::libc::c_int,
1161                             ppBlob: *mut *mut sqlite3_blob) -> ::libc::c_int;
1162    pub fn sqlite3_blob_reopen(arg1: *mut sqlite3_blob, arg2: sqlite3_int64)
1163     -> ::libc::c_int;
1164    pub fn sqlite3_blob_close(arg1: *mut sqlite3_blob) -> ::libc::c_int;
1165    pub fn sqlite3_blob_bytes(arg1: *mut sqlite3_blob) -> ::libc::c_int;
1166    pub fn sqlite3_blob_read(arg1: *mut sqlite3_blob, Z: *mut ::libc::c_void,
1167                             N: ::libc::c_int, iOffset: ::libc::c_int) ->
1168     ::libc::c_int;
1169    pub fn sqlite3_blob_write(arg1: *mut sqlite3_blob,
1170                              z: *const ::libc::c_void, n: ::libc::c_int,
1171                              iOffset: ::libc::c_int) -> ::libc::c_int;
1172    pub fn sqlite3_vfs_find(zVfsName: *const ::libc::c_char) ->
1173     *mut sqlite3_vfs;
1174    pub fn sqlite3_vfs_register(arg1: *mut sqlite3_vfs,
1175                                makeDflt: ::libc::c_int) -> ::libc::c_int;
1176    pub fn sqlite3_vfs_unregister(arg1: *mut sqlite3_vfs) -> ::libc::c_int;
1177    pub fn sqlite3_mutex_alloc(arg1: ::libc::c_int) -> *mut sqlite3_mutex;
1178    pub fn sqlite3_mutex_free(arg1: *mut sqlite3_mutex);
1179    pub fn sqlite3_mutex_enter(arg1: *mut sqlite3_mutex);
1180    pub fn sqlite3_mutex_try(arg1: *mut sqlite3_mutex) -> ::libc::c_int;
1181    pub fn sqlite3_mutex_leave(arg1: *mut sqlite3_mutex);
1182    pub fn sqlite3_mutex_held(arg1: *mut sqlite3_mutex) -> ::libc::c_int;
1183    pub fn sqlite3_mutex_notheld(arg1: *mut sqlite3_mutex) -> ::libc::c_int;
1184    pub fn sqlite3_db_mutex(arg1: *mut sqlite3) -> *mut sqlite3_mutex;
1185    pub fn sqlite3_file_control(arg1: *mut sqlite3,
1186                                zDbName: *const ::libc::c_char,
1187                                op: ::libc::c_int, arg2: *mut ::libc::c_void)
1188     -> ::libc::c_int;
1189    pub fn sqlite3_test_control(op: ::libc::c_int, ...) -> ::libc::c_int;
1190    pub fn sqlite3_status(op: ::libc::c_int, pCurrent: *mut ::libc::c_int,
1191                          pHighwater: *mut ::libc::c_int,
1192                          resetFlag: ::libc::c_int) -> ::libc::c_int;
1193    pub fn sqlite3_db_status(arg1: *mut sqlite3, op: ::libc::c_int,
1194                             pCur: *mut ::libc::c_int,
1195                             pHiwtr: *mut ::libc::c_int,
1196                             resetFlg: ::libc::c_int) -> ::libc::c_int;
1197    pub fn sqlite3_stmt_status(arg1: *mut sqlite3_stmt, op: ::libc::c_int,
1198                               resetFlg: ::libc::c_int) -> ::libc::c_int;
1199    pub fn sqlite3_backup_init(pDest: *mut sqlite3,
1200                               zDestName: *const ::libc::c_char,
1201                               pSource: *mut sqlite3,
1202                               zSourceName: *const ::libc::c_char) ->
1203     *mut sqlite3_backup;
1204    pub fn sqlite3_backup_step(p: *mut sqlite3_backup, nPage: ::libc::c_int)
1205     -> ::libc::c_int;
1206    pub fn sqlite3_backup_finish(p: *mut sqlite3_backup) -> ::libc::c_int;
1207    pub fn sqlite3_backup_remaining(p: *mut sqlite3_backup) -> ::libc::c_int;
1208    pub fn sqlite3_backup_pagecount(p: *mut sqlite3_backup) -> ::libc::c_int;
1209    pub fn sqlite3_unlock_notify(pBlocked: *mut sqlite3,
1210                                 xNotify:
1211                                     ::std::option::Option<extern "C" fn
1212                                                               (arg1:
1213                                                                    *mut *mut ::libc::c_void,
1214                                                                arg2:
1215                                                                    ::libc::c_int)>,
1216                                 pNotifyArg: *mut ::libc::c_void) ->
1217     ::libc::c_int;
1218    pub fn sqlite3_stricmp(arg1: *const ::libc::c_char,
1219                           arg2: *const ::libc::c_char) -> ::libc::c_int;
1220    pub fn sqlite3_strnicmp(arg1: *const ::libc::c_char,
1221                            arg2: *const ::libc::c_char, arg3: ::libc::c_int)
1222     -> ::libc::c_int;
1223    pub fn sqlite3_strglob(zGlob: *const ::libc::c_char,
1224                           zStr: *const ::libc::c_char) -> ::libc::c_int;
1225    pub fn sqlite3_log(iErrCode: ::libc::c_int,
1226                       zFormat: *const ::libc::c_char, ...);
1227    pub fn sqlite3_wal_hook(arg1: *mut sqlite3,
1228                            arg2:
1229                                ::std::option::Option<extern "C" fn
1230                                                          (arg1:
1231                                                               *mut ::libc::c_void,
1232                                                           arg2: *mut sqlite3,
1233                                                           arg3:
1234                                                               *const ::libc::c_char,
1235                                                           arg4:
1236                                                               ::libc::c_int)
1237                                                          -> ::libc::c_int>,
1238                            arg3: *mut ::libc::c_void) -> *mut ::libc::c_void;
1239    pub fn sqlite3_wal_autocheckpoint(db: *mut sqlite3, N: ::libc::c_int) ->
1240     ::libc::c_int;
1241    pub fn sqlite3_wal_checkpoint(db: *mut sqlite3,
1242                                  zDb: *const ::libc::c_char) ->
1243     ::libc::c_int;
1244    pub fn sqlite3_wal_checkpoint_v2(db: *mut sqlite3,
1245                                     zDb: *const ::libc::c_char,
1246                                     eMode: ::libc::c_int,
1247                                     pnLog: *mut ::libc::c_int,
1248                                     pnCkpt: *mut ::libc::c_int) ->
1249     ::libc::c_int;
1250    pub fn sqlite3_vtab_config(arg1: *mut sqlite3, op: ::libc::c_int, ...) ->
1251     ::libc::c_int;
1252    pub fn sqlite3_vtab_on_conflict(arg1: *mut sqlite3) -> ::libc::c_int;
1253    pub fn sqlite3_rtree_geometry_callback(db: *mut sqlite3,
1254                                           zGeom: *const ::libc::c_char,
1255                                           xGeom:
1256                                               ::std::option::Option<extern "C" fn
1257                                                                         (arg1:
1258                                                                              *mut sqlite3_rtree_geometry,
1259                                                                          arg2:
1260                                                                              ::libc::c_int,
1261                                                                          arg3:
1262                                                                              *mut ::libc::c_double,
1263                                                                          arg4:
1264                                                                              *mut ::libc::c_int)
1265                                                                         ->
1266                                                                             ::libc::c_int>,
1267                                           pContext: *mut ::libc::c_void) ->
1268     ::libc::c_int;
1269}