1pub const __GNUC_VA_LIST: ::core::ffi::c_int = 1;
4pub const SQLITE_VERSION: &[u8; 7] = b"3.45.3\0";
5pub const SQLITE_VERSION_NUMBER: ::core::ffi::c_int = 3045003;
6pub const SQLITE_SOURCE_ID: &[u8; 85] =
7 b"2024-04-15 13:34:05 8653b758870e6ef0c98d46b3ace27849054af85da891eb121e9aaa537f1e8355\0";
8pub const SQLITE_OK: ::core::ffi::c_int = 0;
9pub const SQLITE_ERROR: ::core::ffi::c_int = 1;
10pub const SQLITE_INTERNAL: ::core::ffi::c_int = 2;
11pub const SQLITE_PERM: ::core::ffi::c_int = 3;
12pub const SQLITE_ABORT: ::core::ffi::c_int = 4;
13pub const SQLITE_BUSY: ::core::ffi::c_int = 5;
14pub const SQLITE_LOCKED: ::core::ffi::c_int = 6;
15pub const SQLITE_NOMEM: ::core::ffi::c_int = 7;
16pub const SQLITE_READONLY: ::core::ffi::c_int = 8;
17pub const SQLITE_INTERRUPT: ::core::ffi::c_int = 9;
18pub const SQLITE_IOERR: ::core::ffi::c_int = 10;
19pub const SQLITE_CORRUPT: ::core::ffi::c_int = 11;
20pub const SQLITE_NOTFOUND: ::core::ffi::c_int = 12;
21pub const SQLITE_FULL: ::core::ffi::c_int = 13;
22pub const SQLITE_CANTOPEN: ::core::ffi::c_int = 14;
23pub const SQLITE_PROTOCOL: ::core::ffi::c_int = 15;
24pub const SQLITE_EMPTY: ::core::ffi::c_int = 16;
25pub const SQLITE_SCHEMA: ::core::ffi::c_int = 17;
26pub const SQLITE_TOOBIG: ::core::ffi::c_int = 18;
27pub const SQLITE_CONSTRAINT: ::core::ffi::c_int = 19;
28pub const SQLITE_MISMATCH: ::core::ffi::c_int = 20;
29pub const SQLITE_MISUSE: ::core::ffi::c_int = 21;
30pub const SQLITE_NOLFS: ::core::ffi::c_int = 22;
31pub const SQLITE_AUTH: ::core::ffi::c_int = 23;
32pub const SQLITE_FORMAT: ::core::ffi::c_int = 24;
33pub const SQLITE_RANGE: ::core::ffi::c_int = 25;
34pub const SQLITE_NOTADB: ::core::ffi::c_int = 26;
35pub const SQLITE_NOTICE: ::core::ffi::c_int = 27;
36pub const SQLITE_WARNING: ::core::ffi::c_int = 28;
37pub const SQLITE_ROW: ::core::ffi::c_int = 100;
38pub const SQLITE_DONE: ::core::ffi::c_int = 101;
39pub const SQLITE_ERROR_MISSING_COLLSEQ: ::core::ffi::c_int = 257;
40pub const SQLITE_ERROR_RETRY: ::core::ffi::c_int = 513;
41pub const SQLITE_ERROR_SNAPSHOT: ::core::ffi::c_int = 769;
42pub const SQLITE_IOERR_READ: ::core::ffi::c_int = 266;
43pub const SQLITE_IOERR_SHORT_READ: ::core::ffi::c_int = 522;
44pub const SQLITE_IOERR_WRITE: ::core::ffi::c_int = 778;
45pub const SQLITE_IOERR_FSYNC: ::core::ffi::c_int = 1034;
46pub const SQLITE_IOERR_DIR_FSYNC: ::core::ffi::c_int = 1290;
47pub const SQLITE_IOERR_TRUNCATE: ::core::ffi::c_int = 1546;
48pub const SQLITE_IOERR_FSTAT: ::core::ffi::c_int = 1802;
49pub const SQLITE_IOERR_UNLOCK: ::core::ffi::c_int = 2058;
50pub const SQLITE_IOERR_RDLOCK: ::core::ffi::c_int = 2314;
51pub const SQLITE_IOERR_DELETE: ::core::ffi::c_int = 2570;
52pub const SQLITE_IOERR_BLOCKED: ::core::ffi::c_int = 2826;
53pub const SQLITE_IOERR_NOMEM: ::core::ffi::c_int = 3082;
54pub const SQLITE_IOERR_ACCESS: ::core::ffi::c_int = 3338;
55pub const SQLITE_IOERR_CHECKRESERVEDLOCK: ::core::ffi::c_int = 3594;
56pub const SQLITE_IOERR_LOCK: ::core::ffi::c_int = 3850;
57pub const SQLITE_IOERR_CLOSE: ::core::ffi::c_int = 4106;
58pub const SQLITE_IOERR_DIR_CLOSE: ::core::ffi::c_int = 4362;
59pub const SQLITE_IOERR_SHMOPEN: ::core::ffi::c_int = 4618;
60pub const SQLITE_IOERR_SHMSIZE: ::core::ffi::c_int = 4874;
61pub const SQLITE_IOERR_SHMLOCK: ::core::ffi::c_int = 5130;
62pub const SQLITE_IOERR_SHMMAP: ::core::ffi::c_int = 5386;
63pub const SQLITE_IOERR_SEEK: ::core::ffi::c_int = 5642;
64pub const SQLITE_IOERR_DELETE_NOENT: ::core::ffi::c_int = 5898;
65pub const SQLITE_IOERR_MMAP: ::core::ffi::c_int = 6154;
66pub const SQLITE_IOERR_GETTEMPPATH: ::core::ffi::c_int = 6410;
67pub const SQLITE_IOERR_CONVPATH: ::core::ffi::c_int = 6666;
68pub const SQLITE_IOERR_VNODE: ::core::ffi::c_int = 6922;
69pub const SQLITE_IOERR_AUTH: ::core::ffi::c_int = 7178;
70pub const SQLITE_IOERR_BEGIN_ATOMIC: ::core::ffi::c_int = 7434;
71pub const SQLITE_IOERR_COMMIT_ATOMIC: ::core::ffi::c_int = 7690;
72pub const SQLITE_IOERR_ROLLBACK_ATOMIC: ::core::ffi::c_int = 7946;
73pub const SQLITE_IOERR_DATA: ::core::ffi::c_int = 8202;
74pub const SQLITE_IOERR_CORRUPTFS: ::core::ffi::c_int = 8458;
75pub const SQLITE_IOERR_IN_PAGE: ::core::ffi::c_int = 8714;
76pub const SQLITE_LOCKED_SHAREDCACHE: ::core::ffi::c_int = 262;
77pub const SQLITE_LOCKED_VTAB: ::core::ffi::c_int = 518;
78pub const SQLITE_BUSY_RECOVERY: ::core::ffi::c_int = 261;
79pub const SQLITE_BUSY_SNAPSHOT: ::core::ffi::c_int = 517;
80pub const SQLITE_BUSY_TIMEOUT: ::core::ffi::c_int = 773;
81pub const SQLITE_CANTOPEN_NOTEMPDIR: ::core::ffi::c_int = 270;
82pub const SQLITE_CANTOPEN_ISDIR: ::core::ffi::c_int = 526;
83pub const SQLITE_CANTOPEN_FULLPATH: ::core::ffi::c_int = 782;
84pub const SQLITE_CANTOPEN_CONVPATH: ::core::ffi::c_int = 1038;
85pub const SQLITE_CANTOPEN_DIRTYWAL: ::core::ffi::c_int = 1294;
86pub const SQLITE_CANTOPEN_SYMLINK: ::core::ffi::c_int = 1550;
87pub const SQLITE_CORRUPT_VTAB: ::core::ffi::c_int = 267;
88pub const SQLITE_CORRUPT_SEQUENCE: ::core::ffi::c_int = 523;
89pub const SQLITE_CORRUPT_INDEX: ::core::ffi::c_int = 779;
90pub const SQLITE_READONLY_RECOVERY: ::core::ffi::c_int = 264;
91pub const SQLITE_READONLY_CANTLOCK: ::core::ffi::c_int = 520;
92pub const SQLITE_READONLY_ROLLBACK: ::core::ffi::c_int = 776;
93pub const SQLITE_READONLY_DBMOVED: ::core::ffi::c_int = 1032;
94pub const SQLITE_READONLY_CANTINIT: ::core::ffi::c_int = 1288;
95pub const SQLITE_READONLY_DIRECTORY: ::core::ffi::c_int = 1544;
96pub const SQLITE_ABORT_ROLLBACK: ::core::ffi::c_int = 516;
97pub const SQLITE_CONSTRAINT_CHECK: ::core::ffi::c_int = 275;
98pub const SQLITE_CONSTRAINT_COMMITHOOK: ::core::ffi::c_int = 531;
99pub const SQLITE_CONSTRAINT_FOREIGNKEY: ::core::ffi::c_int = 787;
100pub const SQLITE_CONSTRAINT_FUNCTION: ::core::ffi::c_int = 1043;
101pub const SQLITE_CONSTRAINT_NOTNULL: ::core::ffi::c_int = 1299;
102pub const SQLITE_CONSTRAINT_PRIMARYKEY: ::core::ffi::c_int = 1555;
103pub const SQLITE_CONSTRAINT_TRIGGER: ::core::ffi::c_int = 1811;
104pub const SQLITE_CONSTRAINT_UNIQUE: ::core::ffi::c_int = 2067;
105pub const SQLITE_CONSTRAINT_VTAB: ::core::ffi::c_int = 2323;
106pub const SQLITE_CONSTRAINT_ROWID: ::core::ffi::c_int = 2579;
107pub const SQLITE_CONSTRAINT_PINNED: ::core::ffi::c_int = 2835;
108pub const SQLITE_CONSTRAINT_DATATYPE: ::core::ffi::c_int = 3091;
109pub const SQLITE_NOTICE_RECOVER_WAL: ::core::ffi::c_int = 283;
110pub const SQLITE_NOTICE_RECOVER_ROLLBACK: ::core::ffi::c_int = 539;
111pub const SQLITE_NOTICE_RBU: ::core::ffi::c_int = 795;
112pub const SQLITE_WARNING_AUTOINDEX: ::core::ffi::c_int = 284;
113pub const SQLITE_AUTH_USER: ::core::ffi::c_int = 279;
114pub const SQLITE_OK_LOAD_PERMANENTLY: ::core::ffi::c_int = 256;
115pub const SQLITE_OK_SYMLINK: ::core::ffi::c_int = 512;
116pub const SQLITE_OPEN_READONLY: ::core::ffi::c_int = 1;
117pub const SQLITE_OPEN_READWRITE: ::core::ffi::c_int = 2;
118pub const SQLITE_OPEN_CREATE: ::core::ffi::c_int = 4;
119pub const SQLITE_OPEN_DELETEONCLOSE: ::core::ffi::c_int = 8;
120pub const SQLITE_OPEN_EXCLUSIVE: ::core::ffi::c_int = 16;
121pub const SQLITE_OPEN_AUTOPROXY: ::core::ffi::c_int = 32;
122pub const SQLITE_OPEN_URI: ::core::ffi::c_int = 64;
123pub const SQLITE_OPEN_MEMORY: ::core::ffi::c_int = 128;
124pub const SQLITE_OPEN_MAIN_DB: ::core::ffi::c_int = 256;
125pub const SQLITE_OPEN_TEMP_DB: ::core::ffi::c_int = 512;
126pub const SQLITE_OPEN_TRANSIENT_DB: ::core::ffi::c_int = 1024;
127pub const SQLITE_OPEN_MAIN_JOURNAL: ::core::ffi::c_int = 2048;
128pub const SQLITE_OPEN_TEMP_JOURNAL: ::core::ffi::c_int = 4096;
129pub const SQLITE_OPEN_SUBJOURNAL: ::core::ffi::c_int = 8192;
130pub const SQLITE_OPEN_SUPER_JOURNAL: ::core::ffi::c_int = 16384;
131pub const SQLITE_OPEN_NOMUTEX: ::core::ffi::c_int = 32768;
132pub const SQLITE_OPEN_FULLMUTEX: ::core::ffi::c_int = 65536;
133pub const SQLITE_OPEN_SHAREDCACHE: ::core::ffi::c_int = 131072;
134pub const SQLITE_OPEN_PRIVATECACHE: ::core::ffi::c_int = 262144;
135pub const SQLITE_OPEN_WAL: ::core::ffi::c_int = 524288;
136pub const SQLITE_OPEN_NOFOLLOW: ::core::ffi::c_int = 16777216;
137pub const SQLITE_OPEN_EXRESCODE: ::core::ffi::c_int = 33554432;
138pub const SQLITE_OPEN_MASTER_JOURNAL: ::core::ffi::c_int = 16384;
139pub const SQLITE_IOCAP_ATOMIC: ::core::ffi::c_int = 1;
140pub const SQLITE_IOCAP_ATOMIC512: ::core::ffi::c_int = 2;
141pub const SQLITE_IOCAP_ATOMIC1K: ::core::ffi::c_int = 4;
142pub const SQLITE_IOCAP_ATOMIC2K: ::core::ffi::c_int = 8;
143pub const SQLITE_IOCAP_ATOMIC4K: ::core::ffi::c_int = 16;
144pub const SQLITE_IOCAP_ATOMIC8K: ::core::ffi::c_int = 32;
145pub const SQLITE_IOCAP_ATOMIC16K: ::core::ffi::c_int = 64;
146pub const SQLITE_IOCAP_ATOMIC32K: ::core::ffi::c_int = 128;
147pub const SQLITE_IOCAP_ATOMIC64K: ::core::ffi::c_int = 256;
148pub const SQLITE_IOCAP_SAFE_APPEND: ::core::ffi::c_int = 512;
149pub const SQLITE_IOCAP_SEQUENTIAL: ::core::ffi::c_int = 1024;
150pub const SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN: ::core::ffi::c_int = 2048;
151pub const SQLITE_IOCAP_POWERSAFE_OVERWRITE: ::core::ffi::c_int = 4096;
152pub const SQLITE_IOCAP_IMMUTABLE: ::core::ffi::c_int = 8192;
153pub const SQLITE_IOCAP_BATCH_ATOMIC: ::core::ffi::c_int = 16384;
154pub const SQLITE_LOCK_NONE: ::core::ffi::c_int = 0;
155pub const SQLITE_LOCK_SHARED: ::core::ffi::c_int = 1;
156pub const SQLITE_LOCK_RESERVED: ::core::ffi::c_int = 2;
157pub const SQLITE_LOCK_PENDING: ::core::ffi::c_int = 3;
158pub const SQLITE_LOCK_EXCLUSIVE: ::core::ffi::c_int = 4;
159pub const SQLITE_SYNC_NORMAL: ::core::ffi::c_int = 2;
160pub const SQLITE_SYNC_FULL: ::core::ffi::c_int = 3;
161pub const SQLITE_SYNC_DATAONLY: ::core::ffi::c_int = 16;
162pub const SQLITE_FCNTL_LOCKSTATE: ::core::ffi::c_int = 1;
163pub const SQLITE_FCNTL_GET_LOCKPROXYFILE: ::core::ffi::c_int = 2;
164pub const SQLITE_FCNTL_SET_LOCKPROXYFILE: ::core::ffi::c_int = 3;
165pub const SQLITE_FCNTL_LAST_ERRNO: ::core::ffi::c_int = 4;
166pub const SQLITE_FCNTL_SIZE_HINT: ::core::ffi::c_int = 5;
167pub const SQLITE_FCNTL_CHUNK_SIZE: ::core::ffi::c_int = 6;
168pub const SQLITE_FCNTL_FILE_POINTER: ::core::ffi::c_int = 7;
169pub const SQLITE_FCNTL_SYNC_OMITTED: ::core::ffi::c_int = 8;
170pub const SQLITE_FCNTL_WIN32_AV_RETRY: ::core::ffi::c_int = 9;
171pub const SQLITE_FCNTL_PERSIST_WAL: ::core::ffi::c_int = 10;
172pub const SQLITE_FCNTL_OVERWRITE: ::core::ffi::c_int = 11;
173pub const SQLITE_FCNTL_VFSNAME: ::core::ffi::c_int = 12;
174pub const SQLITE_FCNTL_POWERSAFE_OVERWRITE: ::core::ffi::c_int = 13;
175pub const SQLITE_FCNTL_PRAGMA: ::core::ffi::c_int = 14;
176pub const SQLITE_FCNTL_BUSYHANDLER: ::core::ffi::c_int = 15;
177pub const SQLITE_FCNTL_TEMPFILENAME: ::core::ffi::c_int = 16;
178pub const SQLITE_FCNTL_MMAP_SIZE: ::core::ffi::c_int = 18;
179pub const SQLITE_FCNTL_TRACE: ::core::ffi::c_int = 19;
180pub const SQLITE_FCNTL_HAS_MOVED: ::core::ffi::c_int = 20;
181pub const SQLITE_FCNTL_SYNC: ::core::ffi::c_int = 21;
182pub const SQLITE_FCNTL_COMMIT_PHASETWO: ::core::ffi::c_int = 22;
183pub const SQLITE_FCNTL_WIN32_SET_HANDLE: ::core::ffi::c_int = 23;
184pub const SQLITE_FCNTL_WAL_BLOCK: ::core::ffi::c_int = 24;
185pub const SQLITE_FCNTL_ZIPVFS: ::core::ffi::c_int = 25;
186pub const SQLITE_FCNTL_RBU: ::core::ffi::c_int = 26;
187pub const SQLITE_FCNTL_VFS_POINTER: ::core::ffi::c_int = 27;
188pub const SQLITE_FCNTL_JOURNAL_POINTER: ::core::ffi::c_int = 28;
189pub const SQLITE_FCNTL_WIN32_GET_HANDLE: ::core::ffi::c_int = 29;
190pub const SQLITE_FCNTL_PDB: ::core::ffi::c_int = 30;
191pub const SQLITE_FCNTL_BEGIN_ATOMIC_WRITE: ::core::ffi::c_int = 31;
192pub const SQLITE_FCNTL_COMMIT_ATOMIC_WRITE: ::core::ffi::c_int = 32;
193pub const SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE: ::core::ffi::c_int = 33;
194pub const SQLITE_FCNTL_LOCK_TIMEOUT: ::core::ffi::c_int = 34;
195pub const SQLITE_FCNTL_DATA_VERSION: ::core::ffi::c_int = 35;
196pub const SQLITE_FCNTL_SIZE_LIMIT: ::core::ffi::c_int = 36;
197pub const SQLITE_FCNTL_CKPT_DONE: ::core::ffi::c_int = 37;
198pub const SQLITE_FCNTL_RESERVE_BYTES: ::core::ffi::c_int = 38;
199pub const SQLITE_FCNTL_CKPT_START: ::core::ffi::c_int = 39;
200pub const SQLITE_FCNTL_EXTERNAL_READER: ::core::ffi::c_int = 40;
201pub const SQLITE_FCNTL_CKSM_FILE: ::core::ffi::c_int = 41;
202pub const SQLITE_FCNTL_RESET_CACHE: ::core::ffi::c_int = 42;
203pub const SQLITE_GET_LOCKPROXYFILE: ::core::ffi::c_int = 2;
204pub const SQLITE_SET_LOCKPROXYFILE: ::core::ffi::c_int = 3;
205pub const SQLITE_LAST_ERRNO: ::core::ffi::c_int = 4;
206pub const SQLITE_ACCESS_EXISTS: ::core::ffi::c_int = 0;
207pub const SQLITE_ACCESS_READWRITE: ::core::ffi::c_int = 1;
208pub const SQLITE_ACCESS_READ: ::core::ffi::c_int = 2;
209pub const SQLITE_SHM_UNLOCK: ::core::ffi::c_int = 1;
210pub const SQLITE_SHM_LOCK: ::core::ffi::c_int = 2;
211pub const SQLITE_SHM_SHARED: ::core::ffi::c_int = 4;
212pub const SQLITE_SHM_EXCLUSIVE: ::core::ffi::c_int = 8;
213pub const SQLITE_SHM_NLOCK: ::core::ffi::c_int = 8;
214pub const SQLITE_CONFIG_SINGLETHREAD: ::core::ffi::c_int = 1;
215pub const SQLITE_CONFIG_MULTITHREAD: ::core::ffi::c_int = 2;
216pub const SQLITE_CONFIG_SERIALIZED: ::core::ffi::c_int = 3;
217pub const SQLITE_CONFIG_MALLOC: ::core::ffi::c_int = 4;
218pub const SQLITE_CONFIG_GETMALLOC: ::core::ffi::c_int = 5;
219pub const SQLITE_CONFIG_SCRATCH: ::core::ffi::c_int = 6;
220pub const SQLITE_CONFIG_PAGECACHE: ::core::ffi::c_int = 7;
221pub const SQLITE_CONFIG_HEAP: ::core::ffi::c_int = 8;
222pub const SQLITE_CONFIG_MEMSTATUS: ::core::ffi::c_int = 9;
223pub const SQLITE_CONFIG_MUTEX: ::core::ffi::c_int = 10;
224pub const SQLITE_CONFIG_GETMUTEX: ::core::ffi::c_int = 11;
225pub const SQLITE_CONFIG_LOOKASIDE: ::core::ffi::c_int = 13;
226pub const SQLITE_CONFIG_PCACHE: ::core::ffi::c_int = 14;
227pub const SQLITE_CONFIG_GETPCACHE: ::core::ffi::c_int = 15;
228pub const SQLITE_CONFIG_LOG: ::core::ffi::c_int = 16;
229pub const SQLITE_CONFIG_URI: ::core::ffi::c_int = 17;
230pub const SQLITE_CONFIG_PCACHE2: ::core::ffi::c_int = 18;
231pub const SQLITE_CONFIG_GETPCACHE2: ::core::ffi::c_int = 19;
232pub const SQLITE_CONFIG_COVERING_INDEX_SCAN: ::core::ffi::c_int = 20;
233pub const SQLITE_CONFIG_SQLLOG: ::core::ffi::c_int = 21;
234pub const SQLITE_CONFIG_MMAP_SIZE: ::core::ffi::c_int = 22;
235pub const SQLITE_CONFIG_WIN32_HEAPSIZE: ::core::ffi::c_int = 23;
236pub const SQLITE_CONFIG_PCACHE_HDRSZ: ::core::ffi::c_int = 24;
237pub const SQLITE_CONFIG_PMASZ: ::core::ffi::c_int = 25;
238pub const SQLITE_CONFIG_STMTJRNL_SPILL: ::core::ffi::c_int = 26;
239pub const SQLITE_CONFIG_SMALL_MALLOC: ::core::ffi::c_int = 27;
240pub const SQLITE_CONFIG_SORTERREF_SIZE: ::core::ffi::c_int = 28;
241pub const SQLITE_CONFIG_MEMDB_MAXSIZE: ::core::ffi::c_int = 29;
242pub const SQLITE_CONFIG_ROWID_IN_VIEW: ::core::ffi::c_int = 30;
243pub const SQLITE_DBCONFIG_MAINDBNAME: ::core::ffi::c_int = 1000;
244pub const SQLITE_DBCONFIG_LOOKASIDE: ::core::ffi::c_int = 1001;
245pub const SQLITE_DBCONFIG_ENABLE_FKEY: ::core::ffi::c_int = 1002;
246pub const SQLITE_DBCONFIG_ENABLE_TRIGGER: ::core::ffi::c_int = 1003;
247pub const SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER: ::core::ffi::c_int = 1004;
248pub const SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION: ::core::ffi::c_int = 1005;
249pub const SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE: ::core::ffi::c_int = 1006;
250pub const SQLITE_DBCONFIG_ENABLE_QPSG: ::core::ffi::c_int = 1007;
251pub const SQLITE_DBCONFIG_TRIGGER_EQP: ::core::ffi::c_int = 1008;
252pub const SQLITE_DBCONFIG_RESET_DATABASE: ::core::ffi::c_int = 1009;
253pub const SQLITE_DBCONFIG_DEFENSIVE: ::core::ffi::c_int = 1010;
254pub const SQLITE_DBCONFIG_WRITABLE_SCHEMA: ::core::ffi::c_int = 1011;
255pub const SQLITE_DBCONFIG_LEGACY_ALTER_TABLE: ::core::ffi::c_int = 1012;
256pub const SQLITE_DBCONFIG_DQS_DML: ::core::ffi::c_int = 1013;
257pub const SQLITE_DBCONFIG_DQS_DDL: ::core::ffi::c_int = 1014;
258pub const SQLITE_DBCONFIG_ENABLE_VIEW: ::core::ffi::c_int = 1015;
259pub const SQLITE_DBCONFIG_LEGACY_FILE_FORMAT: ::core::ffi::c_int = 1016;
260pub const SQLITE_DBCONFIG_TRUSTED_SCHEMA: ::core::ffi::c_int = 1017;
261pub const SQLITE_DBCONFIG_STMT_SCANSTATUS: ::core::ffi::c_int = 1018;
262pub const SQLITE_DBCONFIG_REVERSE_SCANORDER: ::core::ffi::c_int = 1019;
263pub const SQLITE_DBCONFIG_MAX: ::core::ffi::c_int = 1019;
264pub const SQLITE_DENY: ::core::ffi::c_int = 1;
265pub const SQLITE_IGNORE: ::core::ffi::c_int = 2;
266pub const SQLITE_CREATE_INDEX: ::core::ffi::c_int = 1;
267pub const SQLITE_CREATE_TABLE: ::core::ffi::c_int = 2;
268pub const SQLITE_CREATE_TEMP_INDEX: ::core::ffi::c_int = 3;
269pub const SQLITE_CREATE_TEMP_TABLE: ::core::ffi::c_int = 4;
270pub const SQLITE_CREATE_TEMP_TRIGGER: ::core::ffi::c_int = 5;
271pub const SQLITE_CREATE_TEMP_VIEW: ::core::ffi::c_int = 6;
272pub const SQLITE_CREATE_TRIGGER: ::core::ffi::c_int = 7;
273pub const SQLITE_CREATE_VIEW: ::core::ffi::c_int = 8;
274pub const SQLITE_DELETE: ::core::ffi::c_int = 9;
275pub const SQLITE_DROP_INDEX: ::core::ffi::c_int = 10;
276pub const SQLITE_DROP_TABLE: ::core::ffi::c_int = 11;
277pub const SQLITE_DROP_TEMP_INDEX: ::core::ffi::c_int = 12;
278pub const SQLITE_DROP_TEMP_TABLE: ::core::ffi::c_int = 13;
279pub const SQLITE_DROP_TEMP_TRIGGER: ::core::ffi::c_int = 14;
280pub const SQLITE_DROP_TEMP_VIEW: ::core::ffi::c_int = 15;
281pub const SQLITE_DROP_TRIGGER: ::core::ffi::c_int = 16;
282pub const SQLITE_DROP_VIEW: ::core::ffi::c_int = 17;
283pub const SQLITE_INSERT: ::core::ffi::c_int = 18;
284pub const SQLITE_PRAGMA: ::core::ffi::c_int = 19;
285pub const SQLITE_READ: ::core::ffi::c_int = 20;
286pub const SQLITE_SELECT: ::core::ffi::c_int = 21;
287pub const SQLITE_TRANSACTION: ::core::ffi::c_int = 22;
288pub const SQLITE_UPDATE: ::core::ffi::c_int = 23;
289pub const SQLITE_ATTACH: ::core::ffi::c_int = 24;
290pub const SQLITE_DETACH: ::core::ffi::c_int = 25;
291pub const SQLITE_ALTER_TABLE: ::core::ffi::c_int = 26;
292pub const SQLITE_REINDEX: ::core::ffi::c_int = 27;
293pub const SQLITE_ANALYZE: ::core::ffi::c_int = 28;
294pub const SQLITE_CREATE_VTABLE: ::core::ffi::c_int = 29;
295pub const SQLITE_DROP_VTABLE: ::core::ffi::c_int = 30;
296pub const SQLITE_FUNCTION: ::core::ffi::c_int = 31;
297pub const SQLITE_SAVEPOINT: ::core::ffi::c_int = 32;
298pub const SQLITE_COPY: ::core::ffi::c_int = 0;
299pub const SQLITE_RECURSIVE: ::core::ffi::c_int = 33;
300pub const SQLITE_TRACE_STMT: ::core::ffi::c_int = 1;
301pub const SQLITE_TRACE_PROFILE: ::core::ffi::c_int = 2;
302pub const SQLITE_TRACE_ROW: ::core::ffi::c_int = 4;
303pub const SQLITE_TRACE_CLOSE: ::core::ffi::c_int = 8;
304pub const SQLITE_LIMIT_LENGTH: ::core::ffi::c_int = 0;
305pub const SQLITE_LIMIT_SQL_LENGTH: ::core::ffi::c_int = 1;
306pub const SQLITE_LIMIT_COLUMN: ::core::ffi::c_int = 2;
307pub const SQLITE_LIMIT_EXPR_DEPTH: ::core::ffi::c_int = 3;
308pub const SQLITE_LIMIT_COMPOUND_SELECT: ::core::ffi::c_int = 4;
309pub const SQLITE_LIMIT_VDBE_OP: ::core::ffi::c_int = 5;
310pub const SQLITE_LIMIT_FUNCTION_ARG: ::core::ffi::c_int = 6;
311pub const SQLITE_LIMIT_ATTACHED: ::core::ffi::c_int = 7;
312pub const SQLITE_LIMIT_LIKE_PATTERN_LENGTH: ::core::ffi::c_int = 8;
313pub const SQLITE_LIMIT_VARIABLE_NUMBER: ::core::ffi::c_int = 9;
314pub const SQLITE_LIMIT_TRIGGER_DEPTH: ::core::ffi::c_int = 10;
315pub const SQLITE_LIMIT_WORKER_THREADS: ::core::ffi::c_int = 11;
316pub const SQLITE_PREPARE_PERSISTENT: ::core::ffi::c_int = 1;
317pub const SQLITE_PREPARE_NORMALIZE: ::core::ffi::c_int = 2;
318pub const SQLITE_PREPARE_NO_VTAB: ::core::ffi::c_int = 4;
319pub const SQLITE_INTEGER: ::core::ffi::c_int = 1;
320pub const SQLITE_FLOAT: ::core::ffi::c_int = 2;
321pub const SQLITE_BLOB: ::core::ffi::c_int = 4;
322pub const SQLITE_NULL: ::core::ffi::c_int = 5;
323pub const SQLITE_TEXT: ::core::ffi::c_int = 3;
324pub const SQLITE3_TEXT: ::core::ffi::c_int = 3;
325pub const SQLITE_UTF8: ::core::ffi::c_int = 1;
326pub const SQLITE_UTF16LE: ::core::ffi::c_int = 2;
327pub const SQLITE_UTF16BE: ::core::ffi::c_int = 3;
328pub const SQLITE_UTF16: ::core::ffi::c_int = 4;
329pub const SQLITE_ANY: ::core::ffi::c_int = 5;
330pub const SQLITE_UTF16_ALIGNED: ::core::ffi::c_int = 8;
331pub const SQLITE_DETERMINISTIC: ::core::ffi::c_int = 2048;
332pub const SQLITE_DIRECTONLY: ::core::ffi::c_int = 524288;
333pub const SQLITE_SUBTYPE: ::core::ffi::c_int = 1048576;
334pub const SQLITE_INNOCUOUS: ::core::ffi::c_int = 2097152;
335pub const SQLITE_RESULT_SUBTYPE: ::core::ffi::c_int = 16777216;
336pub const SQLITE_WIN32_DATA_DIRECTORY_TYPE: ::core::ffi::c_int = 1;
337pub const SQLITE_WIN32_TEMP_DIRECTORY_TYPE: ::core::ffi::c_int = 2;
338pub const SQLITE_TXN_NONE: ::core::ffi::c_int = 0;
339pub const SQLITE_TXN_READ: ::core::ffi::c_int = 1;
340pub const SQLITE_TXN_WRITE: ::core::ffi::c_int = 2;
341pub const SQLITE_INDEX_SCAN_UNIQUE: ::core::ffi::c_int = 1;
342pub const SQLITE_INDEX_CONSTRAINT_EQ: ::core::ffi::c_int = 2;
343pub const SQLITE_INDEX_CONSTRAINT_GT: ::core::ffi::c_int = 4;
344pub const SQLITE_INDEX_CONSTRAINT_LE: ::core::ffi::c_int = 8;
345pub const SQLITE_INDEX_CONSTRAINT_LT: ::core::ffi::c_int = 16;
346pub const SQLITE_INDEX_CONSTRAINT_GE: ::core::ffi::c_int = 32;
347pub const SQLITE_INDEX_CONSTRAINT_MATCH: ::core::ffi::c_int = 64;
348pub const SQLITE_INDEX_CONSTRAINT_LIKE: ::core::ffi::c_int = 65;
349pub const SQLITE_INDEX_CONSTRAINT_GLOB: ::core::ffi::c_int = 66;
350pub const SQLITE_INDEX_CONSTRAINT_REGEXP: ::core::ffi::c_int = 67;
351pub const SQLITE_INDEX_CONSTRAINT_NE: ::core::ffi::c_int = 68;
352pub const SQLITE_INDEX_CONSTRAINT_ISNOT: ::core::ffi::c_int = 69;
353pub const SQLITE_INDEX_CONSTRAINT_ISNOTNULL: ::core::ffi::c_int = 70;
354pub const SQLITE_INDEX_CONSTRAINT_ISNULL: ::core::ffi::c_int = 71;
355pub const SQLITE_INDEX_CONSTRAINT_IS: ::core::ffi::c_int = 72;
356pub const SQLITE_INDEX_CONSTRAINT_LIMIT: ::core::ffi::c_int = 73;
357pub const SQLITE_INDEX_CONSTRAINT_OFFSET: ::core::ffi::c_int = 74;
358pub const SQLITE_INDEX_CONSTRAINT_FUNCTION: ::core::ffi::c_int = 150;
359pub const SQLITE_MUTEX_FAST: ::core::ffi::c_int = 0;
360pub const SQLITE_MUTEX_RECURSIVE: ::core::ffi::c_int = 1;
361pub const SQLITE_MUTEX_STATIC_MAIN: ::core::ffi::c_int = 2;
362pub const SQLITE_MUTEX_STATIC_MEM: ::core::ffi::c_int = 3;
363pub const SQLITE_MUTEX_STATIC_MEM2: ::core::ffi::c_int = 4;
364pub const SQLITE_MUTEX_STATIC_OPEN: ::core::ffi::c_int = 4;
365pub const SQLITE_MUTEX_STATIC_PRNG: ::core::ffi::c_int = 5;
366pub const SQLITE_MUTEX_STATIC_LRU: ::core::ffi::c_int = 6;
367pub const SQLITE_MUTEX_STATIC_LRU2: ::core::ffi::c_int = 7;
368pub const SQLITE_MUTEX_STATIC_PMEM: ::core::ffi::c_int = 7;
369pub const SQLITE_MUTEX_STATIC_APP1: ::core::ffi::c_int = 8;
370pub const SQLITE_MUTEX_STATIC_APP2: ::core::ffi::c_int = 9;
371pub const SQLITE_MUTEX_STATIC_APP3: ::core::ffi::c_int = 10;
372pub const SQLITE_MUTEX_STATIC_VFS1: ::core::ffi::c_int = 11;
373pub const SQLITE_MUTEX_STATIC_VFS2: ::core::ffi::c_int = 12;
374pub const SQLITE_MUTEX_STATIC_VFS3: ::core::ffi::c_int = 13;
375pub const SQLITE_MUTEX_STATIC_MASTER: ::core::ffi::c_int = 2;
376pub const SQLITE_TESTCTRL_FIRST: ::core::ffi::c_int = 5;
377pub const SQLITE_TESTCTRL_PRNG_SAVE: ::core::ffi::c_int = 5;
378pub const SQLITE_TESTCTRL_PRNG_RESTORE: ::core::ffi::c_int = 6;
379pub const SQLITE_TESTCTRL_PRNG_RESET: ::core::ffi::c_int = 7;
380pub const SQLITE_TESTCTRL_FK_NO_ACTION: ::core::ffi::c_int = 7;
381pub const SQLITE_TESTCTRL_BITVEC_TEST: ::core::ffi::c_int = 8;
382pub const SQLITE_TESTCTRL_FAULT_INSTALL: ::core::ffi::c_int = 9;
383pub const SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS: ::core::ffi::c_int = 10;
384pub const SQLITE_TESTCTRL_PENDING_BYTE: ::core::ffi::c_int = 11;
385pub const SQLITE_TESTCTRL_ASSERT: ::core::ffi::c_int = 12;
386pub const SQLITE_TESTCTRL_ALWAYS: ::core::ffi::c_int = 13;
387pub const SQLITE_TESTCTRL_RESERVE: ::core::ffi::c_int = 14;
388pub const SQLITE_TESTCTRL_JSON_SELFCHECK: ::core::ffi::c_int = 14;
389pub const SQLITE_TESTCTRL_OPTIMIZATIONS: ::core::ffi::c_int = 15;
390pub const SQLITE_TESTCTRL_ISKEYWORD: ::core::ffi::c_int = 16;
391pub const SQLITE_TESTCTRL_SCRATCHMALLOC: ::core::ffi::c_int = 17;
392pub const SQLITE_TESTCTRL_INTERNAL_FUNCTIONS: ::core::ffi::c_int = 17;
393pub const SQLITE_TESTCTRL_LOCALTIME_FAULT: ::core::ffi::c_int = 18;
394pub const SQLITE_TESTCTRL_EXPLAIN_STMT: ::core::ffi::c_int = 19;
395pub const SQLITE_TESTCTRL_ONCE_RESET_THRESHOLD: ::core::ffi::c_int = 19;
396pub const SQLITE_TESTCTRL_NEVER_CORRUPT: ::core::ffi::c_int = 20;
397pub const SQLITE_TESTCTRL_VDBE_COVERAGE: ::core::ffi::c_int = 21;
398pub const SQLITE_TESTCTRL_BYTEORDER: ::core::ffi::c_int = 22;
399pub const SQLITE_TESTCTRL_ISINIT: ::core::ffi::c_int = 23;
400pub const SQLITE_TESTCTRL_SORTER_MMAP: ::core::ffi::c_int = 24;
401pub const SQLITE_TESTCTRL_IMPOSTER: ::core::ffi::c_int = 25;
402pub const SQLITE_TESTCTRL_PARSER_COVERAGE: ::core::ffi::c_int = 26;
403pub const SQLITE_TESTCTRL_RESULT_INTREAL: ::core::ffi::c_int = 27;
404pub const SQLITE_TESTCTRL_PRNG_SEED: ::core::ffi::c_int = 28;
405pub const SQLITE_TESTCTRL_EXTRA_SCHEMA_CHECKS: ::core::ffi::c_int = 29;
406pub const SQLITE_TESTCTRL_SEEK_COUNT: ::core::ffi::c_int = 30;
407pub const SQLITE_TESTCTRL_TRACEFLAGS: ::core::ffi::c_int = 31;
408pub const SQLITE_TESTCTRL_TUNE: ::core::ffi::c_int = 32;
409pub const SQLITE_TESTCTRL_LOGEST: ::core::ffi::c_int = 33;
410pub const SQLITE_TESTCTRL_USELONGDOUBLE: ::core::ffi::c_int = 34;
411pub const SQLITE_TESTCTRL_LAST: ::core::ffi::c_int = 34;
412pub const SQLITE_STATUS_MEMORY_USED: ::core::ffi::c_int = 0;
413pub const SQLITE_STATUS_PAGECACHE_USED: ::core::ffi::c_int = 1;
414pub const SQLITE_STATUS_PAGECACHE_OVERFLOW: ::core::ffi::c_int = 2;
415pub const SQLITE_STATUS_SCRATCH_USED: ::core::ffi::c_int = 3;
416pub const SQLITE_STATUS_SCRATCH_OVERFLOW: ::core::ffi::c_int = 4;
417pub const SQLITE_STATUS_MALLOC_SIZE: ::core::ffi::c_int = 5;
418pub const SQLITE_STATUS_PARSER_STACK: ::core::ffi::c_int = 6;
419pub const SQLITE_STATUS_PAGECACHE_SIZE: ::core::ffi::c_int = 7;
420pub const SQLITE_STATUS_SCRATCH_SIZE: ::core::ffi::c_int = 8;
421pub const SQLITE_STATUS_MALLOC_COUNT: ::core::ffi::c_int = 9;
422pub const SQLITE_DBSTATUS_LOOKASIDE_USED: ::core::ffi::c_int = 0;
423pub const SQLITE_DBSTATUS_CACHE_USED: ::core::ffi::c_int = 1;
424pub const SQLITE_DBSTATUS_SCHEMA_USED: ::core::ffi::c_int = 2;
425pub const SQLITE_DBSTATUS_STMT_USED: ::core::ffi::c_int = 3;
426pub const SQLITE_DBSTATUS_LOOKASIDE_HIT: ::core::ffi::c_int = 4;
427pub const SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE: ::core::ffi::c_int = 5;
428pub const SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL: ::core::ffi::c_int = 6;
429pub const SQLITE_DBSTATUS_CACHE_HIT: ::core::ffi::c_int = 7;
430pub const SQLITE_DBSTATUS_CACHE_MISS: ::core::ffi::c_int = 8;
431pub const SQLITE_DBSTATUS_CACHE_WRITE: ::core::ffi::c_int = 9;
432pub const SQLITE_DBSTATUS_DEFERRED_FKS: ::core::ffi::c_int = 10;
433pub const SQLITE_DBSTATUS_CACHE_USED_SHARED: ::core::ffi::c_int = 11;
434pub const SQLITE_DBSTATUS_CACHE_SPILL: ::core::ffi::c_int = 12;
435pub const SQLITE_DBSTATUS_MAX: ::core::ffi::c_int = 12;
436pub const SQLITE_STMTSTATUS_FULLSCAN_STEP: ::core::ffi::c_int = 1;
437pub const SQLITE_STMTSTATUS_SORT: ::core::ffi::c_int = 2;
438pub const SQLITE_STMTSTATUS_AUTOINDEX: ::core::ffi::c_int = 3;
439pub const SQLITE_STMTSTATUS_VM_STEP: ::core::ffi::c_int = 4;
440pub const SQLITE_STMTSTATUS_REPREPARE: ::core::ffi::c_int = 5;
441pub const SQLITE_STMTSTATUS_RUN: ::core::ffi::c_int = 6;
442pub const SQLITE_STMTSTATUS_FILTER_MISS: ::core::ffi::c_int = 7;
443pub const SQLITE_STMTSTATUS_FILTER_HIT: ::core::ffi::c_int = 8;
444pub const SQLITE_STMTSTATUS_MEMUSED: ::core::ffi::c_int = 99;
445pub const SQLITE_CHECKPOINT_PASSIVE: ::core::ffi::c_int = 0;
446pub const SQLITE_CHECKPOINT_FULL: ::core::ffi::c_int = 1;
447pub const SQLITE_CHECKPOINT_RESTART: ::core::ffi::c_int = 2;
448pub const SQLITE_CHECKPOINT_TRUNCATE: ::core::ffi::c_int = 3;
449pub const SQLITE_VTAB_CONSTRAINT_SUPPORT: ::core::ffi::c_int = 1;
450pub const SQLITE_VTAB_INNOCUOUS: ::core::ffi::c_int = 2;
451pub const SQLITE_VTAB_DIRECTONLY: ::core::ffi::c_int = 3;
452pub const SQLITE_VTAB_USES_ALL_SCHEMAS: ::core::ffi::c_int = 4;
453pub const SQLITE_ROLLBACK: ::core::ffi::c_int = 1;
454pub const SQLITE_FAIL: ::core::ffi::c_int = 3;
455pub const SQLITE_REPLACE: ::core::ffi::c_int = 5;
456pub const SQLITE_SCANSTAT_NLOOP: ::core::ffi::c_int = 0;
457pub const SQLITE_SCANSTAT_NVISIT: ::core::ffi::c_int = 1;
458pub const SQLITE_SCANSTAT_EST: ::core::ffi::c_int = 2;
459pub const SQLITE_SCANSTAT_NAME: ::core::ffi::c_int = 3;
460pub const SQLITE_SCANSTAT_EXPLAIN: ::core::ffi::c_int = 4;
461pub const SQLITE_SCANSTAT_SELECTID: ::core::ffi::c_int = 5;
462pub const SQLITE_SCANSTAT_PARENTID: ::core::ffi::c_int = 6;
463pub const SQLITE_SCANSTAT_NCYCLE: ::core::ffi::c_int = 7;
464pub const SQLITE_SCANSTAT_COMPLEX: ::core::ffi::c_int = 1;
465pub const SQLITE_SERIALIZE_NOCOPY: ::core::ffi::c_int = 1;
466pub const SQLITE_DESERIALIZE_FREEONCLOSE: ::core::ffi::c_int = 1;
467pub const SQLITE_DESERIALIZE_RESIZEABLE: ::core::ffi::c_int = 2;
468pub const SQLITE_DESERIALIZE_READONLY: ::core::ffi::c_int = 4;
469pub const NOT_WITHIN: ::core::ffi::c_int = 0;
470pub const PARTLY_WITHIN: ::core::ffi::c_int = 1;
471pub const FULLY_WITHIN: ::core::ffi::c_int = 2;
472pub const FTS5_TOKENIZE_QUERY: ::core::ffi::c_int = 1;
473pub const FTS5_TOKENIZE_PREFIX: ::core::ffi::c_int = 2;
474pub const FTS5_TOKENIZE_DOCUMENT: ::core::ffi::c_int = 4;
475pub const FTS5_TOKENIZE_AUX: ::core::ffi::c_int = 8;
476pub const FTS5_TOKEN_COLOCATED: ::core::ffi::c_int = 1;
477pub type va_list = __builtin_va_list;
478pub type __gnuc_va_list = __builtin_va_list;
479extern "C" {
480 pub static sqlite3_version: [::core::ffi::c_char; 0usize];
481}
482extern "C" {
483 pub fn sqlite3_libversion() -> *const ::core::ffi::c_char;
484}
485extern "C" {
486 pub fn sqlite3_sourceid() -> *const ::core::ffi::c_char;
487}
488extern "C" {
489 pub fn sqlite3_libversion_number() -> ::core::ffi::c_int;
490}
491extern "C" {
492 pub fn sqlite3_compileoption_used(zOptName: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
493}
494extern "C" {
495 pub fn sqlite3_compileoption_get(N: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
496}
497extern "C" {
498 pub fn sqlite3_threadsafe() -> ::core::ffi::c_int;
499}
500#[repr(C)]
501#[derive(Debug, Copy, Clone)]
502pub struct sqlite3 {
503 _unused: [u8; 0],
504}
505pub type sqlite_int64 = ::core::ffi::c_longlong;
506pub type sqlite_uint64 = ::core::ffi::c_ulonglong;
507pub type sqlite3_int64 = sqlite_int64;
508pub type sqlite3_uint64 = sqlite_uint64;
509extern "C" {
510 pub fn sqlite3_close(arg1: *mut sqlite3) -> ::core::ffi::c_int;
511}
512extern "C" {
513 pub fn sqlite3_close_v2(arg1: *mut sqlite3) -> ::core::ffi::c_int;
514}
515pub type sqlite3_callback = ::core::option::Option<
516 unsafe extern "C" fn(
517 arg1: *mut ::core::ffi::c_void,
518 arg2: ::core::ffi::c_int,
519 arg3: *mut *mut ::core::ffi::c_char,
520 arg4: *mut *mut ::core::ffi::c_char,
521 ) -> ::core::ffi::c_int,
522>;
523extern "C" {
524 pub fn sqlite3_exec(
525 arg1: *mut sqlite3,
526 sql: *const ::core::ffi::c_char,
527 callback: ::core::option::Option<
528 unsafe extern "C" fn(
529 arg1: *mut ::core::ffi::c_void,
530 arg2: ::core::ffi::c_int,
531 arg3: *mut *mut ::core::ffi::c_char,
532 arg4: *mut *mut ::core::ffi::c_char,
533 ) -> ::core::ffi::c_int,
534 >,
535 arg2: *mut ::core::ffi::c_void,
536 errmsg: *mut *mut ::core::ffi::c_char,
537 ) -> ::core::ffi::c_int;
538}
539#[repr(C)]
540#[derive(Debug, Copy, Clone)]
541pub struct sqlite3_file {
542 pub pMethods: *const sqlite3_io_methods,
543}
544#[test]
545fn bindgen_test_layout_sqlite3_file() {
546 const UNINIT: ::core::mem::MaybeUninit<sqlite3_file> = ::core::mem::MaybeUninit::uninit();
547 let ptr = UNINIT.as_ptr();
548 assert_eq!(
549 ::core::mem::size_of::<sqlite3_file>(),
550 8usize,
551 concat!("Size of: ", stringify!(sqlite3_file))
552 );
553 assert_eq!(
554 ::core::mem::align_of::<sqlite3_file>(),
555 8usize,
556 concat!("Alignment of ", stringify!(sqlite3_file))
557 );
558 assert_eq!(
559 unsafe { ::core::ptr::addr_of!((*ptr).pMethods) as usize - ptr as usize },
560 0usize,
561 concat!(
562 "Offset of field: ",
563 stringify!(sqlite3_file),
564 "::",
565 stringify!(pMethods)
566 )
567 );
568}
569#[repr(C)]
570#[derive(Debug, Copy, Clone)]
571pub struct sqlite3_io_methods {
572 pub iVersion: ::core::ffi::c_int,
573 pub xClose:
574 ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file) -> ::core::ffi::c_int>,
575 pub xRead: ::core::option::Option<
576 unsafe extern "C" fn(
577 arg1: *mut sqlite3_file,
578 arg2: *mut ::core::ffi::c_void,
579 iAmt: ::core::ffi::c_int,
580 iOfst: sqlite3_int64,
581 ) -> ::core::ffi::c_int,
582 >,
583 pub xWrite: ::core::option::Option<
584 unsafe extern "C" fn(
585 arg1: *mut sqlite3_file,
586 arg2: *const ::core::ffi::c_void,
587 iAmt: ::core::ffi::c_int,
588 iOfst: sqlite3_int64,
589 ) -> ::core::ffi::c_int,
590 >,
591 pub xTruncate: ::core::option::Option<
592 unsafe extern "C" fn(arg1: *mut sqlite3_file, size: sqlite3_int64) -> ::core::ffi::c_int,
593 >,
594 pub xSync: ::core::option::Option<
595 unsafe extern "C" fn(
596 arg1: *mut sqlite3_file,
597 flags: ::core::ffi::c_int,
598 ) -> ::core::ffi::c_int,
599 >,
600 pub xFileSize: ::core::option::Option<
601 unsafe extern "C" fn(
602 arg1: *mut sqlite3_file,
603 pSize: *mut sqlite3_int64,
604 ) -> ::core::ffi::c_int,
605 >,
606 pub xLock: ::core::option::Option<
607 unsafe extern "C" fn(
608 arg1: *mut sqlite3_file,
609 arg2: ::core::ffi::c_int,
610 ) -> ::core::ffi::c_int,
611 >,
612 pub xUnlock: ::core::option::Option<
613 unsafe extern "C" fn(
614 arg1: *mut sqlite3_file,
615 arg2: ::core::ffi::c_int,
616 ) -> ::core::ffi::c_int,
617 >,
618 pub xCheckReservedLock: ::core::option::Option<
619 unsafe extern "C" fn(
620 arg1: *mut sqlite3_file,
621 pResOut: *mut ::core::ffi::c_int,
622 ) -> ::core::ffi::c_int,
623 >,
624 pub xFileControl: ::core::option::Option<
625 unsafe extern "C" fn(
626 arg1: *mut sqlite3_file,
627 op: ::core::ffi::c_int,
628 pArg: *mut ::core::ffi::c_void,
629 ) -> ::core::ffi::c_int,
630 >,
631 pub xSectorSize:
632 ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file) -> ::core::ffi::c_int>,
633 pub xDeviceCharacteristics:
634 ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file) -> ::core::ffi::c_int>,
635 pub xShmMap: ::core::option::Option<
636 unsafe extern "C" fn(
637 arg1: *mut sqlite3_file,
638 iPg: ::core::ffi::c_int,
639 pgsz: ::core::ffi::c_int,
640 arg2: ::core::ffi::c_int,
641 arg3: *mut *mut ::core::ffi::c_void,
642 ) -> ::core::ffi::c_int,
643 >,
644 pub xShmLock: ::core::option::Option<
645 unsafe extern "C" fn(
646 arg1: *mut sqlite3_file,
647 offset: ::core::ffi::c_int,
648 n: ::core::ffi::c_int,
649 flags: ::core::ffi::c_int,
650 ) -> ::core::ffi::c_int,
651 >,
652 pub xShmBarrier: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_file)>,
653 pub xShmUnmap: ::core::option::Option<
654 unsafe extern "C" fn(
655 arg1: *mut sqlite3_file,
656 deleteFlag: ::core::ffi::c_int,
657 ) -> ::core::ffi::c_int,
658 >,
659 pub xFetch: ::core::option::Option<
660 unsafe extern "C" fn(
661 arg1: *mut sqlite3_file,
662 iOfst: sqlite3_int64,
663 iAmt: ::core::ffi::c_int,
664 pp: *mut *mut ::core::ffi::c_void,
665 ) -> ::core::ffi::c_int,
666 >,
667 pub xUnfetch: ::core::option::Option<
668 unsafe extern "C" fn(
669 arg1: *mut sqlite3_file,
670 iOfst: sqlite3_int64,
671 p: *mut ::core::ffi::c_void,
672 ) -> ::core::ffi::c_int,
673 >,
674}
675#[test]
676fn bindgen_test_layout_sqlite3_io_methods() {
677 const UNINIT: ::core::mem::MaybeUninit<sqlite3_io_methods> = ::core::mem::MaybeUninit::uninit();
678 let ptr = UNINIT.as_ptr();
679 assert_eq!(
680 ::core::mem::size_of::<sqlite3_io_methods>(),
681 152usize,
682 concat!("Size of: ", stringify!(sqlite3_io_methods))
683 );
684 assert_eq!(
685 ::core::mem::align_of::<sqlite3_io_methods>(),
686 8usize,
687 concat!("Alignment of ", stringify!(sqlite3_io_methods))
688 );
689 assert_eq!(
690 unsafe { ::core::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize },
691 0usize,
692 concat!(
693 "Offset of field: ",
694 stringify!(sqlite3_io_methods),
695 "::",
696 stringify!(iVersion)
697 )
698 );
699 assert_eq!(
700 unsafe { ::core::ptr::addr_of!((*ptr).xClose) as usize - ptr as usize },
701 8usize,
702 concat!(
703 "Offset of field: ",
704 stringify!(sqlite3_io_methods),
705 "::",
706 stringify!(xClose)
707 )
708 );
709 assert_eq!(
710 unsafe { ::core::ptr::addr_of!((*ptr).xRead) as usize - ptr as usize },
711 16usize,
712 concat!(
713 "Offset of field: ",
714 stringify!(sqlite3_io_methods),
715 "::",
716 stringify!(xRead)
717 )
718 );
719 assert_eq!(
720 unsafe { ::core::ptr::addr_of!((*ptr).xWrite) as usize - ptr as usize },
721 24usize,
722 concat!(
723 "Offset of field: ",
724 stringify!(sqlite3_io_methods),
725 "::",
726 stringify!(xWrite)
727 )
728 );
729 assert_eq!(
730 unsafe { ::core::ptr::addr_of!((*ptr).xTruncate) as usize - ptr as usize },
731 32usize,
732 concat!(
733 "Offset of field: ",
734 stringify!(sqlite3_io_methods),
735 "::",
736 stringify!(xTruncate)
737 )
738 );
739 assert_eq!(
740 unsafe { ::core::ptr::addr_of!((*ptr).xSync) as usize - ptr as usize },
741 40usize,
742 concat!(
743 "Offset of field: ",
744 stringify!(sqlite3_io_methods),
745 "::",
746 stringify!(xSync)
747 )
748 );
749 assert_eq!(
750 unsafe { ::core::ptr::addr_of!((*ptr).xFileSize) as usize - ptr as usize },
751 48usize,
752 concat!(
753 "Offset of field: ",
754 stringify!(sqlite3_io_methods),
755 "::",
756 stringify!(xFileSize)
757 )
758 );
759 assert_eq!(
760 unsafe { ::core::ptr::addr_of!((*ptr).xLock) as usize - ptr as usize },
761 56usize,
762 concat!(
763 "Offset of field: ",
764 stringify!(sqlite3_io_methods),
765 "::",
766 stringify!(xLock)
767 )
768 );
769 assert_eq!(
770 unsafe { ::core::ptr::addr_of!((*ptr).xUnlock) as usize - ptr as usize },
771 64usize,
772 concat!(
773 "Offset of field: ",
774 stringify!(sqlite3_io_methods),
775 "::",
776 stringify!(xUnlock)
777 )
778 );
779 assert_eq!(
780 unsafe { ::core::ptr::addr_of!((*ptr).xCheckReservedLock) as usize - ptr as usize },
781 72usize,
782 concat!(
783 "Offset of field: ",
784 stringify!(sqlite3_io_methods),
785 "::",
786 stringify!(xCheckReservedLock)
787 )
788 );
789 assert_eq!(
790 unsafe { ::core::ptr::addr_of!((*ptr).xFileControl) as usize - ptr as usize },
791 80usize,
792 concat!(
793 "Offset of field: ",
794 stringify!(sqlite3_io_methods),
795 "::",
796 stringify!(xFileControl)
797 )
798 );
799 assert_eq!(
800 unsafe { ::core::ptr::addr_of!((*ptr).xSectorSize) as usize - ptr as usize },
801 88usize,
802 concat!(
803 "Offset of field: ",
804 stringify!(sqlite3_io_methods),
805 "::",
806 stringify!(xSectorSize)
807 )
808 );
809 assert_eq!(
810 unsafe { ::core::ptr::addr_of!((*ptr).xDeviceCharacteristics) as usize - ptr as usize },
811 96usize,
812 concat!(
813 "Offset of field: ",
814 stringify!(sqlite3_io_methods),
815 "::",
816 stringify!(xDeviceCharacteristics)
817 )
818 );
819 assert_eq!(
820 unsafe { ::core::ptr::addr_of!((*ptr).xShmMap) as usize - ptr as usize },
821 104usize,
822 concat!(
823 "Offset of field: ",
824 stringify!(sqlite3_io_methods),
825 "::",
826 stringify!(xShmMap)
827 )
828 );
829 assert_eq!(
830 unsafe { ::core::ptr::addr_of!((*ptr).xShmLock) as usize - ptr as usize },
831 112usize,
832 concat!(
833 "Offset of field: ",
834 stringify!(sqlite3_io_methods),
835 "::",
836 stringify!(xShmLock)
837 )
838 );
839 assert_eq!(
840 unsafe { ::core::ptr::addr_of!((*ptr).xShmBarrier) as usize - ptr as usize },
841 120usize,
842 concat!(
843 "Offset of field: ",
844 stringify!(sqlite3_io_methods),
845 "::",
846 stringify!(xShmBarrier)
847 )
848 );
849 assert_eq!(
850 unsafe { ::core::ptr::addr_of!((*ptr).xShmUnmap) as usize - ptr as usize },
851 128usize,
852 concat!(
853 "Offset of field: ",
854 stringify!(sqlite3_io_methods),
855 "::",
856 stringify!(xShmUnmap)
857 )
858 );
859 assert_eq!(
860 unsafe { ::core::ptr::addr_of!((*ptr).xFetch) as usize - ptr as usize },
861 136usize,
862 concat!(
863 "Offset of field: ",
864 stringify!(sqlite3_io_methods),
865 "::",
866 stringify!(xFetch)
867 )
868 );
869 assert_eq!(
870 unsafe { ::core::ptr::addr_of!((*ptr).xUnfetch) as usize - ptr as usize },
871 144usize,
872 concat!(
873 "Offset of field: ",
874 stringify!(sqlite3_io_methods),
875 "::",
876 stringify!(xUnfetch)
877 )
878 );
879}
880#[repr(C)]
881#[derive(Debug, Copy, Clone)]
882pub struct sqlite3_mutex {
883 _unused: [u8; 0],
884}
885#[repr(C)]
886#[derive(Debug, Copy, Clone)]
887pub struct sqlite3_api_routines {
888 _unused: [u8; 0],
889}
890pub type sqlite3_filename = *const ::core::ffi::c_char;
891pub type sqlite3_syscall_ptr = ::core::option::Option<unsafe extern "C" fn()>;
892#[repr(C)]
893#[derive(Debug, Copy, Clone)]
894pub struct sqlite3_vfs {
895 pub iVersion: ::core::ffi::c_int,
896 pub szOsFile: ::core::ffi::c_int,
897 pub mxPathname: ::core::ffi::c_int,
898 pub pNext: *mut sqlite3_vfs,
899 pub zName: *const ::core::ffi::c_char,
900 pub pAppData: *mut ::core::ffi::c_void,
901 pub xOpen: ::core::option::Option<
902 unsafe extern "C" fn(
903 arg1: *mut sqlite3_vfs,
904 zName: sqlite3_filename,
905 arg2: *mut sqlite3_file,
906 flags: ::core::ffi::c_int,
907 pOutFlags: *mut ::core::ffi::c_int,
908 ) -> ::core::ffi::c_int,
909 >,
910 pub xDelete: ::core::option::Option<
911 unsafe extern "C" fn(
912 arg1: *mut sqlite3_vfs,
913 zName: *const ::core::ffi::c_char,
914 syncDir: ::core::ffi::c_int,
915 ) -> ::core::ffi::c_int,
916 >,
917 pub xAccess: ::core::option::Option<
918 unsafe extern "C" fn(
919 arg1: *mut sqlite3_vfs,
920 zName: *const ::core::ffi::c_char,
921 flags: ::core::ffi::c_int,
922 pResOut: *mut ::core::ffi::c_int,
923 ) -> ::core::ffi::c_int,
924 >,
925 pub xFullPathname: ::core::option::Option<
926 unsafe extern "C" fn(
927 arg1: *mut sqlite3_vfs,
928 zName: *const ::core::ffi::c_char,
929 nOut: ::core::ffi::c_int,
930 zOut: *mut ::core::ffi::c_char,
931 ) -> ::core::ffi::c_int,
932 >,
933 pub xDlOpen: ::core::option::Option<
934 unsafe extern "C" fn(
935 arg1: *mut sqlite3_vfs,
936 zFilename: *const ::core::ffi::c_char,
937 ) -> *mut ::core::ffi::c_void,
938 >,
939 pub xDlError: ::core::option::Option<
940 unsafe extern "C" fn(
941 arg1: *mut sqlite3_vfs,
942 nByte: ::core::ffi::c_int,
943 zErrMsg: *mut ::core::ffi::c_char,
944 ),
945 >,
946 pub xDlSym: ::core::option::Option<
947 unsafe extern "C" fn(
948 arg1: *mut sqlite3_vfs,
949 arg2: *mut ::core::ffi::c_void,
950 zSymbol: *const ::core::ffi::c_char,
951 ) -> ::core::option::Option<
952 unsafe extern "C" fn(
953 arg1: *mut sqlite3_vfs,
954 arg2: *mut ::core::ffi::c_void,
955 zSymbol: *const ::core::ffi::c_char,
956 ),
957 >,
958 >,
959 pub xDlClose: ::core::option::Option<
960 unsafe extern "C" fn(arg1: *mut sqlite3_vfs, arg2: *mut ::core::ffi::c_void),
961 >,
962 pub xRandomness: ::core::option::Option<
963 unsafe extern "C" fn(
964 arg1: *mut sqlite3_vfs,
965 nByte: ::core::ffi::c_int,
966 zOut: *mut ::core::ffi::c_char,
967 ) -> ::core::ffi::c_int,
968 >,
969 pub xSleep: ::core::option::Option<
970 unsafe extern "C" fn(
971 arg1: *mut sqlite3_vfs,
972 microseconds: ::core::ffi::c_int,
973 ) -> ::core::ffi::c_int,
974 >,
975 pub xCurrentTime: ::core::option::Option<
976 unsafe extern "C" fn(arg1: *mut sqlite3_vfs, arg2: *mut f64) -> ::core::ffi::c_int,
977 >,
978 pub xGetLastError: ::core::option::Option<
979 unsafe extern "C" fn(
980 arg1: *mut sqlite3_vfs,
981 arg2: ::core::ffi::c_int,
982 arg3: *mut ::core::ffi::c_char,
983 ) -> ::core::ffi::c_int,
984 >,
985 pub xCurrentTimeInt64: ::core::option::Option<
986 unsafe extern "C" fn(
987 arg1: *mut sqlite3_vfs,
988 arg2: *mut sqlite3_int64,
989 ) -> ::core::ffi::c_int,
990 >,
991 pub xSetSystemCall: ::core::option::Option<
992 unsafe extern "C" fn(
993 arg1: *mut sqlite3_vfs,
994 zName: *const ::core::ffi::c_char,
995 arg2: sqlite3_syscall_ptr,
996 ) -> ::core::ffi::c_int,
997 >,
998 pub xGetSystemCall: ::core::option::Option<
999 unsafe extern "C" fn(
1000 arg1: *mut sqlite3_vfs,
1001 zName: *const ::core::ffi::c_char,
1002 ) -> sqlite3_syscall_ptr,
1003 >,
1004 pub xNextSystemCall: ::core::option::Option<
1005 unsafe extern "C" fn(
1006 arg1: *mut sqlite3_vfs,
1007 zName: *const ::core::ffi::c_char,
1008 ) -> *const ::core::ffi::c_char,
1009 >,
1010}
1011#[test]
1012fn bindgen_test_layout_sqlite3_vfs() {
1013 const UNINIT: ::core::mem::MaybeUninit<sqlite3_vfs> = ::core::mem::MaybeUninit::uninit();
1014 let ptr = UNINIT.as_ptr();
1015 assert_eq!(
1016 ::core::mem::size_of::<sqlite3_vfs>(),
1017 168usize,
1018 concat!("Size of: ", stringify!(sqlite3_vfs))
1019 );
1020 assert_eq!(
1021 ::core::mem::align_of::<sqlite3_vfs>(),
1022 8usize,
1023 concat!("Alignment of ", stringify!(sqlite3_vfs))
1024 );
1025 assert_eq!(
1026 unsafe { ::core::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize },
1027 0usize,
1028 concat!(
1029 "Offset of field: ",
1030 stringify!(sqlite3_vfs),
1031 "::",
1032 stringify!(iVersion)
1033 )
1034 );
1035 assert_eq!(
1036 unsafe { ::core::ptr::addr_of!((*ptr).szOsFile) as usize - ptr as usize },
1037 4usize,
1038 concat!(
1039 "Offset of field: ",
1040 stringify!(sqlite3_vfs),
1041 "::",
1042 stringify!(szOsFile)
1043 )
1044 );
1045 assert_eq!(
1046 unsafe { ::core::ptr::addr_of!((*ptr).mxPathname) as usize - ptr as usize },
1047 8usize,
1048 concat!(
1049 "Offset of field: ",
1050 stringify!(sqlite3_vfs),
1051 "::",
1052 stringify!(mxPathname)
1053 )
1054 );
1055 assert_eq!(
1056 unsafe { ::core::ptr::addr_of!((*ptr).pNext) as usize - ptr as usize },
1057 16usize,
1058 concat!(
1059 "Offset of field: ",
1060 stringify!(sqlite3_vfs),
1061 "::",
1062 stringify!(pNext)
1063 )
1064 );
1065 assert_eq!(
1066 unsafe { ::core::ptr::addr_of!((*ptr).zName) as usize - ptr as usize },
1067 24usize,
1068 concat!(
1069 "Offset of field: ",
1070 stringify!(sqlite3_vfs),
1071 "::",
1072 stringify!(zName)
1073 )
1074 );
1075 assert_eq!(
1076 unsafe { ::core::ptr::addr_of!((*ptr).pAppData) as usize - ptr as usize },
1077 32usize,
1078 concat!(
1079 "Offset of field: ",
1080 stringify!(sqlite3_vfs),
1081 "::",
1082 stringify!(pAppData)
1083 )
1084 );
1085 assert_eq!(
1086 unsafe { ::core::ptr::addr_of!((*ptr).xOpen) as usize - ptr as usize },
1087 40usize,
1088 concat!(
1089 "Offset of field: ",
1090 stringify!(sqlite3_vfs),
1091 "::",
1092 stringify!(xOpen)
1093 )
1094 );
1095 assert_eq!(
1096 unsafe { ::core::ptr::addr_of!((*ptr).xDelete) as usize - ptr as usize },
1097 48usize,
1098 concat!(
1099 "Offset of field: ",
1100 stringify!(sqlite3_vfs),
1101 "::",
1102 stringify!(xDelete)
1103 )
1104 );
1105 assert_eq!(
1106 unsafe { ::core::ptr::addr_of!((*ptr).xAccess) as usize - ptr as usize },
1107 56usize,
1108 concat!(
1109 "Offset of field: ",
1110 stringify!(sqlite3_vfs),
1111 "::",
1112 stringify!(xAccess)
1113 )
1114 );
1115 assert_eq!(
1116 unsafe { ::core::ptr::addr_of!((*ptr).xFullPathname) as usize - ptr as usize },
1117 64usize,
1118 concat!(
1119 "Offset of field: ",
1120 stringify!(sqlite3_vfs),
1121 "::",
1122 stringify!(xFullPathname)
1123 )
1124 );
1125 assert_eq!(
1126 unsafe { ::core::ptr::addr_of!((*ptr).xDlOpen) as usize - ptr as usize },
1127 72usize,
1128 concat!(
1129 "Offset of field: ",
1130 stringify!(sqlite3_vfs),
1131 "::",
1132 stringify!(xDlOpen)
1133 )
1134 );
1135 assert_eq!(
1136 unsafe { ::core::ptr::addr_of!((*ptr).xDlError) as usize - ptr as usize },
1137 80usize,
1138 concat!(
1139 "Offset of field: ",
1140 stringify!(sqlite3_vfs),
1141 "::",
1142 stringify!(xDlError)
1143 )
1144 );
1145 assert_eq!(
1146 unsafe { ::core::ptr::addr_of!((*ptr).xDlSym) as usize - ptr as usize },
1147 88usize,
1148 concat!(
1149 "Offset of field: ",
1150 stringify!(sqlite3_vfs),
1151 "::",
1152 stringify!(xDlSym)
1153 )
1154 );
1155 assert_eq!(
1156 unsafe { ::core::ptr::addr_of!((*ptr).xDlClose) as usize - ptr as usize },
1157 96usize,
1158 concat!(
1159 "Offset of field: ",
1160 stringify!(sqlite3_vfs),
1161 "::",
1162 stringify!(xDlClose)
1163 )
1164 );
1165 assert_eq!(
1166 unsafe { ::core::ptr::addr_of!((*ptr).xRandomness) as usize - ptr as usize },
1167 104usize,
1168 concat!(
1169 "Offset of field: ",
1170 stringify!(sqlite3_vfs),
1171 "::",
1172 stringify!(xRandomness)
1173 )
1174 );
1175 assert_eq!(
1176 unsafe { ::core::ptr::addr_of!((*ptr).xSleep) as usize - ptr as usize },
1177 112usize,
1178 concat!(
1179 "Offset of field: ",
1180 stringify!(sqlite3_vfs),
1181 "::",
1182 stringify!(xSleep)
1183 )
1184 );
1185 assert_eq!(
1186 unsafe { ::core::ptr::addr_of!((*ptr).xCurrentTime) as usize - ptr as usize },
1187 120usize,
1188 concat!(
1189 "Offset of field: ",
1190 stringify!(sqlite3_vfs),
1191 "::",
1192 stringify!(xCurrentTime)
1193 )
1194 );
1195 assert_eq!(
1196 unsafe { ::core::ptr::addr_of!((*ptr).xGetLastError) as usize - ptr as usize },
1197 128usize,
1198 concat!(
1199 "Offset of field: ",
1200 stringify!(sqlite3_vfs),
1201 "::",
1202 stringify!(xGetLastError)
1203 )
1204 );
1205 assert_eq!(
1206 unsafe { ::core::ptr::addr_of!((*ptr).xCurrentTimeInt64) as usize - ptr as usize },
1207 136usize,
1208 concat!(
1209 "Offset of field: ",
1210 stringify!(sqlite3_vfs),
1211 "::",
1212 stringify!(xCurrentTimeInt64)
1213 )
1214 );
1215 assert_eq!(
1216 unsafe { ::core::ptr::addr_of!((*ptr).xSetSystemCall) as usize - ptr as usize },
1217 144usize,
1218 concat!(
1219 "Offset of field: ",
1220 stringify!(sqlite3_vfs),
1221 "::",
1222 stringify!(xSetSystemCall)
1223 )
1224 );
1225 assert_eq!(
1226 unsafe { ::core::ptr::addr_of!((*ptr).xGetSystemCall) as usize - ptr as usize },
1227 152usize,
1228 concat!(
1229 "Offset of field: ",
1230 stringify!(sqlite3_vfs),
1231 "::",
1232 stringify!(xGetSystemCall)
1233 )
1234 );
1235 assert_eq!(
1236 unsafe { ::core::ptr::addr_of!((*ptr).xNextSystemCall) as usize - ptr as usize },
1237 160usize,
1238 concat!(
1239 "Offset of field: ",
1240 stringify!(sqlite3_vfs),
1241 "::",
1242 stringify!(xNextSystemCall)
1243 )
1244 );
1245}
1246extern "C" {
1247 pub fn sqlite3_initialize() -> ::core::ffi::c_int;
1248}
1249extern "C" {
1250 pub fn sqlite3_shutdown() -> ::core::ffi::c_int;
1251}
1252extern "C" {
1253 pub fn sqlite3_os_init() -> ::core::ffi::c_int;
1254}
1255extern "C" {
1256 pub fn sqlite3_os_end() -> ::core::ffi::c_int;
1257}
1258extern "C" {
1259 pub fn sqlite3_config(arg1: ::core::ffi::c_int, ...) -> ::core::ffi::c_int;
1260}
1261extern "C" {
1262 pub fn sqlite3_db_config(arg1: *mut sqlite3, op: ::core::ffi::c_int, ...)
1263 -> ::core::ffi::c_int;
1264}
1265#[repr(C)]
1266#[derive(Debug, Copy, Clone)]
1267pub struct sqlite3_mem_methods {
1268 pub xMalloc: ::core::option::Option<
1269 unsafe extern "C" fn(arg1: ::core::ffi::c_int) -> *mut ::core::ffi::c_void,
1270 >,
1271 pub xFree: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1272 pub xRealloc: ::core::option::Option<
1273 unsafe extern "C" fn(
1274 arg1: *mut ::core::ffi::c_void,
1275 arg2: ::core::ffi::c_int,
1276 ) -> *mut ::core::ffi::c_void,
1277 >,
1278 pub xSize: ::core::option::Option<
1279 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int,
1280 >,
1281 pub xRoundup: ::core::option::Option<
1282 unsafe extern "C" fn(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int,
1283 >,
1284 pub xInit: ::core::option::Option<
1285 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int,
1286 >,
1287 pub xShutdown: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1288 pub pAppData: *mut ::core::ffi::c_void,
1289}
1290#[test]
1291fn bindgen_test_layout_sqlite3_mem_methods() {
1292 const UNINIT: ::core::mem::MaybeUninit<sqlite3_mem_methods> =
1293 ::core::mem::MaybeUninit::uninit();
1294 let ptr = UNINIT.as_ptr();
1295 assert_eq!(
1296 ::core::mem::size_of::<sqlite3_mem_methods>(),
1297 64usize,
1298 concat!("Size of: ", stringify!(sqlite3_mem_methods))
1299 );
1300 assert_eq!(
1301 ::core::mem::align_of::<sqlite3_mem_methods>(),
1302 8usize,
1303 concat!("Alignment of ", stringify!(sqlite3_mem_methods))
1304 );
1305 assert_eq!(
1306 unsafe { ::core::ptr::addr_of!((*ptr).xMalloc) as usize - ptr as usize },
1307 0usize,
1308 concat!(
1309 "Offset of field: ",
1310 stringify!(sqlite3_mem_methods),
1311 "::",
1312 stringify!(xMalloc)
1313 )
1314 );
1315 assert_eq!(
1316 unsafe { ::core::ptr::addr_of!((*ptr).xFree) as usize - ptr as usize },
1317 8usize,
1318 concat!(
1319 "Offset of field: ",
1320 stringify!(sqlite3_mem_methods),
1321 "::",
1322 stringify!(xFree)
1323 )
1324 );
1325 assert_eq!(
1326 unsafe { ::core::ptr::addr_of!((*ptr).xRealloc) as usize - ptr as usize },
1327 16usize,
1328 concat!(
1329 "Offset of field: ",
1330 stringify!(sqlite3_mem_methods),
1331 "::",
1332 stringify!(xRealloc)
1333 )
1334 );
1335 assert_eq!(
1336 unsafe { ::core::ptr::addr_of!((*ptr).xSize) as usize - ptr as usize },
1337 24usize,
1338 concat!(
1339 "Offset of field: ",
1340 stringify!(sqlite3_mem_methods),
1341 "::",
1342 stringify!(xSize)
1343 )
1344 );
1345 assert_eq!(
1346 unsafe { ::core::ptr::addr_of!((*ptr).xRoundup) as usize - ptr as usize },
1347 32usize,
1348 concat!(
1349 "Offset of field: ",
1350 stringify!(sqlite3_mem_methods),
1351 "::",
1352 stringify!(xRoundup)
1353 )
1354 );
1355 assert_eq!(
1356 unsafe { ::core::ptr::addr_of!((*ptr).xInit) as usize - ptr as usize },
1357 40usize,
1358 concat!(
1359 "Offset of field: ",
1360 stringify!(sqlite3_mem_methods),
1361 "::",
1362 stringify!(xInit)
1363 )
1364 );
1365 assert_eq!(
1366 unsafe { ::core::ptr::addr_of!((*ptr).xShutdown) as usize - ptr as usize },
1367 48usize,
1368 concat!(
1369 "Offset of field: ",
1370 stringify!(sqlite3_mem_methods),
1371 "::",
1372 stringify!(xShutdown)
1373 )
1374 );
1375 assert_eq!(
1376 unsafe { ::core::ptr::addr_of!((*ptr).pAppData) as usize - ptr as usize },
1377 56usize,
1378 concat!(
1379 "Offset of field: ",
1380 stringify!(sqlite3_mem_methods),
1381 "::",
1382 stringify!(pAppData)
1383 )
1384 );
1385}
1386extern "C" {
1387 pub fn sqlite3_extended_result_codes(
1388 arg1: *mut sqlite3,
1389 onoff: ::core::ffi::c_int,
1390 ) -> ::core::ffi::c_int;
1391}
1392extern "C" {
1393 pub fn sqlite3_last_insert_rowid(arg1: *mut sqlite3) -> sqlite3_int64;
1394}
1395extern "C" {
1396 pub fn sqlite3_set_last_insert_rowid(arg1: *mut sqlite3, arg2: sqlite3_int64);
1397}
1398extern "C" {
1399 pub fn sqlite3_changes(arg1: *mut sqlite3) -> ::core::ffi::c_int;
1400}
1401extern "C" {
1402 pub fn sqlite3_changes64(arg1: *mut sqlite3) -> sqlite3_int64;
1403}
1404extern "C" {
1405 pub fn sqlite3_total_changes(arg1: *mut sqlite3) -> ::core::ffi::c_int;
1406}
1407extern "C" {
1408 pub fn sqlite3_total_changes64(arg1: *mut sqlite3) -> sqlite3_int64;
1409}
1410extern "C" {
1411 pub fn sqlite3_interrupt(arg1: *mut sqlite3);
1412}
1413extern "C" {
1414 pub fn sqlite3_is_interrupted(arg1: *mut sqlite3) -> ::core::ffi::c_int;
1415}
1416extern "C" {
1417 pub fn sqlite3_complete(sql: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
1418}
1419extern "C" {
1420 pub fn sqlite3_complete16(sql: *const ::core::ffi::c_void) -> ::core::ffi::c_int;
1421}
1422extern "C" {
1423 pub fn sqlite3_busy_handler(
1424 arg1: *mut sqlite3,
1425 arg2: ::core::option::Option<
1426 unsafe extern "C" fn(
1427 arg1: *mut ::core::ffi::c_void,
1428 arg2: ::core::ffi::c_int,
1429 ) -> ::core::ffi::c_int,
1430 >,
1431 arg3: *mut ::core::ffi::c_void,
1432 ) -> ::core::ffi::c_int;
1433}
1434extern "C" {
1435 pub fn sqlite3_busy_timeout(arg1: *mut sqlite3, ms: ::core::ffi::c_int) -> ::core::ffi::c_int;
1436}
1437extern "C" {
1438 pub fn sqlite3_get_table(
1439 db: *mut sqlite3,
1440 zSql: *const ::core::ffi::c_char,
1441 pazResult: *mut *mut *mut ::core::ffi::c_char,
1442 pnRow: *mut ::core::ffi::c_int,
1443 pnColumn: *mut ::core::ffi::c_int,
1444 pzErrmsg: *mut *mut ::core::ffi::c_char,
1445 ) -> ::core::ffi::c_int;
1446}
1447extern "C" {
1448 pub fn sqlite3_free_table(result: *mut *mut ::core::ffi::c_char);
1449}
1450extern "C" {
1451 pub fn sqlite3_mprintf(arg1: *const ::core::ffi::c_char, ...) -> *mut ::core::ffi::c_char;
1452}
1453extern "C" {
1454 pub fn sqlite3_vmprintf(
1455 arg1: *const ::core::ffi::c_char,
1456 arg2: *mut __va_list_tag,
1457 ) -> *mut ::core::ffi::c_char;
1458}
1459extern "C" {
1460 pub fn sqlite3_snprintf(
1461 arg1: ::core::ffi::c_int,
1462 arg2: *mut ::core::ffi::c_char,
1463 arg3: *const ::core::ffi::c_char,
1464 ...
1465 ) -> *mut ::core::ffi::c_char;
1466}
1467extern "C" {
1468 pub fn sqlite3_vsnprintf(
1469 arg1: ::core::ffi::c_int,
1470 arg2: *mut ::core::ffi::c_char,
1471 arg3: *const ::core::ffi::c_char,
1472 arg4: *mut __va_list_tag,
1473 ) -> *mut ::core::ffi::c_char;
1474}
1475extern "C" {
1476 pub fn sqlite3_malloc(arg1: ::core::ffi::c_int) -> *mut ::core::ffi::c_void;
1477}
1478extern "C" {
1479 pub fn sqlite3_malloc64(arg1: sqlite3_uint64) -> *mut ::core::ffi::c_void;
1480}
1481extern "C" {
1482 pub fn sqlite3_realloc(
1483 arg1: *mut ::core::ffi::c_void,
1484 arg2: ::core::ffi::c_int,
1485 ) -> *mut ::core::ffi::c_void;
1486}
1487extern "C" {
1488 pub fn sqlite3_realloc64(
1489 arg1: *mut ::core::ffi::c_void,
1490 arg2: sqlite3_uint64,
1491 ) -> *mut ::core::ffi::c_void;
1492}
1493extern "C" {
1494 pub fn sqlite3_free(arg1: *mut ::core::ffi::c_void);
1495}
1496extern "C" {
1497 pub fn sqlite3_msize(arg1: *mut ::core::ffi::c_void) -> sqlite3_uint64;
1498}
1499extern "C" {
1500 pub fn sqlite3_memory_used() -> sqlite3_int64;
1501}
1502extern "C" {
1503 pub fn sqlite3_memory_highwater(resetFlag: ::core::ffi::c_int) -> sqlite3_int64;
1504}
1505extern "C" {
1506 pub fn sqlite3_randomness(N: ::core::ffi::c_int, P: *mut ::core::ffi::c_void);
1507}
1508extern "C" {
1509 pub fn sqlite3_set_authorizer(
1510 arg1: *mut sqlite3,
1511 xAuth: ::core::option::Option<
1512 unsafe extern "C" fn(
1513 arg1: *mut ::core::ffi::c_void,
1514 arg2: ::core::ffi::c_int,
1515 arg3: *const ::core::ffi::c_char,
1516 arg4: *const ::core::ffi::c_char,
1517 arg5: *const ::core::ffi::c_char,
1518 arg6: *const ::core::ffi::c_char,
1519 ) -> ::core::ffi::c_int,
1520 >,
1521 pUserData: *mut ::core::ffi::c_void,
1522 ) -> ::core::ffi::c_int;
1523}
1524extern "C" {
1525 pub fn sqlite3_trace(
1526 arg1: *mut sqlite3,
1527 xTrace: ::core::option::Option<
1528 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void, arg2: *const ::core::ffi::c_char),
1529 >,
1530 arg2: *mut ::core::ffi::c_void,
1531 ) -> *mut ::core::ffi::c_void;
1532}
1533extern "C" {
1534 pub fn sqlite3_profile(
1535 arg1: *mut sqlite3,
1536 xProfile: ::core::option::Option<
1537 unsafe extern "C" fn(
1538 arg1: *mut ::core::ffi::c_void,
1539 arg2: *const ::core::ffi::c_char,
1540 arg3: sqlite3_uint64,
1541 ),
1542 >,
1543 arg2: *mut ::core::ffi::c_void,
1544 ) -> *mut ::core::ffi::c_void;
1545}
1546extern "C" {
1547 pub fn sqlite3_trace_v2(
1548 arg1: *mut sqlite3,
1549 uMask: ::core::ffi::c_uint,
1550 xCallback: ::core::option::Option<
1551 unsafe extern "C" fn(
1552 arg1: ::core::ffi::c_uint,
1553 arg2: *mut ::core::ffi::c_void,
1554 arg3: *mut ::core::ffi::c_void,
1555 arg4: *mut ::core::ffi::c_void,
1556 ) -> ::core::ffi::c_int,
1557 >,
1558 pCtx: *mut ::core::ffi::c_void,
1559 ) -> ::core::ffi::c_int;
1560}
1561extern "C" {
1562 pub fn sqlite3_progress_handler(
1563 arg1: *mut sqlite3,
1564 arg2: ::core::ffi::c_int,
1565 arg3: ::core::option::Option<
1566 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int,
1567 >,
1568 arg4: *mut ::core::ffi::c_void,
1569 );
1570}
1571extern "C" {
1572 pub fn sqlite3_open(
1573 filename: *const ::core::ffi::c_char,
1574 ppDb: *mut *mut sqlite3,
1575 ) -> ::core::ffi::c_int;
1576}
1577extern "C" {
1578 pub fn sqlite3_open16(
1579 filename: *const ::core::ffi::c_void,
1580 ppDb: *mut *mut sqlite3,
1581 ) -> ::core::ffi::c_int;
1582}
1583extern "C" {
1584 pub fn sqlite3_open_v2(
1585 filename: *const ::core::ffi::c_char,
1586 ppDb: *mut *mut sqlite3,
1587 flags: ::core::ffi::c_int,
1588 zVfs: *const ::core::ffi::c_char,
1589 ) -> ::core::ffi::c_int;
1590}
1591extern "C" {
1592 pub fn sqlite3_uri_parameter(
1593 z: sqlite3_filename,
1594 zParam: *const ::core::ffi::c_char,
1595 ) -> *const ::core::ffi::c_char;
1596}
1597extern "C" {
1598 pub fn sqlite3_uri_boolean(
1599 z: sqlite3_filename,
1600 zParam: *const ::core::ffi::c_char,
1601 bDefault: ::core::ffi::c_int,
1602 ) -> ::core::ffi::c_int;
1603}
1604extern "C" {
1605 pub fn sqlite3_uri_int64(
1606 arg1: sqlite3_filename,
1607 arg2: *const ::core::ffi::c_char,
1608 arg3: sqlite3_int64,
1609 ) -> sqlite3_int64;
1610}
1611extern "C" {
1612 pub fn sqlite3_uri_key(
1613 z: sqlite3_filename,
1614 N: ::core::ffi::c_int,
1615 ) -> *const ::core::ffi::c_char;
1616}
1617extern "C" {
1618 pub fn sqlite3_filename_database(arg1: sqlite3_filename) -> *const ::core::ffi::c_char;
1619}
1620extern "C" {
1621 pub fn sqlite3_filename_journal(arg1: sqlite3_filename) -> *const ::core::ffi::c_char;
1622}
1623extern "C" {
1624 pub fn sqlite3_filename_wal(arg1: sqlite3_filename) -> *const ::core::ffi::c_char;
1625}
1626extern "C" {
1627 pub fn sqlite3_database_file_object(arg1: *const ::core::ffi::c_char) -> *mut sqlite3_file;
1628}
1629extern "C" {
1630 pub fn sqlite3_create_filename(
1631 zDatabase: *const ::core::ffi::c_char,
1632 zJournal: *const ::core::ffi::c_char,
1633 zWal: *const ::core::ffi::c_char,
1634 nParam: ::core::ffi::c_int,
1635 azParam: *mut *const ::core::ffi::c_char,
1636 ) -> sqlite3_filename;
1637}
1638extern "C" {
1639 pub fn sqlite3_free_filename(arg1: sqlite3_filename);
1640}
1641extern "C" {
1642 pub fn sqlite3_errcode(db: *mut sqlite3) -> ::core::ffi::c_int;
1643}
1644extern "C" {
1645 pub fn sqlite3_extended_errcode(db: *mut sqlite3) -> ::core::ffi::c_int;
1646}
1647extern "C" {
1648 pub fn sqlite3_errmsg(arg1: *mut sqlite3) -> *const ::core::ffi::c_char;
1649}
1650extern "C" {
1651 pub fn sqlite3_errmsg16(arg1: *mut sqlite3) -> *const ::core::ffi::c_void;
1652}
1653extern "C" {
1654 pub fn sqlite3_errstr(arg1: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
1655}
1656extern "C" {
1657 pub fn sqlite3_error_offset(db: *mut sqlite3) -> ::core::ffi::c_int;
1658}
1659#[repr(C)]
1660#[derive(Debug, Copy, Clone)]
1661pub struct sqlite3_stmt {
1662 _unused: [u8; 0],
1663}
1664extern "C" {
1665 pub fn sqlite3_limit(
1666 arg1: *mut sqlite3,
1667 id: ::core::ffi::c_int,
1668 newVal: ::core::ffi::c_int,
1669 ) -> ::core::ffi::c_int;
1670}
1671extern "C" {
1672 pub fn sqlite3_prepare(
1673 db: *mut sqlite3,
1674 zSql: *const ::core::ffi::c_char,
1675 nByte: ::core::ffi::c_int,
1676 ppStmt: *mut *mut sqlite3_stmt,
1677 pzTail: *mut *const ::core::ffi::c_char,
1678 ) -> ::core::ffi::c_int;
1679}
1680extern "C" {
1681 pub fn sqlite3_prepare_v2(
1682 db: *mut sqlite3,
1683 zSql: *const ::core::ffi::c_char,
1684 nByte: ::core::ffi::c_int,
1685 ppStmt: *mut *mut sqlite3_stmt,
1686 pzTail: *mut *const ::core::ffi::c_char,
1687 ) -> ::core::ffi::c_int;
1688}
1689extern "C" {
1690 pub fn sqlite3_prepare_v3(
1691 db: *mut sqlite3,
1692 zSql: *const ::core::ffi::c_char,
1693 nByte: ::core::ffi::c_int,
1694 prepFlags: ::core::ffi::c_uint,
1695 ppStmt: *mut *mut sqlite3_stmt,
1696 pzTail: *mut *const ::core::ffi::c_char,
1697 ) -> ::core::ffi::c_int;
1698}
1699extern "C" {
1700 pub fn sqlite3_prepare16(
1701 db: *mut sqlite3,
1702 zSql: *const ::core::ffi::c_void,
1703 nByte: ::core::ffi::c_int,
1704 ppStmt: *mut *mut sqlite3_stmt,
1705 pzTail: *mut *const ::core::ffi::c_void,
1706 ) -> ::core::ffi::c_int;
1707}
1708extern "C" {
1709 pub fn sqlite3_prepare16_v2(
1710 db: *mut sqlite3,
1711 zSql: *const ::core::ffi::c_void,
1712 nByte: ::core::ffi::c_int,
1713 ppStmt: *mut *mut sqlite3_stmt,
1714 pzTail: *mut *const ::core::ffi::c_void,
1715 ) -> ::core::ffi::c_int;
1716}
1717extern "C" {
1718 pub fn sqlite3_prepare16_v3(
1719 db: *mut sqlite3,
1720 zSql: *const ::core::ffi::c_void,
1721 nByte: ::core::ffi::c_int,
1722 prepFlags: ::core::ffi::c_uint,
1723 ppStmt: *mut *mut sqlite3_stmt,
1724 pzTail: *mut *const ::core::ffi::c_void,
1725 ) -> ::core::ffi::c_int;
1726}
1727extern "C" {
1728 pub fn sqlite3_sql(pStmt: *mut sqlite3_stmt) -> *const ::core::ffi::c_char;
1729}
1730extern "C" {
1731 pub fn sqlite3_expanded_sql(pStmt: *mut sqlite3_stmt) -> *mut ::core::ffi::c_char;
1732}
1733extern "C" {
1734 pub fn sqlite3_stmt_readonly(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1735}
1736extern "C" {
1737 pub fn sqlite3_stmt_isexplain(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1738}
1739extern "C" {
1740 pub fn sqlite3_stmt_explain(
1741 pStmt: *mut sqlite3_stmt,
1742 eMode: ::core::ffi::c_int,
1743 ) -> ::core::ffi::c_int;
1744}
1745extern "C" {
1746 pub fn sqlite3_stmt_busy(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1747}
1748#[repr(C)]
1749#[derive(Debug, Copy, Clone)]
1750pub struct sqlite3_value {
1751 _unused: [u8; 0],
1752}
1753#[repr(C)]
1754#[derive(Debug, Copy, Clone)]
1755pub struct sqlite3_context {
1756 _unused: [u8; 0],
1757}
1758extern "C" {
1759 pub fn sqlite3_bind_blob(
1760 arg1: *mut sqlite3_stmt,
1761 arg2: ::core::ffi::c_int,
1762 arg3: *const ::core::ffi::c_void,
1763 n: ::core::ffi::c_int,
1764 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1765 ) -> ::core::ffi::c_int;
1766}
1767extern "C" {
1768 pub fn sqlite3_bind_blob64(
1769 arg1: *mut sqlite3_stmt,
1770 arg2: ::core::ffi::c_int,
1771 arg3: *const ::core::ffi::c_void,
1772 arg4: sqlite3_uint64,
1773 arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1774 ) -> ::core::ffi::c_int;
1775}
1776extern "C" {
1777 pub fn sqlite3_bind_double(
1778 arg1: *mut sqlite3_stmt,
1779 arg2: ::core::ffi::c_int,
1780 arg3: f64,
1781 ) -> ::core::ffi::c_int;
1782}
1783extern "C" {
1784 pub fn sqlite3_bind_int(
1785 arg1: *mut sqlite3_stmt,
1786 arg2: ::core::ffi::c_int,
1787 arg3: ::core::ffi::c_int,
1788 ) -> ::core::ffi::c_int;
1789}
1790extern "C" {
1791 pub fn sqlite3_bind_int64(
1792 arg1: *mut sqlite3_stmt,
1793 arg2: ::core::ffi::c_int,
1794 arg3: sqlite3_int64,
1795 ) -> ::core::ffi::c_int;
1796}
1797extern "C" {
1798 pub fn sqlite3_bind_null(
1799 arg1: *mut sqlite3_stmt,
1800 arg2: ::core::ffi::c_int,
1801 ) -> ::core::ffi::c_int;
1802}
1803extern "C" {
1804 pub fn sqlite3_bind_text(
1805 arg1: *mut sqlite3_stmt,
1806 arg2: ::core::ffi::c_int,
1807 arg3: *const ::core::ffi::c_char,
1808 arg4: ::core::ffi::c_int,
1809 arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1810 ) -> ::core::ffi::c_int;
1811}
1812extern "C" {
1813 pub fn sqlite3_bind_text16(
1814 arg1: *mut sqlite3_stmt,
1815 arg2: ::core::ffi::c_int,
1816 arg3: *const ::core::ffi::c_void,
1817 arg4: ::core::ffi::c_int,
1818 arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1819 ) -> ::core::ffi::c_int;
1820}
1821extern "C" {
1822 pub fn sqlite3_bind_text64(
1823 arg1: *mut sqlite3_stmt,
1824 arg2: ::core::ffi::c_int,
1825 arg3: *const ::core::ffi::c_char,
1826 arg4: sqlite3_uint64,
1827 arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1828 encoding: ::core::ffi::c_uchar,
1829 ) -> ::core::ffi::c_int;
1830}
1831extern "C" {
1832 pub fn sqlite3_bind_value(
1833 arg1: *mut sqlite3_stmt,
1834 arg2: ::core::ffi::c_int,
1835 arg3: *const sqlite3_value,
1836 ) -> ::core::ffi::c_int;
1837}
1838extern "C" {
1839 pub fn sqlite3_bind_pointer(
1840 arg1: *mut sqlite3_stmt,
1841 arg2: ::core::ffi::c_int,
1842 arg3: *mut ::core::ffi::c_void,
1843 arg4: *const ::core::ffi::c_char,
1844 arg5: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
1845 ) -> ::core::ffi::c_int;
1846}
1847extern "C" {
1848 pub fn sqlite3_bind_zeroblob(
1849 arg1: *mut sqlite3_stmt,
1850 arg2: ::core::ffi::c_int,
1851 n: ::core::ffi::c_int,
1852 ) -> ::core::ffi::c_int;
1853}
1854extern "C" {
1855 pub fn sqlite3_bind_zeroblob64(
1856 arg1: *mut sqlite3_stmt,
1857 arg2: ::core::ffi::c_int,
1858 arg3: sqlite3_uint64,
1859 ) -> ::core::ffi::c_int;
1860}
1861extern "C" {
1862 pub fn sqlite3_bind_parameter_count(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1863}
1864extern "C" {
1865 pub fn sqlite3_bind_parameter_name(
1866 arg1: *mut sqlite3_stmt,
1867 arg2: ::core::ffi::c_int,
1868 ) -> *const ::core::ffi::c_char;
1869}
1870extern "C" {
1871 pub fn sqlite3_bind_parameter_index(
1872 arg1: *mut sqlite3_stmt,
1873 zName: *const ::core::ffi::c_char,
1874 ) -> ::core::ffi::c_int;
1875}
1876extern "C" {
1877 pub fn sqlite3_clear_bindings(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1878}
1879extern "C" {
1880 pub fn sqlite3_column_count(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1881}
1882extern "C" {
1883 pub fn sqlite3_column_name(
1884 arg1: *mut sqlite3_stmt,
1885 N: ::core::ffi::c_int,
1886 ) -> *const ::core::ffi::c_char;
1887}
1888extern "C" {
1889 pub fn sqlite3_column_name16(
1890 arg1: *mut sqlite3_stmt,
1891 N: ::core::ffi::c_int,
1892 ) -> *const ::core::ffi::c_void;
1893}
1894extern "C" {
1895 pub fn sqlite3_column_database_name(
1896 arg1: *mut sqlite3_stmt,
1897 arg2: ::core::ffi::c_int,
1898 ) -> *const ::core::ffi::c_char;
1899}
1900extern "C" {
1901 pub fn sqlite3_column_database_name16(
1902 arg1: *mut sqlite3_stmt,
1903 arg2: ::core::ffi::c_int,
1904 ) -> *const ::core::ffi::c_void;
1905}
1906extern "C" {
1907 pub fn sqlite3_column_table_name(
1908 arg1: *mut sqlite3_stmt,
1909 arg2: ::core::ffi::c_int,
1910 ) -> *const ::core::ffi::c_char;
1911}
1912extern "C" {
1913 pub fn sqlite3_column_table_name16(
1914 arg1: *mut sqlite3_stmt,
1915 arg2: ::core::ffi::c_int,
1916 ) -> *const ::core::ffi::c_void;
1917}
1918extern "C" {
1919 pub fn sqlite3_column_origin_name(
1920 arg1: *mut sqlite3_stmt,
1921 arg2: ::core::ffi::c_int,
1922 ) -> *const ::core::ffi::c_char;
1923}
1924extern "C" {
1925 pub fn sqlite3_column_origin_name16(
1926 arg1: *mut sqlite3_stmt,
1927 arg2: ::core::ffi::c_int,
1928 ) -> *const ::core::ffi::c_void;
1929}
1930extern "C" {
1931 pub fn sqlite3_column_decltype(
1932 arg1: *mut sqlite3_stmt,
1933 arg2: ::core::ffi::c_int,
1934 ) -> *const ::core::ffi::c_char;
1935}
1936extern "C" {
1937 pub fn sqlite3_column_decltype16(
1938 arg1: *mut sqlite3_stmt,
1939 arg2: ::core::ffi::c_int,
1940 ) -> *const ::core::ffi::c_void;
1941}
1942extern "C" {
1943 pub fn sqlite3_step(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1944}
1945extern "C" {
1946 pub fn sqlite3_data_count(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
1947}
1948extern "C" {
1949 pub fn sqlite3_column_blob(
1950 arg1: *mut sqlite3_stmt,
1951 iCol: ::core::ffi::c_int,
1952 ) -> *const ::core::ffi::c_void;
1953}
1954extern "C" {
1955 pub fn sqlite3_column_double(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int) -> f64;
1956}
1957extern "C" {
1958 pub fn sqlite3_column_int(
1959 arg1: *mut sqlite3_stmt,
1960 iCol: ::core::ffi::c_int,
1961 ) -> ::core::ffi::c_int;
1962}
1963extern "C" {
1964 pub fn sqlite3_column_int64(arg1: *mut sqlite3_stmt, iCol: ::core::ffi::c_int)
1965 -> sqlite3_int64;
1966}
1967extern "C" {
1968 pub fn sqlite3_column_text(
1969 arg1: *mut sqlite3_stmt,
1970 iCol: ::core::ffi::c_int,
1971 ) -> *const ::core::ffi::c_uchar;
1972}
1973extern "C" {
1974 pub fn sqlite3_column_text16(
1975 arg1: *mut sqlite3_stmt,
1976 iCol: ::core::ffi::c_int,
1977 ) -> *const ::core::ffi::c_void;
1978}
1979extern "C" {
1980 pub fn sqlite3_column_value(
1981 arg1: *mut sqlite3_stmt,
1982 iCol: ::core::ffi::c_int,
1983 ) -> *mut sqlite3_value;
1984}
1985extern "C" {
1986 pub fn sqlite3_column_bytes(
1987 arg1: *mut sqlite3_stmt,
1988 iCol: ::core::ffi::c_int,
1989 ) -> ::core::ffi::c_int;
1990}
1991extern "C" {
1992 pub fn sqlite3_column_bytes16(
1993 arg1: *mut sqlite3_stmt,
1994 iCol: ::core::ffi::c_int,
1995 ) -> ::core::ffi::c_int;
1996}
1997extern "C" {
1998 pub fn sqlite3_column_type(
1999 arg1: *mut sqlite3_stmt,
2000 iCol: ::core::ffi::c_int,
2001 ) -> ::core::ffi::c_int;
2002}
2003extern "C" {
2004 pub fn sqlite3_finalize(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
2005}
2006extern "C" {
2007 pub fn sqlite3_reset(pStmt: *mut sqlite3_stmt) -> ::core::ffi::c_int;
2008}
2009extern "C" {
2010 pub fn sqlite3_create_function(
2011 db: *mut sqlite3,
2012 zFunctionName: *const ::core::ffi::c_char,
2013 nArg: ::core::ffi::c_int,
2014 eTextRep: ::core::ffi::c_int,
2015 pApp: *mut ::core::ffi::c_void,
2016 xFunc: ::core::option::Option<
2017 unsafe extern "C" fn(
2018 arg1: *mut sqlite3_context,
2019 arg2: ::core::ffi::c_int,
2020 arg3: *mut *mut sqlite3_value,
2021 ),
2022 >,
2023 xStep: ::core::option::Option<
2024 unsafe extern "C" fn(
2025 arg1: *mut sqlite3_context,
2026 arg2: ::core::ffi::c_int,
2027 arg3: *mut *mut sqlite3_value,
2028 ),
2029 >,
2030 xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
2031 ) -> ::core::ffi::c_int;
2032}
2033extern "C" {
2034 pub fn sqlite3_create_function16(
2035 db: *mut sqlite3,
2036 zFunctionName: *const ::core::ffi::c_void,
2037 nArg: ::core::ffi::c_int,
2038 eTextRep: ::core::ffi::c_int,
2039 pApp: *mut ::core::ffi::c_void,
2040 xFunc: ::core::option::Option<
2041 unsafe extern "C" fn(
2042 arg1: *mut sqlite3_context,
2043 arg2: ::core::ffi::c_int,
2044 arg3: *mut *mut sqlite3_value,
2045 ),
2046 >,
2047 xStep: ::core::option::Option<
2048 unsafe extern "C" fn(
2049 arg1: *mut sqlite3_context,
2050 arg2: ::core::ffi::c_int,
2051 arg3: *mut *mut sqlite3_value,
2052 ),
2053 >,
2054 xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
2055 ) -> ::core::ffi::c_int;
2056}
2057extern "C" {
2058 pub fn sqlite3_create_function_v2(
2059 db: *mut sqlite3,
2060 zFunctionName: *const ::core::ffi::c_char,
2061 nArg: ::core::ffi::c_int,
2062 eTextRep: ::core::ffi::c_int,
2063 pApp: *mut ::core::ffi::c_void,
2064 xFunc: ::core::option::Option<
2065 unsafe extern "C" fn(
2066 arg1: *mut sqlite3_context,
2067 arg2: ::core::ffi::c_int,
2068 arg3: *mut *mut sqlite3_value,
2069 ),
2070 >,
2071 xStep: ::core::option::Option<
2072 unsafe extern "C" fn(
2073 arg1: *mut sqlite3_context,
2074 arg2: ::core::ffi::c_int,
2075 arg3: *mut *mut sqlite3_value,
2076 ),
2077 >,
2078 xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
2079 xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2080 ) -> ::core::ffi::c_int;
2081}
2082extern "C" {
2083 pub fn sqlite3_create_window_function(
2084 db: *mut sqlite3,
2085 zFunctionName: *const ::core::ffi::c_char,
2086 nArg: ::core::ffi::c_int,
2087 eTextRep: ::core::ffi::c_int,
2088 pApp: *mut ::core::ffi::c_void,
2089 xStep: ::core::option::Option<
2090 unsafe extern "C" fn(
2091 arg1: *mut sqlite3_context,
2092 arg2: ::core::ffi::c_int,
2093 arg3: *mut *mut sqlite3_value,
2094 ),
2095 >,
2096 xFinal: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
2097 xValue: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_context)>,
2098 xInverse: ::core::option::Option<
2099 unsafe extern "C" fn(
2100 arg1: *mut sqlite3_context,
2101 arg2: ::core::ffi::c_int,
2102 arg3: *mut *mut sqlite3_value,
2103 ),
2104 >,
2105 xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2106 ) -> ::core::ffi::c_int;
2107}
2108extern "C" {
2109 pub fn sqlite3_aggregate_count(arg1: *mut sqlite3_context) -> ::core::ffi::c_int;
2110}
2111extern "C" {
2112 pub fn sqlite3_expired(arg1: *mut sqlite3_stmt) -> ::core::ffi::c_int;
2113}
2114extern "C" {
2115 pub fn sqlite3_transfer_bindings(
2116 arg1: *mut sqlite3_stmt,
2117 arg2: *mut sqlite3_stmt,
2118 ) -> ::core::ffi::c_int;
2119}
2120extern "C" {
2121 pub fn sqlite3_global_recover() -> ::core::ffi::c_int;
2122}
2123extern "C" {
2124 pub fn sqlite3_thread_cleanup();
2125}
2126extern "C" {
2127 pub fn sqlite3_memory_alarm(
2128 arg1: ::core::option::Option<
2129 unsafe extern "C" fn(
2130 arg1: *mut ::core::ffi::c_void,
2131 arg2: sqlite3_int64,
2132 arg3: ::core::ffi::c_int,
2133 ),
2134 >,
2135 arg2: *mut ::core::ffi::c_void,
2136 arg3: sqlite3_int64,
2137 ) -> ::core::ffi::c_int;
2138}
2139extern "C" {
2140 pub fn sqlite3_value_blob(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
2141}
2142extern "C" {
2143 pub fn sqlite3_value_double(arg1: *mut sqlite3_value) -> f64;
2144}
2145extern "C" {
2146 pub fn sqlite3_value_int(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2147}
2148extern "C" {
2149 pub fn sqlite3_value_int64(arg1: *mut sqlite3_value) -> sqlite3_int64;
2150}
2151extern "C" {
2152 pub fn sqlite3_value_pointer(
2153 arg1: *mut sqlite3_value,
2154 arg2: *const ::core::ffi::c_char,
2155 ) -> *mut ::core::ffi::c_void;
2156}
2157extern "C" {
2158 pub fn sqlite3_value_text(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_uchar;
2159}
2160extern "C" {
2161 pub fn sqlite3_value_text16(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
2162}
2163extern "C" {
2164 pub fn sqlite3_value_text16le(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
2165}
2166extern "C" {
2167 pub fn sqlite3_value_text16be(arg1: *mut sqlite3_value) -> *const ::core::ffi::c_void;
2168}
2169extern "C" {
2170 pub fn sqlite3_value_bytes(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2171}
2172extern "C" {
2173 pub fn sqlite3_value_bytes16(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2174}
2175extern "C" {
2176 pub fn sqlite3_value_type(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2177}
2178extern "C" {
2179 pub fn sqlite3_value_numeric_type(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2180}
2181extern "C" {
2182 pub fn sqlite3_value_nochange(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2183}
2184extern "C" {
2185 pub fn sqlite3_value_frombind(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2186}
2187extern "C" {
2188 pub fn sqlite3_value_encoding(arg1: *mut sqlite3_value) -> ::core::ffi::c_int;
2189}
2190extern "C" {
2191 pub fn sqlite3_value_subtype(arg1: *mut sqlite3_value) -> ::core::ffi::c_uint;
2192}
2193extern "C" {
2194 pub fn sqlite3_value_dup(arg1: *const sqlite3_value) -> *mut sqlite3_value;
2195}
2196extern "C" {
2197 pub fn sqlite3_value_free(arg1: *mut sqlite3_value);
2198}
2199extern "C" {
2200 pub fn sqlite3_aggregate_context(
2201 arg1: *mut sqlite3_context,
2202 nBytes: ::core::ffi::c_int,
2203 ) -> *mut ::core::ffi::c_void;
2204}
2205extern "C" {
2206 pub fn sqlite3_user_data(arg1: *mut sqlite3_context) -> *mut ::core::ffi::c_void;
2207}
2208extern "C" {
2209 pub fn sqlite3_context_db_handle(arg1: *mut sqlite3_context) -> *mut sqlite3;
2210}
2211extern "C" {
2212 pub fn sqlite3_get_auxdata(
2213 arg1: *mut sqlite3_context,
2214 N: ::core::ffi::c_int,
2215 ) -> *mut ::core::ffi::c_void;
2216}
2217extern "C" {
2218 pub fn sqlite3_set_auxdata(
2219 arg1: *mut sqlite3_context,
2220 N: ::core::ffi::c_int,
2221 arg2: *mut ::core::ffi::c_void,
2222 arg3: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2223 );
2224}
2225extern "C" {
2226 pub fn sqlite3_get_clientdata(
2227 arg1: *mut sqlite3,
2228 arg2: *const ::core::ffi::c_char,
2229 ) -> *mut ::core::ffi::c_void;
2230}
2231extern "C" {
2232 pub fn sqlite3_set_clientdata(
2233 arg1: *mut sqlite3,
2234 arg2: *const ::core::ffi::c_char,
2235 arg3: *mut ::core::ffi::c_void,
2236 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2237 ) -> ::core::ffi::c_int;
2238}
2239pub type sqlite3_destructor_type =
2240 ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>;
2241extern "C" {
2242 pub fn sqlite3_result_blob(
2243 arg1: *mut sqlite3_context,
2244 arg2: *const ::core::ffi::c_void,
2245 arg3: ::core::ffi::c_int,
2246 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2247 );
2248}
2249extern "C" {
2250 pub fn sqlite3_result_blob64(
2251 arg1: *mut sqlite3_context,
2252 arg2: *const ::core::ffi::c_void,
2253 arg3: sqlite3_uint64,
2254 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2255 );
2256}
2257extern "C" {
2258 pub fn sqlite3_result_double(arg1: *mut sqlite3_context, arg2: f64);
2259}
2260extern "C" {
2261 pub fn sqlite3_result_error(
2262 arg1: *mut sqlite3_context,
2263 arg2: *const ::core::ffi::c_char,
2264 arg3: ::core::ffi::c_int,
2265 );
2266}
2267extern "C" {
2268 pub fn sqlite3_result_error16(
2269 arg1: *mut sqlite3_context,
2270 arg2: *const ::core::ffi::c_void,
2271 arg3: ::core::ffi::c_int,
2272 );
2273}
2274extern "C" {
2275 pub fn sqlite3_result_error_toobig(arg1: *mut sqlite3_context);
2276}
2277extern "C" {
2278 pub fn sqlite3_result_error_nomem(arg1: *mut sqlite3_context);
2279}
2280extern "C" {
2281 pub fn sqlite3_result_error_code(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int);
2282}
2283extern "C" {
2284 pub fn sqlite3_result_int(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_int);
2285}
2286extern "C" {
2287 pub fn sqlite3_result_int64(arg1: *mut sqlite3_context, arg2: sqlite3_int64);
2288}
2289extern "C" {
2290 pub fn sqlite3_result_null(arg1: *mut sqlite3_context);
2291}
2292extern "C" {
2293 pub fn sqlite3_result_text(
2294 arg1: *mut sqlite3_context,
2295 arg2: *const ::core::ffi::c_char,
2296 arg3: ::core::ffi::c_int,
2297 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2298 );
2299}
2300extern "C" {
2301 pub fn sqlite3_result_text64(
2302 arg1: *mut sqlite3_context,
2303 arg2: *const ::core::ffi::c_char,
2304 arg3: sqlite3_uint64,
2305 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2306 encoding: ::core::ffi::c_uchar,
2307 );
2308}
2309extern "C" {
2310 pub fn sqlite3_result_text16(
2311 arg1: *mut sqlite3_context,
2312 arg2: *const ::core::ffi::c_void,
2313 arg3: ::core::ffi::c_int,
2314 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2315 );
2316}
2317extern "C" {
2318 pub fn sqlite3_result_text16le(
2319 arg1: *mut sqlite3_context,
2320 arg2: *const ::core::ffi::c_void,
2321 arg3: ::core::ffi::c_int,
2322 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2323 );
2324}
2325extern "C" {
2326 pub fn sqlite3_result_text16be(
2327 arg1: *mut sqlite3_context,
2328 arg2: *const ::core::ffi::c_void,
2329 arg3: ::core::ffi::c_int,
2330 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2331 );
2332}
2333extern "C" {
2334 pub fn sqlite3_result_value(arg1: *mut sqlite3_context, arg2: *mut sqlite3_value);
2335}
2336extern "C" {
2337 pub fn sqlite3_result_pointer(
2338 arg1: *mut sqlite3_context,
2339 arg2: *mut ::core::ffi::c_void,
2340 arg3: *const ::core::ffi::c_char,
2341 arg4: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2342 );
2343}
2344extern "C" {
2345 pub fn sqlite3_result_zeroblob(arg1: *mut sqlite3_context, n: ::core::ffi::c_int);
2346}
2347extern "C" {
2348 pub fn sqlite3_result_zeroblob64(
2349 arg1: *mut sqlite3_context,
2350 n: sqlite3_uint64,
2351 ) -> ::core::ffi::c_int;
2352}
2353extern "C" {
2354 pub fn sqlite3_result_subtype(arg1: *mut sqlite3_context, arg2: ::core::ffi::c_uint);
2355}
2356extern "C" {
2357 pub fn sqlite3_create_collation(
2358 arg1: *mut sqlite3,
2359 zName: *const ::core::ffi::c_char,
2360 eTextRep: ::core::ffi::c_int,
2361 pArg: *mut ::core::ffi::c_void,
2362 xCompare: ::core::option::Option<
2363 unsafe extern "C" fn(
2364 arg1: *mut ::core::ffi::c_void,
2365 arg2: ::core::ffi::c_int,
2366 arg3: *const ::core::ffi::c_void,
2367 arg4: ::core::ffi::c_int,
2368 arg5: *const ::core::ffi::c_void,
2369 ) -> ::core::ffi::c_int,
2370 >,
2371 ) -> ::core::ffi::c_int;
2372}
2373extern "C" {
2374 pub fn sqlite3_create_collation_v2(
2375 arg1: *mut sqlite3,
2376 zName: *const ::core::ffi::c_char,
2377 eTextRep: ::core::ffi::c_int,
2378 pArg: *mut ::core::ffi::c_void,
2379 xCompare: ::core::option::Option<
2380 unsafe extern "C" fn(
2381 arg1: *mut ::core::ffi::c_void,
2382 arg2: ::core::ffi::c_int,
2383 arg3: *const ::core::ffi::c_void,
2384 arg4: ::core::ffi::c_int,
2385 arg5: *const ::core::ffi::c_void,
2386 ) -> ::core::ffi::c_int,
2387 >,
2388 xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2389 ) -> ::core::ffi::c_int;
2390}
2391extern "C" {
2392 pub fn sqlite3_create_collation16(
2393 arg1: *mut sqlite3,
2394 zName: *const ::core::ffi::c_void,
2395 eTextRep: ::core::ffi::c_int,
2396 pArg: *mut ::core::ffi::c_void,
2397 xCompare: ::core::option::Option<
2398 unsafe extern "C" fn(
2399 arg1: *mut ::core::ffi::c_void,
2400 arg2: ::core::ffi::c_int,
2401 arg3: *const ::core::ffi::c_void,
2402 arg4: ::core::ffi::c_int,
2403 arg5: *const ::core::ffi::c_void,
2404 ) -> ::core::ffi::c_int,
2405 >,
2406 ) -> ::core::ffi::c_int;
2407}
2408extern "C" {
2409 pub fn sqlite3_collation_needed(
2410 arg1: *mut sqlite3,
2411 arg2: *mut ::core::ffi::c_void,
2412 arg3: ::core::option::Option<
2413 unsafe extern "C" fn(
2414 arg1: *mut ::core::ffi::c_void,
2415 arg2: *mut sqlite3,
2416 eTextRep: ::core::ffi::c_int,
2417 arg3: *const ::core::ffi::c_char,
2418 ),
2419 >,
2420 ) -> ::core::ffi::c_int;
2421}
2422extern "C" {
2423 pub fn sqlite3_collation_needed16(
2424 arg1: *mut sqlite3,
2425 arg2: *mut ::core::ffi::c_void,
2426 arg3: ::core::option::Option<
2427 unsafe extern "C" fn(
2428 arg1: *mut ::core::ffi::c_void,
2429 arg2: *mut sqlite3,
2430 eTextRep: ::core::ffi::c_int,
2431 arg3: *const ::core::ffi::c_void,
2432 ),
2433 >,
2434 ) -> ::core::ffi::c_int;
2435}
2436extern "C" {
2437 pub fn sqlite3_sleep(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int;
2438}
2439extern "C" {
2440 pub static mut sqlite3_temp_directory: *mut ::core::ffi::c_char;
2441}
2442extern "C" {
2443 pub static mut sqlite3_data_directory: *mut ::core::ffi::c_char;
2444}
2445extern "C" {
2446 pub fn sqlite3_win32_set_directory(
2447 type_: ::core::ffi::c_ulong,
2448 zValue: *mut ::core::ffi::c_void,
2449 ) -> ::core::ffi::c_int;
2450}
2451extern "C" {
2452 pub fn sqlite3_win32_set_directory8(
2453 type_: ::core::ffi::c_ulong,
2454 zValue: *const ::core::ffi::c_char,
2455 ) -> ::core::ffi::c_int;
2456}
2457extern "C" {
2458 pub fn sqlite3_win32_set_directory16(
2459 type_: ::core::ffi::c_ulong,
2460 zValue: *const ::core::ffi::c_void,
2461 ) -> ::core::ffi::c_int;
2462}
2463extern "C" {
2464 pub fn sqlite3_get_autocommit(arg1: *mut sqlite3) -> ::core::ffi::c_int;
2465}
2466extern "C" {
2467 pub fn sqlite3_db_handle(arg1: *mut sqlite3_stmt) -> *mut sqlite3;
2468}
2469extern "C" {
2470 pub fn sqlite3_db_name(db: *mut sqlite3, N: ::core::ffi::c_int) -> *const ::core::ffi::c_char;
2471}
2472extern "C" {
2473 pub fn sqlite3_db_filename(
2474 db: *mut sqlite3,
2475 zDbName: *const ::core::ffi::c_char,
2476 ) -> sqlite3_filename;
2477}
2478extern "C" {
2479 pub fn sqlite3_db_readonly(
2480 db: *mut sqlite3,
2481 zDbName: *const ::core::ffi::c_char,
2482 ) -> ::core::ffi::c_int;
2483}
2484extern "C" {
2485 pub fn sqlite3_txn_state(
2486 arg1: *mut sqlite3,
2487 zSchema: *const ::core::ffi::c_char,
2488 ) -> ::core::ffi::c_int;
2489}
2490extern "C" {
2491 pub fn sqlite3_next_stmt(pDb: *mut sqlite3, pStmt: *mut sqlite3_stmt) -> *mut sqlite3_stmt;
2492}
2493extern "C" {
2494 pub fn sqlite3_commit_hook(
2495 arg1: *mut sqlite3,
2496 arg2: ::core::option::Option<
2497 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int,
2498 >,
2499 arg3: *mut ::core::ffi::c_void,
2500 ) -> *mut ::core::ffi::c_void;
2501}
2502extern "C" {
2503 pub fn sqlite3_rollback_hook(
2504 arg1: *mut sqlite3,
2505 arg2: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2506 arg3: *mut ::core::ffi::c_void,
2507 ) -> *mut ::core::ffi::c_void;
2508}
2509extern "C" {
2510 pub fn sqlite3_autovacuum_pages(
2511 db: *mut sqlite3,
2512 arg1: ::core::option::Option<
2513 unsafe extern "C" fn(
2514 arg1: *mut ::core::ffi::c_void,
2515 arg2: *const ::core::ffi::c_char,
2516 arg3: ::core::ffi::c_uint,
2517 arg4: ::core::ffi::c_uint,
2518 arg5: ::core::ffi::c_uint,
2519 ) -> ::core::ffi::c_uint,
2520 >,
2521 arg2: *mut ::core::ffi::c_void,
2522 arg3: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
2523 ) -> ::core::ffi::c_int;
2524}
2525extern "C" {
2526 pub fn sqlite3_update_hook(
2527 arg1: *mut sqlite3,
2528 arg2: ::core::option::Option<
2529 unsafe extern "C" fn(
2530 arg1: *mut ::core::ffi::c_void,
2531 arg2: ::core::ffi::c_int,
2532 arg3: *const ::core::ffi::c_char,
2533 arg4: *const ::core::ffi::c_char,
2534 arg5: sqlite3_int64,
2535 ),
2536 >,
2537 arg3: *mut ::core::ffi::c_void,
2538 ) -> *mut ::core::ffi::c_void;
2539}
2540extern "C" {
2541 pub fn sqlite3_enable_shared_cache(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int;
2542}
2543extern "C" {
2544 pub fn sqlite3_release_memory(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int;
2545}
2546extern "C" {
2547 pub fn sqlite3_db_release_memory(arg1: *mut sqlite3) -> ::core::ffi::c_int;
2548}
2549extern "C" {
2550 pub fn sqlite3_soft_heap_limit64(N: sqlite3_int64) -> sqlite3_int64;
2551}
2552extern "C" {
2553 pub fn sqlite3_hard_heap_limit64(N: sqlite3_int64) -> sqlite3_int64;
2554}
2555extern "C" {
2556 pub fn sqlite3_soft_heap_limit(N: ::core::ffi::c_int);
2557}
2558extern "C" {
2559 pub fn sqlite3_table_column_metadata(
2560 db: *mut sqlite3,
2561 zDbName: *const ::core::ffi::c_char,
2562 zTableName: *const ::core::ffi::c_char,
2563 zColumnName: *const ::core::ffi::c_char,
2564 pzDataType: *mut *const ::core::ffi::c_char,
2565 pzCollSeq: *mut *const ::core::ffi::c_char,
2566 pNotNull: *mut ::core::ffi::c_int,
2567 pPrimaryKey: *mut ::core::ffi::c_int,
2568 pAutoinc: *mut ::core::ffi::c_int,
2569 ) -> ::core::ffi::c_int;
2570}
2571extern "C" {
2572 pub fn sqlite3_load_extension(
2573 db: *mut sqlite3,
2574 zFile: *const ::core::ffi::c_char,
2575 zProc: *const ::core::ffi::c_char,
2576 pzErrMsg: *mut *mut ::core::ffi::c_char,
2577 ) -> ::core::ffi::c_int;
2578}
2579extern "C" {
2580 pub fn sqlite3_enable_load_extension(
2581 db: *mut sqlite3,
2582 onoff: ::core::ffi::c_int,
2583 ) -> ::core::ffi::c_int;
2584}
2585extern "C" {
2586 pub fn sqlite3_auto_extension(
2587 xEntryPoint: ::core::option::Option<unsafe extern "C" fn()>,
2588 ) -> ::core::ffi::c_int;
2589}
2590extern "C" {
2591 pub fn sqlite3_cancel_auto_extension(
2592 xEntryPoint: ::core::option::Option<unsafe extern "C" fn()>,
2593 ) -> ::core::ffi::c_int;
2594}
2595extern "C" {
2596 pub fn sqlite3_reset_auto_extension();
2597}
2598#[repr(C)]
2599#[derive(Debug, Copy, Clone)]
2600pub struct sqlite3_module {
2601 pub iVersion: ::core::ffi::c_int,
2602 pub xCreate: ::core::option::Option<
2603 unsafe extern "C" fn(
2604 arg1: *mut sqlite3,
2605 pAux: *mut ::core::ffi::c_void,
2606 argc: ::core::ffi::c_int,
2607 argv: *const *const ::core::ffi::c_char,
2608 ppVTab: *mut *mut sqlite3_vtab,
2609 arg2: *mut *mut ::core::ffi::c_char,
2610 ) -> ::core::ffi::c_int,
2611 >,
2612 pub xConnect: ::core::option::Option<
2613 unsafe extern "C" fn(
2614 arg1: *mut sqlite3,
2615 pAux: *mut ::core::ffi::c_void,
2616 argc: ::core::ffi::c_int,
2617 argv: *const *const ::core::ffi::c_char,
2618 ppVTab: *mut *mut sqlite3_vtab,
2619 arg2: *mut *mut ::core::ffi::c_char,
2620 ) -> ::core::ffi::c_int,
2621 >,
2622 pub xBestIndex: ::core::option::Option<
2623 unsafe extern "C" fn(
2624 pVTab: *mut sqlite3_vtab,
2625 arg1: *mut sqlite3_index_info,
2626 ) -> ::core::ffi::c_int,
2627 >,
2628 pub xDisconnect: ::core::option::Option<
2629 unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int,
2630 >,
2631 pub xDestroy: ::core::option::Option<
2632 unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int,
2633 >,
2634 pub xOpen: ::core::option::Option<
2635 unsafe extern "C" fn(
2636 pVTab: *mut sqlite3_vtab,
2637 ppCursor: *mut *mut sqlite3_vtab_cursor,
2638 ) -> ::core::ffi::c_int,
2639 >,
2640 pub xClose: ::core::option::Option<
2641 unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int,
2642 >,
2643 pub xFilter: ::core::option::Option<
2644 unsafe extern "C" fn(
2645 arg1: *mut sqlite3_vtab_cursor,
2646 idxNum: ::core::ffi::c_int,
2647 idxStr: *const ::core::ffi::c_char,
2648 argc: ::core::ffi::c_int,
2649 argv: *mut *mut sqlite3_value,
2650 ) -> ::core::ffi::c_int,
2651 >,
2652 pub xNext: ::core::option::Option<
2653 unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int,
2654 >,
2655 pub xEof: ::core::option::Option<
2656 unsafe extern "C" fn(arg1: *mut sqlite3_vtab_cursor) -> ::core::ffi::c_int,
2657 >,
2658 pub xColumn: ::core::option::Option<
2659 unsafe extern "C" fn(
2660 arg1: *mut sqlite3_vtab_cursor,
2661 arg2: *mut sqlite3_context,
2662 arg3: ::core::ffi::c_int,
2663 ) -> ::core::ffi::c_int,
2664 >,
2665 pub xRowid: ::core::option::Option<
2666 unsafe extern "C" fn(
2667 arg1: *mut sqlite3_vtab_cursor,
2668 pRowid: *mut sqlite3_int64,
2669 ) -> ::core::ffi::c_int,
2670 >,
2671 pub xUpdate: ::core::option::Option<
2672 unsafe extern "C" fn(
2673 arg1: *mut sqlite3_vtab,
2674 arg2: ::core::ffi::c_int,
2675 arg3: *mut *mut sqlite3_value,
2676 arg4: *mut sqlite3_int64,
2677 ) -> ::core::ffi::c_int,
2678 >,
2679 pub xBegin: ::core::option::Option<
2680 unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int,
2681 >,
2682 pub xSync: ::core::option::Option<
2683 unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int,
2684 >,
2685 pub xCommit: ::core::option::Option<
2686 unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int,
2687 >,
2688 pub xRollback: ::core::option::Option<
2689 unsafe extern "C" fn(pVTab: *mut sqlite3_vtab) -> ::core::ffi::c_int,
2690 >,
2691 pub xFindFunction: ::core::option::Option<
2692 unsafe extern "C" fn(
2693 pVtab: *mut sqlite3_vtab,
2694 nArg: ::core::ffi::c_int,
2695 zName: *const ::core::ffi::c_char,
2696 pxFunc: *mut ::core::option::Option<
2697 unsafe extern "C" fn(
2698 arg1: *mut sqlite3_context,
2699 arg2: ::core::ffi::c_int,
2700 arg3: *mut *mut sqlite3_value,
2701 ),
2702 >,
2703 ppArg: *mut *mut ::core::ffi::c_void,
2704 ) -> ::core::ffi::c_int,
2705 >,
2706 pub xRename: ::core::option::Option<
2707 unsafe extern "C" fn(
2708 pVtab: *mut sqlite3_vtab,
2709 zNew: *const ::core::ffi::c_char,
2710 ) -> ::core::ffi::c_int,
2711 >,
2712 pub xSavepoint: ::core::option::Option<
2713 unsafe extern "C" fn(
2714 pVTab: *mut sqlite3_vtab,
2715 arg1: ::core::ffi::c_int,
2716 ) -> ::core::ffi::c_int,
2717 >,
2718 pub xRelease: ::core::option::Option<
2719 unsafe extern "C" fn(
2720 pVTab: *mut sqlite3_vtab,
2721 arg1: ::core::ffi::c_int,
2722 ) -> ::core::ffi::c_int,
2723 >,
2724 pub xRollbackTo: ::core::option::Option<
2725 unsafe extern "C" fn(
2726 pVTab: *mut sqlite3_vtab,
2727 arg1: ::core::ffi::c_int,
2728 ) -> ::core::ffi::c_int,
2729 >,
2730 pub xShadowName: ::core::option::Option<
2731 unsafe extern "C" fn(arg1: *const ::core::ffi::c_char) -> ::core::ffi::c_int,
2732 >,
2733 pub xIntegrity: ::core::option::Option<
2734 unsafe extern "C" fn(
2735 pVTab: *mut sqlite3_vtab,
2736 zSchema: *const ::core::ffi::c_char,
2737 zTabName: *const ::core::ffi::c_char,
2738 mFlags: ::core::ffi::c_int,
2739 pzErr: *mut *mut ::core::ffi::c_char,
2740 ) -> ::core::ffi::c_int,
2741 >,
2742}
2743#[test]
2744fn bindgen_test_layout_sqlite3_module() {
2745 const UNINIT: ::core::mem::MaybeUninit<sqlite3_module> = ::core::mem::MaybeUninit::uninit();
2746 let ptr = UNINIT.as_ptr();
2747 assert_eq!(
2748 ::core::mem::size_of::<sqlite3_module>(),
2749 200usize,
2750 concat!("Size of: ", stringify!(sqlite3_module))
2751 );
2752 assert_eq!(
2753 ::core::mem::align_of::<sqlite3_module>(),
2754 8usize,
2755 concat!("Alignment of ", stringify!(sqlite3_module))
2756 );
2757 assert_eq!(
2758 unsafe { ::core::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize },
2759 0usize,
2760 concat!(
2761 "Offset of field: ",
2762 stringify!(sqlite3_module),
2763 "::",
2764 stringify!(iVersion)
2765 )
2766 );
2767 assert_eq!(
2768 unsafe { ::core::ptr::addr_of!((*ptr).xCreate) as usize - ptr as usize },
2769 8usize,
2770 concat!(
2771 "Offset of field: ",
2772 stringify!(sqlite3_module),
2773 "::",
2774 stringify!(xCreate)
2775 )
2776 );
2777 assert_eq!(
2778 unsafe { ::core::ptr::addr_of!((*ptr).xConnect) as usize - ptr as usize },
2779 16usize,
2780 concat!(
2781 "Offset of field: ",
2782 stringify!(sqlite3_module),
2783 "::",
2784 stringify!(xConnect)
2785 )
2786 );
2787 assert_eq!(
2788 unsafe { ::core::ptr::addr_of!((*ptr).xBestIndex) as usize - ptr as usize },
2789 24usize,
2790 concat!(
2791 "Offset of field: ",
2792 stringify!(sqlite3_module),
2793 "::",
2794 stringify!(xBestIndex)
2795 )
2796 );
2797 assert_eq!(
2798 unsafe { ::core::ptr::addr_of!((*ptr).xDisconnect) as usize - ptr as usize },
2799 32usize,
2800 concat!(
2801 "Offset of field: ",
2802 stringify!(sqlite3_module),
2803 "::",
2804 stringify!(xDisconnect)
2805 )
2806 );
2807 assert_eq!(
2808 unsafe { ::core::ptr::addr_of!((*ptr).xDestroy) as usize - ptr as usize },
2809 40usize,
2810 concat!(
2811 "Offset of field: ",
2812 stringify!(sqlite3_module),
2813 "::",
2814 stringify!(xDestroy)
2815 )
2816 );
2817 assert_eq!(
2818 unsafe { ::core::ptr::addr_of!((*ptr).xOpen) as usize - ptr as usize },
2819 48usize,
2820 concat!(
2821 "Offset of field: ",
2822 stringify!(sqlite3_module),
2823 "::",
2824 stringify!(xOpen)
2825 )
2826 );
2827 assert_eq!(
2828 unsafe { ::core::ptr::addr_of!((*ptr).xClose) as usize - ptr as usize },
2829 56usize,
2830 concat!(
2831 "Offset of field: ",
2832 stringify!(sqlite3_module),
2833 "::",
2834 stringify!(xClose)
2835 )
2836 );
2837 assert_eq!(
2838 unsafe { ::core::ptr::addr_of!((*ptr).xFilter) as usize - ptr as usize },
2839 64usize,
2840 concat!(
2841 "Offset of field: ",
2842 stringify!(sqlite3_module),
2843 "::",
2844 stringify!(xFilter)
2845 )
2846 );
2847 assert_eq!(
2848 unsafe { ::core::ptr::addr_of!((*ptr).xNext) as usize - ptr as usize },
2849 72usize,
2850 concat!(
2851 "Offset of field: ",
2852 stringify!(sqlite3_module),
2853 "::",
2854 stringify!(xNext)
2855 )
2856 );
2857 assert_eq!(
2858 unsafe { ::core::ptr::addr_of!((*ptr).xEof) as usize - ptr as usize },
2859 80usize,
2860 concat!(
2861 "Offset of field: ",
2862 stringify!(sqlite3_module),
2863 "::",
2864 stringify!(xEof)
2865 )
2866 );
2867 assert_eq!(
2868 unsafe { ::core::ptr::addr_of!((*ptr).xColumn) as usize - ptr as usize },
2869 88usize,
2870 concat!(
2871 "Offset of field: ",
2872 stringify!(sqlite3_module),
2873 "::",
2874 stringify!(xColumn)
2875 )
2876 );
2877 assert_eq!(
2878 unsafe { ::core::ptr::addr_of!((*ptr).xRowid) as usize - ptr as usize },
2879 96usize,
2880 concat!(
2881 "Offset of field: ",
2882 stringify!(sqlite3_module),
2883 "::",
2884 stringify!(xRowid)
2885 )
2886 );
2887 assert_eq!(
2888 unsafe { ::core::ptr::addr_of!((*ptr).xUpdate) as usize - ptr as usize },
2889 104usize,
2890 concat!(
2891 "Offset of field: ",
2892 stringify!(sqlite3_module),
2893 "::",
2894 stringify!(xUpdate)
2895 )
2896 );
2897 assert_eq!(
2898 unsafe { ::core::ptr::addr_of!((*ptr).xBegin) as usize - ptr as usize },
2899 112usize,
2900 concat!(
2901 "Offset of field: ",
2902 stringify!(sqlite3_module),
2903 "::",
2904 stringify!(xBegin)
2905 )
2906 );
2907 assert_eq!(
2908 unsafe { ::core::ptr::addr_of!((*ptr).xSync) as usize - ptr as usize },
2909 120usize,
2910 concat!(
2911 "Offset of field: ",
2912 stringify!(sqlite3_module),
2913 "::",
2914 stringify!(xSync)
2915 )
2916 );
2917 assert_eq!(
2918 unsafe { ::core::ptr::addr_of!((*ptr).xCommit) as usize - ptr as usize },
2919 128usize,
2920 concat!(
2921 "Offset of field: ",
2922 stringify!(sqlite3_module),
2923 "::",
2924 stringify!(xCommit)
2925 )
2926 );
2927 assert_eq!(
2928 unsafe { ::core::ptr::addr_of!((*ptr).xRollback) as usize - ptr as usize },
2929 136usize,
2930 concat!(
2931 "Offset of field: ",
2932 stringify!(sqlite3_module),
2933 "::",
2934 stringify!(xRollback)
2935 )
2936 );
2937 assert_eq!(
2938 unsafe { ::core::ptr::addr_of!((*ptr).xFindFunction) as usize - ptr as usize },
2939 144usize,
2940 concat!(
2941 "Offset of field: ",
2942 stringify!(sqlite3_module),
2943 "::",
2944 stringify!(xFindFunction)
2945 )
2946 );
2947 assert_eq!(
2948 unsafe { ::core::ptr::addr_of!((*ptr).xRename) as usize - ptr as usize },
2949 152usize,
2950 concat!(
2951 "Offset of field: ",
2952 stringify!(sqlite3_module),
2953 "::",
2954 stringify!(xRename)
2955 )
2956 );
2957 assert_eq!(
2958 unsafe { ::core::ptr::addr_of!((*ptr).xSavepoint) as usize - ptr as usize },
2959 160usize,
2960 concat!(
2961 "Offset of field: ",
2962 stringify!(sqlite3_module),
2963 "::",
2964 stringify!(xSavepoint)
2965 )
2966 );
2967 assert_eq!(
2968 unsafe { ::core::ptr::addr_of!((*ptr).xRelease) as usize - ptr as usize },
2969 168usize,
2970 concat!(
2971 "Offset of field: ",
2972 stringify!(sqlite3_module),
2973 "::",
2974 stringify!(xRelease)
2975 )
2976 );
2977 assert_eq!(
2978 unsafe { ::core::ptr::addr_of!((*ptr).xRollbackTo) as usize - ptr as usize },
2979 176usize,
2980 concat!(
2981 "Offset of field: ",
2982 stringify!(sqlite3_module),
2983 "::",
2984 stringify!(xRollbackTo)
2985 )
2986 );
2987 assert_eq!(
2988 unsafe { ::core::ptr::addr_of!((*ptr).xShadowName) as usize - ptr as usize },
2989 184usize,
2990 concat!(
2991 "Offset of field: ",
2992 stringify!(sqlite3_module),
2993 "::",
2994 stringify!(xShadowName)
2995 )
2996 );
2997 assert_eq!(
2998 unsafe { ::core::ptr::addr_of!((*ptr).xIntegrity) as usize - ptr as usize },
2999 192usize,
3000 concat!(
3001 "Offset of field: ",
3002 stringify!(sqlite3_module),
3003 "::",
3004 stringify!(xIntegrity)
3005 )
3006 );
3007}
3008#[repr(C)]
3009#[derive(Debug, Copy, Clone)]
3010pub struct sqlite3_index_info {
3011 pub nConstraint: ::core::ffi::c_int,
3012 pub aConstraint: *mut sqlite3_index_info_sqlite3_index_constraint,
3013 pub nOrderBy: ::core::ffi::c_int,
3014 pub aOrderBy: *mut sqlite3_index_info_sqlite3_index_orderby,
3015 pub aConstraintUsage: *mut sqlite3_index_info_sqlite3_index_constraint_usage,
3016 pub idxNum: ::core::ffi::c_int,
3017 pub idxStr: *mut ::core::ffi::c_char,
3018 pub needToFreeIdxStr: ::core::ffi::c_int,
3019 pub orderByConsumed: ::core::ffi::c_int,
3020 pub estimatedCost: f64,
3021 pub estimatedRows: sqlite3_int64,
3022 pub idxFlags: ::core::ffi::c_int,
3023 pub colUsed: sqlite3_uint64,
3024}
3025#[repr(C)]
3026#[derive(Debug, Copy, Clone)]
3027pub struct sqlite3_index_info_sqlite3_index_constraint {
3028 pub iColumn: ::core::ffi::c_int,
3029 pub op: ::core::ffi::c_uchar,
3030 pub usable: ::core::ffi::c_uchar,
3031 pub iTermOffset: ::core::ffi::c_int,
3032}
3033#[test]
3034fn bindgen_test_layout_sqlite3_index_info_sqlite3_index_constraint() {
3035 const UNINIT: ::core::mem::MaybeUninit<sqlite3_index_info_sqlite3_index_constraint> =
3036 ::core::mem::MaybeUninit::uninit();
3037 let ptr = UNINIT.as_ptr();
3038 assert_eq!(
3039 ::core::mem::size_of::<sqlite3_index_info_sqlite3_index_constraint>(),
3040 12usize,
3041 concat!(
3042 "Size of: ",
3043 stringify!(sqlite3_index_info_sqlite3_index_constraint)
3044 )
3045 );
3046 assert_eq!(
3047 ::core::mem::align_of::<sqlite3_index_info_sqlite3_index_constraint>(),
3048 4usize,
3049 concat!(
3050 "Alignment of ",
3051 stringify!(sqlite3_index_info_sqlite3_index_constraint)
3052 )
3053 );
3054 assert_eq!(
3055 unsafe { ::core::ptr::addr_of!((*ptr).iColumn) as usize - ptr as usize },
3056 0usize,
3057 concat!(
3058 "Offset of field: ",
3059 stringify!(sqlite3_index_info_sqlite3_index_constraint),
3060 "::",
3061 stringify!(iColumn)
3062 )
3063 );
3064 assert_eq!(
3065 unsafe { ::core::ptr::addr_of!((*ptr).op) as usize - ptr as usize },
3066 4usize,
3067 concat!(
3068 "Offset of field: ",
3069 stringify!(sqlite3_index_info_sqlite3_index_constraint),
3070 "::",
3071 stringify!(op)
3072 )
3073 );
3074 assert_eq!(
3075 unsafe { ::core::ptr::addr_of!((*ptr).usable) as usize - ptr as usize },
3076 5usize,
3077 concat!(
3078 "Offset of field: ",
3079 stringify!(sqlite3_index_info_sqlite3_index_constraint),
3080 "::",
3081 stringify!(usable)
3082 )
3083 );
3084 assert_eq!(
3085 unsafe { ::core::ptr::addr_of!((*ptr).iTermOffset) as usize - ptr as usize },
3086 8usize,
3087 concat!(
3088 "Offset of field: ",
3089 stringify!(sqlite3_index_info_sqlite3_index_constraint),
3090 "::",
3091 stringify!(iTermOffset)
3092 )
3093 );
3094}
3095#[repr(C)]
3096#[derive(Debug, Copy, Clone)]
3097pub struct sqlite3_index_info_sqlite3_index_orderby {
3098 pub iColumn: ::core::ffi::c_int,
3099 pub desc: ::core::ffi::c_uchar,
3100}
3101#[test]
3102fn bindgen_test_layout_sqlite3_index_info_sqlite3_index_orderby() {
3103 const UNINIT: ::core::mem::MaybeUninit<sqlite3_index_info_sqlite3_index_orderby> =
3104 ::core::mem::MaybeUninit::uninit();
3105 let ptr = UNINIT.as_ptr();
3106 assert_eq!(
3107 ::core::mem::size_of::<sqlite3_index_info_sqlite3_index_orderby>(),
3108 8usize,
3109 concat!(
3110 "Size of: ",
3111 stringify!(sqlite3_index_info_sqlite3_index_orderby)
3112 )
3113 );
3114 assert_eq!(
3115 ::core::mem::align_of::<sqlite3_index_info_sqlite3_index_orderby>(),
3116 4usize,
3117 concat!(
3118 "Alignment of ",
3119 stringify!(sqlite3_index_info_sqlite3_index_orderby)
3120 )
3121 );
3122 assert_eq!(
3123 unsafe { ::core::ptr::addr_of!((*ptr).iColumn) as usize - ptr as usize },
3124 0usize,
3125 concat!(
3126 "Offset of field: ",
3127 stringify!(sqlite3_index_info_sqlite3_index_orderby),
3128 "::",
3129 stringify!(iColumn)
3130 )
3131 );
3132 assert_eq!(
3133 unsafe { ::core::ptr::addr_of!((*ptr).desc) as usize - ptr as usize },
3134 4usize,
3135 concat!(
3136 "Offset of field: ",
3137 stringify!(sqlite3_index_info_sqlite3_index_orderby),
3138 "::",
3139 stringify!(desc)
3140 )
3141 );
3142}
3143#[repr(C)]
3144#[derive(Debug, Copy, Clone)]
3145pub struct sqlite3_index_info_sqlite3_index_constraint_usage {
3146 pub argvIndex: ::core::ffi::c_int,
3147 pub omit: ::core::ffi::c_uchar,
3148}
3149#[test]
3150fn bindgen_test_layout_sqlite3_index_info_sqlite3_index_constraint_usage() {
3151 const UNINIT: ::core::mem::MaybeUninit<sqlite3_index_info_sqlite3_index_constraint_usage> =
3152 ::core::mem::MaybeUninit::uninit();
3153 let ptr = UNINIT.as_ptr();
3154 assert_eq!(
3155 ::core::mem::size_of::<sqlite3_index_info_sqlite3_index_constraint_usage>(),
3156 8usize,
3157 concat!(
3158 "Size of: ",
3159 stringify!(sqlite3_index_info_sqlite3_index_constraint_usage)
3160 )
3161 );
3162 assert_eq!(
3163 ::core::mem::align_of::<sqlite3_index_info_sqlite3_index_constraint_usage>(),
3164 4usize,
3165 concat!(
3166 "Alignment of ",
3167 stringify!(sqlite3_index_info_sqlite3_index_constraint_usage)
3168 )
3169 );
3170 assert_eq!(
3171 unsafe { ::core::ptr::addr_of!((*ptr).argvIndex) as usize - ptr as usize },
3172 0usize,
3173 concat!(
3174 "Offset of field: ",
3175 stringify!(sqlite3_index_info_sqlite3_index_constraint_usage),
3176 "::",
3177 stringify!(argvIndex)
3178 )
3179 );
3180 assert_eq!(
3181 unsafe { ::core::ptr::addr_of!((*ptr).omit) as usize - ptr as usize },
3182 4usize,
3183 concat!(
3184 "Offset of field: ",
3185 stringify!(sqlite3_index_info_sqlite3_index_constraint_usage),
3186 "::",
3187 stringify!(omit)
3188 )
3189 );
3190}
3191#[test]
3192fn bindgen_test_layout_sqlite3_index_info() {
3193 const UNINIT: ::core::mem::MaybeUninit<sqlite3_index_info> = ::core::mem::MaybeUninit::uninit();
3194 let ptr = UNINIT.as_ptr();
3195 assert_eq!(
3196 ::core::mem::size_of::<sqlite3_index_info>(),
3197 96usize,
3198 concat!("Size of: ", stringify!(sqlite3_index_info))
3199 );
3200 assert_eq!(
3201 ::core::mem::align_of::<sqlite3_index_info>(),
3202 8usize,
3203 concat!("Alignment of ", stringify!(sqlite3_index_info))
3204 );
3205 assert_eq!(
3206 unsafe { ::core::ptr::addr_of!((*ptr).nConstraint) as usize - ptr as usize },
3207 0usize,
3208 concat!(
3209 "Offset of field: ",
3210 stringify!(sqlite3_index_info),
3211 "::",
3212 stringify!(nConstraint)
3213 )
3214 );
3215 assert_eq!(
3216 unsafe { ::core::ptr::addr_of!((*ptr).aConstraint) as usize - ptr as usize },
3217 8usize,
3218 concat!(
3219 "Offset of field: ",
3220 stringify!(sqlite3_index_info),
3221 "::",
3222 stringify!(aConstraint)
3223 )
3224 );
3225 assert_eq!(
3226 unsafe { ::core::ptr::addr_of!((*ptr).nOrderBy) as usize - ptr as usize },
3227 16usize,
3228 concat!(
3229 "Offset of field: ",
3230 stringify!(sqlite3_index_info),
3231 "::",
3232 stringify!(nOrderBy)
3233 )
3234 );
3235 assert_eq!(
3236 unsafe { ::core::ptr::addr_of!((*ptr).aOrderBy) as usize - ptr as usize },
3237 24usize,
3238 concat!(
3239 "Offset of field: ",
3240 stringify!(sqlite3_index_info),
3241 "::",
3242 stringify!(aOrderBy)
3243 )
3244 );
3245 assert_eq!(
3246 unsafe { ::core::ptr::addr_of!((*ptr).aConstraintUsage) as usize - ptr as usize },
3247 32usize,
3248 concat!(
3249 "Offset of field: ",
3250 stringify!(sqlite3_index_info),
3251 "::",
3252 stringify!(aConstraintUsage)
3253 )
3254 );
3255 assert_eq!(
3256 unsafe { ::core::ptr::addr_of!((*ptr).idxNum) as usize - ptr as usize },
3257 40usize,
3258 concat!(
3259 "Offset of field: ",
3260 stringify!(sqlite3_index_info),
3261 "::",
3262 stringify!(idxNum)
3263 )
3264 );
3265 assert_eq!(
3266 unsafe { ::core::ptr::addr_of!((*ptr).idxStr) as usize - ptr as usize },
3267 48usize,
3268 concat!(
3269 "Offset of field: ",
3270 stringify!(sqlite3_index_info),
3271 "::",
3272 stringify!(idxStr)
3273 )
3274 );
3275 assert_eq!(
3276 unsafe { ::core::ptr::addr_of!((*ptr).needToFreeIdxStr) as usize - ptr as usize },
3277 56usize,
3278 concat!(
3279 "Offset of field: ",
3280 stringify!(sqlite3_index_info),
3281 "::",
3282 stringify!(needToFreeIdxStr)
3283 )
3284 );
3285 assert_eq!(
3286 unsafe { ::core::ptr::addr_of!((*ptr).orderByConsumed) as usize - ptr as usize },
3287 60usize,
3288 concat!(
3289 "Offset of field: ",
3290 stringify!(sqlite3_index_info),
3291 "::",
3292 stringify!(orderByConsumed)
3293 )
3294 );
3295 assert_eq!(
3296 unsafe { ::core::ptr::addr_of!((*ptr).estimatedCost) as usize - ptr as usize },
3297 64usize,
3298 concat!(
3299 "Offset of field: ",
3300 stringify!(sqlite3_index_info),
3301 "::",
3302 stringify!(estimatedCost)
3303 )
3304 );
3305 assert_eq!(
3306 unsafe { ::core::ptr::addr_of!((*ptr).estimatedRows) as usize - ptr as usize },
3307 72usize,
3308 concat!(
3309 "Offset of field: ",
3310 stringify!(sqlite3_index_info),
3311 "::",
3312 stringify!(estimatedRows)
3313 )
3314 );
3315 assert_eq!(
3316 unsafe { ::core::ptr::addr_of!((*ptr).idxFlags) as usize - ptr as usize },
3317 80usize,
3318 concat!(
3319 "Offset of field: ",
3320 stringify!(sqlite3_index_info),
3321 "::",
3322 stringify!(idxFlags)
3323 )
3324 );
3325 assert_eq!(
3326 unsafe { ::core::ptr::addr_of!((*ptr).colUsed) as usize - ptr as usize },
3327 88usize,
3328 concat!(
3329 "Offset of field: ",
3330 stringify!(sqlite3_index_info),
3331 "::",
3332 stringify!(colUsed)
3333 )
3334 );
3335}
3336extern "C" {
3337 pub fn sqlite3_create_module(
3338 db: *mut sqlite3,
3339 zName: *const ::core::ffi::c_char,
3340 p: *const sqlite3_module,
3341 pClientData: *mut ::core::ffi::c_void,
3342 ) -> ::core::ffi::c_int;
3343}
3344extern "C" {
3345 pub fn sqlite3_create_module_v2(
3346 db: *mut sqlite3,
3347 zName: *const ::core::ffi::c_char,
3348 p: *const sqlite3_module,
3349 pClientData: *mut ::core::ffi::c_void,
3350 xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
3351 ) -> ::core::ffi::c_int;
3352}
3353extern "C" {
3354 pub fn sqlite3_drop_modules(
3355 db: *mut sqlite3,
3356 azKeep: *mut *const ::core::ffi::c_char,
3357 ) -> ::core::ffi::c_int;
3358}
3359#[repr(C)]
3360#[derive(Debug, Copy, Clone)]
3361pub struct sqlite3_vtab {
3362 pub pModule: *const sqlite3_module,
3363 pub nRef: ::core::ffi::c_int,
3364 pub zErrMsg: *mut ::core::ffi::c_char,
3365}
3366#[test]
3367fn bindgen_test_layout_sqlite3_vtab() {
3368 const UNINIT: ::core::mem::MaybeUninit<sqlite3_vtab> = ::core::mem::MaybeUninit::uninit();
3369 let ptr = UNINIT.as_ptr();
3370 assert_eq!(
3371 ::core::mem::size_of::<sqlite3_vtab>(),
3372 24usize,
3373 concat!("Size of: ", stringify!(sqlite3_vtab))
3374 );
3375 assert_eq!(
3376 ::core::mem::align_of::<sqlite3_vtab>(),
3377 8usize,
3378 concat!("Alignment of ", stringify!(sqlite3_vtab))
3379 );
3380 assert_eq!(
3381 unsafe { ::core::ptr::addr_of!((*ptr).pModule) as usize - ptr as usize },
3382 0usize,
3383 concat!(
3384 "Offset of field: ",
3385 stringify!(sqlite3_vtab),
3386 "::",
3387 stringify!(pModule)
3388 )
3389 );
3390 assert_eq!(
3391 unsafe { ::core::ptr::addr_of!((*ptr).nRef) as usize - ptr as usize },
3392 8usize,
3393 concat!(
3394 "Offset of field: ",
3395 stringify!(sqlite3_vtab),
3396 "::",
3397 stringify!(nRef)
3398 )
3399 );
3400 assert_eq!(
3401 unsafe { ::core::ptr::addr_of!((*ptr).zErrMsg) as usize - ptr as usize },
3402 16usize,
3403 concat!(
3404 "Offset of field: ",
3405 stringify!(sqlite3_vtab),
3406 "::",
3407 stringify!(zErrMsg)
3408 )
3409 );
3410}
3411#[repr(C)]
3412#[derive(Debug, Copy, Clone)]
3413pub struct sqlite3_vtab_cursor {
3414 pub pVtab: *mut sqlite3_vtab,
3415}
3416#[test]
3417fn bindgen_test_layout_sqlite3_vtab_cursor() {
3418 const UNINIT: ::core::mem::MaybeUninit<sqlite3_vtab_cursor> =
3419 ::core::mem::MaybeUninit::uninit();
3420 let ptr = UNINIT.as_ptr();
3421 assert_eq!(
3422 ::core::mem::size_of::<sqlite3_vtab_cursor>(),
3423 8usize,
3424 concat!("Size of: ", stringify!(sqlite3_vtab_cursor))
3425 );
3426 assert_eq!(
3427 ::core::mem::align_of::<sqlite3_vtab_cursor>(),
3428 8usize,
3429 concat!("Alignment of ", stringify!(sqlite3_vtab_cursor))
3430 );
3431 assert_eq!(
3432 unsafe { ::core::ptr::addr_of!((*ptr).pVtab) as usize - ptr as usize },
3433 0usize,
3434 concat!(
3435 "Offset of field: ",
3436 stringify!(sqlite3_vtab_cursor),
3437 "::",
3438 stringify!(pVtab)
3439 )
3440 );
3441}
3442extern "C" {
3443 pub fn sqlite3_declare_vtab(
3444 arg1: *mut sqlite3,
3445 zSQL: *const ::core::ffi::c_char,
3446 ) -> ::core::ffi::c_int;
3447}
3448extern "C" {
3449 pub fn sqlite3_overload_function(
3450 arg1: *mut sqlite3,
3451 zFuncName: *const ::core::ffi::c_char,
3452 nArg: ::core::ffi::c_int,
3453 ) -> ::core::ffi::c_int;
3454}
3455#[repr(C)]
3456#[derive(Debug, Copy, Clone)]
3457pub struct sqlite3_blob {
3458 _unused: [u8; 0],
3459}
3460extern "C" {
3461 pub fn sqlite3_blob_open(
3462 arg1: *mut sqlite3,
3463 zDb: *const ::core::ffi::c_char,
3464 zTable: *const ::core::ffi::c_char,
3465 zColumn: *const ::core::ffi::c_char,
3466 iRow: sqlite3_int64,
3467 flags: ::core::ffi::c_int,
3468 ppBlob: *mut *mut sqlite3_blob,
3469 ) -> ::core::ffi::c_int;
3470}
3471extern "C" {
3472 pub fn sqlite3_blob_reopen(arg1: *mut sqlite3_blob, arg2: sqlite3_int64) -> ::core::ffi::c_int;
3473}
3474extern "C" {
3475 pub fn sqlite3_blob_close(arg1: *mut sqlite3_blob) -> ::core::ffi::c_int;
3476}
3477extern "C" {
3478 pub fn sqlite3_blob_bytes(arg1: *mut sqlite3_blob) -> ::core::ffi::c_int;
3479}
3480extern "C" {
3481 pub fn sqlite3_blob_read(
3482 arg1: *mut sqlite3_blob,
3483 Z: *mut ::core::ffi::c_void,
3484 N: ::core::ffi::c_int,
3485 iOffset: ::core::ffi::c_int,
3486 ) -> ::core::ffi::c_int;
3487}
3488extern "C" {
3489 pub fn sqlite3_blob_write(
3490 arg1: *mut sqlite3_blob,
3491 z: *const ::core::ffi::c_void,
3492 n: ::core::ffi::c_int,
3493 iOffset: ::core::ffi::c_int,
3494 ) -> ::core::ffi::c_int;
3495}
3496extern "C" {
3497 pub fn sqlite3_vfs_find(zVfsName: *const ::core::ffi::c_char) -> *mut sqlite3_vfs;
3498}
3499extern "C" {
3500 pub fn sqlite3_vfs_register(
3501 arg1: *mut sqlite3_vfs,
3502 makeDflt: ::core::ffi::c_int,
3503 ) -> ::core::ffi::c_int;
3504}
3505extern "C" {
3506 pub fn sqlite3_vfs_unregister(arg1: *mut sqlite3_vfs) -> ::core::ffi::c_int;
3507}
3508extern "C" {
3509 pub fn sqlite3_mutex_alloc(arg1: ::core::ffi::c_int) -> *mut sqlite3_mutex;
3510}
3511extern "C" {
3512 pub fn sqlite3_mutex_free(arg1: *mut sqlite3_mutex);
3513}
3514extern "C" {
3515 pub fn sqlite3_mutex_enter(arg1: *mut sqlite3_mutex);
3516}
3517extern "C" {
3518 pub fn sqlite3_mutex_try(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int;
3519}
3520extern "C" {
3521 pub fn sqlite3_mutex_leave(arg1: *mut sqlite3_mutex);
3522}
3523#[repr(C)]
3524#[derive(Debug, Copy, Clone)]
3525pub struct sqlite3_mutex_methods {
3526 pub xMutexInit: ::core::option::Option<unsafe extern "C" fn() -> ::core::ffi::c_int>,
3527 pub xMutexEnd: ::core::option::Option<unsafe extern "C" fn() -> ::core::ffi::c_int>,
3528 pub xMutexAlloc: ::core::option::Option<
3529 unsafe extern "C" fn(arg1: ::core::ffi::c_int) -> *mut sqlite3_mutex,
3530 >,
3531 pub xMutexFree: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex)>,
3532 pub xMutexEnter: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex)>,
3533 pub xMutexTry: ::core::option::Option<
3534 unsafe extern "C" fn(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int,
3535 >,
3536 pub xMutexLeave: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_mutex)>,
3537 pub xMutexHeld: ::core::option::Option<
3538 unsafe extern "C" fn(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int,
3539 >,
3540 pub xMutexNotheld: ::core::option::Option<
3541 unsafe extern "C" fn(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int,
3542 >,
3543}
3544#[test]
3545fn bindgen_test_layout_sqlite3_mutex_methods() {
3546 const UNINIT: ::core::mem::MaybeUninit<sqlite3_mutex_methods> =
3547 ::core::mem::MaybeUninit::uninit();
3548 let ptr = UNINIT.as_ptr();
3549 assert_eq!(
3550 ::core::mem::size_of::<sqlite3_mutex_methods>(),
3551 72usize,
3552 concat!("Size of: ", stringify!(sqlite3_mutex_methods))
3553 );
3554 assert_eq!(
3555 ::core::mem::align_of::<sqlite3_mutex_methods>(),
3556 8usize,
3557 concat!("Alignment of ", stringify!(sqlite3_mutex_methods))
3558 );
3559 assert_eq!(
3560 unsafe { ::core::ptr::addr_of!((*ptr).xMutexInit) as usize - ptr as usize },
3561 0usize,
3562 concat!(
3563 "Offset of field: ",
3564 stringify!(sqlite3_mutex_methods),
3565 "::",
3566 stringify!(xMutexInit)
3567 )
3568 );
3569 assert_eq!(
3570 unsafe { ::core::ptr::addr_of!((*ptr).xMutexEnd) as usize - ptr as usize },
3571 8usize,
3572 concat!(
3573 "Offset of field: ",
3574 stringify!(sqlite3_mutex_methods),
3575 "::",
3576 stringify!(xMutexEnd)
3577 )
3578 );
3579 assert_eq!(
3580 unsafe { ::core::ptr::addr_of!((*ptr).xMutexAlloc) as usize - ptr as usize },
3581 16usize,
3582 concat!(
3583 "Offset of field: ",
3584 stringify!(sqlite3_mutex_methods),
3585 "::",
3586 stringify!(xMutexAlloc)
3587 )
3588 );
3589 assert_eq!(
3590 unsafe { ::core::ptr::addr_of!((*ptr).xMutexFree) as usize - ptr as usize },
3591 24usize,
3592 concat!(
3593 "Offset of field: ",
3594 stringify!(sqlite3_mutex_methods),
3595 "::",
3596 stringify!(xMutexFree)
3597 )
3598 );
3599 assert_eq!(
3600 unsafe { ::core::ptr::addr_of!((*ptr).xMutexEnter) as usize - ptr as usize },
3601 32usize,
3602 concat!(
3603 "Offset of field: ",
3604 stringify!(sqlite3_mutex_methods),
3605 "::",
3606 stringify!(xMutexEnter)
3607 )
3608 );
3609 assert_eq!(
3610 unsafe { ::core::ptr::addr_of!((*ptr).xMutexTry) as usize - ptr as usize },
3611 40usize,
3612 concat!(
3613 "Offset of field: ",
3614 stringify!(sqlite3_mutex_methods),
3615 "::",
3616 stringify!(xMutexTry)
3617 )
3618 );
3619 assert_eq!(
3620 unsafe { ::core::ptr::addr_of!((*ptr).xMutexLeave) as usize - ptr as usize },
3621 48usize,
3622 concat!(
3623 "Offset of field: ",
3624 stringify!(sqlite3_mutex_methods),
3625 "::",
3626 stringify!(xMutexLeave)
3627 )
3628 );
3629 assert_eq!(
3630 unsafe { ::core::ptr::addr_of!((*ptr).xMutexHeld) as usize - ptr as usize },
3631 56usize,
3632 concat!(
3633 "Offset of field: ",
3634 stringify!(sqlite3_mutex_methods),
3635 "::",
3636 stringify!(xMutexHeld)
3637 )
3638 );
3639 assert_eq!(
3640 unsafe { ::core::ptr::addr_of!((*ptr).xMutexNotheld) as usize - ptr as usize },
3641 64usize,
3642 concat!(
3643 "Offset of field: ",
3644 stringify!(sqlite3_mutex_methods),
3645 "::",
3646 stringify!(xMutexNotheld)
3647 )
3648 );
3649}
3650extern "C" {
3651 pub fn sqlite3_mutex_held(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int;
3652}
3653extern "C" {
3654 pub fn sqlite3_mutex_notheld(arg1: *mut sqlite3_mutex) -> ::core::ffi::c_int;
3655}
3656extern "C" {
3657 pub fn sqlite3_db_mutex(arg1: *mut sqlite3) -> *mut sqlite3_mutex;
3658}
3659extern "C" {
3660 pub fn sqlite3_file_control(
3661 arg1: *mut sqlite3,
3662 zDbName: *const ::core::ffi::c_char,
3663 op: ::core::ffi::c_int,
3664 arg2: *mut ::core::ffi::c_void,
3665 ) -> ::core::ffi::c_int;
3666}
3667extern "C" {
3668 pub fn sqlite3_test_control(op: ::core::ffi::c_int, ...) -> ::core::ffi::c_int;
3669}
3670extern "C" {
3671 pub fn sqlite3_keyword_count() -> ::core::ffi::c_int;
3672}
3673extern "C" {
3674 pub fn sqlite3_keyword_name(
3675 arg1: ::core::ffi::c_int,
3676 arg2: *mut *const ::core::ffi::c_char,
3677 arg3: *mut ::core::ffi::c_int,
3678 ) -> ::core::ffi::c_int;
3679}
3680extern "C" {
3681 pub fn sqlite3_keyword_check(
3682 arg1: *const ::core::ffi::c_char,
3683 arg2: ::core::ffi::c_int,
3684 ) -> ::core::ffi::c_int;
3685}
3686#[repr(C)]
3687#[derive(Debug, Copy, Clone)]
3688pub struct sqlite3_str {
3689 _unused: [u8; 0],
3690}
3691extern "C" {
3692 pub fn sqlite3_str_new(arg1: *mut sqlite3) -> *mut sqlite3_str;
3693}
3694extern "C" {
3695 pub fn sqlite3_str_finish(arg1: *mut sqlite3_str) -> *mut ::core::ffi::c_char;
3696}
3697extern "C" {
3698 pub fn sqlite3_str_appendf(arg1: *mut sqlite3_str, zFormat: *const ::core::ffi::c_char, ...);
3699}
3700extern "C" {
3701 pub fn sqlite3_str_vappendf(
3702 arg1: *mut sqlite3_str,
3703 zFormat: *const ::core::ffi::c_char,
3704 arg2: *mut __va_list_tag,
3705 );
3706}
3707extern "C" {
3708 pub fn sqlite3_str_append(
3709 arg1: *mut sqlite3_str,
3710 zIn: *const ::core::ffi::c_char,
3711 N: ::core::ffi::c_int,
3712 );
3713}
3714extern "C" {
3715 pub fn sqlite3_str_appendall(arg1: *mut sqlite3_str, zIn: *const ::core::ffi::c_char);
3716}
3717extern "C" {
3718 pub fn sqlite3_str_appendchar(
3719 arg1: *mut sqlite3_str,
3720 N: ::core::ffi::c_int,
3721 C: ::core::ffi::c_char,
3722 );
3723}
3724extern "C" {
3725 pub fn sqlite3_str_reset(arg1: *mut sqlite3_str);
3726}
3727extern "C" {
3728 pub fn sqlite3_str_errcode(arg1: *mut sqlite3_str) -> ::core::ffi::c_int;
3729}
3730extern "C" {
3731 pub fn sqlite3_str_length(arg1: *mut sqlite3_str) -> ::core::ffi::c_int;
3732}
3733extern "C" {
3734 pub fn sqlite3_str_value(arg1: *mut sqlite3_str) -> *mut ::core::ffi::c_char;
3735}
3736extern "C" {
3737 pub fn sqlite3_status(
3738 op: ::core::ffi::c_int,
3739 pCurrent: *mut ::core::ffi::c_int,
3740 pHighwater: *mut ::core::ffi::c_int,
3741 resetFlag: ::core::ffi::c_int,
3742 ) -> ::core::ffi::c_int;
3743}
3744extern "C" {
3745 pub fn sqlite3_status64(
3746 op: ::core::ffi::c_int,
3747 pCurrent: *mut sqlite3_int64,
3748 pHighwater: *mut sqlite3_int64,
3749 resetFlag: ::core::ffi::c_int,
3750 ) -> ::core::ffi::c_int;
3751}
3752extern "C" {
3753 pub fn sqlite3_db_status(
3754 arg1: *mut sqlite3,
3755 op: ::core::ffi::c_int,
3756 pCur: *mut ::core::ffi::c_int,
3757 pHiwtr: *mut ::core::ffi::c_int,
3758 resetFlg: ::core::ffi::c_int,
3759 ) -> ::core::ffi::c_int;
3760}
3761extern "C" {
3762 pub fn sqlite3_stmt_status(
3763 arg1: *mut sqlite3_stmt,
3764 op: ::core::ffi::c_int,
3765 resetFlg: ::core::ffi::c_int,
3766 ) -> ::core::ffi::c_int;
3767}
3768#[repr(C)]
3769#[derive(Debug, Copy, Clone)]
3770pub struct sqlite3_pcache {
3771 _unused: [u8; 0],
3772}
3773#[repr(C)]
3774#[derive(Debug, Copy, Clone)]
3775pub struct sqlite3_pcache_page {
3776 pub pBuf: *mut ::core::ffi::c_void,
3777 pub pExtra: *mut ::core::ffi::c_void,
3778}
3779#[test]
3780fn bindgen_test_layout_sqlite3_pcache_page() {
3781 const UNINIT: ::core::mem::MaybeUninit<sqlite3_pcache_page> =
3782 ::core::mem::MaybeUninit::uninit();
3783 let ptr = UNINIT.as_ptr();
3784 assert_eq!(
3785 ::core::mem::size_of::<sqlite3_pcache_page>(),
3786 16usize,
3787 concat!("Size of: ", stringify!(sqlite3_pcache_page))
3788 );
3789 assert_eq!(
3790 ::core::mem::align_of::<sqlite3_pcache_page>(),
3791 8usize,
3792 concat!("Alignment of ", stringify!(sqlite3_pcache_page))
3793 );
3794 assert_eq!(
3795 unsafe { ::core::ptr::addr_of!((*ptr).pBuf) as usize - ptr as usize },
3796 0usize,
3797 concat!(
3798 "Offset of field: ",
3799 stringify!(sqlite3_pcache_page),
3800 "::",
3801 stringify!(pBuf)
3802 )
3803 );
3804 assert_eq!(
3805 unsafe { ::core::ptr::addr_of!((*ptr).pExtra) as usize - ptr as usize },
3806 8usize,
3807 concat!(
3808 "Offset of field: ",
3809 stringify!(sqlite3_pcache_page),
3810 "::",
3811 stringify!(pExtra)
3812 )
3813 );
3814}
3815#[repr(C)]
3816#[derive(Debug, Copy, Clone)]
3817pub struct sqlite3_pcache_methods2 {
3818 pub iVersion: ::core::ffi::c_int,
3819 pub pArg: *mut ::core::ffi::c_void,
3820 pub xInit: ::core::option::Option<
3821 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int,
3822 >,
3823 pub xShutdown: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
3824 pub xCreate: ::core::option::Option<
3825 unsafe extern "C" fn(
3826 szPage: ::core::ffi::c_int,
3827 szExtra: ::core::ffi::c_int,
3828 bPurgeable: ::core::ffi::c_int,
3829 ) -> *mut sqlite3_pcache,
3830 >,
3831 pub xCachesize: ::core::option::Option<
3832 unsafe extern "C" fn(arg1: *mut sqlite3_pcache, nCachesize: ::core::ffi::c_int),
3833 >,
3834 pub xPagecount: ::core::option::Option<
3835 unsafe extern "C" fn(arg1: *mut sqlite3_pcache) -> ::core::ffi::c_int,
3836 >,
3837 pub xFetch: ::core::option::Option<
3838 unsafe extern "C" fn(
3839 arg1: *mut sqlite3_pcache,
3840 key: ::core::ffi::c_uint,
3841 createFlag: ::core::ffi::c_int,
3842 ) -> *mut sqlite3_pcache_page,
3843 >,
3844 pub xUnpin: ::core::option::Option<
3845 unsafe extern "C" fn(
3846 arg1: *mut sqlite3_pcache,
3847 arg2: *mut sqlite3_pcache_page,
3848 discard: ::core::ffi::c_int,
3849 ),
3850 >,
3851 pub xRekey: ::core::option::Option<
3852 unsafe extern "C" fn(
3853 arg1: *mut sqlite3_pcache,
3854 arg2: *mut sqlite3_pcache_page,
3855 oldKey: ::core::ffi::c_uint,
3856 newKey: ::core::ffi::c_uint,
3857 ),
3858 >,
3859 pub xTruncate: ::core::option::Option<
3860 unsafe extern "C" fn(arg1: *mut sqlite3_pcache, iLimit: ::core::ffi::c_uint),
3861 >,
3862 pub xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache)>,
3863 pub xShrink: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache)>,
3864}
3865#[test]
3866fn bindgen_test_layout_sqlite3_pcache_methods2() {
3867 const UNINIT: ::core::mem::MaybeUninit<sqlite3_pcache_methods2> =
3868 ::core::mem::MaybeUninit::uninit();
3869 let ptr = UNINIT.as_ptr();
3870 assert_eq!(
3871 ::core::mem::size_of::<sqlite3_pcache_methods2>(),
3872 104usize,
3873 concat!("Size of: ", stringify!(sqlite3_pcache_methods2))
3874 );
3875 assert_eq!(
3876 ::core::mem::align_of::<sqlite3_pcache_methods2>(),
3877 8usize,
3878 concat!("Alignment of ", stringify!(sqlite3_pcache_methods2))
3879 );
3880 assert_eq!(
3881 unsafe { ::core::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize },
3882 0usize,
3883 concat!(
3884 "Offset of field: ",
3885 stringify!(sqlite3_pcache_methods2),
3886 "::",
3887 stringify!(iVersion)
3888 )
3889 );
3890 assert_eq!(
3891 unsafe { ::core::ptr::addr_of!((*ptr).pArg) as usize - ptr as usize },
3892 8usize,
3893 concat!(
3894 "Offset of field: ",
3895 stringify!(sqlite3_pcache_methods2),
3896 "::",
3897 stringify!(pArg)
3898 )
3899 );
3900 assert_eq!(
3901 unsafe { ::core::ptr::addr_of!((*ptr).xInit) as usize - ptr as usize },
3902 16usize,
3903 concat!(
3904 "Offset of field: ",
3905 stringify!(sqlite3_pcache_methods2),
3906 "::",
3907 stringify!(xInit)
3908 )
3909 );
3910 assert_eq!(
3911 unsafe { ::core::ptr::addr_of!((*ptr).xShutdown) as usize - ptr as usize },
3912 24usize,
3913 concat!(
3914 "Offset of field: ",
3915 stringify!(sqlite3_pcache_methods2),
3916 "::",
3917 stringify!(xShutdown)
3918 )
3919 );
3920 assert_eq!(
3921 unsafe { ::core::ptr::addr_of!((*ptr).xCreate) as usize - ptr as usize },
3922 32usize,
3923 concat!(
3924 "Offset of field: ",
3925 stringify!(sqlite3_pcache_methods2),
3926 "::",
3927 stringify!(xCreate)
3928 )
3929 );
3930 assert_eq!(
3931 unsafe { ::core::ptr::addr_of!((*ptr).xCachesize) as usize - ptr as usize },
3932 40usize,
3933 concat!(
3934 "Offset of field: ",
3935 stringify!(sqlite3_pcache_methods2),
3936 "::",
3937 stringify!(xCachesize)
3938 )
3939 );
3940 assert_eq!(
3941 unsafe { ::core::ptr::addr_of!((*ptr).xPagecount) as usize - ptr as usize },
3942 48usize,
3943 concat!(
3944 "Offset of field: ",
3945 stringify!(sqlite3_pcache_methods2),
3946 "::",
3947 stringify!(xPagecount)
3948 )
3949 );
3950 assert_eq!(
3951 unsafe { ::core::ptr::addr_of!((*ptr).xFetch) as usize - ptr as usize },
3952 56usize,
3953 concat!(
3954 "Offset of field: ",
3955 stringify!(sqlite3_pcache_methods2),
3956 "::",
3957 stringify!(xFetch)
3958 )
3959 );
3960 assert_eq!(
3961 unsafe { ::core::ptr::addr_of!((*ptr).xUnpin) as usize - ptr as usize },
3962 64usize,
3963 concat!(
3964 "Offset of field: ",
3965 stringify!(sqlite3_pcache_methods2),
3966 "::",
3967 stringify!(xUnpin)
3968 )
3969 );
3970 assert_eq!(
3971 unsafe { ::core::ptr::addr_of!((*ptr).xRekey) as usize - ptr as usize },
3972 72usize,
3973 concat!(
3974 "Offset of field: ",
3975 stringify!(sqlite3_pcache_methods2),
3976 "::",
3977 stringify!(xRekey)
3978 )
3979 );
3980 assert_eq!(
3981 unsafe { ::core::ptr::addr_of!((*ptr).xTruncate) as usize - ptr as usize },
3982 80usize,
3983 concat!(
3984 "Offset of field: ",
3985 stringify!(sqlite3_pcache_methods2),
3986 "::",
3987 stringify!(xTruncate)
3988 )
3989 );
3990 assert_eq!(
3991 unsafe { ::core::ptr::addr_of!((*ptr).xDestroy) as usize - ptr as usize },
3992 88usize,
3993 concat!(
3994 "Offset of field: ",
3995 stringify!(sqlite3_pcache_methods2),
3996 "::",
3997 stringify!(xDestroy)
3998 )
3999 );
4000 assert_eq!(
4001 unsafe { ::core::ptr::addr_of!((*ptr).xShrink) as usize - ptr as usize },
4002 96usize,
4003 concat!(
4004 "Offset of field: ",
4005 stringify!(sqlite3_pcache_methods2),
4006 "::",
4007 stringify!(xShrink)
4008 )
4009 );
4010}
4011#[repr(C)]
4012#[derive(Debug, Copy, Clone)]
4013pub struct sqlite3_pcache_methods {
4014 pub pArg: *mut ::core::ffi::c_void,
4015 pub xInit: ::core::option::Option<
4016 unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void) -> ::core::ffi::c_int,
4017 >,
4018 pub xShutdown: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
4019 pub xCreate: ::core::option::Option<
4020 unsafe extern "C" fn(
4021 szPage: ::core::ffi::c_int,
4022 bPurgeable: ::core::ffi::c_int,
4023 ) -> *mut sqlite3_pcache,
4024 >,
4025 pub xCachesize: ::core::option::Option<
4026 unsafe extern "C" fn(arg1: *mut sqlite3_pcache, nCachesize: ::core::ffi::c_int),
4027 >,
4028 pub xPagecount: ::core::option::Option<
4029 unsafe extern "C" fn(arg1: *mut sqlite3_pcache) -> ::core::ffi::c_int,
4030 >,
4031 pub xFetch: ::core::option::Option<
4032 unsafe extern "C" fn(
4033 arg1: *mut sqlite3_pcache,
4034 key: ::core::ffi::c_uint,
4035 createFlag: ::core::ffi::c_int,
4036 ) -> *mut ::core::ffi::c_void,
4037 >,
4038 pub xUnpin: ::core::option::Option<
4039 unsafe extern "C" fn(
4040 arg1: *mut sqlite3_pcache,
4041 arg2: *mut ::core::ffi::c_void,
4042 discard: ::core::ffi::c_int,
4043 ),
4044 >,
4045 pub xRekey: ::core::option::Option<
4046 unsafe extern "C" fn(
4047 arg1: *mut sqlite3_pcache,
4048 arg2: *mut ::core::ffi::c_void,
4049 oldKey: ::core::ffi::c_uint,
4050 newKey: ::core::ffi::c_uint,
4051 ),
4052 >,
4053 pub xTruncate: ::core::option::Option<
4054 unsafe extern "C" fn(arg1: *mut sqlite3_pcache, iLimit: ::core::ffi::c_uint),
4055 >,
4056 pub xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut sqlite3_pcache)>,
4057}
4058#[test]
4059fn bindgen_test_layout_sqlite3_pcache_methods() {
4060 const UNINIT: ::core::mem::MaybeUninit<sqlite3_pcache_methods> =
4061 ::core::mem::MaybeUninit::uninit();
4062 let ptr = UNINIT.as_ptr();
4063 assert_eq!(
4064 ::core::mem::size_of::<sqlite3_pcache_methods>(),
4065 88usize,
4066 concat!("Size of: ", stringify!(sqlite3_pcache_methods))
4067 );
4068 assert_eq!(
4069 ::core::mem::align_of::<sqlite3_pcache_methods>(),
4070 8usize,
4071 concat!("Alignment of ", stringify!(sqlite3_pcache_methods))
4072 );
4073 assert_eq!(
4074 unsafe { ::core::ptr::addr_of!((*ptr).pArg) as usize - ptr as usize },
4075 0usize,
4076 concat!(
4077 "Offset of field: ",
4078 stringify!(sqlite3_pcache_methods),
4079 "::",
4080 stringify!(pArg)
4081 )
4082 );
4083 assert_eq!(
4084 unsafe { ::core::ptr::addr_of!((*ptr).xInit) as usize - ptr as usize },
4085 8usize,
4086 concat!(
4087 "Offset of field: ",
4088 stringify!(sqlite3_pcache_methods),
4089 "::",
4090 stringify!(xInit)
4091 )
4092 );
4093 assert_eq!(
4094 unsafe { ::core::ptr::addr_of!((*ptr).xShutdown) as usize - ptr as usize },
4095 16usize,
4096 concat!(
4097 "Offset of field: ",
4098 stringify!(sqlite3_pcache_methods),
4099 "::",
4100 stringify!(xShutdown)
4101 )
4102 );
4103 assert_eq!(
4104 unsafe { ::core::ptr::addr_of!((*ptr).xCreate) as usize - ptr as usize },
4105 24usize,
4106 concat!(
4107 "Offset of field: ",
4108 stringify!(sqlite3_pcache_methods),
4109 "::",
4110 stringify!(xCreate)
4111 )
4112 );
4113 assert_eq!(
4114 unsafe { ::core::ptr::addr_of!((*ptr).xCachesize) as usize - ptr as usize },
4115 32usize,
4116 concat!(
4117 "Offset of field: ",
4118 stringify!(sqlite3_pcache_methods),
4119 "::",
4120 stringify!(xCachesize)
4121 )
4122 );
4123 assert_eq!(
4124 unsafe { ::core::ptr::addr_of!((*ptr).xPagecount) as usize - ptr as usize },
4125 40usize,
4126 concat!(
4127 "Offset of field: ",
4128 stringify!(sqlite3_pcache_methods),
4129 "::",
4130 stringify!(xPagecount)
4131 )
4132 );
4133 assert_eq!(
4134 unsafe { ::core::ptr::addr_of!((*ptr).xFetch) as usize - ptr as usize },
4135 48usize,
4136 concat!(
4137 "Offset of field: ",
4138 stringify!(sqlite3_pcache_methods),
4139 "::",
4140 stringify!(xFetch)
4141 )
4142 );
4143 assert_eq!(
4144 unsafe { ::core::ptr::addr_of!((*ptr).xUnpin) as usize - ptr as usize },
4145 56usize,
4146 concat!(
4147 "Offset of field: ",
4148 stringify!(sqlite3_pcache_methods),
4149 "::",
4150 stringify!(xUnpin)
4151 )
4152 );
4153 assert_eq!(
4154 unsafe { ::core::ptr::addr_of!((*ptr).xRekey) as usize - ptr as usize },
4155 64usize,
4156 concat!(
4157 "Offset of field: ",
4158 stringify!(sqlite3_pcache_methods),
4159 "::",
4160 stringify!(xRekey)
4161 )
4162 );
4163 assert_eq!(
4164 unsafe { ::core::ptr::addr_of!((*ptr).xTruncate) as usize - ptr as usize },
4165 72usize,
4166 concat!(
4167 "Offset of field: ",
4168 stringify!(sqlite3_pcache_methods),
4169 "::",
4170 stringify!(xTruncate)
4171 )
4172 );
4173 assert_eq!(
4174 unsafe { ::core::ptr::addr_of!((*ptr).xDestroy) as usize - ptr as usize },
4175 80usize,
4176 concat!(
4177 "Offset of field: ",
4178 stringify!(sqlite3_pcache_methods),
4179 "::",
4180 stringify!(xDestroy)
4181 )
4182 );
4183}
4184#[repr(C)]
4185#[derive(Debug, Copy, Clone)]
4186pub struct sqlite3_backup {
4187 _unused: [u8; 0],
4188}
4189extern "C" {
4190 pub fn sqlite3_backup_init(
4191 pDest: *mut sqlite3,
4192 zDestName: *const ::core::ffi::c_char,
4193 pSource: *mut sqlite3,
4194 zSourceName: *const ::core::ffi::c_char,
4195 ) -> *mut sqlite3_backup;
4196}
4197extern "C" {
4198 pub fn sqlite3_backup_step(
4199 p: *mut sqlite3_backup,
4200 nPage: ::core::ffi::c_int,
4201 ) -> ::core::ffi::c_int;
4202}
4203extern "C" {
4204 pub fn sqlite3_backup_finish(p: *mut sqlite3_backup) -> ::core::ffi::c_int;
4205}
4206extern "C" {
4207 pub fn sqlite3_backup_remaining(p: *mut sqlite3_backup) -> ::core::ffi::c_int;
4208}
4209extern "C" {
4210 pub fn sqlite3_backup_pagecount(p: *mut sqlite3_backup) -> ::core::ffi::c_int;
4211}
4212extern "C" {
4213 pub fn sqlite3_unlock_notify(
4214 pBlocked: *mut sqlite3,
4215 xNotify: ::core::option::Option<
4216 unsafe extern "C" fn(apArg: *mut *mut ::core::ffi::c_void, nArg: ::core::ffi::c_int),
4217 >,
4218 pNotifyArg: *mut ::core::ffi::c_void,
4219 ) -> ::core::ffi::c_int;
4220}
4221extern "C" {
4222 pub fn sqlite3_stricmp(
4223 arg1: *const ::core::ffi::c_char,
4224 arg2: *const ::core::ffi::c_char,
4225 ) -> ::core::ffi::c_int;
4226}
4227extern "C" {
4228 pub fn sqlite3_strnicmp(
4229 arg1: *const ::core::ffi::c_char,
4230 arg2: *const ::core::ffi::c_char,
4231 arg3: ::core::ffi::c_int,
4232 ) -> ::core::ffi::c_int;
4233}
4234extern "C" {
4235 pub fn sqlite3_strglob(
4236 zGlob: *const ::core::ffi::c_char,
4237 zStr: *const ::core::ffi::c_char,
4238 ) -> ::core::ffi::c_int;
4239}
4240extern "C" {
4241 pub fn sqlite3_strlike(
4242 zGlob: *const ::core::ffi::c_char,
4243 zStr: *const ::core::ffi::c_char,
4244 cEsc: ::core::ffi::c_uint,
4245 ) -> ::core::ffi::c_int;
4246}
4247extern "C" {
4248 pub fn sqlite3_log(iErrCode: ::core::ffi::c_int, zFormat: *const ::core::ffi::c_char, ...);
4249}
4250extern "C" {
4251 pub fn sqlite3_wal_hook(
4252 arg1: *mut sqlite3,
4253 arg2: ::core::option::Option<
4254 unsafe extern "C" fn(
4255 arg1: *mut ::core::ffi::c_void,
4256 arg2: *mut sqlite3,
4257 arg3: *const ::core::ffi::c_char,
4258 arg4: ::core::ffi::c_int,
4259 ) -> ::core::ffi::c_int,
4260 >,
4261 arg3: *mut ::core::ffi::c_void,
4262 ) -> *mut ::core::ffi::c_void;
4263}
4264extern "C" {
4265 pub fn sqlite3_wal_autocheckpoint(
4266 db: *mut sqlite3,
4267 N: ::core::ffi::c_int,
4268 ) -> ::core::ffi::c_int;
4269}
4270extern "C" {
4271 pub fn sqlite3_wal_checkpoint(
4272 db: *mut sqlite3,
4273 zDb: *const ::core::ffi::c_char,
4274 ) -> ::core::ffi::c_int;
4275}
4276extern "C" {
4277 pub fn sqlite3_wal_checkpoint_v2(
4278 db: *mut sqlite3,
4279 zDb: *const ::core::ffi::c_char,
4280 eMode: ::core::ffi::c_int,
4281 pnLog: *mut ::core::ffi::c_int,
4282 pnCkpt: *mut ::core::ffi::c_int,
4283 ) -> ::core::ffi::c_int;
4284}
4285extern "C" {
4286 pub fn sqlite3_vtab_config(
4287 arg1: *mut sqlite3,
4288 op: ::core::ffi::c_int,
4289 ...
4290 ) -> ::core::ffi::c_int;
4291}
4292extern "C" {
4293 pub fn sqlite3_vtab_on_conflict(arg1: *mut sqlite3) -> ::core::ffi::c_int;
4294}
4295extern "C" {
4296 pub fn sqlite3_vtab_nochange(arg1: *mut sqlite3_context) -> ::core::ffi::c_int;
4297}
4298extern "C" {
4299 pub fn sqlite3_vtab_collation(
4300 arg1: *mut sqlite3_index_info,
4301 arg2: ::core::ffi::c_int,
4302 ) -> *const ::core::ffi::c_char;
4303}
4304extern "C" {
4305 pub fn sqlite3_vtab_distinct(arg1: *mut sqlite3_index_info) -> ::core::ffi::c_int;
4306}
4307extern "C" {
4308 pub fn sqlite3_vtab_in(
4309 arg1: *mut sqlite3_index_info,
4310 iCons: ::core::ffi::c_int,
4311 bHandle: ::core::ffi::c_int,
4312 ) -> ::core::ffi::c_int;
4313}
4314extern "C" {
4315 pub fn sqlite3_vtab_in_first(
4316 pVal: *mut sqlite3_value,
4317 ppOut: *mut *mut sqlite3_value,
4318 ) -> ::core::ffi::c_int;
4319}
4320extern "C" {
4321 pub fn sqlite3_vtab_in_next(
4322 pVal: *mut sqlite3_value,
4323 ppOut: *mut *mut sqlite3_value,
4324 ) -> ::core::ffi::c_int;
4325}
4326extern "C" {
4327 pub fn sqlite3_vtab_rhs_value(
4328 arg1: *mut sqlite3_index_info,
4329 arg2: ::core::ffi::c_int,
4330 ppVal: *mut *mut sqlite3_value,
4331 ) -> ::core::ffi::c_int;
4332}
4333extern "C" {
4334 pub fn sqlite3_stmt_scanstatus(
4335 pStmt: *mut sqlite3_stmt,
4336 idx: ::core::ffi::c_int,
4337 iScanStatusOp: ::core::ffi::c_int,
4338 pOut: *mut ::core::ffi::c_void,
4339 ) -> ::core::ffi::c_int;
4340}
4341extern "C" {
4342 pub fn sqlite3_stmt_scanstatus_v2(
4343 pStmt: *mut sqlite3_stmt,
4344 idx: ::core::ffi::c_int,
4345 iScanStatusOp: ::core::ffi::c_int,
4346 flags: ::core::ffi::c_int,
4347 pOut: *mut ::core::ffi::c_void,
4348 ) -> ::core::ffi::c_int;
4349}
4350extern "C" {
4351 pub fn sqlite3_stmt_scanstatus_reset(arg1: *mut sqlite3_stmt);
4352}
4353extern "C" {
4354 pub fn sqlite3_db_cacheflush(arg1: *mut sqlite3) -> ::core::ffi::c_int;
4355}
4356extern "C" {
4357 pub fn sqlite3_system_errno(arg1: *mut sqlite3) -> ::core::ffi::c_int;
4358}
4359#[repr(C)]
4360#[derive(Debug, Copy, Clone)]
4361pub struct sqlite3_snapshot {
4362 pub hidden: [::core::ffi::c_uchar; 48usize],
4363}
4364#[test]
4365fn bindgen_test_layout_sqlite3_snapshot() {
4366 const UNINIT: ::core::mem::MaybeUninit<sqlite3_snapshot> = ::core::mem::MaybeUninit::uninit();
4367 let ptr = UNINIT.as_ptr();
4368 assert_eq!(
4369 ::core::mem::size_of::<sqlite3_snapshot>(),
4370 48usize,
4371 concat!("Size of: ", stringify!(sqlite3_snapshot))
4372 );
4373 assert_eq!(
4374 ::core::mem::align_of::<sqlite3_snapshot>(),
4375 1usize,
4376 concat!("Alignment of ", stringify!(sqlite3_snapshot))
4377 );
4378 assert_eq!(
4379 unsafe { ::core::ptr::addr_of!((*ptr).hidden) as usize - ptr as usize },
4380 0usize,
4381 concat!(
4382 "Offset of field: ",
4383 stringify!(sqlite3_snapshot),
4384 "::",
4385 stringify!(hidden)
4386 )
4387 );
4388}
4389extern "C" {
4390 pub fn sqlite3_snapshot_get(
4391 db: *mut sqlite3,
4392 zSchema: *const ::core::ffi::c_char,
4393 ppSnapshot: *mut *mut sqlite3_snapshot,
4394 ) -> ::core::ffi::c_int;
4395}
4396extern "C" {
4397 pub fn sqlite3_snapshot_open(
4398 db: *mut sqlite3,
4399 zSchema: *const ::core::ffi::c_char,
4400 pSnapshot: *mut sqlite3_snapshot,
4401 ) -> ::core::ffi::c_int;
4402}
4403extern "C" {
4404 pub fn sqlite3_snapshot_free(arg1: *mut sqlite3_snapshot);
4405}
4406extern "C" {
4407 pub fn sqlite3_snapshot_cmp(
4408 p1: *mut sqlite3_snapshot,
4409 p2: *mut sqlite3_snapshot,
4410 ) -> ::core::ffi::c_int;
4411}
4412extern "C" {
4413 pub fn sqlite3_snapshot_recover(
4414 db: *mut sqlite3,
4415 zDb: *const ::core::ffi::c_char,
4416 ) -> ::core::ffi::c_int;
4417}
4418extern "C" {
4419 pub fn sqlite3_serialize(
4420 db: *mut sqlite3,
4421 zSchema: *const ::core::ffi::c_char,
4422 piSize: *mut sqlite3_int64,
4423 mFlags: ::core::ffi::c_uint,
4424 ) -> *mut ::core::ffi::c_uchar;
4425}
4426extern "C" {
4427 pub fn sqlite3_deserialize(
4428 db: *mut sqlite3,
4429 zSchema: *const ::core::ffi::c_char,
4430 pData: *mut ::core::ffi::c_uchar,
4431 szDb: sqlite3_int64,
4432 szBuf: sqlite3_int64,
4433 mFlags: ::core::ffi::c_uint,
4434 ) -> ::core::ffi::c_int;
4435}
4436pub type sqlite3_rtree_dbl = f64;
4437extern "C" {
4438 pub fn sqlite3_rtree_geometry_callback(
4439 db: *mut sqlite3,
4440 zGeom: *const ::core::ffi::c_char,
4441 xGeom: ::core::option::Option<
4442 unsafe extern "C" fn(
4443 arg1: *mut sqlite3_rtree_geometry,
4444 arg2: ::core::ffi::c_int,
4445 arg3: *mut sqlite3_rtree_dbl,
4446 arg4: *mut ::core::ffi::c_int,
4447 ) -> ::core::ffi::c_int,
4448 >,
4449 pContext: *mut ::core::ffi::c_void,
4450 ) -> ::core::ffi::c_int;
4451}
4452#[repr(C)]
4453#[derive(Debug, Copy, Clone)]
4454pub struct sqlite3_rtree_geometry {
4455 pub pContext: *mut ::core::ffi::c_void,
4456 pub nParam: ::core::ffi::c_int,
4457 pub aParam: *mut sqlite3_rtree_dbl,
4458 pub pUser: *mut ::core::ffi::c_void,
4459 pub xDelUser: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
4460}
4461#[test]
4462fn bindgen_test_layout_sqlite3_rtree_geometry() {
4463 const UNINIT: ::core::mem::MaybeUninit<sqlite3_rtree_geometry> =
4464 ::core::mem::MaybeUninit::uninit();
4465 let ptr = UNINIT.as_ptr();
4466 assert_eq!(
4467 ::core::mem::size_of::<sqlite3_rtree_geometry>(),
4468 40usize,
4469 concat!("Size of: ", stringify!(sqlite3_rtree_geometry))
4470 );
4471 assert_eq!(
4472 ::core::mem::align_of::<sqlite3_rtree_geometry>(),
4473 8usize,
4474 concat!("Alignment of ", stringify!(sqlite3_rtree_geometry))
4475 );
4476 assert_eq!(
4477 unsafe { ::core::ptr::addr_of!((*ptr).pContext) as usize - ptr as usize },
4478 0usize,
4479 concat!(
4480 "Offset of field: ",
4481 stringify!(sqlite3_rtree_geometry),
4482 "::",
4483 stringify!(pContext)
4484 )
4485 );
4486 assert_eq!(
4487 unsafe { ::core::ptr::addr_of!((*ptr).nParam) as usize - ptr as usize },
4488 8usize,
4489 concat!(
4490 "Offset of field: ",
4491 stringify!(sqlite3_rtree_geometry),
4492 "::",
4493 stringify!(nParam)
4494 )
4495 );
4496 assert_eq!(
4497 unsafe { ::core::ptr::addr_of!((*ptr).aParam) as usize - ptr as usize },
4498 16usize,
4499 concat!(
4500 "Offset of field: ",
4501 stringify!(sqlite3_rtree_geometry),
4502 "::",
4503 stringify!(aParam)
4504 )
4505 );
4506 assert_eq!(
4507 unsafe { ::core::ptr::addr_of!((*ptr).pUser) as usize - ptr as usize },
4508 24usize,
4509 concat!(
4510 "Offset of field: ",
4511 stringify!(sqlite3_rtree_geometry),
4512 "::",
4513 stringify!(pUser)
4514 )
4515 );
4516 assert_eq!(
4517 unsafe { ::core::ptr::addr_of!((*ptr).xDelUser) as usize - ptr as usize },
4518 32usize,
4519 concat!(
4520 "Offset of field: ",
4521 stringify!(sqlite3_rtree_geometry),
4522 "::",
4523 stringify!(xDelUser)
4524 )
4525 );
4526}
4527extern "C" {
4528 pub fn sqlite3_rtree_query_callback(
4529 db: *mut sqlite3,
4530 zQueryFunc: *const ::core::ffi::c_char,
4531 xQueryFunc: ::core::option::Option<
4532 unsafe extern "C" fn(arg1: *mut sqlite3_rtree_query_info) -> ::core::ffi::c_int,
4533 >,
4534 pContext: *mut ::core::ffi::c_void,
4535 xDestructor: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
4536 ) -> ::core::ffi::c_int;
4537}
4538#[repr(C)]
4539#[derive(Debug, Copy, Clone)]
4540pub struct sqlite3_rtree_query_info {
4541 pub pContext: *mut ::core::ffi::c_void,
4542 pub nParam: ::core::ffi::c_int,
4543 pub aParam: *mut sqlite3_rtree_dbl,
4544 pub pUser: *mut ::core::ffi::c_void,
4545 pub xDelUser: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
4546 pub aCoord: *mut sqlite3_rtree_dbl,
4547 pub anQueue: *mut ::core::ffi::c_uint,
4548 pub nCoord: ::core::ffi::c_int,
4549 pub iLevel: ::core::ffi::c_int,
4550 pub mxLevel: ::core::ffi::c_int,
4551 pub iRowid: sqlite3_int64,
4552 pub rParentScore: sqlite3_rtree_dbl,
4553 pub eParentWithin: ::core::ffi::c_int,
4554 pub eWithin: ::core::ffi::c_int,
4555 pub rScore: sqlite3_rtree_dbl,
4556 pub apSqlParam: *mut *mut sqlite3_value,
4557}
4558#[test]
4559fn bindgen_test_layout_sqlite3_rtree_query_info() {
4560 const UNINIT: ::core::mem::MaybeUninit<sqlite3_rtree_query_info> =
4561 ::core::mem::MaybeUninit::uninit();
4562 let ptr = UNINIT.as_ptr();
4563 assert_eq!(
4564 ::core::mem::size_of::<sqlite3_rtree_query_info>(),
4565 112usize,
4566 concat!("Size of: ", stringify!(sqlite3_rtree_query_info))
4567 );
4568 assert_eq!(
4569 ::core::mem::align_of::<sqlite3_rtree_query_info>(),
4570 8usize,
4571 concat!("Alignment of ", stringify!(sqlite3_rtree_query_info))
4572 );
4573 assert_eq!(
4574 unsafe { ::core::ptr::addr_of!((*ptr).pContext) as usize - ptr as usize },
4575 0usize,
4576 concat!(
4577 "Offset of field: ",
4578 stringify!(sqlite3_rtree_query_info),
4579 "::",
4580 stringify!(pContext)
4581 )
4582 );
4583 assert_eq!(
4584 unsafe { ::core::ptr::addr_of!((*ptr).nParam) as usize - ptr as usize },
4585 8usize,
4586 concat!(
4587 "Offset of field: ",
4588 stringify!(sqlite3_rtree_query_info),
4589 "::",
4590 stringify!(nParam)
4591 )
4592 );
4593 assert_eq!(
4594 unsafe { ::core::ptr::addr_of!((*ptr).aParam) as usize - ptr as usize },
4595 16usize,
4596 concat!(
4597 "Offset of field: ",
4598 stringify!(sqlite3_rtree_query_info),
4599 "::",
4600 stringify!(aParam)
4601 )
4602 );
4603 assert_eq!(
4604 unsafe { ::core::ptr::addr_of!((*ptr).pUser) as usize - ptr as usize },
4605 24usize,
4606 concat!(
4607 "Offset of field: ",
4608 stringify!(sqlite3_rtree_query_info),
4609 "::",
4610 stringify!(pUser)
4611 )
4612 );
4613 assert_eq!(
4614 unsafe { ::core::ptr::addr_of!((*ptr).xDelUser) as usize - ptr as usize },
4615 32usize,
4616 concat!(
4617 "Offset of field: ",
4618 stringify!(sqlite3_rtree_query_info),
4619 "::",
4620 stringify!(xDelUser)
4621 )
4622 );
4623 assert_eq!(
4624 unsafe { ::core::ptr::addr_of!((*ptr).aCoord) as usize - ptr as usize },
4625 40usize,
4626 concat!(
4627 "Offset of field: ",
4628 stringify!(sqlite3_rtree_query_info),
4629 "::",
4630 stringify!(aCoord)
4631 )
4632 );
4633 assert_eq!(
4634 unsafe { ::core::ptr::addr_of!((*ptr).anQueue) as usize - ptr as usize },
4635 48usize,
4636 concat!(
4637 "Offset of field: ",
4638 stringify!(sqlite3_rtree_query_info),
4639 "::",
4640 stringify!(anQueue)
4641 )
4642 );
4643 assert_eq!(
4644 unsafe { ::core::ptr::addr_of!((*ptr).nCoord) as usize - ptr as usize },
4645 56usize,
4646 concat!(
4647 "Offset of field: ",
4648 stringify!(sqlite3_rtree_query_info),
4649 "::",
4650 stringify!(nCoord)
4651 )
4652 );
4653 assert_eq!(
4654 unsafe { ::core::ptr::addr_of!((*ptr).iLevel) as usize - ptr as usize },
4655 60usize,
4656 concat!(
4657 "Offset of field: ",
4658 stringify!(sqlite3_rtree_query_info),
4659 "::",
4660 stringify!(iLevel)
4661 )
4662 );
4663 assert_eq!(
4664 unsafe { ::core::ptr::addr_of!((*ptr).mxLevel) as usize - ptr as usize },
4665 64usize,
4666 concat!(
4667 "Offset of field: ",
4668 stringify!(sqlite3_rtree_query_info),
4669 "::",
4670 stringify!(mxLevel)
4671 )
4672 );
4673 assert_eq!(
4674 unsafe { ::core::ptr::addr_of!((*ptr).iRowid) as usize - ptr as usize },
4675 72usize,
4676 concat!(
4677 "Offset of field: ",
4678 stringify!(sqlite3_rtree_query_info),
4679 "::",
4680 stringify!(iRowid)
4681 )
4682 );
4683 assert_eq!(
4684 unsafe { ::core::ptr::addr_of!((*ptr).rParentScore) as usize - ptr as usize },
4685 80usize,
4686 concat!(
4687 "Offset of field: ",
4688 stringify!(sqlite3_rtree_query_info),
4689 "::",
4690 stringify!(rParentScore)
4691 )
4692 );
4693 assert_eq!(
4694 unsafe { ::core::ptr::addr_of!((*ptr).eParentWithin) as usize - ptr as usize },
4695 88usize,
4696 concat!(
4697 "Offset of field: ",
4698 stringify!(sqlite3_rtree_query_info),
4699 "::",
4700 stringify!(eParentWithin)
4701 )
4702 );
4703 assert_eq!(
4704 unsafe { ::core::ptr::addr_of!((*ptr).eWithin) as usize - ptr as usize },
4705 92usize,
4706 concat!(
4707 "Offset of field: ",
4708 stringify!(sqlite3_rtree_query_info),
4709 "::",
4710 stringify!(eWithin)
4711 )
4712 );
4713 assert_eq!(
4714 unsafe { ::core::ptr::addr_of!((*ptr).rScore) as usize - ptr as usize },
4715 96usize,
4716 concat!(
4717 "Offset of field: ",
4718 stringify!(sqlite3_rtree_query_info),
4719 "::",
4720 stringify!(rScore)
4721 )
4722 );
4723 assert_eq!(
4724 unsafe { ::core::ptr::addr_of!((*ptr).apSqlParam) as usize - ptr as usize },
4725 104usize,
4726 concat!(
4727 "Offset of field: ",
4728 stringify!(sqlite3_rtree_query_info),
4729 "::",
4730 stringify!(apSqlParam)
4731 )
4732 );
4733}
4734#[repr(C)]
4735#[derive(Debug, Copy, Clone)]
4736pub struct Fts5Context {
4737 _unused: [u8; 0],
4738}
4739pub type fts5_extension_function = ::core::option::Option<
4740 unsafe extern "C" fn(
4741 pApi: *const Fts5ExtensionApi,
4742 pFts: *mut Fts5Context,
4743 pCtx: *mut sqlite3_context,
4744 nVal: ::core::ffi::c_int,
4745 apVal: *mut *mut sqlite3_value,
4746 ),
4747>;
4748#[repr(C)]
4749#[derive(Debug, Copy, Clone)]
4750pub struct Fts5PhraseIter {
4751 pub a: *const ::core::ffi::c_uchar,
4752 pub b: *const ::core::ffi::c_uchar,
4753}
4754#[test]
4755fn bindgen_test_layout_Fts5PhraseIter() {
4756 const UNINIT: ::core::mem::MaybeUninit<Fts5PhraseIter> = ::core::mem::MaybeUninit::uninit();
4757 let ptr = UNINIT.as_ptr();
4758 assert_eq!(
4759 ::core::mem::size_of::<Fts5PhraseIter>(),
4760 16usize,
4761 concat!("Size of: ", stringify!(Fts5PhraseIter))
4762 );
4763 assert_eq!(
4764 ::core::mem::align_of::<Fts5PhraseIter>(),
4765 8usize,
4766 concat!("Alignment of ", stringify!(Fts5PhraseIter))
4767 );
4768 assert_eq!(
4769 unsafe { ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize },
4770 0usize,
4771 concat!(
4772 "Offset of field: ",
4773 stringify!(Fts5PhraseIter),
4774 "::",
4775 stringify!(a)
4776 )
4777 );
4778 assert_eq!(
4779 unsafe { ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize },
4780 8usize,
4781 concat!(
4782 "Offset of field: ",
4783 stringify!(Fts5PhraseIter),
4784 "::",
4785 stringify!(b)
4786 )
4787 );
4788}
4789#[repr(C)]
4790#[derive(Debug, Copy, Clone)]
4791pub struct Fts5ExtensionApi {
4792 pub iVersion: ::core::ffi::c_int,
4793 pub xUserData: ::core::option::Option<
4794 unsafe extern "C" fn(arg1: *mut Fts5Context) -> *mut ::core::ffi::c_void,
4795 >,
4796 pub xColumnCount:
4797 ::core::option::Option<unsafe extern "C" fn(arg1: *mut Fts5Context) -> ::core::ffi::c_int>,
4798 pub xRowCount: ::core::option::Option<
4799 unsafe extern "C" fn(
4800 arg1: *mut Fts5Context,
4801 pnRow: *mut sqlite3_int64,
4802 ) -> ::core::ffi::c_int,
4803 >,
4804 pub xColumnTotalSize: ::core::option::Option<
4805 unsafe extern "C" fn(
4806 arg1: *mut Fts5Context,
4807 iCol: ::core::ffi::c_int,
4808 pnToken: *mut sqlite3_int64,
4809 ) -> ::core::ffi::c_int,
4810 >,
4811 pub xTokenize: ::core::option::Option<
4812 unsafe extern "C" fn(
4813 arg1: *mut Fts5Context,
4814 pText: *const ::core::ffi::c_char,
4815 nText: ::core::ffi::c_int,
4816 pCtx: *mut ::core::ffi::c_void,
4817 xToken: ::core::option::Option<
4818 unsafe extern "C" fn(
4819 arg1: *mut ::core::ffi::c_void,
4820 arg2: ::core::ffi::c_int,
4821 arg3: *const ::core::ffi::c_char,
4822 arg4: ::core::ffi::c_int,
4823 arg5: ::core::ffi::c_int,
4824 arg6: ::core::ffi::c_int,
4825 ) -> ::core::ffi::c_int,
4826 >,
4827 ) -> ::core::ffi::c_int,
4828 >,
4829 pub xPhraseCount:
4830 ::core::option::Option<unsafe extern "C" fn(arg1: *mut Fts5Context) -> ::core::ffi::c_int>,
4831 pub xPhraseSize: ::core::option::Option<
4832 unsafe extern "C" fn(
4833 arg1: *mut Fts5Context,
4834 iPhrase: ::core::ffi::c_int,
4835 ) -> ::core::ffi::c_int,
4836 >,
4837 pub xInstCount: ::core::option::Option<
4838 unsafe extern "C" fn(
4839 arg1: *mut Fts5Context,
4840 pnInst: *mut ::core::ffi::c_int,
4841 ) -> ::core::ffi::c_int,
4842 >,
4843 pub xInst: ::core::option::Option<
4844 unsafe extern "C" fn(
4845 arg1: *mut Fts5Context,
4846 iIdx: ::core::ffi::c_int,
4847 piPhrase: *mut ::core::ffi::c_int,
4848 piCol: *mut ::core::ffi::c_int,
4849 piOff: *mut ::core::ffi::c_int,
4850 ) -> ::core::ffi::c_int,
4851 >,
4852 pub xRowid:
4853 ::core::option::Option<unsafe extern "C" fn(arg1: *mut Fts5Context) -> sqlite3_int64>,
4854 pub xColumnText: ::core::option::Option<
4855 unsafe extern "C" fn(
4856 arg1: *mut Fts5Context,
4857 iCol: ::core::ffi::c_int,
4858 pz: *mut *const ::core::ffi::c_char,
4859 pn: *mut ::core::ffi::c_int,
4860 ) -> ::core::ffi::c_int,
4861 >,
4862 pub xColumnSize: ::core::option::Option<
4863 unsafe extern "C" fn(
4864 arg1: *mut Fts5Context,
4865 iCol: ::core::ffi::c_int,
4866 pnToken: *mut ::core::ffi::c_int,
4867 ) -> ::core::ffi::c_int,
4868 >,
4869 pub xQueryPhrase: ::core::option::Option<
4870 unsafe extern "C" fn(
4871 arg1: *mut Fts5Context,
4872 iPhrase: ::core::ffi::c_int,
4873 pUserData: *mut ::core::ffi::c_void,
4874 arg2: ::core::option::Option<
4875 unsafe extern "C" fn(
4876 arg1: *const Fts5ExtensionApi,
4877 arg2: *mut Fts5Context,
4878 arg3: *mut ::core::ffi::c_void,
4879 ) -> ::core::ffi::c_int,
4880 >,
4881 ) -> ::core::ffi::c_int,
4882 >,
4883 pub xSetAuxdata: ::core::option::Option<
4884 unsafe extern "C" fn(
4885 arg1: *mut Fts5Context,
4886 pAux: *mut ::core::ffi::c_void,
4887 xDelete: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
4888 ) -> ::core::ffi::c_int,
4889 >,
4890 pub xGetAuxdata: ::core::option::Option<
4891 unsafe extern "C" fn(
4892 arg1: *mut Fts5Context,
4893 bClear: ::core::ffi::c_int,
4894 ) -> *mut ::core::ffi::c_void,
4895 >,
4896 pub xPhraseFirst: ::core::option::Option<
4897 unsafe extern "C" fn(
4898 arg1: *mut Fts5Context,
4899 iPhrase: ::core::ffi::c_int,
4900 arg2: *mut Fts5PhraseIter,
4901 arg3: *mut ::core::ffi::c_int,
4902 arg4: *mut ::core::ffi::c_int,
4903 ) -> ::core::ffi::c_int,
4904 >,
4905 pub xPhraseNext: ::core::option::Option<
4906 unsafe extern "C" fn(
4907 arg1: *mut Fts5Context,
4908 arg2: *mut Fts5PhraseIter,
4909 piCol: *mut ::core::ffi::c_int,
4910 piOff: *mut ::core::ffi::c_int,
4911 ),
4912 >,
4913 pub xPhraseFirstColumn: ::core::option::Option<
4914 unsafe extern "C" fn(
4915 arg1: *mut Fts5Context,
4916 iPhrase: ::core::ffi::c_int,
4917 arg2: *mut Fts5PhraseIter,
4918 arg3: *mut ::core::ffi::c_int,
4919 ) -> ::core::ffi::c_int,
4920 >,
4921 pub xPhraseNextColumn: ::core::option::Option<
4922 unsafe extern "C" fn(
4923 arg1: *mut Fts5Context,
4924 arg2: *mut Fts5PhraseIter,
4925 piCol: *mut ::core::ffi::c_int,
4926 ),
4927 >,
4928 pub xQueryToken: ::core::option::Option<
4929 unsafe extern "C" fn(
4930 arg1: *mut Fts5Context,
4931 iPhrase: ::core::ffi::c_int,
4932 iToken: ::core::ffi::c_int,
4933 ppToken: *mut *const ::core::ffi::c_char,
4934 pnToken: *mut ::core::ffi::c_int,
4935 ) -> ::core::ffi::c_int,
4936 >,
4937 pub xInstToken: ::core::option::Option<
4938 unsafe extern "C" fn(
4939 arg1: *mut Fts5Context,
4940 iIdx: ::core::ffi::c_int,
4941 iToken: ::core::ffi::c_int,
4942 arg2: *mut *const ::core::ffi::c_char,
4943 arg3: *mut ::core::ffi::c_int,
4944 ) -> ::core::ffi::c_int,
4945 >,
4946}
4947#[test]
4948fn bindgen_test_layout_Fts5ExtensionApi() {
4949 const UNINIT: ::core::mem::MaybeUninit<Fts5ExtensionApi> = ::core::mem::MaybeUninit::uninit();
4950 let ptr = UNINIT.as_ptr();
4951 assert_eq!(
4952 ::core::mem::size_of::<Fts5ExtensionApi>(),
4953 176usize,
4954 concat!("Size of: ", stringify!(Fts5ExtensionApi))
4955 );
4956 assert_eq!(
4957 ::core::mem::align_of::<Fts5ExtensionApi>(),
4958 8usize,
4959 concat!("Alignment of ", stringify!(Fts5ExtensionApi))
4960 );
4961 assert_eq!(
4962 unsafe { ::core::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize },
4963 0usize,
4964 concat!(
4965 "Offset of field: ",
4966 stringify!(Fts5ExtensionApi),
4967 "::",
4968 stringify!(iVersion)
4969 )
4970 );
4971 assert_eq!(
4972 unsafe { ::core::ptr::addr_of!((*ptr).xUserData) as usize - ptr as usize },
4973 8usize,
4974 concat!(
4975 "Offset of field: ",
4976 stringify!(Fts5ExtensionApi),
4977 "::",
4978 stringify!(xUserData)
4979 )
4980 );
4981 assert_eq!(
4982 unsafe { ::core::ptr::addr_of!((*ptr).xColumnCount) as usize - ptr as usize },
4983 16usize,
4984 concat!(
4985 "Offset of field: ",
4986 stringify!(Fts5ExtensionApi),
4987 "::",
4988 stringify!(xColumnCount)
4989 )
4990 );
4991 assert_eq!(
4992 unsafe { ::core::ptr::addr_of!((*ptr).xRowCount) as usize - ptr as usize },
4993 24usize,
4994 concat!(
4995 "Offset of field: ",
4996 stringify!(Fts5ExtensionApi),
4997 "::",
4998 stringify!(xRowCount)
4999 )
5000 );
5001 assert_eq!(
5002 unsafe { ::core::ptr::addr_of!((*ptr).xColumnTotalSize) as usize - ptr as usize },
5003 32usize,
5004 concat!(
5005 "Offset of field: ",
5006 stringify!(Fts5ExtensionApi),
5007 "::",
5008 stringify!(xColumnTotalSize)
5009 )
5010 );
5011 assert_eq!(
5012 unsafe { ::core::ptr::addr_of!((*ptr).xTokenize) as usize - ptr as usize },
5013 40usize,
5014 concat!(
5015 "Offset of field: ",
5016 stringify!(Fts5ExtensionApi),
5017 "::",
5018 stringify!(xTokenize)
5019 )
5020 );
5021 assert_eq!(
5022 unsafe { ::core::ptr::addr_of!((*ptr).xPhraseCount) as usize - ptr as usize },
5023 48usize,
5024 concat!(
5025 "Offset of field: ",
5026 stringify!(Fts5ExtensionApi),
5027 "::",
5028 stringify!(xPhraseCount)
5029 )
5030 );
5031 assert_eq!(
5032 unsafe { ::core::ptr::addr_of!((*ptr).xPhraseSize) as usize - ptr as usize },
5033 56usize,
5034 concat!(
5035 "Offset of field: ",
5036 stringify!(Fts5ExtensionApi),
5037 "::",
5038 stringify!(xPhraseSize)
5039 )
5040 );
5041 assert_eq!(
5042 unsafe { ::core::ptr::addr_of!((*ptr).xInstCount) as usize - ptr as usize },
5043 64usize,
5044 concat!(
5045 "Offset of field: ",
5046 stringify!(Fts5ExtensionApi),
5047 "::",
5048 stringify!(xInstCount)
5049 )
5050 );
5051 assert_eq!(
5052 unsafe { ::core::ptr::addr_of!((*ptr).xInst) as usize - ptr as usize },
5053 72usize,
5054 concat!(
5055 "Offset of field: ",
5056 stringify!(Fts5ExtensionApi),
5057 "::",
5058 stringify!(xInst)
5059 )
5060 );
5061 assert_eq!(
5062 unsafe { ::core::ptr::addr_of!((*ptr).xRowid) as usize - ptr as usize },
5063 80usize,
5064 concat!(
5065 "Offset of field: ",
5066 stringify!(Fts5ExtensionApi),
5067 "::",
5068 stringify!(xRowid)
5069 )
5070 );
5071 assert_eq!(
5072 unsafe { ::core::ptr::addr_of!((*ptr).xColumnText) as usize - ptr as usize },
5073 88usize,
5074 concat!(
5075 "Offset of field: ",
5076 stringify!(Fts5ExtensionApi),
5077 "::",
5078 stringify!(xColumnText)
5079 )
5080 );
5081 assert_eq!(
5082 unsafe { ::core::ptr::addr_of!((*ptr).xColumnSize) as usize - ptr as usize },
5083 96usize,
5084 concat!(
5085 "Offset of field: ",
5086 stringify!(Fts5ExtensionApi),
5087 "::",
5088 stringify!(xColumnSize)
5089 )
5090 );
5091 assert_eq!(
5092 unsafe { ::core::ptr::addr_of!((*ptr).xQueryPhrase) as usize - ptr as usize },
5093 104usize,
5094 concat!(
5095 "Offset of field: ",
5096 stringify!(Fts5ExtensionApi),
5097 "::",
5098 stringify!(xQueryPhrase)
5099 )
5100 );
5101 assert_eq!(
5102 unsafe { ::core::ptr::addr_of!((*ptr).xSetAuxdata) as usize - ptr as usize },
5103 112usize,
5104 concat!(
5105 "Offset of field: ",
5106 stringify!(Fts5ExtensionApi),
5107 "::",
5108 stringify!(xSetAuxdata)
5109 )
5110 );
5111 assert_eq!(
5112 unsafe { ::core::ptr::addr_of!((*ptr).xGetAuxdata) as usize - ptr as usize },
5113 120usize,
5114 concat!(
5115 "Offset of field: ",
5116 stringify!(Fts5ExtensionApi),
5117 "::",
5118 stringify!(xGetAuxdata)
5119 )
5120 );
5121 assert_eq!(
5122 unsafe { ::core::ptr::addr_of!((*ptr).xPhraseFirst) as usize - ptr as usize },
5123 128usize,
5124 concat!(
5125 "Offset of field: ",
5126 stringify!(Fts5ExtensionApi),
5127 "::",
5128 stringify!(xPhraseFirst)
5129 )
5130 );
5131 assert_eq!(
5132 unsafe { ::core::ptr::addr_of!((*ptr).xPhraseNext) as usize - ptr as usize },
5133 136usize,
5134 concat!(
5135 "Offset of field: ",
5136 stringify!(Fts5ExtensionApi),
5137 "::",
5138 stringify!(xPhraseNext)
5139 )
5140 );
5141 assert_eq!(
5142 unsafe { ::core::ptr::addr_of!((*ptr).xPhraseFirstColumn) as usize - ptr as usize },
5143 144usize,
5144 concat!(
5145 "Offset of field: ",
5146 stringify!(Fts5ExtensionApi),
5147 "::",
5148 stringify!(xPhraseFirstColumn)
5149 )
5150 );
5151 assert_eq!(
5152 unsafe { ::core::ptr::addr_of!((*ptr).xPhraseNextColumn) as usize - ptr as usize },
5153 152usize,
5154 concat!(
5155 "Offset of field: ",
5156 stringify!(Fts5ExtensionApi),
5157 "::",
5158 stringify!(xPhraseNextColumn)
5159 )
5160 );
5161 assert_eq!(
5162 unsafe { ::core::ptr::addr_of!((*ptr).xQueryToken) as usize - ptr as usize },
5163 160usize,
5164 concat!(
5165 "Offset of field: ",
5166 stringify!(Fts5ExtensionApi),
5167 "::",
5168 stringify!(xQueryToken)
5169 )
5170 );
5171 assert_eq!(
5172 unsafe { ::core::ptr::addr_of!((*ptr).xInstToken) as usize - ptr as usize },
5173 168usize,
5174 concat!(
5175 "Offset of field: ",
5176 stringify!(Fts5ExtensionApi),
5177 "::",
5178 stringify!(xInstToken)
5179 )
5180 );
5181}
5182#[repr(C)]
5183#[derive(Debug, Copy, Clone)]
5184pub struct Fts5Tokenizer {
5185 _unused: [u8; 0],
5186}
5187#[repr(C)]
5188#[derive(Debug, Copy, Clone)]
5189pub struct fts5_tokenizer {
5190 pub xCreate: ::core::option::Option<
5191 unsafe extern "C" fn(
5192 arg1: *mut ::core::ffi::c_void,
5193 azArg: *mut *const ::core::ffi::c_char,
5194 nArg: ::core::ffi::c_int,
5195 ppOut: *mut *mut Fts5Tokenizer,
5196 ) -> ::core::ffi::c_int,
5197 >,
5198 pub xDelete: ::core::option::Option<unsafe extern "C" fn(arg1: *mut Fts5Tokenizer)>,
5199 pub xTokenize: ::core::option::Option<
5200 unsafe extern "C" fn(
5201 arg1: *mut Fts5Tokenizer,
5202 pCtx: *mut ::core::ffi::c_void,
5203 flags: ::core::ffi::c_int,
5204 pText: *const ::core::ffi::c_char,
5205 nText: ::core::ffi::c_int,
5206 xToken: ::core::option::Option<
5207 unsafe extern "C" fn(
5208 pCtx: *mut ::core::ffi::c_void,
5209 tflags: ::core::ffi::c_int,
5210 pToken: *const ::core::ffi::c_char,
5211 nToken: ::core::ffi::c_int,
5212 iStart: ::core::ffi::c_int,
5213 iEnd: ::core::ffi::c_int,
5214 ) -> ::core::ffi::c_int,
5215 >,
5216 ) -> ::core::ffi::c_int,
5217 >,
5218}
5219#[test]
5220fn bindgen_test_layout_fts5_tokenizer() {
5221 const UNINIT: ::core::mem::MaybeUninit<fts5_tokenizer> = ::core::mem::MaybeUninit::uninit();
5222 let ptr = UNINIT.as_ptr();
5223 assert_eq!(
5224 ::core::mem::size_of::<fts5_tokenizer>(),
5225 24usize,
5226 concat!("Size of: ", stringify!(fts5_tokenizer))
5227 );
5228 assert_eq!(
5229 ::core::mem::align_of::<fts5_tokenizer>(),
5230 8usize,
5231 concat!("Alignment of ", stringify!(fts5_tokenizer))
5232 );
5233 assert_eq!(
5234 unsafe { ::core::ptr::addr_of!((*ptr).xCreate) as usize - ptr as usize },
5235 0usize,
5236 concat!(
5237 "Offset of field: ",
5238 stringify!(fts5_tokenizer),
5239 "::",
5240 stringify!(xCreate)
5241 )
5242 );
5243 assert_eq!(
5244 unsafe { ::core::ptr::addr_of!((*ptr).xDelete) as usize - ptr as usize },
5245 8usize,
5246 concat!(
5247 "Offset of field: ",
5248 stringify!(fts5_tokenizer),
5249 "::",
5250 stringify!(xDelete)
5251 )
5252 );
5253 assert_eq!(
5254 unsafe { ::core::ptr::addr_of!((*ptr).xTokenize) as usize - ptr as usize },
5255 16usize,
5256 concat!(
5257 "Offset of field: ",
5258 stringify!(fts5_tokenizer),
5259 "::",
5260 stringify!(xTokenize)
5261 )
5262 );
5263}
5264#[repr(C)]
5265#[derive(Debug, Copy, Clone)]
5266pub struct fts5_api {
5267 pub iVersion: ::core::ffi::c_int,
5268 pub xCreateTokenizer: ::core::option::Option<
5269 unsafe extern "C" fn(
5270 pApi: *mut fts5_api,
5271 zName: *const ::core::ffi::c_char,
5272 pUserData: *mut ::core::ffi::c_void,
5273 pTokenizer: *mut fts5_tokenizer,
5274 xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
5275 ) -> ::core::ffi::c_int,
5276 >,
5277 pub xFindTokenizer: ::core::option::Option<
5278 unsafe extern "C" fn(
5279 pApi: *mut fts5_api,
5280 zName: *const ::core::ffi::c_char,
5281 ppUserData: *mut *mut ::core::ffi::c_void,
5282 pTokenizer: *mut fts5_tokenizer,
5283 ) -> ::core::ffi::c_int,
5284 >,
5285 pub xCreateFunction: ::core::option::Option<
5286 unsafe extern "C" fn(
5287 pApi: *mut fts5_api,
5288 zName: *const ::core::ffi::c_char,
5289 pUserData: *mut ::core::ffi::c_void,
5290 xFunction: fts5_extension_function,
5291 xDestroy: ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>,
5292 ) -> ::core::ffi::c_int,
5293 >,
5294}
5295#[test]
5296fn bindgen_test_layout_fts5_api() {
5297 const UNINIT: ::core::mem::MaybeUninit<fts5_api> = ::core::mem::MaybeUninit::uninit();
5298 let ptr = UNINIT.as_ptr();
5299 assert_eq!(
5300 ::core::mem::size_of::<fts5_api>(),
5301 32usize,
5302 concat!("Size of: ", stringify!(fts5_api))
5303 );
5304 assert_eq!(
5305 ::core::mem::align_of::<fts5_api>(),
5306 8usize,
5307 concat!("Alignment of ", stringify!(fts5_api))
5308 );
5309 assert_eq!(
5310 unsafe { ::core::ptr::addr_of!((*ptr).iVersion) as usize - ptr as usize },
5311 0usize,
5312 concat!(
5313 "Offset of field: ",
5314 stringify!(fts5_api),
5315 "::",
5316 stringify!(iVersion)
5317 )
5318 );
5319 assert_eq!(
5320 unsafe { ::core::ptr::addr_of!((*ptr).xCreateTokenizer) as usize - ptr as usize },
5321 8usize,
5322 concat!(
5323 "Offset of field: ",
5324 stringify!(fts5_api),
5325 "::",
5326 stringify!(xCreateTokenizer)
5327 )
5328 );
5329 assert_eq!(
5330 unsafe { ::core::ptr::addr_of!((*ptr).xFindTokenizer) as usize - ptr as usize },
5331 16usize,
5332 concat!(
5333 "Offset of field: ",
5334 stringify!(fts5_api),
5335 "::",
5336 stringify!(xFindTokenizer)
5337 )
5338 );
5339 assert_eq!(
5340 unsafe { ::core::ptr::addr_of!((*ptr).xCreateFunction) as usize - ptr as usize },
5341 24usize,
5342 concat!(
5343 "Offset of field: ",
5344 stringify!(fts5_api),
5345 "::",
5346 stringify!(xCreateFunction)
5347 )
5348 );
5349}
5350pub type __builtin_va_list = [__va_list_tag; 1usize];
5351#[repr(C)]
5352#[derive(Debug, Copy, Clone)]
5353pub struct __va_list_tag {
5354 pub gp_offset: ::core::ffi::c_uint,
5355 pub fp_offset: ::core::ffi::c_uint,
5356 pub overflow_arg_area: *mut ::core::ffi::c_void,
5357 pub reg_save_area: *mut ::core::ffi::c_void,
5358}
5359#[test]
5360fn bindgen_test_layout___va_list_tag() {
5361 const UNINIT: ::core::mem::MaybeUninit<__va_list_tag> = ::core::mem::MaybeUninit::uninit();
5362 let ptr = UNINIT.as_ptr();
5363 assert_eq!(
5364 ::core::mem::size_of::<__va_list_tag>(),
5365 24usize,
5366 concat!("Size of: ", stringify!(__va_list_tag))
5367 );
5368 assert_eq!(
5369 ::core::mem::align_of::<__va_list_tag>(),
5370 8usize,
5371 concat!("Alignment of ", stringify!(__va_list_tag))
5372 );
5373 assert_eq!(
5374 unsafe { ::core::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize },
5375 0usize,
5376 concat!(
5377 "Offset of field: ",
5378 stringify!(__va_list_tag),
5379 "::",
5380 stringify!(gp_offset)
5381 )
5382 );
5383 assert_eq!(
5384 unsafe { ::core::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize },
5385 4usize,
5386 concat!(
5387 "Offset of field: ",
5388 stringify!(__va_list_tag),
5389 "::",
5390 stringify!(fp_offset)
5391 )
5392 );
5393 assert_eq!(
5394 unsafe { ::core::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize },
5395 8usize,
5396 concat!(
5397 "Offset of field: ",
5398 stringify!(__va_list_tag),
5399 "::",
5400 stringify!(overflow_arg_area)
5401 )
5402 );
5403 assert_eq!(
5404 unsafe { ::core::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize },
5405 16usize,
5406 concat!(
5407 "Offset of field: ",
5408 stringify!(__va_list_tag),
5409 "::",
5410 stringify!(reg_save_area)
5411 )
5412 );
5413}