1 ! Copyright (C) 2005 Chris Double, Doug Coleman.
2 ! See https://factorcode.org/license.txt for BSD license.
3 ! An interface to the sqlite database. Tested against sqlite v3.1.3.
4 ! Not all functions have been wrapped.
5 USING: alien alien.c-types alien.libraries alien.syntax
6 classes.struct combinators system ;
10 { [ os windows? ] [ "sqlite3.dll" ] }
11 { [ os macosx? ] [ "libsqlite3.dylib" ] }
12 { [ os unix? ] [ "libsqlite3.so" ] }
13 } cond cdecl add-library >>
15 ! Return values from sqlite functions
16 CONSTANT: SQLITE_OK 0 ! Successful result
17 CONSTANT: SQLITE_ERROR 1 ! SQL error or missing database
18 CONSTANT: SQLITE_INTERNAL 2 ! An internal logic error in SQLite
19 CONSTANT: SQLITE_PERM 3 ! Access permission denied
20 CONSTANT: SQLITE_ABORT 4 ! Callback routine requested an abort
21 CONSTANT: SQLITE_BUSY 5 ! The database file is locked
22 CONSTANT: SQLITE_LOCKED 6 ! A table in the database is locked
23 CONSTANT: SQLITE_NOMEM 7 ! A malloc() failed
24 CONSTANT: SQLITE_READONLY 8 ! Attempt to write a readonly database
25 CONSTANT: SQLITE_INTERRUPT 9 ! Operation terminated by sqlite_interrupt()
26 CONSTANT: SQLITE_IOERR 10 ! Some kind of disk I/O error occurred
27 CONSTANT: SQLITE_CORRUPT 11 ! The database disk image is malformed
28 CONSTANT: SQLITE_NOTFOUND 12 ! (Internal Only) Table or record not found
29 CONSTANT: SQLITE_FULL 13 ! Insertion failed because database is full
30 CONSTANT: SQLITE_CANTOPEN 14 ! Unable to open the database file
31 CONSTANT: SQLITE_PROTOCOL 15 ! Database lock protocol error
32 CONSTANT: SQLITE_EMPTY 16 ! (Internal Only) Database table is empty
33 CONSTANT: SQLITE_SCHEMA 17 ! The database schema changed
34 CONSTANT: SQLITE_TOOBIG 18 ! Too much data for one row of a table
35 CONSTANT: SQLITE_CONSTRAINT 19 ! Abort due to contraint violation
36 CONSTANT: SQLITE_MISMATCH 20 ! Data type mismatch
37 CONSTANT: SQLITE_MISUSE 21 ! Library used incorrectly
38 CONSTANT: SQLITE_NOLFS 22 ! Uses OS features not supported on host
39 CONSTANT: SQLITE_AUTH 23 ! Authorization denied
40 CONSTANT: SQLITE_FORMAT 24 ! Auxiliary database format error
41 CONSTANT: SQLITE_RANGE 25 ! 2nd parameter to sqlite3_bind out of range
42 CONSTANT: SQLITE_NOTADB 26 ! File opened that is not a database file
43 CONSTANT: SQLITE_NOTICE 27 ! Notifications from sqlite3_log()
44 CONSTANT: SQLITE_WARNING 28 ! Warnings from sqlite3_log()
46 CONSTANT: sqlite-error-messages {
48 "SQL error or missing database"
49 "An internal logic error in SQLite"
50 "Access permission denied"
51 "Callback routine requested an abort"
52 "The database file is locked"
53 "A table in the database is locked"
55 "Attempt to write a readonly database"
56 "Operation terminated by sqlite_interrupt()"
57 "Some kind of disk I/O error occurred"
58 "The database disk image is malformed"
59 "(Internal Only) Table or record not found"
60 "Insertion failed because database is full"
61 "Unable to open the database file"
62 "Database lock protocol error"
63 "(Internal Only) Database table is empty"
64 "The database schema changed"
65 "Too much data for one row of a table"
66 "Abort due to contraint violation"
68 "Library used incorrectly"
69 "Uses OS features not supported on host"
70 "Authorization denied"
71 "Auxiliary database format error"
72 "2nd parameter to sqlite3_bind out of range"
73 "File opened that is not a database file"
74 "Notifications from sqlite3_log()"
75 "Warnings from sqlite3_log()"
78 ! Return values from sqlite3_step
79 CONSTANT: SQLITE_ROW 100
80 CONSTANT: SQLITE_DONE 101
82 ! Return values from the sqlite3_column_type function
83 CONSTANT: SQLITE_INTEGER 1
84 CONSTANT: SQLITE_FLOAT 2
85 CONSTANT: SQLITE_TEXT 3
86 CONSTANT: SQLITE_BLOB 4
87 CONSTANT: SQLITE_NULL 5
89 ! Values for the 'destructor' parameter of the 'bind' routines.
90 : SQLITE_STATIC ( -- ptr ) 0 <alien> ; inline
91 : SQLITE_TRANSIENT ( -- ptr ) -1 <alien> ; inline
93 CONSTANT: SQLITE_OPEN_READONLY 0x00000001
94 CONSTANT: SQLITE_OPEN_READWRITE 0x00000002
95 CONSTANT: SQLITE_OPEN_CREATE 0x00000004
96 CONSTANT: SQLITE_OPEN_DELETEONCLOSE 0x00000008
97 CONSTANT: SQLITE_OPEN_EXCLUSIVE 0x00000010
98 CONSTANT: SQLITE_OPEN_MAIN_DB 0x00000100
99 CONSTANT: SQLITE_OPEN_TEMP_DB 0x00000200
100 CONSTANT: SQLITE_OPEN_TRANSIENT_DB 0x00000400
101 CONSTANT: SQLITE_OPEN_MAIN_JOURNAL 0x00000800
102 CONSTANT: SQLITE_OPEN_TEMP_JOURNAL 0x00001000
103 CONSTANT: SQLITE_OPEN_SUBJOURNAL 0x00002000
104 CONSTANT: SQLITE_OPEN_MASTER_JOURNAL 0x00004000
106 CONSTANT: SQLITE_IOCAP_ATOMIC 0x00000001
107 CONSTANT: SQLITE_IOCAP_ATOMIC512 0x00000002
108 CONSTANT: SQLITE_IOCAP_ATOMIC1K 0x00000004
109 CONSTANT: SQLITE_IOCAP_ATOMIC2K 0x00000008
110 CONSTANT: SQLITE_IOCAP_ATOMIC4K 0x00000010
111 CONSTANT: SQLITE_IOCAP_ATOMIC8K 0x00000020
112 CONSTANT: SQLITE_IOCAP_ATOMIC16K 0x00000040
113 CONSTANT: SQLITE_IOCAP_ATOMIC32K 0x00000080
114 CONSTANT: SQLITE_IOCAP_ATOMIC64K 0x00000100
115 CONSTANT: SQLITE_IOCAP_SAFE_APPEND 0x00000200
116 CONSTANT: SQLITE_IOCAP_SEQUENTIAL 0x00000400
117 CONSTANT: SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN 0x00000800
118 CONSTANT: SQLITE_IOCAP_POWERSAFE_OVERWRITE 0x00001000
119 CONSTANT: SQLITE_IOCAP_IMMUTABLE 0x00002000
120 CONSTANT: SQLITE_IOCAP_BATCH_ATOMIC 0x00004000
122 CONSTANT: SQLITE_LOCK_NONE 0
123 CONSTANT: SQLITE_LOCK_SHARED 1
124 CONSTANT: SQLITE_LOCK_RESERVED 2
125 CONSTANT: SQLITE_LOCK_PENDING 3
126 CONSTANT: SQLITE_LOCK_EXCLUSIVE 4
128 CONSTANT: SQLITE_SYNC_NORMAL 0x00002
129 CONSTANT: SQLITE_SYNC_FULL 0x00003
130 CONSTANT: SQLITE_SYNC_DATAONLY 0x00010
134 FUNCTION: c-string sqlite3_libversion ( )
136 FUNCTION: c-string sqlite3_sourceid ( )
138 FUNCTION: int sqlite3_libversion_number ( )
140 FUNCTION: int sqlite3_compileoption_used ( c-string zOptName )
142 FUNCTION: c-string sqlite3_compileoption_get ( int N )
144 FUNCTION: int sqlite3_threadsafe ( )
147 TYPEDEF: longlong sqlite_int64
148 TYPEDEF: ulonglong sqlite_uint64
149 TYPEDEF: longlong sqlite3_int64
150 TYPEDEF: ulonglong sqlite3_uint64
151 FUNCTION: int sqlite3_close ( sqlite3* dummy )
153 FUNCTION: int sqlite3_close_v2 ( sqlite3* dummy )
155 TYPEDEF: void* sqlite3_callback
156 FUNCTION: int sqlite3_exec ( sqlite3* dummy, c-string sql, void* callback, void* dummy, char** errmsg )
159 STRUCT: sqlite3_io_methods
169 { xCheckReservedLock void* }
170 { xFileControl void* }
171 { xSectorSize void* }
172 { xDeviceCharacteristics void* }
175 { xShmBarrier void* }
181 { pMethods sqlite3_io_methods* } ;
183 C-TYPE: sqlite3_io_methods
184 C-TYPE: sqlite3_mutex
185 C-TYPE: sqlite3_api_routines
187 TYPEDEF: void* sqlite3_syscall_ptr
192 { pNext sqlite3_vfs* }
198 { xFullPathname void* }
203 { xRandomness void* }
205 { xCurrentTime void* }
206 { xGetLastError void* }
207 { xCurrentTimeInt64 void* }
208 { xSetSystemCall void* }
209 { xGetSystemCall void* }
210 { xNextSystemCall void* } ;
212 FUNCTION: int sqlite3_initialize ( )
214 FUNCTION: int sqlite3_shutdown ( )
216 FUNCTION: int sqlite3_os_init ( )
218 FUNCTION: int sqlite3_os_end ( )
220 FUNCTION: int sqlite3_config ( int dummy )
222 FUNCTION: int sqlite3_db_config ( sqlite3* dummy, int op )
224 C-TYPE: sqlite3_mem_methods
225 STRUCT: sqlite3_mem_methods
235 FUNCTION: int sqlite3_extended_result_codes ( sqlite3* dummy, int onoff )
237 FUNCTION: longlong sqlite3_last_insert_rowid ( sqlite3* dummy )
239 FUNCTION: void sqlite3_set_last_insert_rowid ( sqlite3* dummy, sqlite3_int64 dummy )
241 FUNCTION: int sqlite3_changes ( sqlite3* dummy )
243 FUNCTION: int sqlite3_total_changes ( sqlite3* dummy )
245 FUNCTION: void sqlite3_interrupt ( sqlite3* dummy )
247 FUNCTION: int sqlite3_complete ( c-string sql )
249 FUNCTION: int sqlite3_complete16 ( void* sql )
251 FUNCTION: int sqlite3_busy_handler ( sqlite3* dummy, void* dummy, void* dummy )
253 FUNCTION: int sqlite3_busy_timeout ( sqlite3* dummy, int ms )
255 FUNCTION: int sqlite3_get_table ( sqlite3* db, c-string zSql, char*** pazResult, int* pnRow, int* pnColumn, char** pzErrmsg )
257 FUNCTION: void sqlite3_free_table ( char** result )
259 FUNCTION: c-string sqlite3_mprintf ( c-string dummy )
261 ! FUNCTION: c-string sqlite3_vmprintf ( c-string dummy, va_list dummy )
263 FUNCTION: c-string sqlite3_snprintf ( int dummy, c-string dummy, c-string dummy )
265 ! FUNCTION: c-string sqlite3_vsnprintf ( int dummy, c-string dummy, c-string dummy, va_list dummy )
267 FUNCTION: void* sqlite3_malloc ( int dummy )
269 FUNCTION: void* sqlite3_malloc64 ( sqlite3_uint64 dummy )
271 FUNCTION: void* sqlite3_realloc ( void* dummy, int dummy )
273 FUNCTION: void* sqlite3_realloc64 ( void* dummy, sqlite3_uint64 dummy )
275 FUNCTION: void sqlite3_free ( void* dummy )
277 FUNCTION: ulonglong sqlite3_msize ( void* dummy )
279 FUNCTION: longlong sqlite3_memory_used ( )
281 FUNCTION: longlong sqlite3_memory_highwater ( int resetFlag )
283 FUNCTION: void sqlite3_randomness ( int N, void* P )
285 FUNCTION: int sqlite3_set_authorizer ( sqlite3* dummy, void* xAuth, void* pUserData )
287 FUNCTION: void* sqlite3_trace ( sqlite3* dummy, void* xTrace, void* dummy )
289 FUNCTION: void* sqlite3_profile ( sqlite3* dummy, void* xProfile, void* dummy )
291 FUNCTION: int sqlite3_trace_v2 ( sqlite3* dummy, uint uMask, void* xCallback, void* pCtx )
293 FUNCTION: void sqlite3_progress_handler ( sqlite3* dummy, int dummy, void* dummy, void* dummy )
295 FUNCTION: int sqlite3_open ( c-string filename, sqlite3** ppDb )
297 FUNCTION: int sqlite3_open16 ( void* filename, sqlite3** ppDb )
299 FUNCTION: int sqlite3_open_v2 ( c-string filename, sqlite3** ppDb, int flags, c-string zVfs )
301 FUNCTION: c-string sqlite3_uri_parameter ( c-string zFilename, c-string zParam )
303 FUNCTION: int sqlite3_uri_boolean ( c-string zFile, c-string zParam, int bDefault )
305 FUNCTION: longlong sqlite3_uri_int64 ( c-string dummy, c-string dummy, sqlite3_int64 dummy )
307 FUNCTION: int sqlite3_errcode ( sqlite3* db )
309 FUNCTION: int sqlite3_extended_errcode ( sqlite3* db )
311 FUNCTION: c-string sqlite3_errmsg ( sqlite3* dummy )
313 FUNCTION: void* sqlite3_errmsg16 ( sqlite3* dummy )
315 FUNCTION: c-string sqlite3_errstr ( int dummy )
318 FUNCTION: int sqlite3_limit ( sqlite3* dummy, int id, int newVal )
320 FUNCTION: int sqlite3_prepare ( sqlite3* db, c-string zSql, int nByte, sqlite3_stmt** ppStmt, char** pzTail )
322 FUNCTION: int sqlite3_prepare_v2 ( sqlite3* db, c-string zSql, int nByte, sqlite3_stmt** ppStmt, char** pzTail )
324 FUNCTION: int sqlite3_prepare_v3 ( sqlite3* db, c-string zSql, int nByte, uint prepFlags, sqlite3_stmt** ppStmt, char** pzTail )
326 FUNCTION: int sqlite3_prepare16 ( sqlite3* db, c-string zSql, int nByte, sqlite3_stmt** ppStmt, void** pzTail )
328 FUNCTION: int sqlite3_prepare16_v2 ( sqlite3* db, void* zSql, int nByte, sqlite3_stmt** ppStmt, void** pzTail )
330 FUNCTION: int sqlite3_prepare16_v3 ( sqlite3* db, void* zSql, int nByte, uint prepFlags, sqlite3_stmt** ppStmt, void** pzTail )
332 FUNCTION: c-string sqlite3_sql ( sqlite3_stmt* pStmt )
334 FUNCTION: c-string sqlite3_expanded_sql ( sqlite3_stmt* pStmt )
336 FUNCTION: c-string sqlite3_normalized_sql ( sqlite3_stmt* pStmt )
338 FUNCTION: int sqlite3_stmt_readonly ( sqlite3_stmt* pStmt )
340 FUNCTION: int sqlite3_stmt_isexplain ( sqlite3_stmt* pStmt )
342 FUNCTION: int sqlite3_stmt_busy ( sqlite3_stmt* dummy )
344 C-TYPE: sqlite3_value
345 C-TYPE: sqlite3_context
346 FUNCTION: int sqlite3_bind_blob ( sqlite3_stmt* dummy, int dummy, void* dummy, int n, void* dummy )
348 FUNCTION: int sqlite3_bind_blob64 ( sqlite3_stmt* dummy, int dummy, void* dummy, sqlite3_uint64 dummy, void* dummy )
350 FUNCTION: int sqlite3_bind_double ( sqlite3_stmt* dummy, int dummy, double dummy )
352 FUNCTION: int sqlite3_bind_int ( sqlite3_stmt* dummy, int dummy, int dummy )
354 FUNCTION: int sqlite3_bind_int64 ( sqlite3_stmt* dummy, int dummy, sqlite3_int64 dummy )
356 FUNCTION: int sqlite3_bind_null ( sqlite3_stmt* dummy, int dummy )
358 FUNCTION: int sqlite3_bind_text ( sqlite3_stmt* dummy, int dummy, char* dummy, int dummy, void* dummy )
360 FUNCTION: int sqlite3_bind_text16 ( sqlite3_stmt* dummy, int dummy, void* dummy, int dummy, void* dummy )
362 FUNCTION: int sqlite3_bind_text64 ( sqlite3_stmt* dummy, int dummy, char* dummy, sqlite3_uint64 dummy, void* dummy, uchar encoding )
364 FUNCTION: int sqlite3_bind_value ( sqlite3_stmt* dummy, int dummy, sqlite3_value* dummy )
366 FUNCTION: int sqlite3_bind_pointer ( sqlite3_stmt* dummy, int dummy, void* dummy, char* dummy, void* dummy )
368 FUNCTION: int sqlite3_bind_zeroblob ( sqlite3_stmt* dummy, int dummy, int n )
370 FUNCTION: int sqlite3_bind_zeroblob64 ( sqlite3_stmt* dummy, int dummy, sqlite3_uint64 dummy )
372 FUNCTION: int sqlite3_bind_parameter_count ( sqlite3_stmt* dummy )
374 FUNCTION: c-string sqlite3_bind_parameter_name ( sqlite3_stmt* dummy, int dummy )
376 FUNCTION: int sqlite3_bind_parameter_index ( sqlite3_stmt* dummy, c-string zName )
378 FUNCTION: int sqlite3_clear_bindings ( sqlite3_stmt* dummy )
380 FUNCTION: int sqlite3_column_count ( sqlite3_stmt* pStmt )
382 FUNCTION: c-string sqlite3_column_name ( sqlite3_stmt* dummy, int N )
384 FUNCTION: void* sqlite3_column_name16 ( sqlite3_stmt* dummy, int N )
386 FUNCTION: c-string sqlite3_column_database_name ( sqlite3_stmt* dummy, int dummy )
388 FUNCTION: void* sqlite3_column_database_name16 ( sqlite3_stmt* dummy, int dummy )
390 FUNCTION: c-string sqlite3_column_table_name ( sqlite3_stmt* dummy, int dummy )
392 FUNCTION: void* sqlite3_column_table_name16 ( sqlite3_stmt* dummy, int dummy )
394 FUNCTION: c-string sqlite3_column_origin_name ( sqlite3_stmt* dummy, int dummy )
396 FUNCTION: void* sqlite3_column_origin_name16 ( sqlite3_stmt* dummy, int dummy )
398 FUNCTION: c-string sqlite3_column_decltype ( sqlite3_stmt* dummy, int dummy )
400 FUNCTION: void* sqlite3_column_decltype16 ( sqlite3_stmt* dummy, int dummy )
402 FUNCTION: int sqlite3_step ( sqlite3_stmt* dummy )
404 FUNCTION: int sqlite3_data_count ( sqlite3_stmt* pStmt )
406 FUNCTION: void* sqlite3_column_blob ( sqlite3_stmt* dummy, int iCol )
408 FUNCTION: double sqlite3_column_double ( sqlite3_stmt* dummy, int iCol )
410 FUNCTION: int sqlite3_column_int ( sqlite3_stmt* dummy, int iCol )
412 FUNCTION: longlong sqlite3_column_int64 ( sqlite3_stmt* dummy, int iCol )
414 FUNCTION: c-string sqlite3_column_text ( sqlite3_stmt* dummy, int iCol )
416 FUNCTION: void* sqlite3_column_text16 ( sqlite3_stmt* dummy, int iCol )
418 FUNCTION: sqlite3_value* sqlite3_column_value ( sqlite3_stmt* dummy, int iCol )
420 FUNCTION: int sqlite3_column_bytes ( sqlite3_stmt* dummy, int iCol )
422 FUNCTION: int sqlite3_column_bytes16 ( sqlite3_stmt* dummy, int iCol )
424 FUNCTION: int sqlite3_column_type ( sqlite3_stmt* dummy, int iCol )
426 FUNCTION: int sqlite3_finalize ( sqlite3_stmt* pStmt )
428 FUNCTION: int sqlite3_reset ( sqlite3_stmt* pStmt )
430 FUNCTION: int sqlite3_create_function ( sqlite3* db, char* zFunctionName, int nArg, int eTextRep, void* pApp, void* xFunc, void* xStep, void* xFinal )
432 FUNCTION: int sqlite3_create_function16 ( sqlite3* db, void* zFunctionName, int nArg, int eTextRep, void* pApp, void* xFunc, void* xStep, void* xFinal )
434 FUNCTION: int sqlite3_create_function_v2 ( sqlite3* db, char* zFunctionName, int nArg, int eTextRep, void* pApp, void* xFunc, void* xStep, void* xFinal, void* xDestroy )
436 FUNCTION: int sqlite3_create_window_function ( sqlite3* db, char* zFunctionName, int nArg, int eTextRep, void* pApp, void* xStep, void* xFinal, void* xValue, void* xInverse, void* xDestroy )
438 FUNCTION: int sqlite3_aggregate_count ( sqlite3_context* dummy )
440 FUNCTION: int sqlite3_expired ( sqlite3_stmt* dummy )
442 FUNCTION: int sqlite3_transfer_bindings ( sqlite3_stmt* dummy, sqlite3_stmt* dummy )
444 FUNCTION: int sqlite3_global_recover ( )
446 FUNCTION: void sqlite3_thread_cleanup ( )
448 FUNCTION: int sqlite3_memory_alarm ( void* dummy, void* dummy, sqlite3_int64 dummy )
450 FUNCTION: void* sqlite3_value_blob ( sqlite3_value* dummy )
452 FUNCTION: double sqlite3_value_double ( sqlite3_value* dummy )
454 FUNCTION: int sqlite3_value_int ( sqlite3_value* dummy )
456 FUNCTION: longlong sqlite3_value_int64 ( sqlite3_value* dummy )
458 FUNCTION: void* sqlite3_value_pointer ( sqlite3_value* dummy, c-string dummy )
460 FUNCTION: c-string sqlite3_value_text ( sqlite3_value* dummy )
462 FUNCTION: void* sqlite3_value_text16 ( sqlite3_value* dummy )
464 FUNCTION: void* sqlite3_value_text16le ( sqlite3_value* dummy )
466 FUNCTION: void* sqlite3_value_text16be ( sqlite3_value* dummy )
468 FUNCTION: int sqlite3_value_bytes ( sqlite3_value* dummy )
470 FUNCTION: int sqlite3_value_bytes16 ( sqlite3_value* dummy )
472 FUNCTION: int sqlite3_value_type ( sqlite3_value* dummy )
474 FUNCTION: int sqlite3_value_numeric_type ( sqlite3_value* dummy )
476 FUNCTION: int sqlite3_value_nochange ( sqlite3_value* dummy )
478 FUNCTION: int sqlite3_value_frombind ( sqlite3_value* dummy )
480 FUNCTION: uint sqlite3_value_subtype ( sqlite3_value* dummy )
482 FUNCTION: sqlite3_value* sqlite3_value_dup ( sqlite3_value* dummy )
484 FUNCTION: void sqlite3_value_free ( sqlite3_value* dummy )
486 FUNCTION: void* sqlite3_aggregate_context ( sqlite3_context* dummy, int nBytes )
488 FUNCTION: void* sqlite3_user_data ( sqlite3_context* dummy )
490 FUNCTION: sqlite3* sqlite3_context_db_handle ( sqlite3_context* dummy )
492 FUNCTION: void* sqlite3_get_auxdata ( sqlite3_context* dummy, int N )
494 FUNCTION: void sqlite3_set_auxdata ( sqlite3_context* dummy, int N, void* dummy, void* dummy )
496 TYPEDEF: void* sqlite3_destructor_type
497 FUNCTION: void sqlite3_result_blob ( sqlite3_context* dummy, void* dummy, int dummy, void* dummy )
499 FUNCTION: void sqlite3_result_blob64 ( sqlite3_context* dummy, void* dummy, sqlite3_uint64 dummy, void* dummy )
501 FUNCTION: void sqlite3_result_double ( sqlite3_context* dummy, double dummy )
503 FUNCTION: void sqlite3_result_error ( sqlite3_context* dummy, c-string dummy, int dummy )
505 FUNCTION: void sqlite3_result_error16 ( sqlite3_context* dummy, void* dummy, int dummy )
507 FUNCTION: void sqlite3_result_error_toobig ( sqlite3_context* dummy )
509 FUNCTION: void sqlite3_result_error_nomem ( sqlite3_context* dummy )
511 FUNCTION: void sqlite3_result_error_code ( sqlite3_context* dummy, int dummy )
513 FUNCTION: void sqlite3_result_int ( sqlite3_context* dummy, int dummy )
515 FUNCTION: void sqlite3_result_int64 ( sqlite3_context* dummy, sqlite3_int64 dummy )
517 FUNCTION: void sqlite3_result_null ( sqlite3_context* dummy )
519 FUNCTION: void sqlite3_result_text ( sqlite3_context* dummy, c-string dummy, int dummy, void* dummy )
521 FUNCTION: void sqlite3_result_text64 ( sqlite3_context* dummy, c-string dummy, sqlite3_uint64 dummy, void* dummy, uchar encoding )
523 FUNCTION: void sqlite3_result_text16 ( sqlite3_context* dummy, void* dummy, int dummy, void* dummy )
525 FUNCTION: void sqlite3_result_text16le ( sqlite3_context* dummy, void* dummy, int dummy, void* dummy )
527 FUNCTION: void sqlite3_result_text16be ( sqlite3_context* dummy, void* dummy, int dummy, void* dummy )
529 FUNCTION: void sqlite3_result_value ( sqlite3_context* dummy, sqlite3_value* dummy )
531 FUNCTION: void sqlite3_result_pointer ( sqlite3_context* dummy, void* dummy, c-string dummy, void* dummy )
533 FUNCTION: void sqlite3_result_zeroblob ( sqlite3_context* dummy, int n )
535 FUNCTION: int sqlite3_result_zeroblob64 ( sqlite3_context* dummy, sqlite3_uint64 n )
537 FUNCTION: void sqlite3_result_subtype ( sqlite3_context* dummy, uint dummy )
539 FUNCTION: int sqlite3_create_collation ( sqlite3* dummy, c-string zName, int eTextRep, void* pArg, void* xCompare )
541 FUNCTION: int sqlite3_create_collation_v2 ( sqlite3* dummy, c-string zName, int eTextRep, void* pArg, void* xCompare, void* xDestroy )
543 FUNCTION: int sqlite3_create_collation16 ( sqlite3* dummy, void* zName, int eTextRep, void* pArg, void* xCompare )
545 FUNCTION: int sqlite3_collation_needed ( sqlite3* dummy, void* dummy, void* dummy )
547 FUNCTION: int sqlite3_collation_needed16 ( sqlite3* dummy, void* dummy, void* dummy )
549 FUNCTION: int sqlite3_sleep ( int dummy )
551 C-GLOBAL: c-string sqlite3_temp_directory
553 C-GLOBAL: c-string sqlite3_data_directory
555 FUNCTION: int sqlite3_win32_set_directory ( ulong type, void* zValue )
557 FUNCTION: int sqlite3_win32_set_directory8 ( ulong type, c-string zValue )
559 FUNCTION: int sqlite3_win32_set_directory16 ( ulong type, void* zValue )
561 FUNCTION: int sqlite3_get_autocommit ( sqlite3* dummy )
563 FUNCTION: sqlite3* sqlite3_db_handle ( sqlite3_stmt* dummy )
565 FUNCTION: c-string sqlite3_db_filename ( sqlite3* db, c-string zDbName )
567 FUNCTION: int sqlite3_db_readonly ( sqlite3* db, c-string zDbName )
569 FUNCTION: sqlite3_stmt* sqlite3_next_stmt ( sqlite3* pDb, sqlite3_stmt* pStmt )
571 FUNCTION: void* sqlite3_commit_hook ( sqlite3* dummy, void* dummy, void* dummy )
573 FUNCTION: void* sqlite3_rollback_hook ( sqlite3* dummy, void* dummy, void* dummy )
575 FUNCTION: void* sqlite3_update_hook ( sqlite3* dummy, void* dummy, void* dummy )
577 FUNCTION: int sqlite3_enable_shared_cache ( int dummy )
579 FUNCTION: int sqlite3_release_memory ( int dummy )
581 FUNCTION: int sqlite3_db_release_memory ( sqlite3* dummy )
583 FUNCTION: longlong sqlite3_soft_heap_limit64 ( sqlite3_int64 N )
585 FUNCTION: void sqlite3_soft_heap_limit ( int N )
587 FUNCTION: int sqlite3_table_column_metadata ( sqlite3* db, c-string zDbName, c-string zTableName, c-string zColumnName, char** pzDataType, char** pzCollSeq, int* pNotNull, int* pPrimaryKey, int* pAutoinc )
589 FUNCTION: int sqlite3_load_extension ( sqlite3* db, c-string zFile, c-string zProc, char** pzErrMsg )
591 FUNCTION: int sqlite3_enable_load_extension ( sqlite3* db, int onoff )
593 FUNCTION: int sqlite3_auto_extension ( void* xEntryPoint )
595 FUNCTION: int sqlite3_cancel_auto_extension ( void* xEntryPoint )
597 FUNCTION: void sqlite3_reset_auto_extension ( )
600 C-TYPE: sqlite3_index_info
601 C-TYPE: sqlite3_vtab_cursor
602 C-TYPE: sqlite3_module
603 STRUCT: sqlite3_module
608 { xDisconnect void* }
622 { xFindFunction void* }
626 { xRollbackTo void* }
627 { xShadowName void* } ;
629 STRUCT: sqlite3_index_constraint
633 { iTermOffset int } ;
635 STRUCT: sqlite3_index_orderby
639 STRUCT: sqlite3_index_constraint_usage
643 STRUCT: sqlite3_index_info
645 { aConstraint sqlite3_index_constraint* }
647 { aOrderBy sqlite3_index_orderby* }
648 { aConstraintUsage sqlite3_index_constraint_usage* }
651 { needToFreeIdxStr int }
652 { orderByConsumed int }
653 { estimatedCost double }
654 { estimatedRows sqlite3_int64 }
656 { colUsed sqlite3_uint64 } ;
658 FUNCTION: int sqlite3_create_module ( sqlite3* db, c-string zName, sqlite3_module* p, void* pClientData )
660 FUNCTION: int sqlite3_create_module_v2 ( sqlite3* db, c-string zName, sqlite3_module* p, void* pClientData, void* xDestroy )
663 { pModule sqlite3_module* }
665 { zErrMsg c-string } ;
667 STRUCT: sqlite3_vtab_cursor
668 { pVtab sqlite3_vtab* } ;
670 FUNCTION: int sqlite3_declare_vtab ( sqlite3* dummy, c-string zSQL )
672 FUNCTION: int sqlite3_overload_function ( sqlite3* dummy, c-string zFuncName, int nArg )
675 FUNCTION: int sqlite3_blob_open ( sqlite3* dummy, c-string zDb, c-string zTable, c-string zColumn, sqlite3_int64 iRow, int flags, sqlite3_blob** ppBlob )
677 FUNCTION: int sqlite3_blob_reopen ( sqlite3_blob* dummy, sqlite3_int64 dummy )
679 FUNCTION: int sqlite3_blob_close ( sqlite3_blob* dummy )
681 FUNCTION: int sqlite3_blob_bytes ( sqlite3_blob* dummy )
683 FUNCTION: int sqlite3_blob_read ( sqlite3_blob* dummy, void* Z, int N, int iOffset )
685 FUNCTION: int sqlite3_blob_write ( sqlite3_blob* dummy, void* z, int n, int iOffset )
687 FUNCTION: sqlite3_vfs* sqlite3_vfs_find ( c-string zVfsName )
689 FUNCTION: int sqlite3_vfs_register ( sqlite3_vfs* dummy, int makeDflt )
691 FUNCTION: int sqlite3_vfs_unregister ( sqlite3_vfs* dummy )
693 FUNCTION: sqlite3_mutex* sqlite3_mutex_alloc ( int dummy )
695 FUNCTION: void sqlite3_mutex_free ( sqlite3_mutex* dummy )
697 FUNCTION: void sqlite3_mutex_enter ( sqlite3_mutex* dummy )
699 FUNCTION: int sqlite3_mutex_try ( sqlite3_mutex* dummy )
701 FUNCTION: void sqlite3_mutex_leave ( sqlite3_mutex* dummy )
703 C-TYPE: sqlite3_mutex_methods
704 STRUCT: sqlite3_mutex_methods
707 { xMutexAlloc void* }
709 { xMutexEnter void* }
711 { xMutexLeave void* }
713 { xMutexNotheld void* } ;
715 FUNCTION: int sqlite3_mutex_held ( sqlite3_mutex* dummy )
717 FUNCTION: int sqlite3_mutex_notheld ( sqlite3_mutex* dummy )
719 FUNCTION: sqlite3_mutex* sqlite3_db_mutex ( sqlite3* dummy )
721 FUNCTION: int sqlite3_file_control ( sqlite3* dummy, c-string zDbName, int op, void* dummy )
723 FUNCTION: int sqlite3_test_control ( int op )
725 FUNCTION: int sqlite3_keyword_count ( )
727 FUNCTION: int sqlite3_keyword_name ( int dummy, char** dummy, int* dummy )
729 FUNCTION: int sqlite3_keyword_check ( c-string dummy, int dummy )
732 FUNCTION: sqlite3_str* sqlite3_str_new ( sqlite3* dummy )
734 FUNCTION: c-string sqlite3_str_finish ( sqlite3_str* dummy )
736 FUNCTION: void sqlite3_str_appendf ( sqlite3_str* dummy, c-string zFormat )
738 ! FUNCTION: void sqlite3_str_vappendf ( sqlite3_str* dummy, c-string zFormat, va_list dummy )
740 FUNCTION: void sqlite3_str_append ( sqlite3_str* dummy, c-string zIn, int N )
742 FUNCTION: void sqlite3_str_appendall ( sqlite3_str* dummy, c-string zIn )
744 FUNCTION: void sqlite3_str_appendchar ( sqlite3_str* dummy, int N, char C )
746 FUNCTION: void sqlite3_str_reset ( sqlite3_str* dummy )
748 FUNCTION: int sqlite3_str_errcode ( sqlite3_str* dummy )
750 FUNCTION: int sqlite3_str_length ( sqlite3_str* dummy )
752 FUNCTION: c-string sqlite3_str_value ( sqlite3_str* dummy )
754 FUNCTION: int sqlite3_status ( int op, int* pCurrent, int* pHighwater, int resetFlag )
756 FUNCTION: int sqlite3_status64 ( int op, sqlite3_int64* pCurrent, sqlite3_int64* pHighwater, int resetFlag )
758 FUNCTION: int sqlite3_db_status ( sqlite3* dummy, int op, int* pCur, int* pHiwtr, int resetFlg )
760 FUNCTION: int sqlite3_stmt_status ( sqlite3_stmt* dummy, int op, int resetFlg )
762 C-TYPE: sqlite3_pcache
763 C-TYPE: sqlite3_pcache_page
764 STRUCT: sqlite3_pcache_page
768 C-TYPE: sqlite3_pcache_methods2
769 STRUCT: sqlite3_pcache_methods2
784 C-TYPE: sqlite3_pcache_methods
785 STRUCT: sqlite3_pcache_methods
798 C-TYPE: sqlite3_backup
799 FUNCTION: sqlite3_backup* sqlite3_backup_init ( sqlite3* pDest, c-string zDestName, sqlite3* pSource, c-string zSourceName )
801 FUNCTION: int sqlite3_backup_step ( sqlite3_backup* p, int nPage )
803 FUNCTION: int sqlite3_backup_finish ( sqlite3_backup* p )
805 FUNCTION: int sqlite3_backup_remaining ( sqlite3_backup* p )
807 FUNCTION: int sqlite3_backup_pagecount ( sqlite3_backup* p )
809 FUNCTION: int sqlite3_unlock_notify ( sqlite3* pBlocked, void* xNotify, void* pNotifyArg )
811 FUNCTION: int sqlite3_stricmp ( c-string dummy, c-string dummy )
813 FUNCTION: int sqlite3_strnicmp ( c-string dummy, c-string dummy, int dummy )
815 FUNCTION: int sqlite3_strglob ( c-string zGlob, c-string zStr )
817 FUNCTION: int sqlite3_strlike ( c-string zGlob, c-string zStr, uint cEsc )
819 FUNCTION: void sqlite3_log ( int iErrCode, c-string zFormat )
821 FUNCTION: void* sqlite3_wal_hook ( sqlite3* dummy, void* dummy, void* dummy )
823 FUNCTION: int sqlite3_wal_autocheckpoint ( sqlite3* db, int N )
825 FUNCTION: int sqlite3_wal_checkpoint ( sqlite3* db, c-string zDb )
827 FUNCTION: int sqlite3_wal_checkpoint_v2 ( sqlite3* db, c-string zDb, int eMode, int* pnLog, int* pnCkpt )
829 FUNCTION: int sqlite3_vtab_config ( sqlite3* dummy, int op )
831 FUNCTION: int sqlite3_vtab_on_conflict ( sqlite3* dummy )
833 FUNCTION: int sqlite3_vtab_nochange ( sqlite3_context* dummy )
835 FUNCTION: c-string sqlite3_vtab_collation ( sqlite3_index_info* dummy, int dummy )
837 FUNCTION: int sqlite3_stmt_scanstatus ( sqlite3_stmt* pStmt, int idx, int iScanStatusOp, void* pOut )
839 FUNCTION: void sqlite3_stmt_scanstatus_reset ( sqlite3_stmt* dummy )
841 FUNCTION: int sqlite3_db_cacheflush ( sqlite3* dummy )
843 FUNCTION: int sqlite3_system_errno ( sqlite3* dummy )
845 STRUCT: sqlite3_snapshot
846 { hidden uchar[48] } ;
848 FUNCTION: int sqlite3_snapshot_get ( sqlite3* db, c-string zSchema, sqlite3_snapshot** ppSnapshot )
850 FUNCTION: int sqlite3_snapshot_open ( sqlite3* db, c-string zSchema, sqlite3_snapshot* pSnapshot )
852 FUNCTION: void sqlite3_snapshot_free ( sqlite3_snapshot* dummy )
854 FUNCTION: int sqlite3_snapshot_cmp ( sqlite3_snapshot* p1, sqlite3_snapshot* p2 )
856 FUNCTION: int sqlite3_snapshot_recover ( sqlite3* db, c-string zDb )
858 FUNCTION: c-string sqlite3_serialize ( sqlite3* db, c-string zSchema, sqlite3_int64* piSize, uint mFlags )
860 FUNCTION: int sqlite3_deserialize ( sqlite3* db, c-string zSchema, c-string pData, sqlite3_int64 szDb, sqlite3_int64 szBuf, uint mFlags )
862 C-TYPE: sqlite3_rtree_geometry
863 C-TYPE: sqlite3_rtree_query_info
864 TYPEDEF: double sqlite3_rtree_dbl
865 FUNCTION: int sqlite3_rtree_geometry_callback ( sqlite3* db, c-string zGeom, void* xGeom, void* pContext )
867 STRUCT: sqlite3_rtree_geometry
870 { aParam sqlite3_rtree_dbl* }
874 FUNCTION: int sqlite3_rtree_query_callback ( sqlite3* db, c-string zQueryFunc, void* xQueryFunc, void* pContext, void* xDestructor )
876 STRUCT: sqlite3_rtree_query_info
879 { aParam sqlite3_rtree_dbl* }
882 { aCoord sqlite3_rtree_dbl* }
887 { iRowid sqlite3_int64 }
888 { rParentScore sqlite3_rtree_dbl }
889 { eParentWithin int }
891 { rScore sqlite3_rtree_dbl }
892 { apSqlParam sqlite3_value** } ;
894 C-TYPE: Fts5ExtensionApi
896 C-TYPE: Fts5PhraseIter
897 TYPEDEF: void* fts5_extension_function
898 STRUCT: Fts5PhraseIter
902 STRUCT: Fts5ExtensionApi
905 { xColumnCount void* }
907 { xColumnTotalSize void* }
909 { xPhraseCount void* }
910 { xPhraseSize void* }
914 { xColumnText void* }
915 { xColumnSize void* }
916 { xQueryPhrase void* }
917 { xSetAuxdata void* }
918 { xGetAuxdata void* }
919 { xPhraseFirst void* }
920 { xPhraseNext void* }
921 { xPhraseFirstColumn void* }
922 { xPhraseNextColumn void* } ;
924 C-TYPE: Fts5Tokenizer
925 C-TYPE: fts5_tokenizer
926 STRUCT: fts5_tokenizer
929 { xTokenize void* } ;
934 { xCreateTokenizer void* }
935 { xFindTokenizer void* }
936 { xCreateFunction void* } ;