Skip to main content

sqlite_tiny/ffi/
bindgen.rs

1/* automatically generated by rust-bindgen 0.72.1 */
2
3pub const SQLITE_VERSION: &[u8; 7] = b"3.53.0\0";
4pub const SQLITE_VERSION_NUMBER: i32 = 3053000;
5pub const SQLITE_SOURCE_ID: &[u8; 85] =
6    b"2026-04-09 11:41:38 4525003a53a7fc63ca75c59b22c79608659ca12f0131f52c18637f829977f20b\0";
7pub const SQLITE_SCM_BRANCH: &[u8; 6] = b"trunk\0";
8pub const SQLITE_SCM_TAGS: &[u8; 37] = b"release major-release version-3.53.0\0";
9pub const SQLITE_SCM_DATETIME: &[u8; 25] = b"2026-04-09T11:41:38.498Z\0";
10pub const SQLITE_OK: i32 = 0;
11pub const SQLITE_ERROR: i32 = 1;
12pub const SQLITE_INTERNAL: i32 = 2;
13pub const SQLITE_PERM: i32 = 3;
14pub const SQLITE_ABORT: i32 = 4;
15pub const SQLITE_BUSY: i32 = 5;
16pub const SQLITE_LOCKED: i32 = 6;
17pub const SQLITE_NOMEM: i32 = 7;
18pub const SQLITE_READONLY: i32 = 8;
19pub const SQLITE_INTERRUPT: i32 = 9;
20pub const SQLITE_IOERR: i32 = 10;
21pub const SQLITE_CORRUPT: i32 = 11;
22pub const SQLITE_NOTFOUND: i32 = 12;
23pub const SQLITE_FULL: i32 = 13;
24pub const SQLITE_CANTOPEN: i32 = 14;
25pub const SQLITE_PROTOCOL: i32 = 15;
26pub const SQLITE_EMPTY: i32 = 16;
27pub const SQLITE_SCHEMA: i32 = 17;
28pub const SQLITE_TOOBIG: i32 = 18;
29pub const SQLITE_CONSTRAINT: i32 = 19;
30pub const SQLITE_MISMATCH: i32 = 20;
31pub const SQLITE_MISUSE: i32 = 21;
32pub const SQLITE_NOLFS: i32 = 22;
33pub const SQLITE_AUTH: i32 = 23;
34pub const SQLITE_FORMAT: i32 = 24;
35pub const SQLITE_RANGE: i32 = 25;
36pub const SQLITE_NOTADB: i32 = 26;
37pub const SQLITE_NOTICE: i32 = 27;
38pub const SQLITE_WARNING: i32 = 28;
39pub const SQLITE_ROW: i32 = 100;
40pub const SQLITE_DONE: i32 = 101;
41pub const SQLITE_ERROR_MISSING_COLLSEQ: i32 = 257;
42pub const SQLITE_ERROR_RETRY: i32 = 513;
43pub const SQLITE_ERROR_SNAPSHOT: i32 = 769;
44pub const SQLITE_ERROR_RESERVESIZE: i32 = 1025;
45pub const SQLITE_ERROR_KEY: i32 = 1281;
46pub const SQLITE_ERROR_UNABLE: i32 = 1537;
47pub const SQLITE_IOERR_READ: i32 = 266;
48pub const SQLITE_IOERR_SHORT_READ: i32 = 522;
49pub const SQLITE_IOERR_WRITE: i32 = 778;
50pub const SQLITE_IOERR_FSYNC: i32 = 1034;
51pub const SQLITE_IOERR_DIR_FSYNC: i32 = 1290;
52pub const SQLITE_IOERR_TRUNCATE: i32 = 1546;
53pub const SQLITE_IOERR_FSTAT: i32 = 1802;
54pub const SQLITE_IOERR_UNLOCK: i32 = 2058;
55pub const SQLITE_IOERR_RDLOCK: i32 = 2314;
56pub const SQLITE_IOERR_DELETE: i32 = 2570;
57pub const SQLITE_IOERR_BLOCKED: i32 = 2826;
58pub const SQLITE_IOERR_NOMEM: i32 = 3082;
59pub const SQLITE_IOERR_ACCESS: i32 = 3338;
60pub const SQLITE_IOERR_CHECKRESERVEDLOCK: i32 = 3594;
61pub const SQLITE_IOERR_LOCK: i32 = 3850;
62pub const SQLITE_IOERR_CLOSE: i32 = 4106;
63pub const SQLITE_IOERR_DIR_CLOSE: i32 = 4362;
64pub const SQLITE_IOERR_SHMOPEN: i32 = 4618;
65pub const SQLITE_IOERR_SHMSIZE: i32 = 4874;
66pub const SQLITE_IOERR_SHMLOCK: i32 = 5130;
67pub const SQLITE_IOERR_SHMMAP: i32 = 5386;
68pub const SQLITE_IOERR_SEEK: i32 = 5642;
69pub const SQLITE_IOERR_DELETE_NOENT: i32 = 5898;
70pub const SQLITE_IOERR_MMAP: i32 = 6154;
71pub const SQLITE_IOERR_GETTEMPPATH: i32 = 6410;
72pub const SQLITE_IOERR_CONVPATH: i32 = 6666;
73pub const SQLITE_IOERR_VNODE: i32 = 6922;
74pub const SQLITE_IOERR_AUTH: i32 = 7178;
75pub const SQLITE_IOERR_BEGIN_ATOMIC: i32 = 7434;
76pub const SQLITE_IOERR_COMMIT_ATOMIC: i32 = 7690;
77pub const SQLITE_IOERR_ROLLBACK_ATOMIC: i32 = 7946;
78pub const SQLITE_IOERR_DATA: i32 = 8202;
79pub const SQLITE_IOERR_CORRUPTFS: i32 = 8458;
80pub const SQLITE_IOERR_IN_PAGE: i32 = 8714;
81pub const SQLITE_IOERR_BADKEY: i32 = 8970;
82pub const SQLITE_IOERR_CODEC: i32 = 9226;
83pub const SQLITE_LOCKED_SHAREDCACHE: i32 = 262;
84pub const SQLITE_LOCKED_VTAB: i32 = 518;
85pub const SQLITE_BUSY_RECOVERY: i32 = 261;
86pub const SQLITE_BUSY_SNAPSHOT: i32 = 517;
87pub const SQLITE_BUSY_TIMEOUT: i32 = 773;
88pub const SQLITE_CANTOPEN_NOTEMPDIR: i32 = 270;
89pub const SQLITE_CANTOPEN_ISDIR: i32 = 526;
90pub const SQLITE_CANTOPEN_FULLPATH: i32 = 782;
91pub const SQLITE_CANTOPEN_CONVPATH: i32 = 1038;
92pub const SQLITE_CANTOPEN_DIRTYWAL: i32 = 1294;
93pub const SQLITE_CANTOPEN_SYMLINK: i32 = 1550;
94pub const SQLITE_CORRUPT_VTAB: i32 = 267;
95pub const SQLITE_CORRUPT_SEQUENCE: i32 = 523;
96pub const SQLITE_CORRUPT_INDEX: i32 = 779;
97pub const SQLITE_READONLY_RECOVERY: i32 = 264;
98pub const SQLITE_READONLY_CANTLOCK: i32 = 520;
99pub const SQLITE_READONLY_ROLLBACK: i32 = 776;
100pub const SQLITE_READONLY_DBMOVED: i32 = 1032;
101pub const SQLITE_READONLY_CANTINIT: i32 = 1288;
102pub const SQLITE_READONLY_DIRECTORY: i32 = 1544;
103pub const SQLITE_ABORT_ROLLBACK: i32 = 516;
104pub const SQLITE_CONSTRAINT_CHECK: i32 = 275;
105pub const SQLITE_CONSTRAINT_COMMITHOOK: i32 = 531;
106pub const SQLITE_CONSTRAINT_FOREIGNKEY: i32 = 787;
107pub const SQLITE_CONSTRAINT_FUNCTION: i32 = 1043;
108pub const SQLITE_CONSTRAINT_NOTNULL: i32 = 1299;
109pub const SQLITE_CONSTRAINT_PRIMARYKEY: i32 = 1555;
110pub const SQLITE_CONSTRAINT_TRIGGER: i32 = 1811;
111pub const SQLITE_CONSTRAINT_UNIQUE: i32 = 2067;
112pub const SQLITE_CONSTRAINT_VTAB: i32 = 2323;
113pub const SQLITE_CONSTRAINT_ROWID: i32 = 2579;
114pub const SQLITE_CONSTRAINT_PINNED: i32 = 2835;
115pub const SQLITE_CONSTRAINT_DATATYPE: i32 = 3091;
116pub const SQLITE_NOTICE_RECOVER_WAL: i32 = 283;
117pub const SQLITE_NOTICE_RECOVER_ROLLBACK: i32 = 539;
118pub const SQLITE_NOTICE_RBU: i32 = 795;
119pub const SQLITE_WARNING_AUTOINDEX: i32 = 284;
120pub const SQLITE_AUTH_USER: i32 = 279;
121pub const SQLITE_OK_LOAD_PERMANENTLY: i32 = 256;
122pub const SQLITE_OK_SYMLINK: i32 = 512;
123pub const SQLITE_OPEN_READONLY: i32 = 1;
124pub const SQLITE_OPEN_READWRITE: i32 = 2;
125pub const SQLITE_OPEN_CREATE: i32 = 4;
126pub const SQLITE_OPEN_DELETEONCLOSE: i32 = 8;
127pub const SQLITE_OPEN_EXCLUSIVE: i32 = 16;
128pub const SQLITE_OPEN_AUTOPROXY: i32 = 32;
129pub const SQLITE_OPEN_URI: i32 = 64;
130pub const SQLITE_OPEN_MEMORY: i32 = 128;
131pub const SQLITE_OPEN_MAIN_DB: i32 = 256;
132pub const SQLITE_OPEN_TEMP_DB: i32 = 512;
133pub const SQLITE_OPEN_TRANSIENT_DB: i32 = 1024;
134pub const SQLITE_OPEN_MAIN_JOURNAL: i32 = 2048;
135pub const SQLITE_OPEN_TEMP_JOURNAL: i32 = 4096;
136pub const SQLITE_OPEN_SUBJOURNAL: i32 = 8192;
137pub const SQLITE_OPEN_SUPER_JOURNAL: i32 = 16384;
138pub const SQLITE_OPEN_NOMUTEX: i32 = 32768;
139pub const SQLITE_OPEN_FULLMUTEX: i32 = 65536;
140pub const SQLITE_OPEN_SHAREDCACHE: i32 = 131072;
141pub const SQLITE_OPEN_PRIVATECACHE: i32 = 262144;
142pub const SQLITE_OPEN_WAL: i32 = 524288;
143pub const SQLITE_OPEN_NOFOLLOW: i32 = 16777216;
144pub const SQLITE_OPEN_EXRESCODE: i32 = 33554432;
145pub const SQLITE_OPEN_MASTER_JOURNAL: i32 = 16384;
146pub const SQLITE_IOCAP_ATOMIC: i32 = 1;
147pub const SQLITE_IOCAP_ATOMIC512: i32 = 2;
148pub const SQLITE_IOCAP_ATOMIC1K: i32 = 4;
149pub const SQLITE_IOCAP_ATOMIC2K: i32 = 8;
150pub const SQLITE_IOCAP_ATOMIC4K: i32 = 16;
151pub const SQLITE_IOCAP_ATOMIC8K: i32 = 32;
152pub const SQLITE_IOCAP_ATOMIC16K: i32 = 64;
153pub const SQLITE_IOCAP_ATOMIC32K: i32 = 128;
154pub const SQLITE_IOCAP_ATOMIC64K: i32 = 256;
155pub const SQLITE_IOCAP_SAFE_APPEND: i32 = 512;
156pub const SQLITE_IOCAP_SEQUENTIAL: i32 = 1024;
157pub const SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN: i32 = 2048;
158pub const SQLITE_IOCAP_POWERSAFE_OVERWRITE: i32 = 4096;
159pub const SQLITE_IOCAP_IMMUTABLE: i32 = 8192;
160pub const SQLITE_IOCAP_BATCH_ATOMIC: i32 = 16384;
161pub const SQLITE_IOCAP_SUBPAGE_READ: i32 = 32768;
162pub const SQLITE_LOCK_NONE: i32 = 0;
163pub const SQLITE_LOCK_SHARED: i32 = 1;
164pub const SQLITE_LOCK_RESERVED: i32 = 2;
165pub const SQLITE_LOCK_PENDING: i32 = 3;
166pub const SQLITE_LOCK_EXCLUSIVE: i32 = 4;
167pub const SQLITE_SYNC_NORMAL: i32 = 2;
168pub const SQLITE_SYNC_FULL: i32 = 3;
169pub const SQLITE_SYNC_DATAONLY: i32 = 16;
170pub const SQLITE_FCNTL_LOCKSTATE: i32 = 1;
171pub const SQLITE_FCNTL_GET_LOCKPROXYFILE: i32 = 2;
172pub const SQLITE_FCNTL_SET_LOCKPROXYFILE: i32 = 3;
173pub const SQLITE_FCNTL_LAST_ERRNO: i32 = 4;
174pub const SQLITE_FCNTL_SIZE_HINT: i32 = 5;
175pub const SQLITE_FCNTL_CHUNK_SIZE: i32 = 6;
176pub const SQLITE_FCNTL_FILE_POINTER: i32 = 7;
177pub const SQLITE_FCNTL_SYNC_OMITTED: i32 = 8;
178pub const SQLITE_FCNTL_WIN32_AV_RETRY: i32 = 9;
179pub const SQLITE_FCNTL_PERSIST_WAL: i32 = 10;
180pub const SQLITE_FCNTL_OVERWRITE: i32 = 11;
181pub const SQLITE_FCNTL_VFSNAME: i32 = 12;
182pub const SQLITE_FCNTL_POWERSAFE_OVERWRITE: i32 = 13;
183pub const SQLITE_FCNTL_PRAGMA: i32 = 14;
184pub const SQLITE_FCNTL_BUSYHANDLER: i32 = 15;
185pub const SQLITE_FCNTL_TEMPFILENAME: i32 = 16;
186pub const SQLITE_FCNTL_MMAP_SIZE: i32 = 18;
187pub const SQLITE_FCNTL_TRACE: i32 = 19;
188pub const SQLITE_FCNTL_HAS_MOVED: i32 = 20;
189pub const SQLITE_FCNTL_SYNC: i32 = 21;
190pub const SQLITE_FCNTL_COMMIT_PHASETWO: i32 = 22;
191pub const SQLITE_FCNTL_WIN32_SET_HANDLE: i32 = 23;
192pub const SQLITE_FCNTL_WAL_BLOCK: i32 = 24;
193pub const SQLITE_FCNTL_ZIPVFS: i32 = 25;
194pub const SQLITE_FCNTL_RBU: i32 = 26;
195pub const SQLITE_FCNTL_VFS_POINTER: i32 = 27;
196pub const SQLITE_FCNTL_JOURNAL_POINTER: i32 = 28;
197pub const SQLITE_FCNTL_WIN32_GET_HANDLE: i32 = 29;
198pub const SQLITE_FCNTL_PDB: i32 = 30;
199pub const SQLITE_FCNTL_BEGIN_ATOMIC_WRITE: i32 = 31;
200pub const SQLITE_FCNTL_COMMIT_ATOMIC_WRITE: i32 = 32;
201pub const SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE: i32 = 33;
202pub const SQLITE_FCNTL_LOCK_TIMEOUT: i32 = 34;
203pub const SQLITE_FCNTL_DATA_VERSION: i32 = 35;
204pub const SQLITE_FCNTL_SIZE_LIMIT: i32 = 36;
205pub const SQLITE_FCNTL_CKPT_DONE: i32 = 37;
206pub const SQLITE_FCNTL_RESERVE_BYTES: i32 = 38;
207pub const SQLITE_FCNTL_CKPT_START: i32 = 39;
208pub const SQLITE_FCNTL_EXTERNAL_READER: i32 = 40;
209pub const SQLITE_FCNTL_CKSM_FILE: i32 = 41;
210pub const SQLITE_FCNTL_RESET_CACHE: i32 = 42;
211pub const SQLITE_FCNTL_NULL_IO: i32 = 43;
212pub const SQLITE_FCNTL_BLOCK_ON_CONNECT: i32 = 44;
213pub const SQLITE_FCNTL_FILESTAT: i32 = 45;
214pub const SQLITE_GET_LOCKPROXYFILE: i32 = 2;
215pub const SQLITE_SET_LOCKPROXYFILE: i32 = 3;
216pub const SQLITE_LAST_ERRNO: i32 = 4;
217pub const SQLITE_ACCESS_EXISTS: i32 = 0;
218pub const SQLITE_ACCESS_READWRITE: i32 = 1;
219pub const SQLITE_ACCESS_READ: i32 = 2;
220pub const SQLITE_SHM_UNLOCK: i32 = 1;
221pub const SQLITE_SHM_LOCK: i32 = 2;
222pub const SQLITE_SHM_SHARED: i32 = 4;
223pub const SQLITE_SHM_EXCLUSIVE: i32 = 8;
224pub const SQLITE_SHM_NLOCK: i32 = 8;
225pub const SQLITE_CONFIG_SINGLETHREAD: i32 = 1;
226pub const SQLITE_CONFIG_MULTITHREAD: i32 = 2;
227pub const SQLITE_CONFIG_SERIALIZED: i32 = 3;
228pub const SQLITE_CONFIG_MALLOC: i32 = 4;
229pub const SQLITE_CONFIG_GETMALLOC: i32 = 5;
230pub const SQLITE_CONFIG_SCRATCH: i32 = 6;
231pub const SQLITE_CONFIG_PAGECACHE: i32 = 7;
232pub const SQLITE_CONFIG_HEAP: i32 = 8;
233pub const SQLITE_CONFIG_MEMSTATUS: i32 = 9;
234pub const SQLITE_CONFIG_MUTEX: i32 = 10;
235pub const SQLITE_CONFIG_GETMUTEX: i32 = 11;
236pub const SQLITE_CONFIG_LOOKASIDE: i32 = 13;
237pub const SQLITE_CONFIG_PCACHE: i32 = 14;
238pub const SQLITE_CONFIG_GETPCACHE: i32 = 15;
239pub const SQLITE_CONFIG_LOG: i32 = 16;
240pub const SQLITE_CONFIG_URI: i32 = 17;
241pub const SQLITE_CONFIG_PCACHE2: i32 = 18;
242pub const SQLITE_CONFIG_GETPCACHE2: i32 = 19;
243pub const SQLITE_CONFIG_COVERING_INDEX_SCAN: i32 = 20;
244pub const SQLITE_CONFIG_SQLLOG: i32 = 21;
245pub const SQLITE_CONFIG_MMAP_SIZE: i32 = 22;
246pub const SQLITE_CONFIG_WIN32_HEAPSIZE: i32 = 23;
247pub const SQLITE_CONFIG_PCACHE_HDRSZ: i32 = 24;
248pub const SQLITE_CONFIG_PMASZ: i32 = 25;
249pub const SQLITE_CONFIG_STMTJRNL_SPILL: i32 = 26;
250pub const SQLITE_CONFIG_SMALL_MALLOC: i32 = 27;
251pub const SQLITE_CONFIG_SORTERREF_SIZE: i32 = 28;
252pub const SQLITE_CONFIG_MEMDB_MAXSIZE: i32 = 29;
253pub const SQLITE_CONFIG_ROWID_IN_VIEW: i32 = 30;
254pub const SQLITE_DBCONFIG_MAINDBNAME: i32 = 1000;
255pub const SQLITE_DBCONFIG_LOOKASIDE: i32 = 1001;
256pub const SQLITE_DBCONFIG_ENABLE_FKEY: i32 = 1002;
257pub const SQLITE_DBCONFIG_ENABLE_TRIGGER: i32 = 1003;
258pub const SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER: i32 = 1004;
259pub const SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION: i32 = 1005;
260pub const SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE: i32 = 1006;
261pub const SQLITE_DBCONFIG_ENABLE_QPSG: i32 = 1007;
262pub const SQLITE_DBCONFIG_TRIGGER_EQP: i32 = 1008;
263pub const SQLITE_DBCONFIG_RESET_DATABASE: i32 = 1009;
264pub const SQLITE_DBCONFIG_DEFENSIVE: i32 = 1010;
265pub const SQLITE_DBCONFIG_WRITABLE_SCHEMA: i32 = 1011;
266pub const SQLITE_DBCONFIG_LEGACY_ALTER_TABLE: i32 = 1012;
267pub const SQLITE_DBCONFIG_DQS_DML: i32 = 1013;
268pub const SQLITE_DBCONFIG_DQS_DDL: i32 = 1014;
269pub const SQLITE_DBCONFIG_ENABLE_VIEW: i32 = 1015;
270pub const SQLITE_DBCONFIG_LEGACY_FILE_FORMAT: i32 = 1016;
271pub const SQLITE_DBCONFIG_TRUSTED_SCHEMA: i32 = 1017;
272pub const SQLITE_DBCONFIG_STMT_SCANSTATUS: i32 = 1018;
273pub const SQLITE_DBCONFIG_REVERSE_SCANORDER: i32 = 1019;
274pub const SQLITE_DBCONFIG_ENABLE_ATTACH_CREATE: i32 = 1020;
275pub const SQLITE_DBCONFIG_ENABLE_ATTACH_WRITE: i32 = 1021;
276pub const SQLITE_DBCONFIG_ENABLE_COMMENTS: i32 = 1022;
277pub const SQLITE_DBCONFIG_FP_DIGITS: i32 = 1023;
278pub const SQLITE_DBCONFIG_MAX: i32 = 1023;
279pub const SQLITE_SETLK_BLOCK_ON_CONNECT: i32 = 1;
280pub const SQLITE_DENY: i32 = 1;
281pub const SQLITE_IGNORE: i32 = 2;
282pub const SQLITE_CREATE_INDEX: i32 = 1;
283pub const SQLITE_CREATE_TABLE: i32 = 2;
284pub const SQLITE_CREATE_TEMP_INDEX: i32 = 3;
285pub const SQLITE_CREATE_TEMP_TABLE: i32 = 4;
286pub const SQLITE_CREATE_TEMP_TRIGGER: i32 = 5;
287pub const SQLITE_CREATE_TEMP_VIEW: i32 = 6;
288pub const SQLITE_CREATE_TRIGGER: i32 = 7;
289pub const SQLITE_CREATE_VIEW: i32 = 8;
290pub const SQLITE_DELETE: i32 = 9;
291pub const SQLITE_DROP_INDEX: i32 = 10;
292pub const SQLITE_DROP_TABLE: i32 = 11;
293pub const SQLITE_DROP_TEMP_INDEX: i32 = 12;
294pub const SQLITE_DROP_TEMP_TABLE: i32 = 13;
295pub const SQLITE_DROP_TEMP_TRIGGER: i32 = 14;
296pub const SQLITE_DROP_TEMP_VIEW: i32 = 15;
297pub const SQLITE_DROP_TRIGGER: i32 = 16;
298pub const SQLITE_DROP_VIEW: i32 = 17;
299pub const SQLITE_INSERT: i32 = 18;
300pub const SQLITE_PRAGMA: i32 = 19;
301pub const SQLITE_READ: i32 = 20;
302pub const SQLITE_SELECT: i32 = 21;
303pub const SQLITE_TRANSACTION: i32 = 22;
304pub const SQLITE_UPDATE: i32 = 23;
305pub const SQLITE_ATTACH: i32 = 24;
306pub const SQLITE_DETACH: i32 = 25;
307pub const SQLITE_ALTER_TABLE: i32 = 26;
308pub const SQLITE_REINDEX: i32 = 27;
309pub const SQLITE_ANALYZE: i32 = 28;
310pub const SQLITE_CREATE_VTABLE: i32 = 29;
311pub const SQLITE_DROP_VTABLE: i32 = 30;
312pub const SQLITE_FUNCTION: i32 = 31;
313pub const SQLITE_SAVEPOINT: i32 = 32;
314pub const SQLITE_COPY: i32 = 0;
315pub const SQLITE_RECURSIVE: i32 = 33;
316pub const SQLITE_TRACE_STMT: i32 = 1;
317pub const SQLITE_TRACE_PROFILE: i32 = 2;
318pub const SQLITE_TRACE_ROW: i32 = 4;
319pub const SQLITE_TRACE_CLOSE: i32 = 8;
320pub const SQLITE_LIMIT_LENGTH: i32 = 0;
321pub const SQLITE_LIMIT_SQL_LENGTH: i32 = 1;
322pub const SQLITE_LIMIT_COLUMN: i32 = 2;
323pub const SQLITE_LIMIT_EXPR_DEPTH: i32 = 3;
324pub const SQLITE_LIMIT_COMPOUND_SELECT: i32 = 4;
325pub const SQLITE_LIMIT_VDBE_OP: i32 = 5;
326pub const SQLITE_LIMIT_FUNCTION_ARG: i32 = 6;
327pub const SQLITE_LIMIT_ATTACHED: i32 = 7;
328pub const SQLITE_LIMIT_LIKE_PATTERN_LENGTH: i32 = 8;
329pub const SQLITE_LIMIT_VARIABLE_NUMBER: i32 = 9;
330pub const SQLITE_LIMIT_TRIGGER_DEPTH: i32 = 10;
331pub const SQLITE_LIMIT_WORKER_THREADS: i32 = 11;
332pub const SQLITE_LIMIT_PARSER_DEPTH: i32 = 12;
333pub const SQLITE_PREPARE_PERSISTENT: i32 = 1;
334pub const SQLITE_PREPARE_NORMALIZE: i32 = 2;
335pub const SQLITE_PREPARE_NO_VTAB: i32 = 4;
336pub const SQLITE_PREPARE_DONT_LOG: i32 = 16;
337pub const SQLITE_PREPARE_FROM_DDL: i32 = 32;
338pub const SQLITE_INTEGER: i32 = 1;
339pub const SQLITE_FLOAT: i32 = 2;
340pub const SQLITE_BLOB: i32 = 4;
341pub const SQLITE_NULL: i32 = 5;
342pub const SQLITE_TEXT: i32 = 3;
343pub const SQLITE3_TEXT: i32 = 3;
344pub const SQLITE_UTF8: i32 = 1;
345pub const SQLITE_UTF16LE: i32 = 2;
346pub const SQLITE_UTF16BE: i32 = 3;
347pub const SQLITE_UTF16: i32 = 4;
348pub const SQLITE_ANY: i32 = 5;
349pub const SQLITE_UTF16_ALIGNED: i32 = 8;
350pub const SQLITE_UTF8_ZT: i32 = 16;
351pub const SQLITE_DETERMINISTIC: i32 = 2048;
352pub const SQLITE_DIRECTONLY: i32 = 524288;
353pub const SQLITE_SUBTYPE: i32 = 1048576;
354pub const SQLITE_INNOCUOUS: i32 = 2097152;
355pub const SQLITE_RESULT_SUBTYPE: i32 = 16777216;
356pub const SQLITE_SELFORDER1: i32 = 33554432;
357pub const SQLITE_WIN32_DATA_DIRECTORY_TYPE: i32 = 1;
358pub const SQLITE_WIN32_TEMP_DIRECTORY_TYPE: i32 = 2;
359pub const SQLITE_TXN_NONE: i32 = 0;
360pub const SQLITE_TXN_READ: i32 = 1;
361pub const SQLITE_TXN_WRITE: i32 = 2;
362pub const SQLITE_INDEX_SCAN_UNIQUE: i32 = 1;
363pub const SQLITE_INDEX_SCAN_HEX: i32 = 2;
364pub const SQLITE_INDEX_CONSTRAINT_EQ: i32 = 2;
365pub const SQLITE_INDEX_CONSTRAINT_GT: i32 = 4;
366pub const SQLITE_INDEX_CONSTRAINT_LE: i32 = 8;
367pub const SQLITE_INDEX_CONSTRAINT_LT: i32 = 16;
368pub const SQLITE_INDEX_CONSTRAINT_GE: i32 = 32;
369pub const SQLITE_INDEX_CONSTRAINT_MATCH: i32 = 64;
370pub const SQLITE_INDEX_CONSTRAINT_LIKE: i32 = 65;
371pub const SQLITE_INDEX_CONSTRAINT_GLOB: i32 = 66;
372pub const SQLITE_INDEX_CONSTRAINT_REGEXP: i32 = 67;
373pub const SQLITE_INDEX_CONSTRAINT_NE: i32 = 68;
374pub const SQLITE_INDEX_CONSTRAINT_ISNOT: i32 = 69;
375pub const SQLITE_INDEX_CONSTRAINT_ISNOTNULL: i32 = 70;
376pub const SQLITE_INDEX_CONSTRAINT_ISNULL: i32 = 71;
377pub const SQLITE_INDEX_CONSTRAINT_IS: i32 = 72;
378pub const SQLITE_INDEX_CONSTRAINT_LIMIT: i32 = 73;
379pub const SQLITE_INDEX_CONSTRAINT_OFFSET: i32 = 74;
380pub const SQLITE_INDEX_CONSTRAINT_FUNCTION: i32 = 150;
381pub const SQLITE_MUTEX_FAST: i32 = 0;
382pub const SQLITE_MUTEX_RECURSIVE: i32 = 1;
383pub const SQLITE_MUTEX_STATIC_MAIN: i32 = 2;
384pub const SQLITE_MUTEX_STATIC_MEM: i32 = 3;
385pub const SQLITE_MUTEX_STATIC_MEM2: i32 = 4;
386pub const SQLITE_MUTEX_STATIC_OPEN: i32 = 4;
387pub const SQLITE_MUTEX_STATIC_PRNG: i32 = 5;
388pub const SQLITE_MUTEX_STATIC_LRU: i32 = 6;
389pub const SQLITE_MUTEX_STATIC_LRU2: i32 = 7;
390pub const SQLITE_MUTEX_STATIC_PMEM: i32 = 7;
391pub const SQLITE_MUTEX_STATIC_APP1: i32 = 8;
392pub const SQLITE_MUTEX_STATIC_APP2: i32 = 9;
393pub const SQLITE_MUTEX_STATIC_APP3: i32 = 10;
394pub const SQLITE_MUTEX_STATIC_VFS1: i32 = 11;
395pub const SQLITE_MUTEX_STATIC_VFS2: i32 = 12;
396pub const SQLITE_MUTEX_STATIC_VFS3: i32 = 13;
397pub const SQLITE_MUTEX_STATIC_MASTER: i32 = 2;
398pub const SQLITE_TESTCTRL_FIRST: i32 = 5;
399pub const SQLITE_TESTCTRL_PRNG_SAVE: i32 = 5;
400pub const SQLITE_TESTCTRL_PRNG_RESTORE: i32 = 6;
401pub const SQLITE_TESTCTRL_PRNG_RESET: i32 = 7;
402pub const SQLITE_TESTCTRL_FK_NO_ACTION: i32 = 7;
403pub const SQLITE_TESTCTRL_BITVEC_TEST: i32 = 8;
404pub const SQLITE_TESTCTRL_FAULT_INSTALL: i32 = 9;
405pub const SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS: i32 = 10;
406pub const SQLITE_TESTCTRL_PENDING_BYTE: i32 = 11;
407pub const SQLITE_TESTCTRL_ASSERT: i32 = 12;
408pub const SQLITE_TESTCTRL_ALWAYS: i32 = 13;
409pub const SQLITE_TESTCTRL_RESERVE: i32 = 14;
410pub const SQLITE_TESTCTRL_JSON_SELFCHECK: i32 = 14;
411pub const SQLITE_TESTCTRL_OPTIMIZATIONS: i32 = 15;
412pub const SQLITE_TESTCTRL_ISKEYWORD: i32 = 16;
413pub const SQLITE_TESTCTRL_GETOPT: i32 = 16;
414pub const SQLITE_TESTCTRL_SCRATCHMALLOC: i32 = 17;
415pub const SQLITE_TESTCTRL_INTERNAL_FUNCTIONS: i32 = 17;
416pub const SQLITE_TESTCTRL_LOCALTIME_FAULT: i32 = 18;
417pub const SQLITE_TESTCTRL_EXPLAIN_STMT: i32 = 19;
418pub const SQLITE_TESTCTRL_ONCE_RESET_THRESHOLD: i32 = 19;
419pub const SQLITE_TESTCTRL_NEVER_CORRUPT: i32 = 20;
420pub const SQLITE_TESTCTRL_VDBE_COVERAGE: i32 = 21;
421pub const SQLITE_TESTCTRL_BYTEORDER: i32 = 22;
422pub const SQLITE_TESTCTRL_ISINIT: i32 = 23;
423pub const SQLITE_TESTCTRL_SORTER_MMAP: i32 = 24;
424pub const SQLITE_TESTCTRL_IMPOSTER: i32 = 25;
425pub const SQLITE_TESTCTRL_PARSER_COVERAGE: i32 = 26;
426pub const SQLITE_TESTCTRL_RESULT_INTREAL: i32 = 27;
427pub const SQLITE_TESTCTRL_PRNG_SEED: i32 = 28;
428pub const SQLITE_TESTCTRL_EXTRA_SCHEMA_CHECKS: i32 = 29;
429pub const SQLITE_TESTCTRL_SEEK_COUNT: i32 = 30;
430pub const SQLITE_TESTCTRL_TRACEFLAGS: i32 = 31;
431pub const SQLITE_TESTCTRL_TUNE: i32 = 32;
432pub const SQLITE_TESTCTRL_LOGEST: i32 = 33;
433pub const SQLITE_TESTCTRL_USELONGDOUBLE: i32 = 34;
434pub const SQLITE_TESTCTRL_ATOF: i32 = 34;
435pub const SQLITE_TESTCTRL_LAST: i32 = 34;
436pub const SQLITE_STATUS_MEMORY_USED: i32 = 0;
437pub const SQLITE_STATUS_PAGECACHE_USED: i32 = 1;
438pub const SQLITE_STATUS_PAGECACHE_OVERFLOW: i32 = 2;
439pub const SQLITE_STATUS_SCRATCH_USED: i32 = 3;
440pub const SQLITE_STATUS_SCRATCH_OVERFLOW: i32 = 4;
441pub const SQLITE_STATUS_MALLOC_SIZE: i32 = 5;
442pub const SQLITE_STATUS_PARSER_STACK: i32 = 6;
443pub const SQLITE_STATUS_PAGECACHE_SIZE: i32 = 7;
444pub const SQLITE_STATUS_SCRATCH_SIZE: i32 = 8;
445pub const SQLITE_STATUS_MALLOC_COUNT: i32 = 9;
446pub const SQLITE_DBSTATUS_LOOKASIDE_USED: i32 = 0;
447pub const SQLITE_DBSTATUS_CACHE_USED: i32 = 1;
448pub const SQLITE_DBSTATUS_SCHEMA_USED: i32 = 2;
449pub const SQLITE_DBSTATUS_STMT_USED: i32 = 3;
450pub const SQLITE_DBSTATUS_LOOKASIDE_HIT: i32 = 4;
451pub const SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE: i32 = 5;
452pub const SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL: i32 = 6;
453pub const SQLITE_DBSTATUS_CACHE_HIT: i32 = 7;
454pub const SQLITE_DBSTATUS_CACHE_MISS: i32 = 8;
455pub const SQLITE_DBSTATUS_CACHE_WRITE: i32 = 9;
456pub const SQLITE_DBSTATUS_DEFERRED_FKS: i32 = 10;
457pub const SQLITE_DBSTATUS_CACHE_USED_SHARED: i32 = 11;
458pub const SQLITE_DBSTATUS_CACHE_SPILL: i32 = 12;
459pub const SQLITE_DBSTATUS_TEMPBUF_SPILL: i32 = 13;
460pub const SQLITE_DBSTATUS_MAX: i32 = 13;
461pub const SQLITE_STMTSTATUS_FULLSCAN_STEP: i32 = 1;
462pub const SQLITE_STMTSTATUS_SORT: i32 = 2;
463pub const SQLITE_STMTSTATUS_AUTOINDEX: i32 = 3;
464pub const SQLITE_STMTSTATUS_VM_STEP: i32 = 4;
465pub const SQLITE_STMTSTATUS_REPREPARE: i32 = 5;
466pub const SQLITE_STMTSTATUS_RUN: i32 = 6;
467pub const SQLITE_STMTSTATUS_FILTER_MISS: i32 = 7;
468pub const SQLITE_STMTSTATUS_FILTER_HIT: i32 = 8;
469pub const SQLITE_STMTSTATUS_MEMUSED: i32 = 99;
470pub const SQLITE_CHECKPOINT_NOOP: i32 = -1;
471pub const SQLITE_CHECKPOINT_PASSIVE: i32 = 0;
472pub const SQLITE_CHECKPOINT_FULL: i32 = 1;
473pub const SQLITE_CHECKPOINT_RESTART: i32 = 2;
474pub const SQLITE_CHECKPOINT_TRUNCATE: i32 = 3;
475pub const SQLITE_VTAB_CONSTRAINT_SUPPORT: i32 = 1;
476pub const SQLITE_VTAB_INNOCUOUS: i32 = 2;
477pub const SQLITE_VTAB_DIRECTONLY: i32 = 3;
478pub const SQLITE_VTAB_USES_ALL_SCHEMAS: i32 = 4;
479pub const SQLITE_ROLLBACK: i32 = 1;
480pub const SQLITE_FAIL: i32 = 3;
481pub const SQLITE_REPLACE: i32 = 5;
482pub const SQLITE_SCANSTAT_NLOOP: i32 = 0;
483pub const SQLITE_SCANSTAT_NVISIT: i32 = 1;
484pub const SQLITE_SCANSTAT_EST: i32 = 2;
485pub const SQLITE_SCANSTAT_NAME: i32 = 3;
486pub const SQLITE_SCANSTAT_EXPLAIN: i32 = 4;
487pub const SQLITE_SCANSTAT_SELECTID: i32 = 5;
488pub const SQLITE_SCANSTAT_PARENTID: i32 = 6;
489pub const SQLITE_SCANSTAT_NCYCLE: i32 = 7;
490pub const SQLITE_SCANSTAT_COMPLEX: i32 = 1;
491pub const SQLITE_SERIALIZE_NOCOPY: i32 = 1;
492pub const SQLITE_DESERIALIZE_FREEONCLOSE: i32 = 1;
493pub const SQLITE_DESERIALIZE_RESIZEABLE: i32 = 2;
494pub const SQLITE_DESERIALIZE_READONLY: i32 = 4;
495pub const SQLITE_CARRAY_INT32: i32 = 0;
496pub const SQLITE_CARRAY_INT64: i32 = 1;
497pub const SQLITE_CARRAY_DOUBLE: i32 = 2;
498pub const SQLITE_CARRAY_TEXT: i32 = 3;
499pub const SQLITE_CARRAY_BLOB: i32 = 4;
500unsafe extern "C" {
501    pub static sqlite3_version: [::core::ffi::c_char; 0usize];
502}
503unsafe extern "C" {
504    pub fn sqlite3_libversion() -> *const ::core::ffi::c_char;
505}
506unsafe extern "C" {
507    pub fn sqlite3_sourceid() -> *const ::core::ffi::c_char;
508}
509unsafe extern "C" {
510    pub fn sqlite3_libversion_number() -> ::core::ffi::c_int;
511}
512unsafe extern "C" {
513    pub fn sqlite3_compileoption_used(zOptName: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
514}
515unsafe extern "C" {
516    pub fn sqlite3_compileoption_get(N: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
517}
518unsafe extern "C" {
519    pub fn sqlite3_threadsafe() -> ::core::ffi::c_int;
520}
521#[repr(C)]
522#[derive(Debug, Copy, Clone)]
523pub struct sqlite3 {
524    _unused: [u8; 0],
525}
526pub type sqlite_int64 = ::core::ffi::c_longlong;
527pub type sqlite_uint64 = ::core::ffi::c_ulonglong;
528pub type sqlite3_int64 = sqlite_int64;
529pub type sqlite3_uint64 = sqlite_uint64;
530unsafe extern "C" {
531    pub fn sqlite3_close(arg1: *mut sqlite3) -> ::core::ffi::c_int;
532}
533unsafe extern "C" {
534    pub fn sqlite3_close_v2(arg1: *mut sqlite3) -> ::core::ffi::c_int;
535}
536pub type sqlite3_callback = ::core::option::Option<
537    unsafe extern "C" fn(
538        arg1: *mut ::core::ffi::c_void,
539        arg2: ::core::ffi::c_int,
540        arg3: *mut *mut ::core::ffi::c_char,
541        arg4: *mut *mut ::core::ffi::c_char,
542    ) -> ::core::ffi::c_int,
543>;
544unsafe extern "C" {
545    pub fn sqlite3_exec(
546        arg1: *mut sqlite3,
547        sql: *const ::core::ffi::c_char,
548        callback: ::core::option::Option<
549            unsafe extern "C" fn(
550                arg1: *mut ::core::ffi::c_void,
551                arg2: ::core::ffi::c_int,
552                arg3: *mut *mut ::core::ffi::c_char,
553                arg4: *mut *mut ::core::ffi::c_char,
554            ) -> ::core::ffi::c_int,
555        >,
556        arg2: *mut ::core::ffi::c_void,
557        errmsg: *mut *mut ::core::ffi::c_char,
558    ) -> ::core::ffi::c_int;
559}
560#[repr(C)]
561#[derive(Debug, Copy, Clone)]
562pub struct sqlite3_file {
563    pub pMethods: *const sqlite3_io_methods,
564}
565#[repr(C)]
566#[derive(Debug, Copy, Clone)]
567pub struct sqlite3_io_methods {
568    pub iVersion: ::core::ffi::c_int,
569    pub xClose: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file) -> ::core::ffi::c_int>,
570    pub xRead: ::core::option::Option<
571        unsafe extern "C" fn(
572            arg1: *mut sqlite3_file,
573            arg2: *mut ::core::ffi::c_void,
574            iAmt: ::core::ffi::c_int,
575            iOfst: sqlite3_int64,
576        ) -> ::core::ffi::c_int,
577    >,
578    pub xWrite: ::core::option::Option<
579        unsafe extern "C" fn(
580            arg1: *mut sqlite3_file,
581            arg2: *const ::core::ffi::c_void,
582            iAmt: ::core::ffi::c_int,
583            iOfst: sqlite3_int64,
584        ) -> ::core::ffi::c_int,
585    >,
586    pub xTruncate: ::core::option::Option<
587        unsafe extern "C" fn(arg1: *mut sqlite3_file, size: sqlite3_int64) -> ::core::ffi::c_int,
588    >,
589    pub xSync: ::core::option::Option<
590        unsafe extern "C" fn(arg1: *mut sqlite3_file, flags: ::core::ffi::c_int) -> ::core::ffi::c_int,
591    >,
592    pub xFileSize: ::core::option::Option<
593        unsafe extern "C" fn(arg1: *mut sqlite3_file, pSize: *mut sqlite3_int64) -> ::core::ffi::c_int,
594    >,
595    pub xLock: ::core::option::Option<
596        unsafe extern "C" fn(arg1: *mut sqlite3_file, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int,
597    >,
598    pub xUnlock: ::core::option::Option<
599        unsafe extern "C" fn(arg1: *mut sqlite3_file, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int,
600    >,
601    pub xCheckReservedLock: ::core::option::Option<
602        unsafe extern "C" fn(arg1: *mut sqlite3_file, pResOut: *mut ::core::ffi::c_int) -> ::core::ffi::c_int,
603    >,
604    pub xFileControl: ::core::option::Option<
605        unsafe extern "C" fn(
606            arg1: *mut sqlite3_file,
607            op: ::core::ffi::c_int,
608            pArg: *mut ::core::ffi::c_void,
609        ) -> ::core::ffi::c_int,
610    >,
611    pub xSectorSize: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file) -> ::core::ffi::c_int>,
612    pub xDeviceCharacteristics:
613        ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file) -> ::core::ffi::c_int>,
614    pub xShmMap: ::core::option::Option<
615        unsafe extern "C" fn(
616            arg1: *mut sqlite3_file,
617            iPg: ::core::ffi::c_int,
618            pgsz: ::core::ffi::c_int,
619            arg2: ::core::ffi::c_int,
620            arg3: *mut *mut ::core::ffi::c_void,
621        ) -> ::core::ffi::c_int,
622    >,
623    pub xShmLock: ::core::option::Option<
624        unsafe extern "C" fn(
625            arg1: *mut sqlite3_file,
626            offset: ::core::ffi::c_int,
627            n: ::core::ffi::c_int,
628            flags: ::core::ffi::c_int,
629        ) -> ::core::ffi::c_int,
630    >,
631    pub xShmBarrier: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file)>,
632    pub xShmUnmap: ::core::option::Option<
633        unsafe extern "C" fn(arg1: *mut sqlite3_file, deleteFlag: ::core::ffi::c_int) -> ::core::ffi::c_int,
634    >,
635    pub xFetch: ::core::option::Option<
636        unsafe extern "C" fn(
637            arg1: *mut sqlite3_file,
638            iOfst: sqlite3_int64,
639            iAmt: ::core::ffi::c_int,
640            pp: *mut *mut ::core::ffi::c_void,
641        ) -> ::core::ffi::c_int,
642    >,
643    pub xUnfetch: ::core::option::Option<
644        unsafe extern "C" fn(
645            arg1: *mut sqlite3_file,
646            iOfst: sqlite3_int64,
647            p: *mut ::core::ffi::c_void,
648        ) -> ::core::ffi::c_int,
649    >,
650}
651#[repr(C)]
652#[derive(Debug, Copy, Clone)]
653pub struct sqlite3_mutex {
654    _unused: [u8; 0],
655}
656#[repr(C)]
657#[derive(Debug, Copy, Clone)]
658pub struct sqlite3_api_routines {
659    _unused: [u8; 0],
660}
661pub type sqlite3_filename = *const ::core::ffi::c_char;
662pub type sqlite3_syscall_ptr = ::core::option::Option<unsafe extern "C" fn()>;
663#[repr(C)]
664#[derive(Debug, Copy, Clone)]
665pub struct sqlite3_vfs {
666    pub iVersion: ::core::ffi::c_int,
667    pub szOsFile: ::core::ffi::c_int,
668    pub mxPathname: ::core::ffi::c_int,
669    pub pNext: *mut sqlite3_vfs,
670    pub zName: *const ::core::ffi::c_char,
671    pub pAppData: *mut ::core::ffi::c_void,
672    pub xOpen: ::core::option::Option<
673        unsafe extern "C" fn(
674            arg1: *mut sqlite3_vfs,
675            zName: sqlite3_filename,
676            arg2: *mut sqlite3_file,
677            flags: ::core::ffi::c_int,
678            pOutFlags: *mut ::core::ffi::c_int,
679        ) -> ::core::ffi::c_int,
680    >,
681    pub xDelete: ::core::option::Option<
682        unsafe extern "C" fn(
683            arg1: *mut sqlite3_vfs,
684            zName: *const ::core::ffi::c_char,
685            syncDir: ::core::ffi::c_int,
686        ) -> ::core::ffi::c_int,
687    >,
688    pub xAccess: ::core::option::Option<
689        unsafe extern "C" fn(
690            arg1: *mut sqlite3_vfs,
691            zName: *const ::core::ffi::c_char,
692            flags: ::core::ffi::c_int,
693            pResOut: *mut ::core::ffi::c_int,
694        ) -> ::core::ffi::c_int,
695    >,
696    pub xFullPathname: ::core::option::Option<
697        unsafe extern "C" fn(
698            arg1: *mut sqlite3_vfs,
699            zName: *const ::core::ffi::c_char,
700            nOut: ::core::ffi::c_int,
701            zOut: *mut ::core::ffi::c_char,
702        ) -> ::core::ffi::c_int,
703    >,
704    pub xDlOpen: ::core::option::Option<
705        unsafe extern "C" fn(arg1: *mut sqlite3_vfs, zFilename: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_void,
706    >,
707    pub xDlError: ::core::option::Option<
708        unsafe extern "C" fn(arg1: *mut sqlite3_vfs, nByte: ::core::ffi::c_int, zErrMsg: *mut ::core::ffi::c_char),
709    >,
710    pub xDlSym: ::core::option::Option<
711        unsafe extern "C" fn(
712            arg1: *mut sqlite3_vfs,
713            arg2: *mut ::core::ffi::c_void,
714            zSymbol: *const ::core::ffi::c_char,
715        ) -> ::core::option::Option<
716            unsafe extern "C" fn(
717                arg1: *mut sqlite3_vfs,
718                arg2: *mut ::core::ffi::c_void,
719                zSymbol: *const ::core::ffi::c_char,
720            ),
721        >,
722    >,
723    pub xDlClose: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_vfs, arg2: *mut ::core::ffi::c_void)>,
724    pub xRandomness: ::core::option::Option<
725        unsafe extern "C" fn(
726            arg1: *mut sqlite3_vfs,
727            nByte: ::core::ffi::c_int,
728            zOut: *mut ::core::ffi::c_char,
729        ) -> ::core::ffi::c_int,
730    >,
731    pub xSleep: ::core::option::Option<
732        unsafe extern "C" fn(arg1: *mut sqlite3_vfs, microseconds: ::core::ffi::c_int) -> ::core::ffi::c_int,
733    >,
734    pub xCurrentTime:
735        ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_vfs, arg2: *mut f64) -> ::core::ffi::c_int>,
736    pub xGetLastError: ::core::option::Option<
737        unsafe extern "C" fn(
738            arg1: *mut sqlite3_vfs,
739            arg2: ::core::ffi::c_int,
740            arg3: *mut ::core::ffi::c_char,
741        ) -> ::core::ffi::c_int,
742    >,
743    pub xCurrentTimeInt64: ::core::option::Option<
744        unsafe extern "C" fn(arg1: *mut sqlite3_vfs, arg2: *mut sqlite3_int64) -> ::core::ffi::c_int,
745    >,
746    pub xSetSystemCall: ::core::option::Option<
747        unsafe extern "C" fn(
748            arg1: *mut sqlite3_vfs,
749            zName: *const ::core::ffi::c_char,
750            arg2: sqlite3_syscall_ptr,
751        ) -> ::core::ffi::c_int,
752    >,
753    pub xGetSystemCall: ::core::option::Option<
754        unsafe extern "C" fn(arg1: *mut sqlite3_vfs, zName: *const ::core::ffi::c_char) -> sqlite3_syscall_ptr,
755    >,
756    pub xNextSystemCall: ::core::option::Option<
757        unsafe extern "C" fn(arg1: *mut sqlite3_vfs, zName: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char,
758    >,
759}
760unsafe extern "C" {
761    pub fn sqlite3_initialize() -> ::core::ffi::c_int;
762}
763unsafe extern "C" {
764    pub fn sqlite3_shutdown() -> ::core::ffi::c_int;
765}
766unsafe extern "C" {
767    pub fn sqlite3_os_init() -> ::core::ffi::c_int;
768}
769unsafe extern "C" {
770    pub fn sqlite3_os_end() -> ::core::ffi::c_int;
771}
772unsafe extern "C" {
773    pub fn sqlite3_config(arg1: ::core::ffi::c_int, ...) -> ::core::ffi::c_int;
774}
775unsafe extern "C" {
776    pub fn sqlite3_db_config(arg1: *mut sqlite3, op: ::core::ffi::c_int, ...) -> ::core::ffi::c_int;
777}
778#[repr(C)]
779#[derive(Debug, Copy, Clone)]
780pub struct sqlite3_mem_methods {
781    pub xMalloc: ::core::option::Option<unsafe extern "C" fn(arg1: ::core::ffi::c_int) -> *mut ::core::ffi::c_void>,
782    pub xFree: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
783    pub xRealloc: ::core::option::Option<
784        unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void, arg2: ::core::ffi::c_int) -> *mut ::core::ffi::c_void,
785    >,
786    pub xSize: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int>,
787    pub xRoundup: ::core::option::Option<unsafe extern "C" fn(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int>,
788    pub xInit: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int>,
789    pub xShutdown: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
790    pub pAppData: *mut ::core::ffi::c_void,
791}
792unsafe extern "C" {
793    pub fn sqlite3_extended_result_codes(arg1: *mut sqlite3, onoff: ::core::ffi::c_int) -> ::core::ffi::c_int;
794}
795unsafe extern "C" {
796    pub fn sqlite3_last_insert_rowid(arg1: *mut sqlite3) -> sqlite3_int64;
797}
798unsafe extern "C" {
799    pub fn sqlite3_set_last_insert_rowid(arg1: *mut sqlite3, arg2: sqlite3_int64);
800}
801unsafe extern "C" {
802    pub fn sqlite3_changes(arg1: *mut sqlite3) -> ::core::ffi::c_int;
803}
804unsafe extern "C" {
805    pub fn sqlite3_changes64(arg1: *mut sqlite3) -> sqlite3_int64;
806}
807unsafe extern "C" {
808    pub fn sqlite3_total_changes(arg1: *mut sqlite3) -> ::core::ffi::c_int;
809}
810unsafe extern "C" {
811    pub fn sqlite3_total_changes64(arg1: *mut sqlite3) -> sqlite3_int64;
812}
813unsafe extern "C" {
814    pub fn sqlite3_interrupt(arg1: *mut sqlite3);
815}
816unsafe extern "C" {
817    pub fn sqlite3_is_interrupted(arg1: *mut sqlite3) -> ::core::ffi::c_int;
818}
819unsafe extern "C" {
820    pub fn sqlite3_complete(sql: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
821}
822unsafe extern "C" {
823    pub fn sqlite3_complete16(sql: *const ::core::ffi::c_void) -> ::core::ffi::c_int;
824}
825unsafe extern "C" {
826    pub fn sqlite3_busy_handler(
827        arg1: *mut sqlite3,
828        arg2: ::core::option::Option<
829            unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int,
830        >,
831        arg3: *mut ::core::ffi::c_void,
832    ) -> ::core::ffi::c_int;
833}
834unsafe extern "C" {
835    pub fn sqlite3_busy_timeout(arg1: *mut sqlite3, ms: ::core::ffi::c_int) -> ::core::ffi::c_int;
836}
837unsafe extern "C" {
838    pub fn sqlite3_setlk_timeout(
839        arg1: *mut sqlite3,
840        ms: ::core::ffi::c_int,
841        flags: ::core::ffi::c_int,
842    ) -> ::core::ffi::c_int;
843}
844unsafe extern "C" {
845    pub fn sqlite3_get_table(
846        db: *mut sqlite3,
847        zSql: *const ::core::ffi::c_char,
848        pazResult: *mut *mut *mut ::core::ffi::c_char,
849        pnRow: *mut ::core::ffi::c_int,
850        pnColumn: *mut ::core::ffi::c_int,
851        pzErrmsg: *mut *mut ::core::ffi::c_char,
852    ) -> ::core::ffi::c_int;
853}
854unsafe extern "C" {
855    pub fn sqlite3_free_table(result: *mut *mut ::core::ffi::c_char);
856}
857unsafe extern "C" {
858    pub fn sqlite3_mprintf(arg1: *const ::core::ffi::c_char, ...) -> *mut ::core::ffi::c_char;
859}
860unsafe extern "C" {
861    pub fn sqlite3_snprintf(
862        arg1: ::core::ffi::c_int,
863        arg2: *mut ::core::ffi::c_char,
864        arg3: *const ::core::ffi::c_char,
865        ...
866    ) -> *mut ::core::ffi::c_char;
867}
868unsafe extern "C" {
869    pub fn sqlite3_malloc(arg1: ::core::ffi::c_int) -> *mut ::core::ffi::c_void;
870}
871unsafe extern "C" {
872    pub fn sqlite3_malloc64(arg1: sqlite3_uint64) -> *mut ::core::ffi::c_void;
873}
874unsafe extern "C" {
875    pub fn sqlite3_realloc(arg1: *mut ::core::ffi::c_void, arg2: ::core::ffi::c_int) -> *mut ::core::ffi::c_void;
876}
877unsafe extern "C" {
878    pub fn sqlite3_realloc64(arg1: *mut ::core::ffi::c_void, arg2: sqlite3_uint64) -> *mut ::core::ffi::c_void;
879}
880unsafe extern "C" {
881    pub fn sqlite3_free(arg1: *mut ::core::ffi::c_void);
882}
883unsafe extern "C" {
884    pub fn sqlite3_msize(arg1: *mut ::core::ffi::c_void) -> sqlite3_uint64;
885}
886unsafe extern "C" {
887    pub fn sqlite3_memory_used() -> sqlite3_int64;
888}
889unsafe extern "C" {
890    pub fn sqlite3_memory_highwater(resetFlag: ::core::ffi::c_int) -> sqlite3_int64;
891}
892unsafe extern "C" {
893    pub fn sqlite3_randomness(N: ::core::ffi::c_int, P: *mut ::core::ffi::c_void);
894}
895unsafe extern "C" {
896    pub fn sqlite3_set_authorizer(
897        arg1: *mut sqlite3,
898        xAuth: ::core::option::Option<
899            unsafe extern "C" fn(
900                arg1: *mut ::core::ffi::c_void,
901                arg2: ::core::ffi::c_int,
902                arg3: *const ::core::ffi::c_char,
903                arg4: *const ::core::ffi::c_char,
904                arg5: *const ::core::ffi::c_char,
905                arg6: *const ::core::ffi::c_char,
906            ) -> ::core::ffi::c_int,
907        >,
908        pUserData: *mut ::core::ffi::c_void,
909    ) -> ::core::ffi::c_int;
910}
911unsafe extern "C" {
912    pub fn sqlite3_trace(
913        arg1: *mut sqlite3,
914        xTrace: ::core::option::Option<
915            unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void, arg2: *const ::core::ffi::c_char),
916        >,
917        arg2: *mut ::core::ffi::c_void,
918    ) -> *mut ::core::ffi::c_void;
919}
920unsafe extern "C" {
921    pub fn sqlite3_profile(
922        arg1: *mut sqlite3,
923        xProfile: ::core::option::Option<
924            unsafe extern "C" fn(
925                arg1: *mut ::core::ffi::c_void,
926                arg2: *const ::core::ffi::c_char,
927                arg3: sqlite3_uint64,
928            ),
929        >,
930        arg2: *mut ::core::ffi::c_void,
931    ) -> *mut ::core::ffi::c_void;
932}
933unsafe extern "C" {
934    pub fn sqlite3_trace_v2(
935        arg1: *mut sqlite3,
936        uMask: ::core::ffi::c_uint,
937        xCallback: ::core::option::Option<
938            unsafe extern "C" fn(
939                arg1: ::core::ffi::c_uint,
940                arg2: *mut ::core::ffi::c_void,
941                arg3: *mut ::core::ffi::c_void,
942                arg4: *mut ::core::ffi::c_void,
943            ) -> ::core::ffi::c_int,
944        >,
945        pCtx: *mut ::core::ffi::c_void,
946    ) -> ::core::ffi::c_int;
947}
948unsafe extern "C" {
949    pub fn sqlite3_progress_handler(
950        arg1: *mut sqlite3,
951        arg2: ::core::ffi::c_int,
952        arg3: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int>,
953        arg4: *mut ::core::ffi::c_void,
954    );
955}
956unsafe extern "C" {
957    pub fn sqlite3_open(filename: *const ::core::ffi::c_char, ppDb: *mut *mut sqlite3) -> ::core::ffi::c_int;
958}
959unsafe extern "C" {
960    pub fn sqlite3_open16(filename: *const ::core::ffi::c_void, ppDb: *mut *mut sqlite3) -> ::core::ffi::c_int;
961}
962unsafe extern "C" {
963    pub fn sqlite3_open_v2(
964        filename: *const ::core::ffi::c_char,
965        ppDb: *mut *mut sqlite3,
966        flags: ::core::ffi::c_int,
967        zVfs: *const ::core::ffi::c_char,
968    ) -> ::core::ffi::c_int;
969}
970unsafe extern "C" {
971    pub fn sqlite3_uri_parameter(z: sqlite3_filename, zParam: *const ::core::ffi::c_char)
972        -> *const ::core::ffi::c_char;
973}
974unsafe extern "C" {
975    pub fn sqlite3_uri_boolean(
976        z: sqlite3_filename,
977        zParam: *const ::core::ffi::c_char,
978        bDefault: ::core::ffi::c_int,
979    ) -> ::core::ffi::c_int;
980}
981unsafe extern "C" {
982    pub fn sqlite3_uri_int64(
983        arg1: sqlite3_filename,
984        arg2: *const ::core::ffi::c_char,
985        arg3: sqlite3_int64,
986    ) -> sqlite3_int64;
987}
988unsafe extern "C" {
989    pub fn sqlite3_uri_key(z: sqlite3_filename, N: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
990}
991unsafe extern "C" {
992    pub fn sqlite3_filename_database(arg1: sqlite3_filename) -> *const ::core::ffi::c_char;
993}
994unsafe extern "C" {
995    pub fn sqlite3_filename_journal(arg1: sqlite3_filename) -> *const ::core::ffi::c_char;
996}
997unsafe extern "C" {
998    pub fn sqlite3_filename_wal(arg1: sqlite3_filename) -> *const ::core::ffi::c_char;
999}
1000unsafe extern "C" {
1001    pub fn sqlite3_database_file_object(arg1: *const ::core::ffi::c_char) -> *mut sqlite3_file;
1002}
1003unsafe extern "C" {
1004    pub fn sqlite3_create_filename(
1005        zDatabase: *const ::core::ffi::c_char,
1006        zJournal: *const ::core::ffi::c_char,
1007        zWal: *const ::core::ffi::c_char,
1008        nParam: ::core::ffi::c_int,
1009        azParam: *mut *const ::core::ffi::c_char,
1010    ) -> sqlite3_filename;
1011}
1012unsafe extern "C" {
1013    pub fn sqlite3_free_filename(arg1: sqlite3_filename);
1014}
1015unsafe extern "C" {
1016    pub fn sqlite3_errcode(db: *mut sqlite3) -> ::core::ffi::c_int;
1017}
1018unsafe extern "C" {
1019    pub fn sqlite3_extended_errcode(db: *mut sqlite3) -> ::core::ffi::c_int;
1020}
1021unsafe extern "C" {
1022    pub fn sqlite3_errmsg(arg1: *mut sqlite3) -> *const ::core::ffi::c_char;
1023}
1024unsafe extern "C" {
1025    pub fn sqlite3_errmsg16(arg1: *mut sqlite3) -> *const ::core::ffi::c_void;
1026}
1027unsafe extern "C" {
1028    pub fn sqlite3_errstr(arg1: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1029}
1030unsafe extern "C" {
1031    pub fn sqlite3_error_offset(db: *mut sqlite3) -> ::core::ffi::c_int;
1032}
1033unsafe extern "C" {
1034    pub fn sqlite3_set_errmsg(
1035        db: *mut sqlite3,
1036        errcode: ::core::ffi::c_int,
1037        zErrMsg: *const ::core::ffi::c_char,
1038    ) -> ::core::ffi::c_int;
1039}
1040#[repr(C)]
1041#[derive(Debug, Copy, Clone)]
1042pub struct sqlite3_stmt {
1043    _unused: [u8; 0],
1044}
1045unsafe extern "C" {
1046    pub fn sqlite3_limit(arg1: *mut sqlite3, id: ::core::ffi::c_int, newVal: ::core::ffi::c_int) -> ::core::ffi::c_int;
1047}
1048unsafe extern "C" {
1049    pub fn sqlite3_prepare(
1050        db: *mut sqlite3,
1051        zSql: *const ::core::ffi::c_char,
1052        nByte: ::core::ffi::c_int,
1053        ppStmt: *mut *mut sqlite3_stmt,
1054        pzTail: *mut *const ::core::ffi::c_char,
1055    ) -> ::core::ffi::c_int;
1056}
1057unsafe extern "C" {
1058    pub fn sqlite3_prepare_v2(
1059        db: *mut sqlite3,
1060        zSql: *const ::core::ffi::c_char,
1061        nByte: ::core::ffi::c_int,
1062        ppStmt: *mut *mut sqlite3_stmt,
1063        pzTail: *mut *const ::core::ffi::c_char,
1064    ) -> ::core::ffi::c_int;
1065}
1066unsafe extern "C" {
1067    pub fn sqlite3_prepare_v3(
1068        db: *mut sqlite3,
1069        zSql: *const ::core::ffi::c_char,
1070        nByte: ::core::ffi::c_int,
1071        prepFlags: ::core::ffi::c_uint,
1072        ppStmt: *mut *mut sqlite3_stmt,
1073        pzTail: *mut *const ::core::ffi::c_char,
1074    ) -> ::core::ffi::c_int;
1075}
1076unsafe extern "C" {
1077    pub fn sqlite3_prepare16(
1078        db: *mut sqlite3,
1079        zSql: *const ::core::ffi::c_void,
1080        nByte: ::core::ffi::c_int,
1081        ppStmt: *mut *mut sqlite3_stmt,
1082        pzTail: *mut *const ::core::ffi::c_void,
1083    ) -> ::core::ffi::c_int;
1084}
1085unsafe extern "C" {
1086    pub fn sqlite3_prepare16_v2(
1087        db: *mut sqlite3,
1088        zSql: *const ::core::ffi::c_void,
1089        nByte: ::core::ffi::c_int,
1090        ppStmt: *mut *mut sqlite3_stmt,
1091        pzTail: *mut *const ::core::ffi::c_void,
1092    ) -> ::core::ffi::c_int;
1093}
1094unsafe extern "C" {
1095    pub fn sqlite3_prepare16_v3(
1096        db: *mut sqlite3,
1097        zSql: *const ::core::ffi::c_void,
1098        nByte: ::core::ffi::c_int,
1099        prepFlags: ::core::ffi::c_uint,
1100        ppStmt: *mut *mut sqlite3_stmt,
1101        pzTail: *mut *const ::core::ffi::c_void,
1102    ) -> ::core::ffi::c_int;
1103}
1104unsafe extern "C" {
1105    pub fn sqlite3_sql(pStmt: *mut sqlite3_stmt) -> *const ::core::ffi::c_char;
1106}
1107unsafe extern "C" {
1108    pub fn sqlite3_expanded_sql(pStmt: *mut sqlite3_stmt) -> *mut ::core::ffi::c_char;
1109}
1110unsafe extern "C" {
1111    pub fn sqlite3_stmt_readonly(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1112}
1113unsafe extern "C" {
1114    pub fn sqlite3_stmt_isexplain(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1115}
1116unsafe extern "C" {
1117    pub fn sqlite3_stmt_explain(pStmt: *mut sqlite3_stmt, eMode: ::core::ffi::c_int) -> ::core::ffi::c_int;
1118}
1119unsafe extern "C" {
1120    pub fn sqlite3_stmt_busy(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1121}
1122#[repr(C)]
1123#[derive(Debug, Copy, Clone)]
1124pub struct sqlite3_value {
1125    _unused: [u8; 0],
1126}
1127#[repr(C)]
1128#[derive(Debug, Copy, Clone)]
1129pub struct sqlite3_context {
1130    _unused: [u8; 0],
1131}
1132unsafe extern "C" {
1133    pub fn sqlite3_bind_blob(
1134        arg1: *mut sqlite3_stmt,
1135        arg2: ::core::ffi::c_int,
1136        arg3: *const ::core::ffi::c_void,
1137        n: ::core::ffi::c_int,
1138        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1139    ) -> ::core::ffi::c_int;
1140}
1141unsafe extern "C" {
1142    pub fn sqlite3_bind_blob64(
1143        arg1: *mut sqlite3_stmt,
1144        arg2: ::core::ffi::c_int,
1145        arg3: *const ::core::ffi::c_void,
1146        arg4: sqlite3_uint64,
1147        arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1148    ) -> ::core::ffi::c_int;
1149}
1150unsafe extern "C" {
1151    pub fn sqlite3_bind_double(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int, arg3: f64) -> ::core::ffi::c_int;
1152}
1153unsafe extern "C" {
1154    pub fn sqlite3_bind_int(
1155        arg1: *mut sqlite3_stmt,
1156        arg2: ::core::ffi::c_int,
1157        arg3: ::core::ffi::c_int,
1158    ) -> ::core::ffi::c_int;
1159}
1160unsafe extern "C" {
1161    pub fn sqlite3_bind_int64(
1162        arg1: *mut sqlite3_stmt,
1163        arg2: ::core::ffi::c_int,
1164        arg3: sqlite3_int64,
1165    ) -> ::core::ffi::c_int;
1166}
1167unsafe extern "C" {
1168    pub fn sqlite3_bind_null(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int;
1169}
1170unsafe extern "C" {
1171    pub fn sqlite3_bind_text(
1172        arg1: *mut sqlite3_stmt,
1173        arg2: ::core::ffi::c_int,
1174        arg3: *const ::core::ffi::c_char,
1175        arg4: ::core::ffi::c_int,
1176        arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1177    ) -> ::core::ffi::c_int;
1178}
1179unsafe extern "C" {
1180    pub fn sqlite3_bind_text16(
1181        arg1: *mut sqlite3_stmt,
1182        arg2: ::core::ffi::c_int,
1183        arg3: *const ::core::ffi::c_void,
1184        arg4: ::core::ffi::c_int,
1185        arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1186    ) -> ::core::ffi::c_int;
1187}
1188unsafe extern "C" {
1189    pub fn sqlite3_bind_text64(
1190        arg1: *mut sqlite3_stmt,
1191        arg2: ::core::ffi::c_int,
1192        arg3: *const ::core::ffi::c_char,
1193        arg4: sqlite3_uint64,
1194        arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1195        encoding: ::core::ffi::c_uchar,
1196    ) -> ::core::ffi::c_int;
1197}
1198unsafe extern "C" {
1199    pub fn sqlite3_bind_value(
1200        arg1: *mut sqlite3_stmt,
1201        arg2: ::core::ffi::c_int,
1202        arg3: *const sqlite3_value,
1203    ) -> ::core::ffi::c_int;
1204}
1205unsafe extern "C" {
1206    pub fn sqlite3_bind_pointer(
1207        arg1: *mut sqlite3_stmt,
1208        arg2: ::core::ffi::c_int,
1209        arg3: *mut ::core::ffi::c_void,
1210        arg4: *const ::core::ffi::c_char,
1211        arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1212    ) -> ::core::ffi::c_int;
1213}
1214unsafe extern "C" {
1215    pub fn sqlite3_bind_zeroblob(
1216        arg1: *mut sqlite3_stmt,
1217        arg2: ::core::ffi::c_int,
1218        n: ::core::ffi::c_int,
1219    ) -> ::core::ffi::c_int;
1220}
1221unsafe extern "C" {
1222    pub fn sqlite3_bind_zeroblob64(
1223        arg1: *mut sqlite3_stmt,
1224        arg2: ::core::ffi::c_int,
1225        arg3: sqlite3_uint64,
1226    ) -> ::core::ffi::c_int;
1227}
1228unsafe extern "C" {
1229    pub fn sqlite3_bind_parameter_count(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1230}
1231unsafe extern "C" {
1232    pub fn sqlite3_bind_parameter_name(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int)
1233        -> *const ::core::ffi::c_char;
1234}
1235unsafe extern "C" {
1236    pub fn sqlite3_bind_parameter_index(
1237        arg1: *mut sqlite3_stmt,
1238        zName: *const ::core::ffi::c_char,
1239    ) -> ::core::ffi::c_int;
1240}
1241unsafe extern "C" {
1242    pub fn sqlite3_clear_bindings(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1243}
1244unsafe extern "C" {
1245    pub fn sqlite3_column_count(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1246}
1247unsafe extern "C" {
1248    pub fn sqlite3_column_name(arg1: *mut sqlite3_stmt, N: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1249}
1250unsafe extern "C" {
1251    pub fn sqlite3_column_name16(arg1: *mut sqlite3_stmt, N: ::core::ffi::c_int) -> *const ::core::ffi::c_void;
1252}
1253unsafe extern "C" {
1254    pub fn sqlite3_column_database_name(
1255        arg1: *mut sqlite3_stmt,
1256        arg2: ::core::ffi::c_int,
1257    ) -> *const ::core::ffi::c_char;
1258}
1259unsafe extern "C" {
1260    pub fn sqlite3_column_database_name16(
1261        arg1: *mut sqlite3_stmt,
1262        arg2: ::core::ffi::c_int,
1263    ) -> *const ::core::ffi::c_void;
1264}
1265unsafe extern "C" {
1266    pub fn sqlite3_column_table_name(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1267}
1268unsafe extern "C" {
1269    pub fn sqlite3_column_table_name16(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int)
1270        -> *const ::core::ffi::c_void;
1271}
1272unsafe extern "C" {
1273    pub fn sqlite3_column_origin_name(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1274}
1275unsafe extern "C" {
1276    pub fn sqlite3_column_origin_name16(
1277        arg1: *mut sqlite3_stmt,
1278        arg2: ::core::ffi::c_int,
1279    ) -> *const ::core::ffi::c_void;
1280}
1281unsafe extern "C" {
1282    pub fn sqlite3_column_decltype(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1283}
1284unsafe extern "C" {
1285    pub fn sqlite3_column_decltype16(arg1: *mut sqlite3_stmt, arg2: ::core::ffi::c_int) -> *const ::core::ffi::c_void;
1286}
1287unsafe extern "C" {
1288    pub fn sqlite3_step(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1289}
1290unsafe extern "C" {
1291    pub fn sqlite3_data_count(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1292}
1293unsafe extern "C" {
1294    pub fn sqlite3_column_blob(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> *const ::core::ffi::c_void;
1295}
1296unsafe extern "C" {
1297    pub fn sqlite3_column_double(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> f64;
1298}
1299unsafe extern "C" {
1300    pub fn sqlite3_column_int(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> ::core::ffi::c_int;
1301}
1302unsafe extern "C" {
1303    pub fn sqlite3_column_int64(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> sqlite3_int64;
1304}
1305unsafe extern "C" {
1306    pub fn sqlite3_column_text(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> *const ::core::ffi::c_uchar;
1307}
1308unsafe extern "C" {
1309    pub fn sqlite3_column_text16(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> *const ::core::ffi::c_void;
1310}
1311unsafe extern "C" {
1312    pub fn sqlite3_column_value(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> *mut sqlite3_value;
1313}
1314unsafe extern "C" {
1315    pub fn sqlite3_column_bytes(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> ::core::ffi::c_int;
1316}
1317unsafe extern "C" {
1318    pub fn sqlite3_column_bytes16(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> ::core::ffi::c_int;
1319}
1320unsafe extern "C" {
1321    pub fn sqlite3_column_type(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> ::core::ffi::c_int;
1322}
1323unsafe extern "C" {
1324    pub fn sqlite3_finalize(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1325}
1326unsafe extern "C" {
1327    pub fn sqlite3_reset(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1328}
1329unsafe extern "C" {
1330    pub fn sqlite3_create_function(
1331        db: *mut sqlite3,
1332        zFunctionName: *const ::core::ffi::c_char,
1333        nArg: ::core::ffi::c_int,
1334        eTextRep: ::core::ffi::c_int,
1335        pApp: *mut ::core::ffi::c_void,
1336        xFunc: ::core::option::Option<
1337            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1338        >,
1339        xStep: ::core::option::Option<
1340            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1341        >,
1342        xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
1343    ) -> ::core::ffi::c_int;
1344}
1345unsafe extern "C" {
1346    pub fn sqlite3_create_function16(
1347        db: *mut sqlite3,
1348        zFunctionName: *const ::core::ffi::c_void,
1349        nArg: ::core::ffi::c_int,
1350        eTextRep: ::core::ffi::c_int,
1351        pApp: *mut ::core::ffi::c_void,
1352        xFunc: ::core::option::Option<
1353            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1354        >,
1355        xStep: ::core::option::Option<
1356            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1357        >,
1358        xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
1359    ) -> ::core::ffi::c_int;
1360}
1361unsafe extern "C" {
1362    pub fn sqlite3_create_function_v2(
1363        db: *mut sqlite3,
1364        zFunctionName: *const ::core::ffi::c_char,
1365        nArg: ::core::ffi::c_int,
1366        eTextRep: ::core::ffi::c_int,
1367        pApp: *mut ::core::ffi::c_void,
1368        xFunc: ::core::option::Option<
1369            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1370        >,
1371        xStep: ::core::option::Option<
1372            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1373        >,
1374        xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
1375        xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1376    ) -> ::core::ffi::c_int;
1377}
1378unsafe extern "C" {
1379    pub fn sqlite3_create_window_function(
1380        db: *mut sqlite3,
1381        zFunctionName: *const ::core::ffi::c_char,
1382        nArg: ::core::ffi::c_int,
1383        eTextRep: ::core::ffi::c_int,
1384        pApp: *mut ::core::ffi::c_void,
1385        xStep: ::core::option::Option<
1386            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1387        >,
1388        xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
1389        xValue: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
1390        xInverse: ::core::option::Option<
1391            unsafe extern "C" fn(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int, arg3: *mut *mut sqlite3_value),
1392        >,
1393        xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1394    ) -> ::core::ffi::c_int;
1395}
1396unsafe extern "C" {
1397    pub fn sqlite3_aggregate_count(arg1: *mut sqlite3_context) -> ::core::ffi::c_int;
1398}
1399unsafe extern "C" {
1400    pub fn sqlite3_expired(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1401}
1402unsafe extern "C" {
1403    pub fn sqlite3_transfer_bindings(arg1: *mut sqlite3_stmt, arg2: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1404}
1405unsafe extern "C" {
1406    pub fn sqlite3_global_recover() -> ::core::ffi::c_int;
1407}
1408unsafe extern "C" {
1409    pub fn sqlite3_thread_cleanup();
1410}
1411unsafe extern "C" {
1412    pub fn sqlite3_memory_alarm(
1413        arg1: ::core::option::Option<
1414            unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void, arg2: sqlite3_int64, arg3: ::core::ffi::c_int),
1415        >,
1416        arg2: *mut ::core::ffi::c_void,
1417        arg3: sqlite3_int64,
1418    ) -> ::core::ffi::c_int;
1419}
1420unsafe extern "C" {
1421    pub fn sqlite3_value_blob(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
1422}
1423unsafe extern "C" {
1424    pub fn sqlite3_value_double(arg1: *mut sqlite3_value) -> f64;
1425}
1426unsafe extern "C" {
1427    pub fn sqlite3_value_int(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1428}
1429unsafe extern "C" {
1430    pub fn sqlite3_value_int64(arg1: *mut sqlite3_value) -> sqlite3_int64;
1431}
1432unsafe extern "C" {
1433    pub fn sqlite3_value_pointer(
1434        arg1: *mut sqlite3_value,
1435        arg2: *const ::core::ffi::c_char,
1436    ) -> *mut ::core::ffi::c_void;
1437}
1438unsafe extern "C" {
1439    pub fn sqlite3_value_text(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_uchar;
1440}
1441unsafe extern "C" {
1442    pub fn sqlite3_value_text16(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
1443}
1444unsafe extern "C" {
1445    pub fn sqlite3_value_text16le(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
1446}
1447unsafe extern "C" {
1448    pub fn sqlite3_value_text16be(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
1449}
1450unsafe extern "C" {
1451    pub fn sqlite3_value_bytes(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1452}
1453unsafe extern "C" {
1454    pub fn sqlite3_value_bytes16(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1455}
1456unsafe extern "C" {
1457    pub fn sqlite3_value_type(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1458}
1459unsafe extern "C" {
1460    pub fn sqlite3_value_numeric_type(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1461}
1462unsafe extern "C" {
1463    pub fn sqlite3_value_nochange(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1464}
1465unsafe extern "C" {
1466    pub fn sqlite3_value_frombind(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1467}
1468unsafe extern "C" {
1469    pub fn sqlite3_value_encoding(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
1470}
1471unsafe extern "C" {
1472    pub fn sqlite3_value_subtype(arg1: *mut sqlite3_value) -> ::core::ffi::c_uint;
1473}
1474unsafe extern "C" {
1475    pub fn sqlite3_value_dup(arg1: *const sqlite3_value) -> *mut sqlite3_value;
1476}
1477unsafe extern "C" {
1478    pub fn sqlite3_value_free(arg1: *mut sqlite3_value);
1479}
1480unsafe extern "C" {
1481    pub fn sqlite3_aggregate_context(
1482        arg1: *mut sqlite3_context,
1483        nBytes: ::core::ffi::c_int,
1484    ) -> *mut ::core::ffi::c_void;
1485}
1486unsafe extern "C" {
1487    pub fn sqlite3_user_data(arg1: *mut sqlite3_context) -> *mut ::core::ffi::c_void;
1488}
1489unsafe extern "C" {
1490    pub fn sqlite3_context_db_handle(arg1: *mut sqlite3_context) -> *mut sqlite3;
1491}
1492unsafe extern "C" {
1493    pub fn sqlite3_get_auxdata(arg1: *mut sqlite3_context, N: ::core::ffi::c_int) -> *mut ::core::ffi::c_void;
1494}
1495unsafe extern "C" {
1496    pub fn sqlite3_set_auxdata(
1497        arg1: *mut sqlite3_context,
1498        N: ::core::ffi::c_int,
1499        arg2: *mut ::core::ffi::c_void,
1500        arg3: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1501    );
1502}
1503unsafe extern "C" {
1504    pub fn sqlite3_get_clientdata(arg1: *mut sqlite3, arg2: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_void;
1505}
1506unsafe extern "C" {
1507    pub fn sqlite3_set_clientdata(
1508        arg1: *mut sqlite3,
1509        arg2: *const ::core::ffi::c_char,
1510        arg3: *mut ::core::ffi::c_void,
1511        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1512    ) -> ::core::ffi::c_int;
1513}
1514pub type sqlite3_destructor_type = ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>;
1515unsafe extern "C" {
1516    pub fn sqlite3_result_blob(
1517        arg1: *mut sqlite3_context,
1518        arg2: *const ::core::ffi::c_void,
1519        arg3: ::core::ffi::c_int,
1520        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1521    );
1522}
1523unsafe extern "C" {
1524    pub fn sqlite3_result_blob64(
1525        arg1: *mut sqlite3_context,
1526        arg2: *const ::core::ffi::c_void,
1527        arg3: sqlite3_uint64,
1528        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1529    );
1530}
1531unsafe extern "C" {
1532    pub fn sqlite3_result_double(arg1: *mut sqlite3_context, arg2: f64);
1533}
1534unsafe extern "C" {
1535    pub fn sqlite3_result_error(arg1: *mut sqlite3_context, arg2: *const ::core::ffi::c_char, arg3: ::core::ffi::c_int);
1536}
1537unsafe extern "C" {
1538    pub fn sqlite3_result_error16(
1539        arg1: *mut sqlite3_context,
1540        arg2: *const ::core::ffi::c_void,
1541        arg3: ::core::ffi::c_int,
1542    );
1543}
1544unsafe extern "C" {
1545    pub fn sqlite3_result_error_toobig(arg1: *mut sqlite3_context);
1546}
1547unsafe extern "C" {
1548    pub fn sqlite3_result_error_nomem(arg1: *mut sqlite3_context);
1549}
1550unsafe extern "C" {
1551    pub fn sqlite3_result_error_code(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int);
1552}
1553unsafe extern "C" {
1554    pub fn sqlite3_result_int(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int);
1555}
1556unsafe extern "C" {
1557    pub fn sqlite3_result_int64(arg1: *mut sqlite3_context, arg2: sqlite3_int64);
1558}
1559unsafe extern "C" {
1560    pub fn sqlite3_result_null(arg1: *mut sqlite3_context);
1561}
1562unsafe extern "C" {
1563    pub fn sqlite3_result_text(
1564        arg1: *mut sqlite3_context,
1565        arg2: *const ::core::ffi::c_char,
1566        arg3: ::core::ffi::c_int,
1567        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1568    );
1569}
1570unsafe extern "C" {
1571    pub fn sqlite3_result_text64(
1572        arg1: *mut sqlite3_context,
1573        z: *const ::core::ffi::c_char,
1574        n: sqlite3_uint64,
1575        arg2: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1576        encoding: ::core::ffi::c_uchar,
1577    );
1578}
1579unsafe extern "C" {
1580    pub fn sqlite3_result_text16(
1581        arg1: *mut sqlite3_context,
1582        arg2: *const ::core::ffi::c_void,
1583        arg3: ::core::ffi::c_int,
1584        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1585    );
1586}
1587unsafe extern "C" {
1588    pub fn sqlite3_result_text16le(
1589        arg1: *mut sqlite3_context,
1590        arg2: *const ::core::ffi::c_void,
1591        arg3: ::core::ffi::c_int,
1592        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1593    );
1594}
1595unsafe extern "C" {
1596    pub fn sqlite3_result_text16be(
1597        arg1: *mut sqlite3_context,
1598        arg2: *const ::core::ffi::c_void,
1599        arg3: ::core::ffi::c_int,
1600        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1601    );
1602}
1603unsafe extern "C" {
1604    pub fn sqlite3_result_value(arg1: *mut sqlite3_context, arg2: *mut sqlite3_value);
1605}
1606unsafe extern "C" {
1607    pub fn sqlite3_result_pointer(
1608        arg1: *mut sqlite3_context,
1609        arg2: *mut ::core::ffi::c_void,
1610        arg3: *const ::core::ffi::c_char,
1611        arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1612    );
1613}
1614unsafe extern "C" {
1615    pub fn sqlite3_result_zeroblob(arg1: *mut sqlite3_context, n: ::core::ffi::c_int);
1616}
1617unsafe extern "C" {
1618    pub fn sqlite3_result_zeroblob64(arg1: *mut sqlite3_context, n: sqlite3_uint64) -> ::core::ffi::c_int;
1619}
1620unsafe extern "C" {
1621    pub fn sqlite3_result_subtype(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_uint);
1622}
1623unsafe extern "C" {
1624    pub fn sqlite3_create_collation(
1625        arg1: *mut sqlite3,
1626        zName: *const ::core::ffi::c_char,
1627        eTextRep: ::core::ffi::c_int,
1628        pArg: *mut ::core::ffi::c_void,
1629        xCompare: ::core::option::Option<
1630            unsafe extern "C" fn(
1631                arg1: *mut ::core::ffi::c_void,
1632                arg2: ::core::ffi::c_int,
1633                arg3: *const ::core::ffi::c_void,
1634                arg4: ::core::ffi::c_int,
1635                arg5: *const ::core::ffi::c_void,
1636            ) -> ::core::ffi::c_int,
1637        >,
1638    ) -> ::core::ffi::c_int;
1639}
1640unsafe extern "C" {
1641    pub fn sqlite3_create_collation_v2(
1642        arg1: *mut sqlite3,
1643        zName: *const ::core::ffi::c_char,
1644        eTextRep: ::core::ffi::c_int,
1645        pArg: *mut ::core::ffi::c_void,
1646        xCompare: ::core::option::Option<
1647            unsafe extern "C" fn(
1648                arg1: *mut ::core::ffi::c_void,
1649                arg2: ::core::ffi::c_int,
1650                arg3: *const ::core::ffi::c_void,
1651                arg4: ::core::ffi::c_int,
1652                arg5: *const ::core::ffi::c_void,
1653            ) -> ::core::ffi::c_int,
1654        >,
1655        xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1656    ) -> ::core::ffi::c_int;
1657}
1658unsafe extern "C" {
1659    pub fn sqlite3_create_collation16(
1660        arg1: *mut sqlite3,
1661        zName: *const ::core::ffi::c_void,
1662        eTextRep: ::core::ffi::c_int,
1663        pArg: *mut ::core::ffi::c_void,
1664        xCompare: ::core::option::Option<
1665            unsafe extern "C" fn(
1666                arg1: *mut ::core::ffi::c_void,
1667                arg2: ::core::ffi::c_int,
1668                arg3: *const ::core::ffi::c_void,
1669                arg4: ::core::ffi::c_int,
1670                arg5: *const ::core::ffi::c_void,
1671            ) -> ::core::ffi::c_int,
1672        >,
1673    ) -> ::core::ffi::c_int;
1674}
1675unsafe extern "C" {
1676    pub fn sqlite3_collation_needed(
1677        arg1: *mut sqlite3,
1678        arg2: *mut ::core::ffi::c_void,
1679        arg3: ::core::option::Option<
1680            unsafe extern "C" fn(
1681                arg1: *mut ::core::ffi::c_void,
1682                arg2: *mut sqlite3,
1683                eTextRep: ::core::ffi::c_int,
1684                arg3: *const ::core::ffi::c_char,
1685            ),
1686        >,
1687    ) -> ::core::ffi::c_int;
1688}
1689unsafe extern "C" {
1690    pub fn sqlite3_collation_needed16(
1691        arg1: *mut sqlite3,
1692        arg2: *mut ::core::ffi::c_void,
1693        arg3: ::core::option::Option<
1694            unsafe extern "C" fn(
1695                arg1: *mut ::core::ffi::c_void,
1696                arg2: *mut sqlite3,
1697                eTextRep: ::core::ffi::c_int,
1698                arg3: *const ::core::ffi::c_void,
1699            ),
1700        >,
1701    ) -> ::core::ffi::c_int;
1702}
1703unsafe extern "C" {
1704    pub fn sqlite3_sleep(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int;
1705}
1706unsafe extern "C" {
1707    pub static mut sqlite3_temp_directory: *mut ::core::ffi::c_char;
1708}
1709unsafe extern "C" {
1710    pub static mut sqlite3_data_directory: *mut ::core::ffi::c_char;
1711}
1712unsafe extern "C" {
1713    pub fn sqlite3_win32_set_directory(
1714        type_: ::core::ffi::c_ulong,
1715        zValue: *mut ::core::ffi::c_void,
1716    ) -> ::core::ffi::c_int;
1717}
1718unsafe extern "C" {
1719    pub fn sqlite3_win32_set_directory8(
1720        type_: ::core::ffi::c_ulong,
1721        zValue: *const ::core::ffi::c_char,
1722    ) -> ::core::ffi::c_int;
1723}
1724unsafe extern "C" {
1725    pub fn sqlite3_win32_set_directory16(
1726        type_: ::core::ffi::c_ulong,
1727        zValue: *const ::core::ffi::c_void,
1728    ) -> ::core::ffi::c_int;
1729}
1730unsafe extern "C" {
1731    pub fn sqlite3_get_autocommit(arg1: *mut sqlite3) -> ::core::ffi::c_int;
1732}
1733unsafe extern "C" {
1734    pub fn sqlite3_db_handle(arg1: *mut sqlite3_stmt) -> *mut sqlite3;
1735}
1736unsafe extern "C" {
1737    pub fn sqlite3_db_name(db: *mut sqlite3, N: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1738}
1739unsafe extern "C" {
1740    pub fn sqlite3_db_filename(db: *mut sqlite3, zDbName: *const ::core::ffi::c_char) -> sqlite3_filename;
1741}
1742unsafe extern "C" {
1743    pub fn sqlite3_db_readonly(db: *mut sqlite3, zDbName: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
1744}
1745unsafe extern "C" {
1746    pub fn sqlite3_txn_state(arg1: *mut sqlite3, zSchema: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
1747}
1748unsafe extern "C" {
1749    pub fn sqlite3_next_stmt(pDb: *mut sqlite3, pStmt: *mut sqlite3_stmt) -> *mut sqlite3_stmt;
1750}
1751unsafe extern "C" {
1752    pub fn sqlite3_commit_hook(
1753        arg1: *mut sqlite3,
1754        arg2: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int>,
1755        arg3: *mut ::core::ffi::c_void,
1756    ) -> *mut ::core::ffi::c_void;
1757}
1758unsafe extern "C" {
1759    pub fn sqlite3_rollback_hook(
1760        arg1: *mut sqlite3,
1761        arg2: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1762        arg3: *mut ::core::ffi::c_void,
1763    ) -> *mut ::core::ffi::c_void;
1764}
1765unsafe extern "C" {
1766    pub fn sqlite3_autovacuum_pages(
1767        db: *mut sqlite3,
1768        arg1: ::core::option::Option<
1769            unsafe extern "C" fn(
1770                arg1: *mut ::core::ffi::c_void,
1771                arg2: *const ::core::ffi::c_char,
1772                arg3: ::core::ffi::c_uint,
1773                arg4: ::core::ffi::c_uint,
1774                arg5: ::core::ffi::c_uint,
1775            ) -> ::core::ffi::c_uint,
1776        >,
1777        arg2: *mut ::core::ffi::c_void,
1778        arg3: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1779    ) -> ::core::ffi::c_int;
1780}
1781unsafe extern "C" {
1782    pub fn sqlite3_update_hook(
1783        arg1: *mut sqlite3,
1784        arg2: ::core::option::Option<
1785            unsafe extern "C" fn(
1786                arg1: *mut ::core::ffi::c_void,
1787                arg2: ::core::ffi::c_int,
1788                arg3: *const ::core::ffi::c_char,
1789                arg4: *const ::core::ffi::c_char,
1790                arg5: sqlite3_int64,
1791            ),
1792        >,
1793        arg3: *mut ::core::ffi::c_void,
1794    ) -> *mut ::core::ffi::c_void;
1795}
1796unsafe extern "C" {
1797    pub fn sqlite3_enable_shared_cache(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int;
1798}
1799unsafe extern "C" {
1800    pub fn sqlite3_release_memory(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int;
1801}
1802unsafe extern "C" {
1803    pub fn sqlite3_db_release_memory(arg1: *mut sqlite3) -> ::core::ffi::c_int;
1804}
1805unsafe extern "C" {
1806    pub fn sqlite3_soft_heap_limit64(N: sqlite3_int64) -> sqlite3_int64;
1807}
1808unsafe extern "C" {
1809    pub fn sqlite3_hard_heap_limit64(N: sqlite3_int64) -> sqlite3_int64;
1810}
1811unsafe extern "C" {
1812    pub fn sqlite3_soft_heap_limit(N: ::core::ffi::c_int);
1813}
1814unsafe extern "C" {
1815    pub fn sqlite3_table_column_metadata(
1816        db: *mut sqlite3,
1817        zDbName: *const ::core::ffi::c_char,
1818        zTableName: *const ::core::ffi::c_char,
1819        zColumnName: *const ::core::ffi::c_char,
1820        pzDataType: *mut *const ::core::ffi::c_char,
1821        pzCollSeq: *mut *const ::core::ffi::c_char,
1822        pNotNull: *mut ::core::ffi::c_int,
1823        pPrimaryKey: *mut ::core::ffi::c_int,
1824        pAutoinc: *mut ::core::ffi::c_int,
1825    ) -> ::core::ffi::c_int;
1826}
1827unsafe extern "C" {
1828    pub fn sqlite3_load_extension(
1829        db: *mut sqlite3,
1830        zFile: *const ::core::ffi::c_char,
1831        zProc: *const ::core::ffi::c_char,
1832        pzErrMsg: *mut *mut ::core::ffi::c_char,
1833    ) -> ::core::ffi::c_int;
1834}
1835unsafe extern "C" {
1836    pub fn sqlite3_enable_load_extension(db: *mut sqlite3, onoff: ::core::ffi::c_int) -> ::core::ffi::c_int;
1837}
1838unsafe extern "C" {
1839    pub fn sqlite3_auto_extension(xEntryPoint: ::core::option::Option<unsafe extern "C" fn()>) -> ::core::ffi::c_int;
1840}
1841unsafe extern "C" {
1842    pub fn sqlite3_cancel_auto_extension(
1843        xEntryPoint: ::core::option::Option<unsafe extern "C" fn()>,
1844    ) -> ::core::ffi::c_int;
1845}
1846unsafe extern "C" {
1847    pub fn sqlite3_reset_auto_extension();
1848}
1849#[repr(C)]
1850#[derive(Debug, Copy, Clone)]
1851pub struct sqlite3_module {
1852    pub iVersion: ::core::ffi::c_int,
1853    pub xCreate: ::core::option::Option<
1854        unsafe extern "C" fn(
1855            arg1: *mut sqlite3,
1856            pAux: *mut ::core::ffi::c_void,
1857            argc: ::core::ffi::c_int,
1858            argv: *const *const ::core::ffi::c_char,
1859            ppVTab: *mut *mut sqlite3_vtab,
1860            arg2: *mut *mut ::core::ffi::c_char,
1861        ) -> ::core::ffi::c_int,
1862    >,
1863    pub xConnect: ::core::option::Option<
1864        unsafe extern "C" fn(
1865            arg1: *mut sqlite3,
1866            pAux: *mut ::core::ffi::c_void,
1867            argc: ::core::ffi::c_int,
1868            argv: *const *const ::core::ffi::c_char,
1869            ppVTab: *mut *mut sqlite3_vtab,
1870            arg2: *mut *mut ::core::ffi::c_char,
1871        ) -> ::core::ffi::c_int,
1872    >,
1873    pub xBestIndex: ::core::option::Option<
1874        unsafe extern "C" fn(pVTab: *mut sqlite3_vtab, arg1: *mut sqlite3_index_info) -> ::core::ffi::c_int,
1875    >,
1876    pub xDisconnect: ::core::option::Option<unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int>,
1877    pub xDestroy: ::core::option::Option<unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int>,
1878    pub xOpen: ::core::option::Option<
1879        unsafe extern "C" fn(pVTab: *mut sqlite3_vtab, ppCursor: *mut *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int,
1880    >,
1881    pub xClose: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int>,
1882    pub xFilter: ::core::option::Option<
1883        unsafe extern "C" fn(
1884            arg1: *mut sqlite3_vtab_cursor,
1885            idxNum: ::core::ffi::c_int,
1886            idxStr: *const ::core::ffi::c_char,
1887            argc: ::core::ffi::c_int,
1888            argv: *mut *mut sqlite3_value,
1889        ) -> ::core::ffi::c_int,
1890    >,
1891    pub xNext: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int>,
1892    pub xEof: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int>,
1893    pub xColumn: ::core::option::Option<
1894        unsafe extern "C" fn(
1895            arg1: *mut sqlite3_vtab_cursor,
1896            arg2: *mut sqlite3_context,
1897            arg3: ::core::ffi::c_int,
1898        ) -> ::core::ffi::c_int,
1899    >,
1900    pub xRowid: ::core::option::Option<
1901        unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor, pRowid: *mut sqlite3_int64) -> ::core::ffi::c_int,
1902    >,
1903    pub xUpdate: ::core::option::Option<
1904        unsafe extern "C" fn(
1905            arg1: *mut sqlite3_vtab,
1906            arg2: ::core::ffi::c_int,
1907            arg3: *mut *mut sqlite3_value,
1908            arg4: *mut sqlite3_int64,
1909        ) -> ::core::ffi::c_int,
1910    >,
1911    pub xBegin: ::core::option::Option<unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int>,
1912    pub xSync: ::core::option::Option<unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int>,
1913    pub xCommit: ::core::option::Option<unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int>,
1914    pub xRollback: ::core::option::Option<unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int>,
1915    pub xFindFunction: ::core::option::Option<
1916        unsafe extern "C" fn(
1917            pVtab: *mut sqlite3_vtab,
1918            nArg: ::core::ffi::c_int,
1919            zName: *const ::core::ffi::c_char,
1920            pxFunc: *mut ::core::option::Option<
1921                unsafe extern "C" fn(
1922                    arg1: *mut sqlite3_context,
1923                    arg2: ::core::ffi::c_int,
1924                    arg3: *mut *mut sqlite3_value,
1925                ),
1926            >,
1927            ppArg: *mut *mut ::core::ffi::c_void,
1928        ) -> ::core::ffi::c_int,
1929    >,
1930    pub xRename: ::core::option::Option<
1931        unsafe extern "C" fn(pVtab: *mut sqlite3_vtab, zNew: *const ::core::ffi::c_char) -> ::core::ffi::c_int,
1932    >,
1933    pub xSavepoint: ::core::option::Option<
1934        unsafe extern "C" fn(pVTab: *mut sqlite3_vtab, arg1: ::core::ffi::c_int) -> ::core::ffi::c_int,
1935    >,
1936    pub xRelease: ::core::option::Option<
1937        unsafe extern "C" fn(pVTab: *mut sqlite3_vtab, arg1: ::core::ffi::c_int) -> ::core::ffi::c_int,
1938    >,
1939    pub xRollbackTo: ::core::option::Option<
1940        unsafe extern "C" fn(pVTab: *mut sqlite3_vtab, arg1: ::core::ffi::c_int) -> ::core::ffi::c_int,
1941    >,
1942    pub xShadowName:
1943        ::core::option::Option<unsafe extern "C" fn(arg1: *const ::core::ffi::c_char) -> ::core::ffi::c_int>,
1944    pub xIntegrity: ::core::option::Option<
1945        unsafe extern "C" fn(
1946            pVTab: *mut sqlite3_vtab,
1947            zSchema: *const ::core::ffi::c_char,
1948            zTabName: *const ::core::ffi::c_char,
1949            mFlags: ::core::ffi::c_int,
1950            pzErr: *mut *mut ::core::ffi::c_char,
1951        ) -> ::core::ffi::c_int,
1952    >,
1953}
1954#[repr(C)]
1955#[derive(Debug, Copy, Clone)]
1956pub struct sqlite3_index_info {
1957    pub nConstraint: ::core::ffi::c_int,
1958    pub aConstraint: *mut sqlite3_index_info_sqlite3_index_constraint,
1959    pub nOrderBy: ::core::ffi::c_int,
1960    pub aOrderBy: *mut sqlite3_index_info_sqlite3_index_orderby,
1961    pub aConstraintUsage: *mut sqlite3_index_info_sqlite3_index_constraint_usage,
1962    pub idxNum: ::core::ffi::c_int,
1963    pub idxStr: *mut ::core::ffi::c_char,
1964    pub needToFreeIdxStr: ::core::ffi::c_int,
1965    pub orderByConsumed: ::core::ffi::c_int,
1966    pub estimatedCost: f64,
1967    pub estimatedRows: sqlite3_int64,
1968    pub idxFlags: ::core::ffi::c_int,
1969    pub colUsed: sqlite3_uint64,
1970}
1971#[repr(C)]
1972#[derive(Debug, Copy, Clone)]
1973pub struct sqlite3_index_info_sqlite3_index_constraint {
1974    pub iColumn: ::core::ffi::c_int,
1975    pub op: ::core::ffi::c_uchar,
1976    pub usable: ::core::ffi::c_uchar,
1977    pub iTermOffset: ::core::ffi::c_int,
1978}
1979#[repr(C)]
1980#[derive(Debug, Copy, Clone)]
1981pub struct sqlite3_index_info_sqlite3_index_orderby {
1982    pub iColumn: ::core::ffi::c_int,
1983    pub desc: ::core::ffi::c_uchar,
1984}
1985#[repr(C)]
1986#[derive(Debug, Copy, Clone)]
1987pub struct sqlite3_index_info_sqlite3_index_constraint_usage {
1988    pub argvIndex: ::core::ffi::c_int,
1989    pub omit: ::core::ffi::c_uchar,
1990}
1991unsafe extern "C" {
1992    pub fn sqlite3_create_module(
1993        db: *mut sqlite3,
1994        zName: *const ::core::ffi::c_char,
1995        p: *const sqlite3_module,
1996        pClientData: *mut ::core::ffi::c_void,
1997    ) -> ::core::ffi::c_int;
1998}
1999unsafe extern "C" {
2000    pub fn sqlite3_create_module_v2(
2001        db: *mut sqlite3,
2002        zName: *const ::core::ffi::c_char,
2003        p: *const sqlite3_module,
2004        pClientData: *mut ::core::ffi::c_void,
2005        xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2006    ) -> ::core::ffi::c_int;
2007}
2008unsafe extern "C" {
2009    pub fn sqlite3_drop_modules(db: *mut sqlite3, azKeep: *mut *const ::core::ffi::c_char) -> ::core::ffi::c_int;
2010}
2011#[repr(C)]
2012#[derive(Debug, Copy, Clone)]
2013pub struct sqlite3_vtab {
2014    pub pModule: *const sqlite3_module,
2015    pub nRef: ::core::ffi::c_int,
2016    pub zErrMsg: *mut ::core::ffi::c_char,
2017}
2018#[repr(C)]
2019#[derive(Debug, Copy, Clone)]
2020pub struct sqlite3_vtab_cursor {
2021    pub pVtab: *mut sqlite3_vtab,
2022}
2023unsafe extern "C" {
2024    pub fn sqlite3_declare_vtab(arg1: *mut sqlite3, zSQL: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
2025}
2026unsafe extern "C" {
2027    pub fn sqlite3_overload_function(
2028        arg1: *mut sqlite3,
2029        zFuncName: *const ::core::ffi::c_char,
2030        nArg: ::core::ffi::c_int,
2031    ) -> ::core::ffi::c_int;
2032}
2033#[repr(C)]
2034#[derive(Debug, Copy, Clone)]
2035pub struct sqlite3_blob {
2036    _unused: [u8; 0],
2037}
2038unsafe extern "C" {
2039    pub fn sqlite3_blob_open(
2040        arg1: *mut sqlite3,
2041        zDb: *const ::core::ffi::c_char,
2042        zTable: *const ::core::ffi::c_char,
2043        zColumn: *const ::core::ffi::c_char,
2044        iRow: sqlite3_int64,
2045        flags: ::core::ffi::c_int,
2046        ppBlob: *mut *mut sqlite3_blob,
2047    ) -> ::core::ffi::c_int;
2048}
2049unsafe extern "C" {
2050    pub fn sqlite3_blob_reopen(arg1: *mut sqlite3_blob, arg2: sqlite3_int64) -> ::core::ffi::c_int;
2051}
2052unsafe extern "C" {
2053    pub fn sqlite3_blob_close(arg1: *mut sqlite3_blob) -> ::core::ffi::c_int;
2054}
2055unsafe extern "C" {
2056    pub fn sqlite3_blob_bytes(arg1: *mut sqlite3_blob) -> ::core::ffi::c_int;
2057}
2058unsafe extern "C" {
2059    pub fn sqlite3_blob_read(
2060        arg1: *mut sqlite3_blob,
2061        Z: *mut ::core::ffi::c_void,
2062        N: ::core::ffi::c_int,
2063        iOffset: ::core::ffi::c_int,
2064    ) -> ::core::ffi::c_int;
2065}
2066unsafe extern "C" {
2067    pub fn sqlite3_blob_write(
2068        arg1: *mut sqlite3_blob,
2069        z: *const ::core::ffi::c_void,
2070        n: ::core::ffi::c_int,
2071        iOffset: ::core::ffi::c_int,
2072    ) -> ::core::ffi::c_int;
2073}
2074unsafe extern "C" {
2075    pub fn sqlite3_vfs_find(zVfsName: *const ::core::ffi::c_char) -> *mut sqlite3_vfs;
2076}
2077unsafe extern "C" {
2078    pub fn sqlite3_vfs_register(arg1: *mut sqlite3_vfs, makeDflt: ::core::ffi::c_int) -> ::core::ffi::c_int;
2079}
2080unsafe extern "C" {
2081    pub fn sqlite3_vfs_unregister(arg1: *mut sqlite3_vfs) -> ::core::ffi::c_int;
2082}
2083unsafe extern "C" {
2084    pub fn sqlite3_mutex_alloc(arg1: ::core::ffi::c_int) -> *mut sqlite3_mutex;
2085}
2086unsafe extern "C" {
2087    pub fn sqlite3_mutex_free(arg1: *mut sqlite3_mutex);
2088}
2089unsafe extern "C" {
2090    pub fn sqlite3_mutex_enter(arg1: *mut sqlite3_mutex);
2091}
2092unsafe extern "C" {
2093    pub fn sqlite3_mutex_try(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int;
2094}
2095unsafe extern "C" {
2096    pub fn sqlite3_mutex_leave(arg1: *mut sqlite3_mutex);
2097}
2098#[repr(C)]
2099#[derive(Debug, Copy, Clone)]
2100pub struct sqlite3_mutex_methods {
2101    pub xMutexInit: ::core::option::Option<unsafe extern "C" fn() -> ::core::ffi::c_int>,
2102    pub xMutexEnd: ::core::option::Option<unsafe extern "C" fn() -> ::core::ffi::c_int>,
2103    pub xMutexAlloc: ::core::option::Option<unsafe extern "C" fn(arg1: ::core::ffi::c_int) -> *mut sqlite3_mutex>,
2104    pub xMutexFree: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex)>,
2105    pub xMutexEnter: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex)>,
2106    pub xMutexTry: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int>,
2107    pub xMutexLeave: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex)>,
2108    pub xMutexHeld: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int>,
2109    pub xMutexNotheld: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int>,
2110}
2111unsafe extern "C" {
2112    pub fn sqlite3_mutex_held(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int;
2113}
2114unsafe extern "C" {
2115    pub fn sqlite3_mutex_notheld(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int;
2116}
2117unsafe extern "C" {
2118    pub fn sqlite3_db_mutex(arg1: *mut sqlite3) -> *mut sqlite3_mutex;
2119}
2120unsafe extern "C" {
2121    pub fn sqlite3_file_control(
2122        arg1: *mut sqlite3,
2123        zDbName: *const ::core::ffi::c_char,
2124        op: ::core::ffi::c_int,
2125        arg2: *mut ::core::ffi::c_void,
2126    ) -> ::core::ffi::c_int;
2127}
2128unsafe extern "C" {
2129    pub fn sqlite3_test_control(op: ::core::ffi::c_int, ...) -> ::core::ffi::c_int;
2130}
2131unsafe extern "C" {
2132    pub fn sqlite3_keyword_count() -> ::core::ffi::c_int;
2133}
2134unsafe extern "C" {
2135    pub fn sqlite3_keyword_name(
2136        arg1: ::core::ffi::c_int,
2137        arg2: *mut *const ::core::ffi::c_char,
2138        arg3: *mut ::core::ffi::c_int,
2139    ) -> ::core::ffi::c_int;
2140}
2141unsafe extern "C" {
2142    pub fn sqlite3_keyword_check(arg1: *const ::core::ffi::c_char, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int;
2143}
2144#[repr(C)]
2145#[derive(Debug, Copy, Clone)]
2146pub struct sqlite3_str {
2147    _unused: [u8; 0],
2148}
2149unsafe extern "C" {
2150    pub fn sqlite3_str_new(arg1: *mut sqlite3) -> *mut sqlite3_str;
2151}
2152unsafe extern "C" {
2153    pub fn sqlite3_str_finish(arg1: *mut sqlite3_str) -> *mut ::core::ffi::c_char;
2154}
2155unsafe extern "C" {
2156    pub fn sqlite3_str_free(arg1: *mut sqlite3_str);
2157}
2158unsafe extern "C" {
2159    pub fn sqlite3_str_appendf(arg1: *mut sqlite3_str, zFormat: *const ::core::ffi::c_char, ...);
2160}
2161unsafe extern "C" {
2162    pub fn sqlite3_str_append(arg1: *mut sqlite3_str, zIn: *const ::core::ffi::c_char, N: ::core::ffi::c_int);
2163}
2164unsafe extern "C" {
2165    pub fn sqlite3_str_appendall(arg1: *mut sqlite3_str, zIn: *const ::core::ffi::c_char);
2166}
2167unsafe extern "C" {
2168    pub fn sqlite3_str_appendchar(arg1: *mut sqlite3_str, N: ::core::ffi::c_int, C: ::core::ffi::c_char);
2169}
2170unsafe extern "C" {
2171    pub fn sqlite3_str_reset(arg1: *mut sqlite3_str);
2172}
2173unsafe extern "C" {
2174    pub fn sqlite3_str_truncate(arg1: *mut sqlite3_str, N: ::core::ffi::c_int);
2175}
2176unsafe extern "C" {
2177    pub fn sqlite3_str_errcode(arg1: *mut sqlite3_str) -> ::core::ffi::c_int;
2178}
2179unsafe extern "C" {
2180    pub fn sqlite3_str_length(arg1: *mut sqlite3_str) -> ::core::ffi::c_int;
2181}
2182unsafe extern "C" {
2183    pub fn sqlite3_str_value(arg1: *mut sqlite3_str) -> *mut ::core::ffi::c_char;
2184}
2185unsafe extern "C" {
2186    pub fn sqlite3_status(
2187        op: ::core::ffi::c_int,
2188        pCurrent: *mut ::core::ffi::c_int,
2189        pHighwater: *mut ::core::ffi::c_int,
2190        resetFlag: ::core::ffi::c_int,
2191    ) -> ::core::ffi::c_int;
2192}
2193unsafe extern "C" {
2194    pub fn sqlite3_status64(
2195        op: ::core::ffi::c_int,
2196        pCurrent: *mut sqlite3_int64,
2197        pHighwater: *mut sqlite3_int64,
2198        resetFlag: ::core::ffi::c_int,
2199    ) -> ::core::ffi::c_int;
2200}
2201unsafe extern "C" {
2202    pub fn sqlite3_db_status(
2203        arg1: *mut sqlite3,
2204        op: ::core::ffi::c_int,
2205        pCur: *mut ::core::ffi::c_int,
2206        pHiwtr: *mut ::core::ffi::c_int,
2207        resetFlg: ::core::ffi::c_int,
2208    ) -> ::core::ffi::c_int;
2209}
2210unsafe extern "C" {
2211    pub fn sqlite3_db_status64(
2212        arg1: *mut sqlite3,
2213        arg2: ::core::ffi::c_int,
2214        arg3: *mut sqlite3_int64,
2215        arg4: *mut sqlite3_int64,
2216        arg5: ::core::ffi::c_int,
2217    ) -> ::core::ffi::c_int;
2218}
2219unsafe extern "C" {
2220    pub fn sqlite3_stmt_status(
2221        arg1: *mut sqlite3_stmt,
2222        op: ::core::ffi::c_int,
2223        resetFlg: ::core::ffi::c_int,
2224    ) -> ::core::ffi::c_int;
2225}
2226#[repr(C)]
2227#[derive(Debug, Copy, Clone)]
2228pub struct sqlite3_pcache {
2229    _unused: [u8; 0],
2230}
2231#[repr(C)]
2232#[derive(Debug, Copy, Clone)]
2233pub struct sqlite3_pcache_page {
2234    pub pBuf: *mut ::core::ffi::c_void,
2235    pub pExtra: *mut ::core::ffi::c_void,
2236}
2237#[repr(C)]
2238#[derive(Debug, Copy, Clone)]
2239pub struct sqlite3_pcache_methods2 {
2240    pub iVersion: ::core::ffi::c_int,
2241    pub pArg: *mut ::core::ffi::c_void,
2242    pub xInit: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int>,
2243    pub xShutdown: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2244    pub xCreate: ::core::option::Option<
2245        unsafe extern "C" fn(
2246            szPage: ::core::ffi::c_int,
2247            szExtra: ::core::ffi::c_int,
2248            bPurgeable: ::core::ffi::c_int,
2249        ) -> *mut sqlite3_pcache,
2250    >,
2251    pub xCachesize:
2252        ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache, nCachesize: ::core::ffi::c_int)>,
2253    pub xPagecount: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache) -> ::core::ffi::c_int>,
2254    pub xFetch: ::core::option::Option<
2255        unsafe extern "C" fn(
2256            arg1: *mut sqlite3_pcache,
2257            key: ::core::ffi::c_uint,
2258            createFlag: ::core::ffi::c_int,
2259        ) -> *mut sqlite3_pcache_page,
2260    >,
2261    pub xUnpin: ::core::option::Option<
2262        unsafe extern "C" fn(arg1: *mut sqlite3_pcache, arg2: *mut sqlite3_pcache_page, discard: ::core::ffi::c_int),
2263    >,
2264    pub xRekey: ::core::option::Option<
2265        unsafe extern "C" fn(
2266            arg1: *mut sqlite3_pcache,
2267            arg2: *mut sqlite3_pcache_page,
2268            oldKey: ::core::ffi::c_uint,
2269            newKey: ::core::ffi::c_uint,
2270        ),
2271    >,
2272    pub xTruncate: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache, iLimit: ::core::ffi::c_uint)>,
2273    pub xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache)>,
2274    pub xShrink: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache)>,
2275}
2276#[repr(C)]
2277#[derive(Debug, Copy, Clone)]
2278pub struct sqlite3_pcache_methods {
2279    pub pArg: *mut ::core::ffi::c_void,
2280    pub xInit: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int>,
2281    pub xShutdown: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2282    pub xCreate: ::core::option::Option<
2283        unsafe extern "C" fn(szPage: ::core::ffi::c_int, bPurgeable: ::core::ffi::c_int) -> *mut sqlite3_pcache,
2284    >,
2285    pub xCachesize:
2286        ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache, nCachesize: ::core::ffi::c_int)>,
2287    pub xPagecount: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache) -> ::core::ffi::c_int>,
2288    pub xFetch: ::core::option::Option<
2289        unsafe extern "C" fn(
2290            arg1: *mut sqlite3_pcache,
2291            key: ::core::ffi::c_uint,
2292            createFlag: ::core::ffi::c_int,
2293        ) -> *mut ::core::ffi::c_void,
2294    >,
2295    pub xUnpin: ::core::option::Option<
2296        unsafe extern "C" fn(arg1: *mut sqlite3_pcache, arg2: *mut ::core::ffi::c_void, discard: ::core::ffi::c_int),
2297    >,
2298    pub xRekey: ::core::option::Option<
2299        unsafe extern "C" fn(
2300            arg1: *mut sqlite3_pcache,
2301            arg2: *mut ::core::ffi::c_void,
2302            oldKey: ::core::ffi::c_uint,
2303            newKey: ::core::ffi::c_uint,
2304        ),
2305    >,
2306    pub xTruncate: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache, iLimit: ::core::ffi::c_uint)>,
2307    pub xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache)>,
2308}
2309#[repr(C)]
2310#[derive(Debug, Copy, Clone)]
2311pub struct sqlite3_backup {
2312    _unused: [u8; 0],
2313}
2314unsafe extern "C" {
2315    pub fn sqlite3_backup_init(
2316        pDest: *mut sqlite3,
2317        zDestName: *const ::core::ffi::c_char,
2318        pSource: *mut sqlite3,
2319        zSourceName: *const ::core::ffi::c_char,
2320    ) -> *mut sqlite3_backup;
2321}
2322unsafe extern "C" {
2323    pub fn sqlite3_backup_step(p: *mut sqlite3_backup, nPage: ::core::ffi::c_int) -> ::core::ffi::c_int;
2324}
2325unsafe extern "C" {
2326    pub fn sqlite3_backup_finish(p: *mut sqlite3_backup) -> ::core::ffi::c_int;
2327}
2328unsafe extern "C" {
2329    pub fn sqlite3_backup_remaining(p: *mut sqlite3_backup) -> ::core::ffi::c_int;
2330}
2331unsafe extern "C" {
2332    pub fn sqlite3_backup_pagecount(p: *mut sqlite3_backup) -> ::core::ffi::c_int;
2333}
2334unsafe extern "C" {
2335    pub fn sqlite3_unlock_notify(
2336        pBlocked: *mut sqlite3,
2337        xNotify: ::core::option::Option<
2338            unsafe extern "C" fn(apArg: *mut *mut ::core::ffi::c_void, nArg: ::core::ffi::c_int),
2339        >,
2340        pNotifyArg: *mut ::core::ffi::c_void,
2341    ) -> ::core::ffi::c_int;
2342}
2343unsafe extern "C" {
2344    pub fn sqlite3_stricmp(arg1: *const ::core::ffi::c_char, arg2: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
2345}
2346unsafe extern "C" {
2347    pub fn sqlite3_strnicmp(
2348        arg1: *const ::core::ffi::c_char,
2349        arg2: *const ::core::ffi::c_char,
2350        arg3: ::core::ffi::c_int,
2351    ) -> ::core::ffi::c_int;
2352}
2353unsafe extern "C" {
2354    pub fn sqlite3_strglob(zGlob: *const ::core::ffi::c_char, zStr: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
2355}
2356unsafe extern "C" {
2357    pub fn sqlite3_strlike(
2358        zGlob: *const ::core::ffi::c_char,
2359        zStr: *const ::core::ffi::c_char,
2360        cEsc: ::core::ffi::c_uint,
2361    ) -> ::core::ffi::c_int;
2362}
2363unsafe extern "C" {
2364    pub fn sqlite3_log(iErrCode: ::core::ffi::c_int, zFormat: *const ::core::ffi::c_char, ...);
2365}
2366unsafe extern "C" {
2367    pub fn sqlite3_wal_hook(
2368        arg1: *mut sqlite3,
2369        arg2: ::core::option::Option<
2370            unsafe extern "C" fn(
2371                arg1: *mut ::core::ffi::c_void,
2372                arg2: *mut sqlite3,
2373                arg3: *const ::core::ffi::c_char,
2374                arg4: ::core::ffi::c_int,
2375            ) -> ::core::ffi::c_int,
2376        >,
2377        arg3: *mut ::core::ffi::c_void,
2378    ) -> *mut ::core::ffi::c_void;
2379}
2380unsafe extern "C" {
2381    pub fn sqlite3_wal_autocheckpoint(db: *mut sqlite3, N: ::core::ffi::c_int) -> ::core::ffi::c_int;
2382}
2383unsafe extern "C" {
2384    pub fn sqlite3_wal_checkpoint(db: *mut sqlite3, zDb: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
2385}
2386unsafe extern "C" {
2387    pub fn sqlite3_wal_checkpoint_v2(
2388        db: *mut sqlite3,
2389        zDb: *const ::core::ffi::c_char,
2390        eMode: ::core::ffi::c_int,
2391        pnLog: *mut ::core::ffi::c_int,
2392        pnCkpt: *mut ::core::ffi::c_int,
2393    ) -> ::core::ffi::c_int;
2394}
2395unsafe extern "C" {
2396    pub fn sqlite3_vtab_config(arg1: *mut sqlite3, op: ::core::ffi::c_int, ...) -> ::core::ffi::c_int;
2397}
2398unsafe extern "C" {
2399    pub fn sqlite3_vtab_on_conflict(arg1: *mut sqlite3) -> ::core::ffi::c_int;
2400}
2401unsafe extern "C" {
2402    pub fn sqlite3_vtab_nochange(arg1: *mut sqlite3_context) -> ::core::ffi::c_int;
2403}
2404unsafe extern "C" {
2405    pub fn sqlite3_vtab_collation(
2406        arg1: *mut sqlite3_index_info,
2407        arg2: ::core::ffi::c_int,
2408    ) -> *const ::core::ffi::c_char;
2409}
2410unsafe extern "C" {
2411    pub fn sqlite3_vtab_distinct(arg1: *mut sqlite3_index_info) -> ::core::ffi::c_int;
2412}
2413unsafe extern "C" {
2414    pub fn sqlite3_vtab_in(
2415        arg1: *mut sqlite3_index_info,
2416        iCons: ::core::ffi::c_int,
2417        bHandle: ::core::ffi::c_int,
2418    ) -> ::core::ffi::c_int;
2419}
2420unsafe extern "C" {
2421    pub fn sqlite3_vtab_in_first(pVal: *mut sqlite3_value, ppOut: *mut *mut sqlite3_value) -> ::core::ffi::c_int;
2422}
2423unsafe extern "C" {
2424    pub fn sqlite3_vtab_in_next(pVal: *mut sqlite3_value, ppOut: *mut *mut sqlite3_value) -> ::core::ffi::c_int;
2425}
2426unsafe extern "C" {
2427    pub fn sqlite3_vtab_rhs_value(
2428        arg1: *mut sqlite3_index_info,
2429        arg2: ::core::ffi::c_int,
2430        ppVal: *mut *mut sqlite3_value,
2431    ) -> ::core::ffi::c_int;
2432}
2433unsafe extern "C" {
2434    pub fn sqlite3_stmt_scanstatus(
2435        pStmt: *mut sqlite3_stmt,
2436        idx: ::core::ffi::c_int,
2437        iScanStatusOp: ::core::ffi::c_int,
2438        pOut: *mut ::core::ffi::c_void,
2439    ) -> ::core::ffi::c_int;
2440}
2441unsafe extern "C" {
2442    pub fn sqlite3_stmt_scanstatus_v2(
2443        pStmt: *mut sqlite3_stmt,
2444        idx: ::core::ffi::c_int,
2445        iScanStatusOp: ::core::ffi::c_int,
2446        flags: ::core::ffi::c_int,
2447        pOut: *mut ::core::ffi::c_void,
2448    ) -> ::core::ffi::c_int;
2449}
2450unsafe extern "C" {
2451    pub fn sqlite3_stmt_scanstatus_reset(arg1: *mut sqlite3_stmt);
2452}
2453unsafe extern "C" {
2454    pub fn sqlite3_db_cacheflush(arg1: *mut sqlite3) -> ::core::ffi::c_int;
2455}
2456unsafe extern "C" {
2457    pub fn sqlite3_system_errno(arg1: *mut sqlite3) -> ::core::ffi::c_int;
2458}
2459#[repr(C)]
2460#[derive(Debug, Copy, Clone)]
2461pub struct sqlite3_snapshot {
2462    pub hidden: [::core::ffi::c_uchar; 48usize],
2463}
2464unsafe extern "C" {
2465    pub fn sqlite3_snapshot_get(
2466        db: *mut sqlite3,
2467        zSchema: *const ::core::ffi::c_char,
2468        ppSnapshot: *mut *mut sqlite3_snapshot,
2469    ) -> ::core::ffi::c_int;
2470}
2471unsafe extern "C" {
2472    pub fn sqlite3_snapshot_open(
2473        db: *mut sqlite3,
2474        zSchema: *const ::core::ffi::c_char,
2475        pSnapshot: *mut sqlite3_snapshot,
2476    ) -> ::core::ffi::c_int;
2477}
2478unsafe extern "C" {
2479    pub fn sqlite3_snapshot_free(arg1: *mut sqlite3_snapshot);
2480}
2481unsafe extern "C" {
2482    pub fn sqlite3_snapshot_cmp(p1: *mut sqlite3_snapshot, p2: *mut sqlite3_snapshot) -> ::core::ffi::c_int;
2483}
2484unsafe extern "C" {
2485    pub fn sqlite3_snapshot_recover(db: *mut sqlite3, zDb: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
2486}
2487unsafe extern "C" {
2488    pub fn sqlite3_serialize(
2489        db: *mut sqlite3,
2490        zSchema: *const ::core::ffi::c_char,
2491        piSize: *mut sqlite3_int64,
2492        mFlags: ::core::ffi::c_uint,
2493    ) -> *mut ::core::ffi::c_uchar;
2494}
2495unsafe extern "C" {
2496    pub fn sqlite3_deserialize(
2497        db: *mut sqlite3,
2498        zSchema: *const ::core::ffi::c_char,
2499        pData: *mut ::core::ffi::c_uchar,
2500        szDb: sqlite3_int64,
2501        szBuf: sqlite3_int64,
2502        mFlags: ::core::ffi::c_uint,
2503    ) -> ::core::ffi::c_int;
2504}
2505unsafe extern "C" {
2506    pub fn sqlite3_carray_bind_v2(
2507        pStmt: *mut sqlite3_stmt,
2508        i: ::core::ffi::c_int,
2509        aData: *mut ::core::ffi::c_void,
2510        nData: ::core::ffi::c_int,
2511        mFlags: ::core::ffi::c_int,
2512        xDel: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2513        pDel: *mut ::core::ffi::c_void,
2514    ) -> ::core::ffi::c_int;
2515}
2516unsafe extern "C" {
2517    pub fn sqlite3_carray_bind(
2518        pStmt: *mut sqlite3_stmt,
2519        i: ::core::ffi::c_int,
2520        aData: *mut ::core::ffi::c_void,
2521        nData: ::core::ffi::c_int,
2522        mFlags: ::core::ffi::c_int,
2523        xDel: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2524    ) -> ::core::ffi::c_int;
2525}
2526pub type sqlite3_rtree_dbl = f64;
2527unsafe extern "C" {
2528    pub fn sqlite3_rtree_geometry_callback(
2529        db: *mut sqlite3,
2530        zGeom: *const ::core::ffi::c_char,
2531        xGeom: ::core::option::Option<
2532            unsafe extern "C" fn(
2533                arg1: *mut sqlite3_rtree_geometry,
2534                arg2: ::core::ffi::c_int,
2535                arg3: *mut sqlite3_rtree_dbl,
2536                arg4: *mut ::core::ffi::c_int,
2537            ) -> ::core::ffi::c_int,
2538        >,
2539        pContext: *mut ::core::ffi::c_void,
2540    ) -> ::core::ffi::c_int;
2541}
2542#[repr(C)]
2543#[derive(Debug, Copy, Clone)]
2544pub struct sqlite3_rtree_geometry {
2545    pub pContext: *mut ::core::ffi::c_void,
2546    pub nParam: ::core::ffi::c_int,
2547    pub aParam: *mut sqlite3_rtree_dbl,
2548    pub pUser: *mut ::core::ffi::c_void,
2549    pub xDelUser: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2550}
2551unsafe extern "C" {
2552    pub fn sqlite3_rtree_query_callback(
2553        db: *mut sqlite3,
2554        zQueryFunc: *const ::core::ffi::c_char,
2555        xQueryFunc: ::core::option::Option<
2556            unsafe extern "C" fn(arg1: *mut sqlite3_rtree_query_info) -> ::core::ffi::c_int,
2557        >,
2558        pContext: *mut ::core::ffi::c_void,
2559        xDestructor: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2560    ) -> ::core::ffi::c_int;
2561}
2562#[repr(C)]
2563#[derive(Debug, Copy, Clone)]
2564pub struct sqlite3_rtree_query_info {
2565    pub pContext: *mut ::core::ffi::c_void,
2566    pub nParam: ::core::ffi::c_int,
2567    pub aParam: *mut sqlite3_rtree_dbl,
2568    pub pUser: *mut ::core::ffi::c_void,
2569    pub xDelUser: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2570    pub aCoord: *mut sqlite3_rtree_dbl,
2571    pub anQueue: *mut ::core::ffi::c_uint,
2572    pub nCoord: ::core::ffi::c_int,
2573    pub iLevel: ::core::ffi::c_int,
2574    pub mxLevel: ::core::ffi::c_int,
2575    pub iRowid: sqlite3_int64,
2576    pub rParentScore: sqlite3_rtree_dbl,
2577    pub eParentWithin: ::core::ffi::c_int,
2578    pub eWithin: ::core::ffi::c_int,
2579    pub rScore: sqlite3_rtree_dbl,
2580    pub apSqlParam: *mut *mut sqlite3_value,
2581}