diff --git a/internal/mptest/main_darwin_arm64.go b/internal/mptest/main_darwin_arm64.go index c58a55c..dd5ee8e 100644 --- a/internal/mptest/main_darwin_arm64.go +++ b/internal/mptest/main_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -export-defines "" -o internal/mptest/main_darwin_arm64.go -trace-translation-units testdata/sqlite-src-3350400/mptest/mptest.c -Itestdata/sqlite-amalgamation-3350400 -l modernc.org/sqlite/lib -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. +// Code generated by 'ccgo -export-defines "" -o internal/mptest/main_darwin_arm64.go -trace-translation-units testdata/sqlite-src-3350500/mptest/mptest.c -Itestdata/sqlite-amalgamation-3350500 -l modernc.org/sqlite/lib -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. package main @@ -232,12 +232,18 @@ const ( IOPOL_TYPE_DISK = 0 IOPOL_TYPE_VFS_ATIME_UPDATES = 2 IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION = 6 + IOPOL_TYPE_VFS_IGNORE_PERMISSIONS = 7 IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES = 3 + IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE = 8 IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME = 4 IOPOL_TYPE_VFS_TRIGGER_RESOLVE = 5 IOPOL_UTILITY = 4 IOPOL_VFS_CONTENT_PROTECTION_DEFAULT = 0 IOPOL_VFS_CONTENT_PROTECTION_IGNORE = 1 + IOPOL_VFS_IGNORE_PERMISSIONS_OFF = 0 + IOPOL_VFS_IGNORE_PERMISSIONS_ON = 1 + IOPOL_VFS_SKIP_MTIME_UPDATE_OFF = 0 + IOPOL_VFS_SKIP_MTIME_UPDATE_ON = 1 IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME = 1 IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT = 0 IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT = 0 @@ -789,7 +795,7 @@ const ( SQLITE_SHM_SHARED = 4 SQLITE_SHM_UNLOCK = 1 SQLITE_SOUNDEX = 1 - SQLITE_SOURCE_ID = "2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e" + SQLITE_SOURCE_ID = "2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886" SQLITE_STATUS_MALLOC_COUNT = 9 SQLITE_STATUS_MALLOC_SIZE = 5 SQLITE_STATUS_MEMORY_USED = 0 @@ -861,8 +867,8 @@ const ( SQLITE_UTF16LE = 2 SQLITE_UTF16_ALIGNED = 8 SQLITE_UTF8 = 1 - SQLITE_VERSION = "3.35.4" - SQLITE_VERSION_NUMBER = 3035004 + SQLITE_VERSION = "3.35.5" + SQLITE_VERSION_NUMBER = 3035005 SQLITE_VTAB_CONSTRAINT_SUPPORT = 1 SQLITE_VTAB_DIRECTONLY = 3 SQLITE_VTAB_INNOCUOUS = 2 @@ -7771,6 +7777,7 @@ type __darwin_arm_neon_state = struct { } /* _structs.h:448:1 */ type __darwin_arm_amx_state_v1 = struct { + _ [0]uint64 __x [8][64]uint8 __y [8][64]uint8 __z [64][64]uint8 @@ -12249,11 +12256,11 @@ func main1(tls *libc.TLS, argc int32, argv uintptr) int32 { /* mptest.c:1279:18: if strglob(tls, ts+2323 /* "*.test" */, g.zDbFile) != 0 { usage(tls, *(*uintptr)(unsafe.Pointer(argv))) } - if libc.Xstrcmp(tls, sqlite3.Xsqlite3_sourceid(tls), ts+2330 /* "2021-04-02 15:20..." */) != 0 { + if libc.Xstrcmp(tls, sqlite3.Xsqlite3_sourceid(tls), ts+2330 /* "2021-04-19 18:32..." */) != 0 { libc.Xfprintf(tls, libc.X__stderrp, ts+2415, /* "SQLite library a..." */ - libc.VaList(bp, sqlite3.Xsqlite3_sourceid(tls), ts+2330 /* "2021-04-02 15:20..." */)) + libc.VaList(bp, sqlite3.Xsqlite3_sourceid(tls), ts+2330 /* "2021-04-19 18:32..." */)) libc.Xexit(tls, 1) } *(*int32)(unsafe.Pointer(bp + 232 /* n */)) = (argc - 2) @@ -12459,5 +12466,5 @@ func main1(tls *libc.TLS, argc int32, argv uintptr) int32 { /* mptest.c:1279:18: return (libc.Bool32(g.nError > 0)) } -var ts1 = "%s%.*s\n\x00%s:ERROR: \x00%s:FATAL: \x00UPDATE client SET wantHalt=1;\x00%s: \x00main\x00timeout after %dms\x00[%.*s]\x00(info) %s\x00(errcode=%d) %s\x00%s\n%s\n\x00out of memory\x00 \x00nil\x00'\x00error(%d)\x00BEGIN IMMEDIATE\x00in startScript: %s\x00UPDATE counters SET nError=nError+%d, nTest=nTest+%d\x00SELECT 1 FROM client WHERE id=%d AND wantHalt\x00DELETE FROM client WHERE id=%d\x00COMMIT TRANSACTION;\x00SELECT script, id, name FROM task WHERE client=%d AND starttime IS NULL ORDER BY id LIMIT 1\x00%s\x00UPDATE task SET starttime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00Waited over 30 seconds with no work. Giving up.\x00DELETE FROM client WHERE id=%d; COMMIT;\x00COMMIT\x00UPDATE task SET endtime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00INSERT OR IGNORE INTO client VALUES(%d,0)\x00%s \"%s\" --client %d --trace %d\x00%z --sqltrace\x00%z --sync\x00%z --vfs \"%s\"\x00system('%q')\x00%z &\x00system() fails with error code %d\x00rb\x00cannot open \"%s\" for reading\x00--end\x00--endif\x00--else\x00--if\x00SELECT 1 FROM task WHERE client=%d AND client IN (SELECT id FROM client) AND endtime IS NULL\x00SELECT 1 FROM task WHERE client IN (SELECT id FROM client) AND endtime IS NULL\x00\x00%stimeout waiting for client %d\x00%stimeout waiting for all clients\x00on\x00yes\x00off\x00no\x00unknown boolean: [%s]\x00%.*s\x00sleep\x00exit\x00testcase\x00finish\x00reset\x00match\x00line %d of %s:\nExpected [%.*s]\n Got [%s]\x00glob\x00notglob\x00line %d of %s:\nExpected [%s]\n Got [%s]\x00output\x00source\x00%.*s/%s\x00begin script [%s]\n\x00end script [%s]\n\x00print\x00if\x00SELECT %.*s\x00else\x00endif\x00start\x00wait\x00line %d of %s\n\x00task\x00line %d of %s: bad client number: %d\x00%s:%d\x00INSERT INTO task(client,script,name) VALUES(%d,'%q',%Q)\x00breakpoint\x00show-sql-errors\x00line %d of %s: unknown command --%s\x00command-line option \"--%s\" requires an argument\x00Usage: %s DATABASE ?OPTIONS? ?SCRIPT?\n\x00Options:\n --errlog FILENAME Write errors to FILENAME\n --journalmode MODE Use MODE as the journal_mode\n --log FILENAME Log messages to FILENAME\n --quiet Suppress unnecessary output\n --vfs NAME Use NAME as the VFS\n --repeat N Repeat the test N times\n --sqltrace Enable SQL tracing\n --sync Enable synchronous disk writes\n --timeout MILLISEC Busy timeout is MILLISEC\n --trace BOOLEAN Enable or disable tracing\n\x00%s: unrecognized arguments:\x00 %s\x00\n\x00*.test\x002021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e\x00SQLite library and header mismatch\nLibrary: %s\nHeader: %s\n\x00%05d.mptest\x00journalmode\x00repeat\x00vfs\x00client\x00errlog\x00log\x00trace\x00quiet\x00timeout\x00sqltrace\x00sync\x00a\x00illegal client number: %d\n\x00%05d.client%02d\x00BEGIN: %s\x00With SQLite 3.35.4 2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e\n\x00-DSQLITE_%s\n\x00... %strying to unlink '%s'\n\x00still \x00unable to unlink '%s' after %d attempts\n\x00cannot open [%s]\x00PRAGMA journal_mode=%Q;\x00PRAGMA synchronous=OFF\x00vfsname\x00eval\x00start-client\x00begin %s (%d)\x00end %s (%d)\x00end-client\x00missing script filename\x00DROP TABLE IF EXISTS task;\nDROP TABLE IF EXISTS counters;\nDROP TABLE IF EXISTS client;\nCREATE TABLE task(\n id INTEGER PRIMARY KEY,\n name TEXT,\n client INTEGER,\n starttime DATE,\n endtime DATE,\n script TEXT\n);CREATE INDEX task_i1 ON task(client, starttime);\nCREATE INDEX task_i2 ON task(client, endtime);\nCREATE TABLE counters(nError,nTest);\nINSERT INTO counters VALUES(0,0);\nCREATE TABLE client(id INTEGER PRIMARY KEY, wantHalt);\n\x00begin script [%s] cycle %d\n\x00end script [%s] cycle %d\n\x00during shutdown...\n\x00UPDATE client SET wantHalt=1\x00SELECT 1 FROM client\x00SELECT nError, nTest FROM counters\x00Summary: %d errors out of %d tests\n\x00END: %s\x00" +var ts1 = "%s%.*s\n\x00%s:ERROR: \x00%s:FATAL: \x00UPDATE client SET wantHalt=1;\x00%s: \x00main\x00timeout after %dms\x00[%.*s]\x00(info) %s\x00(errcode=%d) %s\x00%s\n%s\n\x00out of memory\x00 \x00nil\x00'\x00error(%d)\x00BEGIN IMMEDIATE\x00in startScript: %s\x00UPDATE counters SET nError=nError+%d, nTest=nTest+%d\x00SELECT 1 FROM client WHERE id=%d AND wantHalt\x00DELETE FROM client WHERE id=%d\x00COMMIT TRANSACTION;\x00SELECT script, id, name FROM task WHERE client=%d AND starttime IS NULL ORDER BY id LIMIT 1\x00%s\x00UPDATE task SET starttime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00Waited over 30 seconds with no work. Giving up.\x00DELETE FROM client WHERE id=%d; COMMIT;\x00COMMIT\x00UPDATE task SET endtime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00INSERT OR IGNORE INTO client VALUES(%d,0)\x00%s \"%s\" --client %d --trace %d\x00%z --sqltrace\x00%z --sync\x00%z --vfs \"%s\"\x00system('%q')\x00%z &\x00system() fails with error code %d\x00rb\x00cannot open \"%s\" for reading\x00--end\x00--endif\x00--else\x00--if\x00SELECT 1 FROM task WHERE client=%d AND client IN (SELECT id FROM client) AND endtime IS NULL\x00SELECT 1 FROM task WHERE client IN (SELECT id FROM client) AND endtime IS NULL\x00\x00%stimeout waiting for client %d\x00%stimeout waiting for all clients\x00on\x00yes\x00off\x00no\x00unknown boolean: [%s]\x00%.*s\x00sleep\x00exit\x00testcase\x00finish\x00reset\x00match\x00line %d of %s:\nExpected [%.*s]\n Got [%s]\x00glob\x00notglob\x00line %d of %s:\nExpected [%s]\n Got [%s]\x00output\x00source\x00%.*s/%s\x00begin script [%s]\n\x00end script [%s]\n\x00print\x00if\x00SELECT %.*s\x00else\x00endif\x00start\x00wait\x00line %d of %s\n\x00task\x00line %d of %s: bad client number: %d\x00%s:%d\x00INSERT INTO task(client,script,name) VALUES(%d,'%q',%Q)\x00breakpoint\x00show-sql-errors\x00line %d of %s: unknown command --%s\x00command-line option \"--%s\" requires an argument\x00Usage: %s DATABASE ?OPTIONS? ?SCRIPT?\n\x00Options:\n --errlog FILENAME Write errors to FILENAME\n --journalmode MODE Use MODE as the journal_mode\n --log FILENAME Log messages to FILENAME\n --quiet Suppress unnecessary output\n --vfs NAME Use NAME as the VFS\n --repeat N Repeat the test N times\n --sqltrace Enable SQL tracing\n --sync Enable synchronous disk writes\n --timeout MILLISEC Busy timeout is MILLISEC\n --trace BOOLEAN Enable or disable tracing\n\x00%s: unrecognized arguments:\x00 %s\x00\n\x00*.test\x002021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886\x00SQLite library and header mismatch\nLibrary: %s\nHeader: %s\n\x00%05d.mptest\x00journalmode\x00repeat\x00vfs\x00client\x00errlog\x00log\x00trace\x00quiet\x00timeout\x00sqltrace\x00sync\x00a\x00illegal client number: %d\n\x00%05d.client%02d\x00BEGIN: %s\x00With SQLite 3.35.5 2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886\n\x00-DSQLITE_%s\n\x00... %strying to unlink '%s'\n\x00still \x00unable to unlink '%s' after %d attempts\n\x00cannot open [%s]\x00PRAGMA journal_mode=%Q;\x00PRAGMA synchronous=OFF\x00vfsname\x00eval\x00start-client\x00begin %s (%d)\x00end %s (%d)\x00end-client\x00missing script filename\x00DROP TABLE IF EXISTS task;\nDROP TABLE IF EXISTS counters;\nDROP TABLE IF EXISTS client;\nCREATE TABLE task(\n id INTEGER PRIMARY KEY,\n name TEXT,\n client INTEGER,\n starttime DATE,\n endtime DATE,\n script TEXT\n);CREATE INDEX task_i1 ON task(client, starttime);\nCREATE INDEX task_i2 ON task(client, endtime);\nCREATE TABLE counters(nError,nTest);\nINSERT INTO counters VALUES(0,0);\nCREATE TABLE client(id INTEGER PRIMARY KEY, wantHalt);\n\x00begin script [%s] cycle %d\n\x00end script [%s] cycle %d\n\x00during shutdown...\n\x00UPDATE client SET wantHalt=1\x00SELECT 1 FROM client\x00SELECT nError, nTest FROM counters\x00Summary: %d errors out of %d tests\n\x00END: %s\x00" var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data diff --git a/internal/testfixture/testfixture_darwin_arm64.go b/internal/testfixture/testfixture_darwin_arm64.go index 07ba48d..d8979fe 100644 --- a/internal/testfixture/testfixture_darwin_arm64.go +++ b/internal/testfixture/testfixture_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_SERIES_CONSTRAINT_VERIFY=1 -DSQLITE_SERVER=1 -DTCLSH_INIT_PROC=sqlite3TestInit -D_HAVE_SQLITE_CONFIG_H -I/usr/include/tcl8.6 -export-defines "" -export-fields F -trace-translation-units -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt -lmodernc.org/sqlite/libtest -lmodernc.org/tcl/lib -lmodernc.org/z/lib -o internal/testfixture/testfixture_darwin_arm64.go -Itestdata/sqlite-src-3350400/ext/async -Itestdata/sqlite-src-3350400/ext/fts3 -Itestdata/sqlite-src-3350400/ext/icu -Itestdata/sqlite-src-3350400/ext/rtree -Itestdata/sqlite-src-3350400/ext/session -Itestdata/sqlite-src-3350400/ext/userauth -Itestdata/sqlite-src-3350400/src -Itestdata/sqlite-amalgamation-3350400 -Itestdata/sqlite-src-3350400 testdata/sqlite-src-3350400/ext/expert/sqlite3expert.c testdata/sqlite-src-3350400/ext/expert/test_expert.c testdata/sqlite-src-3350400/ext/fts3/fts3_term.c testdata/sqlite-src-3350400/ext/fts3/fts3_test.c testdata/sqlite-src-3350400/ext/fts5/fts5_tcl.c testdata/sqlite-src-3350400/ext/fts5/fts5_test_mi.c testdata/sqlite-src-3350400/ext/fts5/fts5_test_tok.c testdata/sqlite-src-3350400/ext/misc/appendvfs.c testdata/sqlite-src-3350400/ext/misc/amatch.c testdata/sqlite-src-3350400/ext/misc/carray.c testdata/sqlite-src-3350400/ext/misc/cksumvfs.c testdata/sqlite-src-3350400/ext/misc/closure.c testdata/sqlite-src-3350400/ext/misc/csv.c testdata/sqlite-src-3350400/ext/misc/decimal.c testdata/sqlite-src-3350400/ext/misc/eval.c testdata/sqlite-src-3350400/ext/misc/explain.c testdata/sqlite-src-3350400/ext/misc/fileio.c testdata/sqlite-src-3350400/ext/misc/fuzzer.c testdata/sqlite-src-3350400/ext/misc/ieee754.c testdata/sqlite-src-3350400/ext/misc/mmapwarm.c testdata/sqlite-src-3350400/ext/misc/nextchar.c testdata/sqlite-src-3350400/ext/misc/normalize.c testdata/sqlite-src-3350400/ext/misc/percentile.c testdata/sqlite-src-3350400/ext/misc/prefixes.c testdata/sqlite-src-3350400/ext/misc/regexp.c testdata/sqlite-src-3350400/ext/misc/remember.c testdata/sqlite-src-3350400/ext/misc/series.c testdata/sqlite-src-3350400/ext/misc/spellfix.c testdata/sqlite-src-3350400/ext/misc/totype.c testdata/sqlite-src-3350400/ext/misc/unionvtab.c testdata/sqlite-src-3350400/ext/misc/wholenumber.c testdata/sqlite-src-3350400/ext/misc/zipfile.c testdata/sqlite-src-3350400/ext/rbu/test_rbu.c testdata/sqlite-src-3350400/ext/userauth/userauth.c testdata/sqlite-src-3350400/src/tclsqlite.c testdata/sqlite-src-3350400/src/test1.c testdata/sqlite-src-3350400/src/test2.c testdata/sqlite-src-3350400/src/test3.c testdata/sqlite-src-3350400/src/test4.c testdata/sqlite-src-3350400/src/test5.c testdata/sqlite-src-3350400/src/test6.c testdata/sqlite-src-3350400/src/test7.c testdata/sqlite-src-3350400/src/test8.c testdata/sqlite-src-3350400/src/test9.c testdata/sqlite-src-3350400/src/test_async.c testdata/sqlite-src-3350400/src/test_autoext.c testdata/sqlite-src-3350400/src/test_backup.c testdata/sqlite-src-3350400/src/test_bestindex.c testdata/sqlite-src-3350400/src/test_blob.c testdata/sqlite-src-3350400/src/test_btree.c testdata/sqlite-src-3350400/src/test_config.c testdata/sqlite-src-3350400/src/test_delete.c testdata/sqlite-src-3350400/src/test_demovfs.c testdata/sqlite-src-3350400/src/test_devsym.c testdata/sqlite-src-3350400/src/test_fs.c testdata/sqlite-src-3350400/src/test_func.c testdata/sqlite-src-3350400/src/test_hexio.c testdata/sqlite-src-3350400/src/test_init.c testdata/sqlite-src-3350400/src/test_intarray.c testdata/sqlite-src-3350400/src/test_journal.c testdata/sqlite-src-3350400/src/test_malloc.c testdata/sqlite-src-3350400/src/test_md5.c testdata/sqlite-src-3350400/src/test_multiplex.c testdata/sqlite-src-3350400/src/test_mutex.c testdata/sqlite-src-3350400/src/test_onefile.c testdata/sqlite-src-3350400/src/test_osinst.c testdata/sqlite-src-3350400/src/test_pcache.c testdata/sqlite-src-3350400/src/test_quota.c testdata/sqlite-src-3350400/src/test_rtree.c testdata/sqlite-src-3350400/src/test_schema.c testdata/sqlite-src-3350400/src/test_server.c testdata/sqlite-src-3350400/src/test_superlock.c testdata/sqlite-src-3350400/src/test_syscall.c testdata/sqlite-src-3350400/src/test_tclsh.c testdata/sqlite-src-3350400/src/test_tclvar.c testdata/sqlite-src-3350400/src/test_thread.c testdata/sqlite-src-3350400/src/test_vdbecov.c testdata/sqlite-src-3350400/src/test_vfs.c testdata/sqlite-src-3350400/src/test_windirent.c testdata/sqlite-src-3350400/src/test_window.c testdata/sqlite-src-3350400/src/test_wsd.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CKSUMVFS_STATIC -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_HAVE_ZLIB=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC -lmodernc.org/sqlite/internal/libc2', DO NOT EDIT. +// Code generated by 'ccgo -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_SERIES_CONSTRAINT_VERIFY=1 -DSQLITE_SERVER=1 -DTCLSH_INIT_PROC=sqlite3TestInit -D_HAVE_SQLITE_CONFIG_H -I/usr/include/tcl8.6 -export-defines "" -export-fields F -trace-translation-units -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt -lmodernc.org/sqlite/libtest -lmodernc.org/tcl/lib -lmodernc.org/z/lib -o internal/testfixture/testfixture_darwin_arm64.go -Itestdata/sqlite-src-3350500/ext/async -Itestdata/sqlite-src-3350500/ext/fts3 -Itestdata/sqlite-src-3350500/ext/icu -Itestdata/sqlite-src-3350500/ext/rtree -Itestdata/sqlite-src-3350500/ext/session -Itestdata/sqlite-src-3350500/ext/userauth -Itestdata/sqlite-src-3350500/src -Itestdata/sqlite-amalgamation-3350500 -Itestdata/sqlite-src-3350500 testdata/sqlite-src-3350500/ext/expert/sqlite3expert.c testdata/sqlite-src-3350500/ext/expert/test_expert.c testdata/sqlite-src-3350500/ext/fts3/fts3_term.c testdata/sqlite-src-3350500/ext/fts3/fts3_test.c testdata/sqlite-src-3350500/ext/fts5/fts5_tcl.c testdata/sqlite-src-3350500/ext/fts5/fts5_test_mi.c testdata/sqlite-src-3350500/ext/fts5/fts5_test_tok.c testdata/sqlite-src-3350500/ext/misc/appendvfs.c testdata/sqlite-src-3350500/ext/misc/amatch.c testdata/sqlite-src-3350500/ext/misc/carray.c testdata/sqlite-src-3350500/ext/misc/cksumvfs.c testdata/sqlite-src-3350500/ext/misc/closure.c testdata/sqlite-src-3350500/ext/misc/csv.c testdata/sqlite-src-3350500/ext/misc/decimal.c testdata/sqlite-src-3350500/ext/misc/eval.c testdata/sqlite-src-3350500/ext/misc/explain.c testdata/sqlite-src-3350500/ext/misc/fileio.c testdata/sqlite-src-3350500/ext/misc/fuzzer.c testdata/sqlite-src-3350500/ext/misc/ieee754.c testdata/sqlite-src-3350500/ext/misc/mmapwarm.c testdata/sqlite-src-3350500/ext/misc/nextchar.c testdata/sqlite-src-3350500/ext/misc/normalize.c testdata/sqlite-src-3350500/ext/misc/percentile.c testdata/sqlite-src-3350500/ext/misc/prefixes.c testdata/sqlite-src-3350500/ext/misc/regexp.c testdata/sqlite-src-3350500/ext/misc/remember.c testdata/sqlite-src-3350500/ext/misc/series.c testdata/sqlite-src-3350500/ext/misc/spellfix.c testdata/sqlite-src-3350500/ext/misc/totype.c testdata/sqlite-src-3350500/ext/misc/unionvtab.c testdata/sqlite-src-3350500/ext/misc/wholenumber.c testdata/sqlite-src-3350500/ext/misc/zipfile.c testdata/sqlite-src-3350500/ext/rbu/test_rbu.c testdata/sqlite-src-3350500/ext/userauth/userauth.c testdata/sqlite-src-3350500/src/tclsqlite.c testdata/sqlite-src-3350500/src/test1.c testdata/sqlite-src-3350500/src/test2.c testdata/sqlite-src-3350500/src/test3.c testdata/sqlite-src-3350500/src/test4.c testdata/sqlite-src-3350500/src/test5.c testdata/sqlite-src-3350500/src/test6.c testdata/sqlite-src-3350500/src/test7.c testdata/sqlite-src-3350500/src/test8.c testdata/sqlite-src-3350500/src/test9.c testdata/sqlite-src-3350500/src/test_async.c testdata/sqlite-src-3350500/src/test_autoext.c testdata/sqlite-src-3350500/src/test_backup.c testdata/sqlite-src-3350500/src/test_bestindex.c testdata/sqlite-src-3350500/src/test_blob.c testdata/sqlite-src-3350500/src/test_btree.c testdata/sqlite-src-3350500/src/test_config.c testdata/sqlite-src-3350500/src/test_delete.c testdata/sqlite-src-3350500/src/test_demovfs.c testdata/sqlite-src-3350500/src/test_devsym.c testdata/sqlite-src-3350500/src/test_fs.c testdata/sqlite-src-3350500/src/test_func.c testdata/sqlite-src-3350500/src/test_hexio.c testdata/sqlite-src-3350500/src/test_init.c testdata/sqlite-src-3350500/src/test_intarray.c testdata/sqlite-src-3350500/src/test_journal.c testdata/sqlite-src-3350500/src/test_malloc.c testdata/sqlite-src-3350500/src/test_md5.c testdata/sqlite-src-3350500/src/test_multiplex.c testdata/sqlite-src-3350500/src/test_mutex.c testdata/sqlite-src-3350500/src/test_onefile.c testdata/sqlite-src-3350500/src/test_osinst.c testdata/sqlite-src-3350500/src/test_pcache.c testdata/sqlite-src-3350500/src/test_quota.c testdata/sqlite-src-3350500/src/test_rtree.c testdata/sqlite-src-3350500/src/test_schema.c testdata/sqlite-src-3350500/src/test_server.c testdata/sqlite-src-3350500/src/test_superlock.c testdata/sqlite-src-3350500/src/test_syscall.c testdata/sqlite-src-3350500/src/test_tclsh.c testdata/sqlite-src-3350500/src/test_tclvar.c testdata/sqlite-src-3350500/src/test_thread.c testdata/sqlite-src-3350500/src/test_vdbecov.c testdata/sqlite-src-3350500/src/test_vfs.c testdata/sqlite-src-3350500/src/test_windirent.c testdata/sqlite-src-3350500/src/test_window.c testdata/sqlite-src-3350500/src/test_wsd.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CKSUMVFS_STATIC -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_HAVE_ZLIB=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC -lmodernc.org/sqlite/internal/libc2', DO NOT EDIT. package main @@ -489,7 +489,7 @@ const ( SQLITE_SHM_SHARED = 4 SQLITE_SHM_UNLOCK = 1 SQLITE_SOUNDEX = 1 - SQLITE_SOURCE_ID = "2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e" + SQLITE_SOURCE_ID = "2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886" SQLITE_STATUS_MALLOC_COUNT = 9 SQLITE_STATUS_MALLOC_SIZE = 5 SQLITE_STATUS_MEMORY_USED = 0 @@ -563,8 +563,8 @@ const ( SQLITE_UTF16LE = 2 SQLITE_UTF16_ALIGNED = 8 SQLITE_UTF8 = 1 - SQLITE_VERSION = "3.35.4" - SQLITE_VERSION_NUMBER = 3035004 + SQLITE_VERSION = "3.35.5" + SQLITE_VERSION_NUMBER = 3035005 SQLITE_VTAB_CONSTRAINT_SUPPORT = 1 SQLITE_VTAB_DIRECTONLY = 3 SQLITE_VTAB_INNOCUOUS = 2 @@ -1485,12 +1485,18 @@ const ( IOPOL_TYPE_DISK = 0 IOPOL_TYPE_VFS_ATIME_UPDATES = 2 IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION = 6 + IOPOL_TYPE_VFS_IGNORE_PERMISSIONS = 7 IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES = 3 + IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE = 8 IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME = 4 IOPOL_TYPE_VFS_TRIGGER_RESOLVE = 5 IOPOL_UTILITY = 4 IOPOL_VFS_CONTENT_PROTECTION_DEFAULT = 0 IOPOL_VFS_CONTENT_PROTECTION_IGNORE = 1 + IOPOL_VFS_IGNORE_PERMISSIONS_OFF = 0 + IOPOL_VFS_IGNORE_PERMISSIONS_ON = 1 + IOPOL_VFS_SKIP_MTIME_UPDATE_OFF = 0 + IOPOL_VFS_SKIP_MTIME_UPDATE_ON = 1 IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME = 1 IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT = 0 IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT = 0 @@ -3094,7 +3100,7 @@ const ( P5_ConstraintUnique = 2 PACKAGE_BUGREPORT = "" PACKAGE_NAME = "sqlite" - PACKAGE_STRING = "sqlite 3.35.4" + PACKAGE_STRING = "sqlite 3.35.5" PACKAGE_TARNAME = "sqlite" PAGER_CACHESPILL = 0x20 PAGER_CKPT_FULLFSYNC = 0x10 @@ -18275,6 +18281,7 @@ type __darwin_arm_neon_state = struct { } /* _structs.h:448:1 */ type __darwin_arm_amx_state_v1 = struct { + _ [0]uint64 F__x [8][64]uint8 F__y [8][64]uint8 F__z [64][64]uint8 @@ -55758,7 +55765,7 @@ func Sqlite3_Init(tls *libc.TLS, interp uintptr) int32 { /* tclsqlite.c:3877:12: tcl.XTcl_CreateObjCommand(tls, interp, ts+13957 /* "sqlite" */, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{DbMain})), uintptr(0), uintptr(0)) - rc = tcl.XTcl_PkgProvide(tls, interp, ts+13949 /* "sqlite3" */, ts+13964 /* "3.35.4" */) + rc = tcl.XTcl_PkgProvide(tls, interp, ts+13949 /* "sqlite3" */, ts+13964 /* "3.35.5" */) } return rc } @@ -98738,5 +98745,5 @@ func init() { *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&zipfileModule)) + 144 /* .xFindFunction */)) = zipfileFindFunction // zipfile.c:2162:5: } -var ts1 = "%s\x00internal error!\x00SELECT * FROM main.%Q WHERE sample()\x00expert\x00PRAGMA table_xinfo=%Q\x00main\x00, \x00%Q\x00 COLLATE %Q\x00 COLLATE %s\x00 DESC\x00PRAGMA index_list=%Q\x00PRAGMA index_xInfo=%Q\x00%s_idx_%08x\x00CREATE INDEX '%q' ON %Q(%s)\x00CREATE INDEX %s ON %s(%s)\x00EXPLAIN QUERY PLAN %s\x00 USING INDEX \x00 USING COVERING INDEX \x00%s\n\x00%s;\n\x00SELECT 'CREATE TEMP' || substr(sql, 7) FROM sqlite_schema WHERE tbl_name = %Q AND type IN ('table', 'trigger') ORDER BY type;\x00ALTER TABLE temp.%Q RENAME TO %Q\x00INSERT INTO %Q VALUES(\x00%s?\x00\x00)\x00UPDATE %Q SET \x00%s%Q=?\x00DELETE FROM %Q\x00t592690916721053953805701627921227776\x00DROP TABLE t592690916721053953805701627921227776\x00SELECT type, name, sql, 1 FROM sqlite_schema WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%%' UNION ALL SELECT type, name, sql, 2 FROM sqlite_schema WHERE type = 'trigger' AND tbl_name IN(SELECT name FROM sqlite_schema WHERE type = 'view') ORDER BY 4, 1\x00CREATE TABLE x(\x00%s%Q COLLATE %s\x00CREATE VIRTUAL TABLE %Q USING expert(%Q)\x00SELECT max(i.seqno) FROM sqlite_schema AS s, pragma_index_list(s.name) AS l, pragma_index_info(l.name) AS i WHERE s.type = 'table'\x00%sx.%Q IS rem(%d, x.%Q) COLLATE %s\x00%s%d\x00SELECT %s FROM %Q x ORDER BY %s\x00SELECT %s FROM temp.t592690916721053953805701627921227776 x ORDER BY %s\x00%d\x00 %d\x00DROP TABLE IF EXISTS temp.t592690916721053953805701627921227776\x00CREATE TABLE temp.t592690916721053953805701627921227776 AS SELECT * FROM %Q\x00SELECT s.rowid, s.name, l.name FROM sqlite_schema AS s, pragma_index_list(s.name) AS l WHERE s.type = 'table'\x00SELECT name, coll FROM pragma_index_xinfo(?) WHERE key\x00INSERT INTO sqlite_stat1 VALUES(?, ?, ?)\x00ANALYZE; PRAGMA writable_schema=1\x00rem\x00sample\x00ANALYZE sqlite_schema\x00:memory:\x00SELECT sql FROM sqlite_schema WHERE name NOT LIKE 'sqlite_%%' AND sql NOT LIKE 'CREATE VIRTUAL %%'\x00%s;%s%s\n\x00 -- stat1: \x00no such handle: \x00sql\x00TABLE\x00analyze\x00count\x00report\x00STMT EREPORT\x00destroy\x00SUBCOMMAND ...\x00sub-command\x00indexes\x00plan\x00candidates\x00DB\x00sqlite3expert%d\x00out of memory\x00sqlite3_expert_new\x00SQLITE_DONE\x00SQLITE_ERROR\x00SQLITE_OK\x00SELECT fts5(?1)\x00error: \x00fts5_api_ptr\x00f5t_2_%lld\x00xColumnCount\x00xRowCount\x00xColumnTotalSize\x00COL\x00xTokenize\x00TEXT SCRIPT\x00xPhraseCount\x00xPhraseSize\x00PHRASE\x00xInstCount\x00xInst\x00IDX\x00xRowid\x00xColumnText\x00xColumnSize\x00xQueryPhrase\x00PHRASE SCRIPT\x00xSetAuxdata\x00VALUE\x00xGetAuxdata\x00CLEAR\x00xSetAuxdataInt\x00INTEGER\x00xGetAuxdataInt\x00xPhraseForeach\x00IPHRASE COLVAR OFFVAR SCRIPT\x00xPhraseColumnForeach\x00IPHRASE COLVAR SCRIPT\x00SUB-COMMAND\x00f5t_%lld\x00bytearray\x00boolean\x00double\x00wideInt\x00int\x00DB NAME SCRIPT\x00?-subst? DB NAME TEXT\x00-subst\x00unrecognized option: \x00no such tokenizer: \x00error in tokenizer.xCreate()\x00error in tokenizer.xTokenize()\x00document\x00aux\x00query\x00prefixquery\x00invalid\x00-colocated\x00sqlite3_fts5_token may only be used by tokenizer callback\x00?-colocated? TEXT START END\x00error in fts5_api.xCreateTokenizer()\x00?BOOLEAN?\x00NSLOT TOKEN\x00sqlite3_fts5_create_tokenizer\x00sqlite3_fts5_token\x00sqlite3_fts5_tokenize\x00sqlite3_fts5_create_function\x00sqlite3_fts5_may_be_corrupt\x00sqlite3_fts5_token_hash\x00sqlite3_fts5_register_matchinfo\x00sqlite3_fts5_register_fts5tokenize\x00unrecognized matchinfo flag: %c\x00pcx\x00matchinfo\x00CREATE TABLE x(input HIDDEN, token, start, end, position)\x00fts5tokenize\x00apndvfs\x00Start-Of-SQLite3-\x00apnd(%lld)/%z\x00SQLite format 3\x00%s: cost must be between 1 and %d\x00%s: maximum string length is %d\x00%s: iLang must be between 0 and %d\x00?\x00SELECT * FROM %Q.%Q\x00%s: %s\x00%s: %s has %d columns, expected 4\x00vocabulary_table\x00vocabulary_word\x00vocabulary_language\x00edit_distances\x00unrecognized argument: [%s]\n\x00no edit_distances table specified\x00CREATE TABLE x(word,distance,language,command HIDDEN,nword HIDDEN)\x000123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ^abcdefghijklmnopqrstuvwxyz~\x00SELECT \"%w\" FROM \"%w\"\x00 WHERE \"%w\">=?1 AND \"%w\"=?2 ORDER BY 1\x00SELECT \"%w\" FROM \"%w\" WHERE \"%w\">=?1 ORDER BY 1\x00*\x00DELETE from %s is not allowed\x00UPDATE of %s is not allowed\x00INSERT INTO %s allowed for column [command] only\x00approximate_match\x00int32\x00int64\x00char*\x00CREATE TABLE x(value,pointer hidden,count hidden,ctype hidden)\x00carray-bind\x00carray\x00unknown datatype: %Q\x00inttoptr\x00cksmvfs\x00ZV-\x00checksum fault offset %lld of \"%s\"\x00checksum_verification\x00enable%\x00yes\x00on\x00page_size\x00cksm/%z\x00verify_checksum\x00tablename\x00idcolumn\x00parentcolumn\x00CREATE TABLE x(id,depth,root HIDDEN,tablename HIDDEN,idcolumn HIDDEN,parentcolumn HIDDEN)\x00SELECT \"%w\".\"%w\" FROM \"%w\" WHERE \"%w\".\"%w\"=?1\x00transitive_closure\x00rb\x00cannot open '%s' for reading\x00line %d: unescaped %c character\x00line %d: unterminated %c-quoted field\n\x00more than one '%s' parameter\x00true\x00no\x00off\x00false\x00header\x00more than one 'header' parameter\x00testflags\x00columns\x00more than one 'columns' parameter\x00column= value must be positive\x00bad parameter: '%s'\x00must specify either filename= or data= but not both\x00%sc%d TEXT\x00,\x00%s\"%w\" TEXT\x00bad schema: '%s' - %s\x00filename\x00data\x00schema\x00csv\x00csv_wr\x00decimal_sum\x00decimal\x00decimal_cmp\x00decimal_add\x00decimal_sub\x00decimal_mul\x00 \x00eval\x00CREATE TABLE x(addr,opcode,p1,p2,p3,p4,p5,comment,sql HIDDEN)\x00EXPLAIN %s\x00explain\x00wb\x00wrong number of arguments to function writefile()\x00failed to create symlink: %s\x00failed to create directory: %s\x00failed to write file: %s\x00CREATE TABLE x(name,mode,mtime,data,path HIDDEN,dir HIDDEN)\x00cannot read directory: %s\x00%s/%s\x00cannot stat file: %s\x00table function fsdir requires an argument\x00table function fsdir requires a non-NULL argument\x00fsdir\x00readfile\x00writefile\x00lsmode\x00%s: ruleset must be between 0 and %d\x00%s: wrong number of CREATE VIRTUAL TABLE arguments\x00CREATE TABLE x(word,distance,ruleset)\x00fuzzer\x00ieee754(%lld,%d)\x00ieee754\x00ieee754_mantissa\x00ieee754_exponent\x00ieee754_to_blob\x00ieee754_from_blob\x00BEGIN; SELECT * FROM %s%q%ssqlite_schema\x00'\x00'.\x00PRAGMA %s%q%spage_size\x00sqlite3_mmap_warm_cache: Warmed up %d pages of %s\x00END\x00AND (%s)\x00collate \"%w\"\x00SELECT %s FROM %s WHERE %s>=(?1 || ?2) %s AND %s<=(?1 || char(1114111)) %s %s ORDER BY 1 %s ASC LIMIT 1\x00next_char\x00NULL\x00is\x00not\x00in(\x00in(select\x00in(with\x00?,?,?\x002nd argument to percentile() is not a number between 0.0 and 100.0\x002nd argument to percentile() is not the same for all input rows\x001st argument to percentile() is not numeric\x00Inf input to percentile()\x00percentile\x00CREATE TABLE prefixes(prefix TEXT, original_string TEXT HIDDEN)\x00prefixes\x00prefix_length\x00unknown \\ escape\x00afnrtv\\()*.+?[$^{|}]\x00\a\f\n\r\t\v\x00unmatched '('\x00'*' without operand\x00'+' without operand\x00'?' without operand\x00'{m,n}' without operand\x00unmatched '{'\x00n less than m in '{m,n}'\x00both m and n are zero in '{m,n}'\x00POSIX character classes not supported\x00unclosed '['\x00unrecognized character\x00regexp\x00remember\x00CREATE TABLE x(value,start hidden,stop hidden,step hidden)\x00generate_series() requires SQLite 3.8.12 or later\x00generate_series\x00.ABCDHLRMY9 ?\x00non-ASCII input to editdist()\x00NULL input to editdist()\x00SELECT iLang, cFrom, cTo, iCost FROM \"%w\" WHERE iLang>=0 ORDER BY iLang\x00editdist3\x00DROP TABLE IF EXISTS \"%w\".\"%w_vocab\"\x00CREATE TABLE x(word,rank,distance,langid, score, matchlen, phonehash HIDDEN, top HIDDEN, scope HIDDEN, srchcnt HIDDEN, soundslike HIDDEN, command HIDDEN)\x00CREATE TABLE IF NOT EXISTS \"%w\".\"%w_vocab\"(\n id INTEGER PRIMARY KEY,\n rank INT,\n langid INT,\n word TEXT,\n k1 TEXT,\n k2 TEXT\n);\n\x00CREATE INDEX IF NOT EXISTS \"%w\".\"%w_vocab_index_langid_k2\" ON \"%w_vocab\"(langid,k2);\x00edit_cost_table=\x00bad argument to spellfix1(): \"%s\"\x00SELECT id, word, rank, coalesce(k1,word) FROM \"%w\".\"%w_vocab\" WHERE langid=%d AND k2>=?1 AND k2=%lld\x00AND\x00%z %s rowid<=%lld\x00CREATE TABLE x(value)\x00wholenumber\x00CREATE TABLE y(name PRIMARY KEY,mode,mtime,sz,rawdata,data,method,z HIDDEN) WITHOUT ROWID;\x00zipfile\x00zipfile constructor requires one argument\x00error in fread()\x00error in fwrite()\x00failed to read CDS at offset %lld\x00%.*s\x00failed to read LFH at offset %d\x001.2.11\x00inflateInit2() failed (%d)\x00inflate() failed (%d)\x00zipfile: deflate() error\x00cannot find end of central directory record\x00zipfile() function requires an argument\x00cannot open file: %s\x00-rwxrwxrwx\x00zipfile: mode does not match data\x00zipfile: parse error in mode: %s\x00zipfile: missing filename\x00ab+\x00zipfile: failed to open file %s for writing\x00sz must be NULL\x00rawdata must be NULL\x00unknown compression method: %d\x00%s/\x00duplicate name: \"%s\"\x00{\"version-made-by\" : %u, \"version-to-extract\" : %u, \"flags\" : %u, \"compression\" : %u, \"time\" : %u, \"date\" : %u, \"crc32\" : %u, \"compressed-size\" : %u, \"uncompressed-size\" : %u, \"file-name-length\" : %u, \"extra-field-length\" : %u, \"file-comment-length\" : %u, \"disk-number-start\" : %u, \"internal-attr\" : %u, \"external-attr\" : %u, \"offset\" : %u }\x00zipfile_cds\x00wrong number of arguments to function zipfile()\x00first argument to zipfile() must be non-NULL\x00illegal method value: %d\x00non-directory name must not end with /\x00rbu_delta\x00step\x00close\x00create_rbu_delta\x00savestate\x00dbMain_eval\x00SQL\x00bp_progress\x00db\x00RBU\x00state\x00progress\x00close_no_error\x00temp_size_limit\x00LIMIT\x00temp_size\x00dbRbu_eval\x00METHOD\x00method\x00 - \x00oal\x00move\x00checkpoint\x00done\x00error\x00NAME TARGET-DB RBU-DB ?STATE-DB?\x00NAME TARGET-DB ?STATE-DB?\x00?-default? NAME PARENT\x00NAME\x00sqlite3rbu_db(0, 0)!=0\x00sqlite3rbu\x00sqlite3rbu_vacuum\x00sqlite3rbu_create_vfs\x00sqlite3rbu_destroy_vfs\x00sqlite3rbu_internal_test\x00incrblob\x00incrblob_%d\x00%lld\x00sqlite_unlock_notify_arg\x00sqlite_unlock_notify_argcount\x00DELETE\x00INSERT\x00UPDATE\x00SQLITE_COPY\x00SQLITE_CREATE_INDEX\x00SQLITE_CREATE_TABLE\x00SQLITE_CREATE_TEMP_INDEX\x00SQLITE_CREATE_TEMP_TABLE\x00SQLITE_CREATE_TEMP_TRIGGER\x00SQLITE_CREATE_TEMP_VIEW\x00SQLITE_CREATE_TRIGGER\x00SQLITE_CREATE_VIEW\x00SQLITE_DELETE\x00SQLITE_DROP_INDEX\x00SQLITE_DROP_TABLE\x00SQLITE_DROP_TEMP_INDEX\x00SQLITE_DROP_TEMP_TABLE\x00SQLITE_DROP_TEMP_TRIGGER\x00SQLITE_DROP_TEMP_VIEW\x00SQLITE_DROP_TRIGGER\x00SQLITE_DROP_VIEW\x00SQLITE_INSERT\x00SQLITE_PRAGMA\x00SQLITE_READ\x00SQLITE_SELECT\x00SQLITE_TRANSACTION\x00SQLITE_UPDATE\x00SQLITE_ATTACH\x00SQLITE_DETACH\x00SQLITE_ALTER_TABLE\x00SQLITE_REINDEX\x00SQLITE_ANALYZE\x00SQLITE_CREATE_VTABLE\x00SQLITE_DROP_VTABLE\x00SQLITE_FUNCTION\x00SQLITE_SAVEPOINT\x00SQLITE_RECURSIVE\x00????\x00SQLITE_DENY\x00SQLITE_IGNORE\x00RELEASE _tcl_transaction\x00COMMIT\x00ROLLBACK TO _tcl_transaction ; RELEASE _tcl_transaction\x00option\x00?CALLBACK?\x00?DATABASE? FILENAME\x00cannot open target database: \x00backup failed: \x00CALLBACK\x00cache option ?arg?\x00flush\x00size\x00size n\x00cannot convert \"\x00\" to integer\x00bad option \"\x00\": must be flush or size\x00NAME SCRIPT\x00SCRIPT\x00?OPTION? ?BOOLEAN?\x00unknown config option: \"\x00\"\x00CONFLICT-ALGORITHM TABLE FILENAME ?SEPARATOR? ?NULLINDICATOR?\x00\t\x00Error: non-null separator required for copy\x00rollback\x00abort\x00fail\x00ignore\x00replace\x00Error: \"\x00\", conflict-algorithm must be one of: rollback, abort, fail, ignore, or replace\x00SELECT * FROM '%q'\x00Error: no such table: \x00Error: \x00Error: can't malloc()\x00INSERT OR %q INTO '%q' VALUES(?\x00Error: cannot open file: \x00BEGIN\x00Error: %s line %d: expected %d columns of data but found %d\x00, failed while processing line: \x00?DATABASE? VALUE\x00-maxsize\x00-readonly\x00unknown option: \x00unable to set MEMDB content\x00extension loading is turned off at compile-time\x00-withoutnulls\x00unknown option: \"\x00?OPTIONS? SQL ?ARRAY-NAME? ?SCRIPT?\x00NAME ?SWITCHES? SCRIPT\x00-argcount\x00option requires an argument: \x00number of arguments must be non-negative\x00-deterministic\x00-directonly\x00-innocuous\x00-returntype\x00real\x00text\x00blob\x00any\x00type\x00\": must be -argcount, -deterministic, -directonly, -innocuous, or -returntype\x00?-readonly? ?DB? TABLE COLUMN ROWID\x00NULLVALUE\x00N CALLBACK\x00KEY\x00cannot open source database: \x00restore failed: \x00restore failed: source database busy\x00?DATABASE?\x00(step|sort|autoindex)\x00sort\x00autoindex\x00vmstep\x00bad argument: should be autoindex, step, sort or vmstep\x00MILLISECONDS\x00?CALLBACK? ?MASK?\x00trace type\x00SAVEPOINT _tcl_transaction\x00[TYPE] SCRIPT\x00transaction type\x00BEGIN EXCLUSIVE\x00BEGIN IMMEDIATE\x00?SCRIPT?\x00SUB-COMMAND ?ARGS?\x00hook ?SCRIPT?\x00INDEX\x00-use-legacy-prepare\x00-last-stmt-ptr\x00%p\x00unknown argument: \x00authorizer\x00backup\x00bind_fallback\x00busy\x00cache\x00changes\x00collate\x00collation_needed\x00commit_hook\x00complete\x00config\x00copy\x00deserialize\x00enable_load_extension\x00errorcode\x00exists\x00function\x00interrupt\x00last_insert_rowid\x00nullvalue\x00onecolumn\x00preupdate\x00profile\x00rekey\x00restore\x00rollback_hook\x00serialize\x00status\x00timeout\x00total_changes\x00trace\x00trace_v2\x00transaction\x00unlock_notify\x00update_hook\x00version\x00wal_hook\x00defensive\x00dqs_ddl\x00dqs_dml\x00enable_fkey\x00enable_qpsg\x00enable_trigger\x00enable_view\x00fts3_tokenizer\x00legacy_alter_table\x00legacy_file_format\x00load_extension\x00no_ckpt_on_close\x00reset_database\x00trigger_eqp\x00trusted_schema\x00writable_schema\x00statement\x00row\x00deferred\x00exclusive\x00immediate\x00depth\x00hook\x00new\x00old\x00HANDLE ?FILENAME? ?-vfs VFSNAME? ?-readonly BOOLEAN? ?-create BOOLEAN? ?-nofollow BOOLEAN? ?-nomutex BOOLEAN? ?-fullmutex BOOLEAN? ?-uri BOOLEAN?\x00-version\x00-sourceid\x00-has-codec\x000\x00-key\x00-vfs\x00-create\x00-nofollow\x00-nomutex\x00-fullmutex\x00-uri\x00-translatefilename\x00sqlite3\x00sqlite\x003.35.4\x00if {[llength $argv]>=1} {\nset argv0 [lindex $argv 0]\nset argv [lrange $argv 1 end]\nsource $argv0\n} else {\nset line {}\nwhile {![eof stdin]} {\nif {$line!=\"\"} {\nputs -nonewline \"> \"\n} else {\nputs -nonewline \"% \"\n}\nflush stdout\nappend line [gets stdin]\nif {[info complete $line]} {\nif {[catch {uplevel #0 $line} result]} {\nputs stderr \"Error: $result\"\n} elseif {$result!=\"\"} {\nputs $result\n}\nset line {}\n} else {\nappend line \\n\n}\n}\n}\n\x00SQLITE_DEBUG_BREAK\x00attach debugger to process %d and press any key to continue.\n\x00utf-8\x00argc\x00argv0\x00argv\x00errorInfo\x00%s: %s\n\x00SQLITE-CONNECTION\x00command not found: \x00error code %s (%d) does not match sqlite3_errcode %s (%d)\x00OMIT_MISUSE\x00wrong # args: should be \"\x00 DB FORMAT STRING\x00 DB HEX\x00 DB\x00 DB SQL\x00%z%s%s\x00%s%n\x00abcdefghijklmnopqrstuvwxyz\x00 DB FORMAT STRING ?COUNT?\x00 DB\"\x00 FILENAME\"\x00%02x\x00%04x\x00tkt2213 is not fixed\x00text16\x00bytes\x00bytes16\x00noop\x00x_coalesce\x00hex8\x00hex16\x00tkt2213func\x00pointer_change\x00counter1\x00counter2\x00intreal\x00x_sqlite_exec\x00value of 40 handed to x_count\x00x_count totals to 42\x00x_count\x00legacy_count\x00 TEXT\"\x00 FORMAT INT INT INT\"\x00argument is not a valid 64-bit integer\x00 FORMAT INT INT ?STRING?\"\x00 INT FORMAT INT INT ?STRING?\"\x00N must be non-negative\x00 FORMAT INT INT DOUBLE\"\x00 FORMAT DOUBLE DOUBLE\"\x00 FORMAT STRING\"\x00%08x%08x\x002nd argument should be 16-characters of hex\x00DB BOOLEAN\x00DB dbname tblname colname\x00CHANNEL ROWID\x00DB-HANDLE NAME CMP-PROC DEL-PROC\x00sqlite3_create_collate_v2() failed to detect an invalid encoding\x00utf8\x00utf16\x00utf16le\x00utf16be\x00DB NAME NARG ENC SWITCHES...\x00encoding\x00-func\x00-step\x00-final\x00-destroy\x00switch\x00DB-HANDLE FILE ?PROC?\x00this build omits sqlite3_load_extension()\x00DB-HANDLE ONOFF\x00string\x00value\x00first argument should be one of: int int64 string double null value\x00 DB FUNCTION-NAME\x00 \x00STMT PARAMETER RESETFLAG\x00SQLITE_STMTSTATUS_FULLSCAN_STEP\x00SQLITE_STMTSTATUS_SORT\x00SQLITE_STMTSTATUS_AUTOINDEX\x00SQLITE_STMTSTATUS_VM_STEP\x00SQLITE_STMTSTATUS_REPREPARE\x00SQLITE_STMTSTATUS_RUN\x00SQLITE_STMTSTATUS_MEMUSED\x00NBYTE\x00DB DBNAME\x00DB DBNAME SNAPSHOT\x00SNAPSHOT\x00SNAPSHOT1 SNAPSHOT2\x00bad SNAPSHOT\x00FILE\x00PATH\x00 DB STMT\x00 STMT\x00 FROM-STMT TO-STMT\x00 VM IDX VALUE (null|static|normal)\"\x00static\x00static-nbytes\x00normal\x00blob10\x00abc\x00xyz\x00pq\x004th argument should be \"null\" or \"static\" or \"normal\"\x00(%d) \x00test_collate\x00UTF-8\x00UTF-16LE\x00UTF-16BE\x00 \x00utf16bin\x00utf16_unaligned\x00utf16_aligned\x00test_function\x00\x00STMT IDX N\x00 STMT N VALUE\x00NaN\x00SNaN\x00-NaN\x00-SNaN\x00+Inf\x00-Inf\x00Epsilon\x00-Epsilon\x00NaN0\x00-NaN0\x00 STMT N\x00 STMT N VALUE BYTES\x00 STMT N DATA BYTES\x00cannot use %d blob bytes, have %d\x00-transient\x00-static\x00-int32\x00-int64\x00-double\x00-text\x00--\x00text data must be either -static or -transient\x00cannot be both -static and -transient\x00[OPTIONS] STMT IDX VALUE ...\x00STMT\x00STMT N\x00STMT NAME\x00 DB sql bytes ?tailvar?\x00 DB sql bytes tailvar\x00 DB sql bytes flags tailvar\x00\x00SELECT 1\x00 filename options-list\x00FILENAME FLAGS VFS\x00SQLITE_OPEN_READONLY\x00SQLITE_OPEN_READWRITE\x00SQLITE_OPEN_CREATE\x00SQLITE_OPEN_DELETEONCLOSE\x00SQLITE_OPEN_EXCLUSIVE\x00SQLITE_OPEN_AUTOPROXY\x00SQLITE_OPEN_MAIN_DB\x00SQLITE_OPEN_TEMP_DB\x00SQLITE_OPEN_TRANSIENT_DB\x00SQLITE_OPEN_MAIN_JOURNAL\x00SQLITE_OPEN_TEMP_JOURNAL\x00SQLITE_OPEN_SUBJOURNAL\x00SQLITE_OPEN_SUPER_JOURNAL\x00SQLITE_OPEN_NOMUTEX\x00SQLITE_OPEN_FULLMUTEX\x00SQLITE_OPEN_SHAREDCACHE\x00SQLITE_OPEN_PRIVATECACHE\x00SQLITE_OPEN_WAL\x00SQLITE_OPEN_URI\x00flag\x00\x00 STMT column\x00FLOAT\x00TEXT\x00BLOB\x00 DB MAGIC\x00SQLITE_MAGIC_OPEN\x00SQLITE_MAGIC_CLOSED\x00SQLITE_MAGIC_BUSY\x00SQLITE_MAGIC_ERROR\x00 DB function-name\x00VARIABLE\x00?N?\x001234567890000000\x00__one\x00__two\x00notadatabase\x00Unexpected non-zero errno: \x00DB [DBNAME]\x00%u\x00DB DBNAME SIZE\x00 DB PWD\x00PWD too big\x00%s/test.proxy\x00Lock proxy file did not match the previously assigned value\x00 DB FLAG\x00%d %d\x00 DB ?AUXDB?\x00DB N\x00 DB ID VALUE\x00unknown limit type: \x00SQLITE_LIMIT_LENGTH\x00SQLITE_LIMIT_SQL_LENGTH\x00SQLITE_LIMIT_COLUMN\x00SQLITE_LIMIT_EXPR_DEPTH\x00SQLITE_LIMIT_COMPOUND_SELECT\x00SQLITE_LIMIT_VDBE_OP\x00SQLITE_LIMIT_FUNCTION_ARG\x00SQLITE_LIMIT_ATTACHED\x00SQLITE_LIMIT_LIKE_PATTERN_LENGTH\x00SQLITE_LIMIT_VARIABLE_NUMBER\x00SQLITE_LIMIT_TRIGGER_DEPTH\x00SQLITE_LIMIT_WORKER_THREADS\x00SQLITE_LIMIT_TOOSMALL\x00SQLITE_LIMIT_TOOBIG\x00SEED ?DB?\x00BOOLEAN\x00current\x00max\x00min\x00recyclable\x00DB ?NAME?\x00passive\x00full\x00restart\x00truncate\x00DB MODE ?NAME?\x00mode\x00DB VALUE\x00COMMAND ...\x00command has no objProc: \x00%d %d %d %s\n\x00SQLITE_TESTCTRL_LOCALTIME_FAULT\x00SQLITE_TESTCTRL_SORTER_MMAP\x00SQLITE_TESTCTRL_IMPOSTER\x00SQLITE_TESTCTRL_INTERNAL_FUNCTIONS\x00VERB ARGS...\x00VERB\x00ONOFF\x00DB LIMIT\x00DB dbName onOff tnum\x00ru_utime=%d.%06d ru_stime=%d.%06d ru_minflt=%d ru_majflt=%d\x00DB OPT BOOLEAN\x00unknown optimization - should be one of:\x00all\x00none\x00query-flattener\x00groupby-order\x00factor-constants\x00distinct-opt\x00cover-idx-scan\x00order-by-idx-join\x00transitive\x00omit-noop-join\x00stat4\x00skip-scan\x00push-down\x00DB NAME ...\x00no such extension: \x00initialization of \x00 failed: \x00amatch\x00appendvfs\x00closure\x00fileio\x00nextchar\x00series\x00spellfix\x00totype\x00BOOL\x00DB SQL1 NSTEP SQL2\x00data error: (a!=b)\x00checksum mismatch\x00sql error: \x00TYPE\x00Deliberate panic\x00DB SETTING [VALUE]\x00SQLITE_*\x00DBCONFIG_*\x00ENABLE_*\x00unknown sqlite3_db_config setting\x00FKEY\x00TRIGGER\x00FTS3_TOKENIZER\x00LOAD_EXTENSION\x00NO_CKPT_ON_CLOSE\x00QPSG\x00TRIGGER_EQP\x00RESET_DB\x00DEFENSIVE\x00WRITABLE_SCHEMA\x00LEGACY_ALTER_TABLE\x00DQS_DML\x00DQS_DDL\x00LEGACY_FILE_FORMAT\x00DB ?SCHEMA?\x00icecube\x00DB ?DBNAME?\x00DB OFFSET DATA\x00HEXDB\x00| size %d pagesize %d\x00bad 'pagesize' field\x00bad 'size' field\x00| page %d offset %d\x00| %d: %x %x %x %x %x %x %x %x %x %x %x %x %x %x %x %x\x00sqlite_search_count\x00sqlite_found_count\x00sqlite_sort_count\x00sqlite3_max_blobsize\x00sqlite_like_count\x00sqlite_interrupt_count\x00sqlite_open_file_count\x00sqlite_current_time\x00sqlite_hostid_num\x00sqlite3_xferopt_count\x00sqlite3_pager_readdb_count\x00sqlite3_pager_writedb_count\x00sqlite3_pager_writej_count\x00unaligned_string_counter\x00sqlite_last_needed_collation\x00sqlite_query_plan\x00sqlite_opentemp_count\x00sqlite_static_bind_value\x00sqlite_static_bind_nbyte\x00sqlite_temp_directory\x00sqlite_data_directory\x00bitmask_size\x00longdouble_size\x00sqlite_sync_count\x00sqlite_fullsync_count\x00db_enter\x00db_leave\x00sqlite3_mprintf_int\x00sqlite3_mprintf_int64\x00sqlite3_mprintf_long\x00sqlite3_mprintf_str\x00sqlite3_snprintf_str\x00sqlite3_mprintf_stronly\x00sqlite3_mprintf_double\x00sqlite3_mprintf_scaled\x00sqlite3_mprintf_hexdouble\x00sqlite3_mprintf_z_test\x00sqlite3_mprintf_n_test\x00sqlite3_snprintf_int\x00sqlite3_last_insert_rowid\x00sqlite3_exec_printf\x00sqlite3_exec_hex\x00sqlite3_exec\x00sqlite3_exec_nr\x00sqlite3_get_table_printf\x00sqlite3_close\x00sqlite3_close_v2\x00sqlite3_create_function\x00sqlite3_create_aggregate\x00sqlite3_drop_modules\x00sqlite_register_test_function\x00sqlite_abort\x00sqlite_bind\x00breakpoint\x00sqlite3_key\x00sqlite3_rekey\x00sqlite_set_magic\x00sqlite3_interrupt\x00sqlite_delete_function\x00sqlite_delete_collation\x00sqlite3_get_autocommit\x00sqlite3_busy_timeout\x00printf\x00sqlite3IoTrace\x00clang_sanitize_address\x00sqlite3_db_config\x00sqlite3_txn_state\x00bad_behavior\x00register_dbstat_vtab\x00sqlite3_connection_pointer\x00intarray_addr\x00int64array_addr\x00doublearray_addr\x00textarray_addr\x00sqlite3_bind_int\x00sqlite3_bind_zeroblob\x00sqlite3_bind_zeroblob64\x00sqlite3_bind_int64\x00sqlite3_bind_double\x00sqlite3_bind_null\x00sqlite3_bind_text\x00sqlite3_bind_text16\x00sqlite3_bind_blob\x00sqlite3_carray_bind\x00sqlite3_bind_parameter_count\x00sqlite3_bind_parameter_name\x00sqlite3_bind_parameter_index\x00sqlite3_clear_bindings\x00sqlite3_sleep\x00sqlite3_errcode\x00sqlite3_extended_errcode\x00sqlite3_errmsg\x00sqlite3_errmsg16\x00sqlite3_open\x00sqlite3_open16\x00sqlite3_open_v2\x00sqlite3_complete16\x00sqlite3_normalize\x00sqlite3_prepare\x00sqlite3_prepare16\x00sqlite3_prepare_v2\x00sqlite3_prepare_v3\x00sqlite3_prepare_tkt3134\x00sqlite3_prepare16_v2\x00sqlite3_finalize\x00sqlite3_stmt_status\x00sqlite3_reset\x00sqlite3_expired\x00sqlite3_transfer_bindings\x00sqlite3_changes\x00sqlite3_step\x00sqlite3_sql\x00sqlite3_expanded_sql\x00sqlite3_next_stmt\x00sqlite3_stmt_readonly\x00sqlite3_stmt_isexplain\x00sqlite3_stmt_busy\x00uses_stmt_journal\x00sqlite3_release_memory\x00sqlite3_db_release_memory\x00sqlite3_db_cacheflush\x00sqlite3_system_errno\x00sqlite3_db_filename\x00sqlite3_db_readonly\x00sqlite3_soft_heap_limit\x00sqlite3_soft_heap_limit64\x00sqlite3_hard_heap_limit64\x00sqlite3_thread_cleanup\x00sqlite3_pager_refcounts\x00sqlite3_load_extension\x00sqlite3_enable_load_extension\x00sqlite3_extended_result_codes\x00sqlite3_limit\x00dbconfig_maindbname_icecube\x00save_prng_state\x00restore_prng_state\x00reset_prng_state\x00prng_seed\x00extra_schema_checks\x00database_never_corrupt\x00database_may_be_corrupt\x00optimization_control\x00tcl_objproc\x00sqlite3_column_count\x00sqlite3_data_count\x00sqlite3_column_type\x00sqlite3_column_blob\x00sqlite3_column_double\x00sqlite3_column_int64\x00sqlite3_column_text\x00sqlite3_column_name\x00sqlite3_column_int\x00sqlite3_column_bytes\x00sqlite3_column_decltype\x00sqlite3_column_database_name\x00sqlite3_column_table_name\x00sqlite3_column_origin_name\x00sqlite3_column_bytes16\x00sqlite3_column_text16\x00sqlite3_column_name16\x00add_alignment_test_collations\x00sqlite3_column_decltype16\x00sqlite3_column_database_name16\x00sqlite3_column_table_name16\x00sqlite3_column_origin_name16\x00sqlite3_create_collation_v2\x00sqlite3_global_recover\x00working_64bit_int\x00vfs_unlink_test\x00vfs_initfail_test\x00vfs_unregister_all\x00vfs_reregister_all\x00file_control_test\x00file_control_lasterrno_test\x00file_control_lockproxy_test\x00file_control_chunksize_test\x00file_control_sizehint_test\x00file_control_data_version\x00file_control_persist_wal\x00file_control_powersafe_overwrite\x00file_control_vfsname\x00file_control_reservebytes\x00file_control_tempfilename\x00sqlite3_vfs_list\x00sqlite3_create_function_v2\x00add_test_collate\x00add_test_collate_needed\x00add_test_function\x00add_test_utf16bin_collate\x00sqlite3_test_errstr\x00tcl_variable_type\x00sqlite3_enable_shared_cache\x00sqlite3_shared_cache_report\x00sqlite3_libversion_number\x00sqlite3_table_column_metadata\x00sqlite3_blob_reopen\x00pcache_stats\x00sqlite3_unlock_notify\x00sqlite3_wal_checkpoint\x00sqlite3_wal_checkpoint_v2\x00sqlite3_wal_autocheckpoint\x00test_sqlite3_log\x00print_explain_query_plan\x00sqlite3_test_control\x00getrusage\x00load_static_extension\x00sorter_test_fakeheap\x00sorter_test_sort4_helper\x00vfs_current_time_int64\x00sqlite3_snapshot_get\x00sqlite3_snapshot_open\x00sqlite3_snapshot_free\x00sqlite3_snapshot_cmp\x00sqlite3_snapshot_recover\x00sqlite3_snapshot_get_blob\x00sqlite3_snapshot_open_blob\x00sqlite3_snapshot_cmp_blob\x00sqlite3_delete_database\x00atomic_batch_write\x00sqlite3_mmap_warm\x00sqlite3_config_sorterref\x00decode_hexdb\x00test_write_db\x00sqlite3_register_cksumvfs\x00sqlite3_unregister_cksumvfs\x00*** OBSOLETE VARIABLE ***\x00 FILENAME N-PAGE\"\x00 ID\"\x00ref\x00page\x00err\x00hit\x00miss\x00ovfl\x00 ID PGNO\"\x00 PAGE\"\x00 PAGE DATA\"\x00 N-MEGABYTES FILE\"\x00open failed: \x00Hello, World!\x00write failed: \x00 PENDING-BYTE\"\x00fault simulator script failed: [%s]\x00 SCRIPT\"\x00 SIZE PROGRAM\"\x00sqlite_io_error_pending\x00sqlite_io_error_persist\x00sqlite_io_error_hit\x00sqlite_io_error_hardhit\x00sqlite_diskfull_pending\x00sqlite_diskfull\x00sqlite_pending_byte\x00pager_open\x00pager_close\x00pager_commit\x00pager_rollback\x00pager_stmt_begin\x00pager_stmt_commit\x00pager_stmt_rollback\x00pager_stats\x00pager_pagecount\x00page_get\x00page_lookup\x00page_unref\x00page_read\x00page_write\x00page_number\x00pager_truncate\x00fake_big_file\x00sqlite3BitvecBuiltinTest\x00sqlite3_test_control_pending_byte\x00sqlite3_test_control_fault_install\x00 FILENAME NCACHE FLAGS\"\x00read\x00write\x00 ID TABLENUM WRITEABLE\"\x00 START MULTIPLIER COUNT INCREMENT\"\x00putVarint returned %d - should be between 1 and 9\x00putVarint returned %d and getVarint returned %d\x00Wrote 0x%016llx and got back 0x%016llx\x00putVarint returned %d and GetVarint32 returned %d\x00Wrote 0x%016llx and got back 0x%016llx from GetVarint32\x00 DB-HANDLE ?N?\"\x00No such db-handle: \"\x00 BT NCACHE\"\x00?-intkey? CSR KEY VALUE\x00btree_insert\x00btree_open\x00btree_close\x00btree_begin_transaction\x00btree_pager_stats\x00btree_cursor\x00btree_close_cursor\x00btree_next\x00btree_eof\x00btree_payload_size\x00btree_first\x00btree_varint_test\x00btree_from_db\x00btree_ismemdb\x00btree_set_cache_size\x00thread ID must be an upper case letter\x00 ID FILENAME\x00thread \x00 is already running\x00failed to create the thread\x00 ID\x00no such thread\x00 ID N\x00column number out of range\x00no database is open\x00 ID SQL\x00no virtual machine available\x00 IDL\x00 ID1 ID2\x00 ID DB\x00thread_create\x00thread_wait\x00thread_halt\x00thread_argc\x00thread_argv\x00thread_colname\x00thread_result\x00thread_error\x00thread_compile\x00thread_step\x00thread_finalize\x00thread_swap\x00thread_db_get\x00thread_db_put\x00thread_stmt_get\x00 \x00hello world\x00UTF8\x00UTF16LE\x00UTF16BE\x00UTF16\x00No such encoding: \x00 \x00binarize\x00test_value_overhead\x00test_translate\x00translate_selftest\x00out of memory in the crash simulator\n\x00atomic\x00atomic512\x00atomic1k\x00atomic2k\x00atomic4k\x00atomic8k\x00atomic16k\x00atomic32k\x00atomic64k\x00sequential\x00safe_append\x00powersafe_overwrite\x00batch-atomic\x00-sectorsize\x00-characteristics\x00Bad option: \"\x00\" - must be \"-characteristics\" or \"-sectorsize\"\x00Option requires an argument: \"\x00no such flag\x00ENABLE ?DEFAULT?\x00crash\x00?OPTIONS? DELAY CRASHFILE\x00Filename is too long: \"\x00NWRITE\x00?-default? PARENT-VFS\x00-default\x00\": must be -default\x00Error in jt_register\x00sqlite3_crash_enable\x00sqlite3_crashparams\x00sqlite3_crash_now\x00sqlite3_simulate_device\x00sqlite3_crash_on_write\x00unregister_devsim\x00register_jt_vfs\x00unregister_jt_vfs\x00client_create\x00client_wait\x00client_halt\x00client_argc\x00client_argv\x00client_colname\x00client_result\x00client_error\x00client_compile\x00client_step\x00client_reset\x00client_finalize\x00client_swap\x00echo_module_fail(%s,%s)\x00echo-vtab-error: %s\x00SELECT * FROM %Q\x00PRAGMA index_list(%s)\x00PRAGMA index_info(%s)\x00echo_module\x00SELECT sql FROM sqlite_schema WHERE type = 'table' AND name = ?\x00%s%s\x00xCreate\x00CREATE TABLE %Q(logmsg)\x00xConnect\x00xDisconnect\x00xDestroy\x00DROP TABLE %Q\x00xOpen\x00xNext\x00xColumn\x00xFilter\x00, *\x00%z, %s\x00%z, NULL\x00echo_module_ignore_usable\x00xBestIndex\x00echo_module_cost\x00SELECT count(*) FROM %Q\x00SELECT rowid%z FROM %Q\x00rowid\x00=\x00<\x00>\x00<=\x00>=\x00LIKE\x00like\x00glob\x00 %s %s LIKE (SELECT '%%'||?||'%%')\x00 %s %s %s ?\x00DESC\x00ASC\x00 ORDER BY %s %s\x00xUpdate\x00 SET\x00UPDATE %Q\x00 SET rowid=?1 \x00%s %Q=?%d\x00 WHERE rowid=?%d\x00DELETE FROM %Q WHERE rowid = ?1\x00INSERT INTO %Q (\x00%s%Q\x00%s?%d\x00) VALUES(\x00echo(%s)\x00xBegin\x00echo_module_begin_fail\x00xSync\x00echo_module_sync_fail\x00xCommit\x00xRollback\x00::echo_glob_overload\x00xRename\x00ALTER TABLE %s RENAME TO %s%s\x00echo\x00echo_v2\x00DB SQL\x00register_echo_module\x00sqlite3_declare_vtab\x00N/A\x00sqlite3_create_collation\x00Error testing function: \x00sqlite3_malloc\x00sqlite3_realloc\x00c_misuse_test\x00c_realloc_test\x00c_collation_test\x00sqlite3_reset_auto_extension\x00npage\x00finish\x00remaining\x00pagecount\x00CMDNAME DESTHANDLE DESTNAME SRCHANDLE SRCNAME\x00sqlite3_backup_init() failed\x00sqlite3_backup\x00wrong number of arguments\x00unexpected: %s\x00eq\x00gt\x00le\x00lt\x00ge\x00match\x00ne\x00isnot\x00isnotnull\x00isnull\x00op\x00column\x00usable\x00desc\x00cost\x00orderby\x00idxnum\x00idxstr\x00rows\x00use\x00omit\x00unexpected: %d\x00tcl\x00register_tcl_module\x00incrblob_\x00DB DATABASE TABLE COLUMN ROWID FLAGS VARNAME\x00HANDLE\x00CHANNEL OFFSET N\x00out of memory in testdata/sqlite-src-3350400/src/test_blob.c\x00HANDLE OFFSET DATA ?NDATA?\x00sqlite3_blob_open\x00sqlite3_blob_close\x00sqlite3_blob_bytes\x00sqlite3_blob_read\x00sqlite3_blob_write\x00sqlite_options\x00malloc_usable_size\x00rowid32\x00casesensitivelike\x00curdir\x001\x00win32malloc\x00debug\x00default_ckptfullfsync\x00direct_read\x00dirsync\x00lfs\x00pagecache_overflow_stats\x00mmap\x00worker_threads\x008\x00memdebug\x008_3_names\x00cursorhints\x00hiddencolumns\x00mathlib\x00mem3\x00mem5\x00offset_sql_func\x00snapshot\x00mutex\x00mutex_noop\x00altertable\x00api_armor\x00atomicwrite\x00json1\x00has_codec\x00like_match_blobs\x00attach\x00auth\x00autoinc\x00autoreset\x00autovacuum\x00default_autovacuum\x00between_opt\x00builtin_test\x00bloblit\x00cast\x00check\x00cte\x00columnmetadata\x00oversize_cell_check\x00compileoption_diags\x00compound\x00conflict\x00crashtest\x00datetime\x00decltype\x00deprecated\x00diskio\x00floatingpoint\x00foreignkey\x00fts1\x00fts2\x00fts3\x00fts5\x00fts3_unicode\x00fts4_deferred\x00gettable\x00icu\x00icu_collations\x00integrityck\x00legacyformat\x00like_opt\x00load_ext\x00localtime\x00lookaside\x00long_double\x00memorydb\x00memorymanage\x00mergesort\x00null_trim\x00or_opt\x00rbu\x00pager_pragmas\x00pragma\x00reindex\x00rtree\x00rtree_int_only\x00schema_pragmas\x00schema_version\x00session\x00stmtvtab\x00scanstatus\x00lock_proxy_pragmas\x00prefer_proxy_locking\x00shared_cache\x00subquery\x00tclvar\x00threadsafe\x00threadsafe1\x00threadsafe2\x00tempdb\x00trigger\x00truncate_opt\x00vacuum\x00view\x00vtab\x00wal\x00wsd\x00update_delete_limit\x00fast_secure_delete\x00secure_delete\x00userauth\x00multiplex_ext_overwrite\x00yytrackmaxstackdepth\x00sqllog\x00uri_00_error\x00normalize\x00windowfunc\x00SQLITE_MAX_LENGTH\x00SQLITE_MAX_COLUMN\x00SQLITE_MAX_SQL_LENGTH\x00SQLITE_MAX_EXPR_DEPTH\x00SQLITE_MAX_COMPOUND_SELECT\x00SQLITE_MAX_VDBE_OP\x00SQLITE_MAX_FUNCTION_ARG\x00SQLITE_MAX_VARIABLE_NUMBER\x00SQLITE_MAX_PAGE_SIZE\x00SQLITE_MAX_PAGE_COUNT\x00SQLITE_MAX_LIKE_PATTERN_LENGTH\x00SQLITE_MAX_TRIGGER_DEPTH\x00SQLITE_DEFAULT_CACHE_SIZE\x00SQLITE_DEFAULT_PAGE_SIZE\x00SQLITE_DEFAULT_FILE_FORMAT\x00SQLITE_DEFAULT_SYNCHRONOUS\x00SQLITE_DEFAULT_WAL_SYNCHRONOUS\x00SQLITE_MAX_ATTACHED\x00SQLITE_MAX_DEFAULT_PAGE_SIZE\x00SQLITE_MAX_WORKER_THREADS\x00TEMP_STORE\x00__GNUC__\x00%s-journal\x00%s-wal\x00%s-shm\x00%s%03d\x00%s-journal%03d\x00%s-wal%03d\x00Loadable extensions are not supported\x00demo\x00register_demovfs\x00unregister_demovfs\x00devsym\x00writecrash\x00CREATE TABLE xyz(dir, name);\x00CREATE TABLE xyz(path, size, data);\x00WITH r(d) AS ( SELECT CASE WHEN dir=?2 THEN ?3 ELSE dir END || '/' || name FROM fsdir WHERE dir=?1 AND name NOT LIKE '.%' UNION ALL SELECT dir || '/' || name FROM r, fsdir WHERE dir=d AND name NOT LIKE '.%') SELECT d FROM r;\x00/\x00CREATE TABLE x(path TEXT, data TEXT)\x00SELECT * FROM %Q.%Q WHERE rowid=?\x00fs\x00fstree\x00register_fs_module\x00abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-!,:*^+=_|?/<> \x00sqlite3_prepare_v2() error: %s\x000123456789abcdef\x00x'\x00test_agg_errmsg16\x00randstr\x00test_destructor\x00test_destructor16\x00hex_to_utf16be\x00hex_to_utf16le\x00hex_to_utf8\x00test_destructor_count\x00test_auxdata\x00test_error\x00test_eval\x00test_isolation\x00test_counter\x00real2hex\x00test_decode\x00test_extract\x00test_zeroblob\x00test_getsubtype\x00test_setsubtype\x00test_frombind\x00tx\x00funcxx_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789\x00nullx_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789\x00sqlite3_create_function abused test failed\x00invalid matchinfo blob passed to function rank()\x00wrong number of arguments to function rank()\x00rank\x00autoinstall_test_functions\x00abuse_create_function\x00install_fts3_rank_function\x000123456789ABCDEF\x00FILENAME OFFSET AMT\x00r\x00cannot open input file \x00FILENAME OFFSET HEXDATA\x00r+b\x00r+\x00cannot open output file \x00HEXDATA\x00[utf8_to_utf8] unavailable - SQLITE_DEBUG not defined\x00BLOB VARNAME\x00LIST\x00hexio_read\x00hexio_write\x00hexio_get_int\x00hexio_render_int16\x00hexio_render_int32\x00utf8_to_utf8\x00read_fts3varint\x00make_fts3record\x00mem\x00pcache\x00Unknown argument: \"\x00init_wrapper_install\x00init_wrapper_query\x00init_wrapper_uninstall\x00init_wrapper_clear\x00CREATE TABLE x(value INTEGER PRIMARY KEY)\x00CREATE VIRTUAL TABLE temp.%Q USING %Q\x00INTARRAY\x00SQLITE_NOMEM\x00sqlite3_intarray_create\x00sqlite3_intarray_bind\x00jt\x00-journal\x00NBYTES\x00PRIOR NBYTES\x00bad pointer: \x00PRIOR\x00ADDRESS SIZE HEX\x00size must be positive\x00no data\x00ADDRESS SIZE\x00?RESET?\x00DEPT\x00FILENAME\x00COUNTER ?OPTIONS?\x00-repeat\x00-benigncnt\x00TITLE\x00SUB-COMMAND ...\x00start\x00stop\x00dump\x00clear\x00sync\x00SIZE N\x00INSTALLFLAG DISCARDCHANCE PRNGSEEED HIGHSTRESS\x00discard-chance should be between 0 and 100\x00SIZE COUNT\x00BUFID SIZE COUNT\x00illegal arguments - see documentation\x00NBYTE NMINALLOC\x00[DB]\x00sqlite3_db_config(db, 99999) does not return SQLITE_ERROR\x00sqlite3_config(99999) does not return SQLITE_ERROR\x00PARAMETER RESETFLAG\x00SQLITE_STATUS_MEMORY_USED\x00SQLITE_STATUS_MALLOC_SIZE\x00SQLITE_STATUS_PAGECACHE_USED\x00SQLITE_STATUS_PAGECACHE_OVERFLOW\x00SQLITE_STATUS_PAGECACHE_SIZE\x00SQLITE_STATUS_SCRATCH_USED\x00SQLITE_STATUS_SCRATCH_OVERFLOW\x00SQLITE_STATUS_SCRATCH_SIZE\x00SQLITE_STATUS_PARSER_STACK\x00SQLITE_STATUS_MALLOC_COUNT\x00DB PARAMETER RESETFLAG\x00SQLITE_\x00DBSTATUS_\x00LOOKASIDE_USED\x00CACHE_USED\x00SCHEMA_USED\x00STMT_USED\x00LOOKASIDE_HIT\x00LOOKASIDE_MISS_SIZE\x00LOOKASIDE_MISS_FULL\x00CACHE_HIT\x00CACHE_MISS\x00CACHE_WRITE\x00DEFERRED_FKS\x00CACHE_USED_SHARED\x00CACHE_SPILL\x00?INTEGER?\x00sqlite3_free\x00memset\x00memget\x00sqlite3_memory_used\x00sqlite3_memory_highwater\x00sqlite3_memdebug_backtrace\x00sqlite3_memdebug_dump\x00sqlite3_memdebug_fail\x00sqlite3_memdebug_pending\x00sqlite3_memdebug_settitle\x00sqlite3_memdebug_malloc_count\x00sqlite3_memdebug_log\x00sqlite3_config_pagecache\x00sqlite3_config_alt_pcache\x00sqlite3_status\x00sqlite3_db_status\x00install_malloc_faultsim\x00sqlite3_config_heap\x00sqlite3_config_heap_size\x00sqlite3_config_memstatus\x00sqlite3_config_lookaside\x00sqlite3_config_error\x00sqlite3_config_uri\x00sqlite3_config_cis\x00sqlite3_config_pmasz\x00sqlite3_db_config_lookaside\x00sqlite3_dump_memsys3\x00sqlite3_dump_memsys5\x00sqlite3_install_memsys3\x00sqlite3_memdebug_vfs_oom_test\x00%05u\x00 FILENAME [OFFSET AMT]\"\x00unable to open file \"\x00\" for reading\x00md5\x00md5-10x8\x00md5file\x00md5file-10x8\x00md5sum\x00%03d\x00multiplexor.xAccess failure on %s\x00multiplexor.xOpen failure on %s\x00multiplex_control\x00chunksize\x00multiplex_truncate\x00multiplex/%z\x00multiplex\x00NAME MAKEDEFAULT\x00-force\x00?-force?\x00enable\x00chunk_size\x00max_chunks\x00HANDLE DBNAME SUB-COMMAND INT-VALUE\x00expected database handle, got \"\x00sqlite3_multiplex_initialize\x00sqlite3_multiplex_shutdown\x00sqlite3_multiplex_control\x00fast\x00recursive\x00static_main\x00static_mem\x00static_open\x00static_prng\x00static_lru\x00static_pmem\x00static_app1\x00static_app2\x00static_app3\x00static_vfs1\x00static_vfs2\x00static_vfs3\x00mutex counters are \x00already installed\x00not installed\x00singlethread\x00multithread\x00serialized\x00mutex name\x00disable_mutex_init\x00disable_mutex_try\x00sqlite3_shutdown\x00sqlite3_initialize\x00sqlite3_config\x00enter_static_mutex\x00leave_static_mutex\x00enter_db_mutex\x00leave_db_mutex\x00alloc_dealloc_mutex\x00install_mutex_counters\x00read_mutex_counters\x00clear_mutex_counters\x00\x00\x00\x00\x00\x00\x00\x00vfslog/%z\x00sqlite_ostrace1.....\x00xClose\x00xRead\x00xWrite\x00xTruncate\x00xFilesize\x00xLock\x00xUnlock\x00xCheckResLock\x00xFileControl\x00xSectorSize\x00xDeviceChar\x00xDelete\x00xAccess\x00xFullPathname\x00xRandomness\x00xSleep\x00xCurrentTime\x00xShmUnmap\x00xShmLock\x00xShmBarrier\x00xShmMap\x00annotation\x00CREATE TABLE xxx(event, file, click, rc, size, offset)\x00vfslog\x00VFS\x00failed\x00VFS PARENT LOGFILE\x00bad sqlite3 handle: \x00annotate\x00finalize\x00register\x00quota/%z\x00quota\x00::piLimit_\x00PATTERN LIMIT SCRIPT\x00FILENAME MODE\x00HANDLE SIZE NELEM\x00HANDLE SIZE NELEM CONTENT\x00HANDLE ?HARDSYNC?\x00HANDLE OFFSET WHENCE\x00SEEK_SET\x00SEEK_CUR\x00SEEK_END\x00WHENCE should be SEEK_SET, SEEK_CUR, or SEEK_END\x00HANDLE SIZE\x00PATTERN TEXT\x00sqlite3_quota_initialize\x00sqlite3_quota_shutdown\x00sqlite3_quota_set\x00sqlite3_quota_file\x00sqlite3_quota_dump\x00sqlite3_quota_fopen\x00sqlite3_quota_fread\x00sqlite3_quota_fwrite\x00sqlite3_quota_fclose\x00sqlite3_quota_fflush\x00sqlite3_quota_fseek\x00sqlite3_quota_rewind\x00sqlite3_quota_ftell\x00sqlite3_quota_ftruncate\x00sqlite3_quota_file_size\x00sqlite3_quota_file_truesize\x00sqlite3_quota_file_mtime\x00sqlite3_quota_remove\x00sqlite3_quota_glob\x00sqlite3_quota_file_available\x00sqlite3_quota_ferror\x00cube\x00circle\x00Qcircle\x00breadthfirstsearch\x00register_cube_geom\x00register_circle_geom\x00CREATE TABLE x(database,tablename,cid,name,type,not_null,dflt_value,pk)\x00SELECT name FROM sqlite_temp_schema WHERE type='table'\x00SELECT name FROM %Q.sqlite_schema WHERE type='table'\x00PRAGMA %Q.table_info(%Q)\x00PRAGMA database_list\x00register_schema_module\x00PRAGMA main.journal_mode\x00CMDNAME PATH ?VFS? ?BUSY-HANDLER-SCRIPT?\x00sqlite3demo_superlock\x00open\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00pread\x00pread64\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00mremap\x00SYSCALL-LIST\x00system-call\x00?COUNT PERSIST?\x00EACCES\x00EINTR\x00EIO\x00EOVERFLOW\x00ENOMEM\x00EAGAIN\x00ETIMEDOUT\x00EBUSY\x00EPERM\x00EDEADLK\x00ENOLCK\x00SYSCALL ERRNO\x00errno\x00PGSZ\x00getpagesize\x00pgsz out of range\x00fault\x00install\x00uninstall\x00list\x00defaultvfs\x00pagesize\x00VFS does not support xSetSystemCall\x00test_syscall\x00load_testfixture_extensions\x00SLAVE\x00CREATE TABLE x( name TEXT, arrayname TEXT, value TEXT, fullname TEXT PRIMARY KEY) WITHOUT ROWID\x00array names\x00tclvar_filter_cmd\x00%s(%s)\x00expr {[info exists ::tclvar_set_omit] && $::tclvar_set_omit}\x00the 'fullname' column must be TEXT\x00prohibited TCL variable change\x00proc like {pattern str} {\n set p [string map {% * _ ?} $pattern]\n string match $p $str\n}\nproc tclvar_filter_cmd {eq match glob regexp like} {\n set res {}\n set pattern $eq\n if {$pattern=={}} { set pattern $match }\n if {$pattern=={}} { set pattern * }\n foreach v [uplevel #0 info vars $pattern] {\n if {($glob=={} || [string match $glob [uplevel #0 set $v]])\n && ($like=={} || [like $like [uplevel #0 set $v]])\n && ($regexp=={} || [regexp $regexp [uplevel #0 set $v]])\n } {\n lappend res $v\n }\n }\n set res\n}\n\x00register_tclvar_module\x00clock_seconds\x00sqlthread\x00sqlite3_blocking_step\x00sqlite3_blocking_prepare_v2\x00sqlite3_nonblocking_prepare_v2\x00set\x00Error in Tcl_CreateThread()\x00no parent thread\x00parent\x00spawn\x00VARNAME SCRIPT\x00DBNAME\x00id\x00%s \x00SQLITE_IOERR\x00SQLITE_LOCKED\x00SQLITE_BUSY\x00SQLITE_READONLY\x00SQLITE_READONLY_CANTINIT\x00SQLITE_NOTFOUND\x00SQLITE_OMIT\x00normal|dataonly\x00full|dataonly\x00xCheckReservedLock\x00BEGIN_ATOMIC_WRITE\x00COMMIT_ATOMIC_WRITE\x00ZIPVFS\x00anon\x00SQLITE_ACCESS_EXISTS\x00SQLITE_ACCESS_READWRITE\x00SQLITE_ACCESS_READ\x00xShmOpen\x00 lock\x00 unlock\x00 shared\x00 exclusive\x00shm\x00delete\x00filter\x00ioerr\x00fullerr\x00cantopenerr\x00script\x00devchar\x00sectorsize\x00subcommand\x00FILE ?VALUE?\x00failed to get full path: \x00no such file: \x00unknown method: \x00?CNT PERSIST?\x00default\x00undeletable_when_open\x00immutable\x00?ATTR-LIST?\x00bad flags: \x00?VALUE?\x00-noshm\x00-szosfile\x00-mxpathname\x00-iversion\x00-fullshm\x00VFSNAME ?-noshm BOOL? ?-fullshm BOOL? ?-default BOOL? ?-mxpathname INT? ?-szosfile INT? ?-iversion INT?\x00shared\x00lock\x00unlock\x00DB DBNAME (shared|exclusive) (lock|unlock) OFFSET N\x00ARG\x00DB DBNAME SLOT ?VALUE?\x00*-shm is not yet mapped\x00testvfs\x00vfs_shmlock\x00vfs_set_readmark\x00DB NAME XSTEP XFINAL XVALUE XINVERSE\x00fff\x00misuse test error\x00invalid argument\x00sumint\x00sum\x00sqlite3_create_window_function\x00test_create_window_function_misuse\x00test_create_sumint\x00test_override_sum\x00" +var ts1 = "%s\x00internal error!\x00SELECT * FROM main.%Q WHERE sample()\x00expert\x00PRAGMA table_xinfo=%Q\x00main\x00, \x00%Q\x00 COLLATE %Q\x00 COLLATE %s\x00 DESC\x00PRAGMA index_list=%Q\x00PRAGMA index_xInfo=%Q\x00%s_idx_%08x\x00CREATE INDEX '%q' ON %Q(%s)\x00CREATE INDEX %s ON %s(%s)\x00EXPLAIN QUERY PLAN %s\x00 USING INDEX \x00 USING COVERING INDEX \x00%s\n\x00%s;\n\x00SELECT 'CREATE TEMP' || substr(sql, 7) FROM sqlite_schema WHERE tbl_name = %Q AND type IN ('table', 'trigger') ORDER BY type;\x00ALTER TABLE temp.%Q RENAME TO %Q\x00INSERT INTO %Q VALUES(\x00%s?\x00\x00)\x00UPDATE %Q SET \x00%s%Q=?\x00DELETE FROM %Q\x00t592690916721053953805701627921227776\x00DROP TABLE t592690916721053953805701627921227776\x00SELECT type, name, sql, 1 FROM sqlite_schema WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%%' UNION ALL SELECT type, name, sql, 2 FROM sqlite_schema WHERE type = 'trigger' AND tbl_name IN(SELECT name FROM sqlite_schema WHERE type = 'view') ORDER BY 4, 1\x00CREATE TABLE x(\x00%s%Q COLLATE %s\x00CREATE VIRTUAL TABLE %Q USING expert(%Q)\x00SELECT max(i.seqno) FROM sqlite_schema AS s, pragma_index_list(s.name) AS l, pragma_index_info(l.name) AS i WHERE s.type = 'table'\x00%sx.%Q IS rem(%d, x.%Q) COLLATE %s\x00%s%d\x00SELECT %s FROM %Q x ORDER BY %s\x00SELECT %s FROM temp.t592690916721053953805701627921227776 x ORDER BY %s\x00%d\x00 %d\x00DROP TABLE IF EXISTS temp.t592690916721053953805701627921227776\x00CREATE TABLE temp.t592690916721053953805701627921227776 AS SELECT * FROM %Q\x00SELECT s.rowid, s.name, l.name FROM sqlite_schema AS s, pragma_index_list(s.name) AS l WHERE s.type = 'table'\x00SELECT name, coll FROM pragma_index_xinfo(?) WHERE key\x00INSERT INTO sqlite_stat1 VALUES(?, ?, ?)\x00ANALYZE; PRAGMA writable_schema=1\x00rem\x00sample\x00ANALYZE sqlite_schema\x00:memory:\x00SELECT sql FROM sqlite_schema WHERE name NOT LIKE 'sqlite_%%' AND sql NOT LIKE 'CREATE VIRTUAL %%'\x00%s;%s%s\n\x00 -- stat1: \x00no such handle: \x00sql\x00TABLE\x00analyze\x00count\x00report\x00STMT EREPORT\x00destroy\x00SUBCOMMAND ...\x00sub-command\x00indexes\x00plan\x00candidates\x00DB\x00sqlite3expert%d\x00out of memory\x00sqlite3_expert_new\x00SQLITE_DONE\x00SQLITE_ERROR\x00SQLITE_OK\x00SELECT fts5(?1)\x00error: \x00fts5_api_ptr\x00f5t_2_%lld\x00xColumnCount\x00xRowCount\x00xColumnTotalSize\x00COL\x00xTokenize\x00TEXT SCRIPT\x00xPhraseCount\x00xPhraseSize\x00PHRASE\x00xInstCount\x00xInst\x00IDX\x00xRowid\x00xColumnText\x00xColumnSize\x00xQueryPhrase\x00PHRASE SCRIPT\x00xSetAuxdata\x00VALUE\x00xGetAuxdata\x00CLEAR\x00xSetAuxdataInt\x00INTEGER\x00xGetAuxdataInt\x00xPhraseForeach\x00IPHRASE COLVAR OFFVAR SCRIPT\x00xPhraseColumnForeach\x00IPHRASE COLVAR SCRIPT\x00SUB-COMMAND\x00f5t_%lld\x00bytearray\x00boolean\x00double\x00wideInt\x00int\x00DB NAME SCRIPT\x00?-subst? DB NAME TEXT\x00-subst\x00unrecognized option: \x00no such tokenizer: \x00error in tokenizer.xCreate()\x00error in tokenizer.xTokenize()\x00document\x00aux\x00query\x00prefixquery\x00invalid\x00-colocated\x00sqlite3_fts5_token may only be used by tokenizer callback\x00?-colocated? TEXT START END\x00error in fts5_api.xCreateTokenizer()\x00?BOOLEAN?\x00NSLOT TOKEN\x00sqlite3_fts5_create_tokenizer\x00sqlite3_fts5_token\x00sqlite3_fts5_tokenize\x00sqlite3_fts5_create_function\x00sqlite3_fts5_may_be_corrupt\x00sqlite3_fts5_token_hash\x00sqlite3_fts5_register_matchinfo\x00sqlite3_fts5_register_fts5tokenize\x00unrecognized matchinfo flag: %c\x00pcx\x00matchinfo\x00CREATE TABLE x(input HIDDEN, token, start, end, position)\x00fts5tokenize\x00apndvfs\x00Start-Of-SQLite3-\x00apnd(%lld)/%z\x00SQLite format 3\x00%s: cost must be between 1 and %d\x00%s: maximum string length is %d\x00%s: iLang must be between 0 and %d\x00?\x00SELECT * FROM %Q.%Q\x00%s: %s\x00%s: %s has %d columns, expected 4\x00vocabulary_table\x00vocabulary_word\x00vocabulary_language\x00edit_distances\x00unrecognized argument: [%s]\n\x00no edit_distances table specified\x00CREATE TABLE x(word,distance,language,command HIDDEN,nword HIDDEN)\x000123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ^abcdefghijklmnopqrstuvwxyz~\x00SELECT \"%w\" FROM \"%w\"\x00 WHERE \"%w\">=?1 AND \"%w\"=?2 ORDER BY 1\x00SELECT \"%w\" FROM \"%w\" WHERE \"%w\">=?1 ORDER BY 1\x00*\x00DELETE from %s is not allowed\x00UPDATE of %s is not allowed\x00INSERT INTO %s allowed for column [command] only\x00approximate_match\x00int32\x00int64\x00char*\x00CREATE TABLE x(value,pointer hidden,count hidden,ctype hidden)\x00carray-bind\x00carray\x00unknown datatype: %Q\x00inttoptr\x00cksmvfs\x00ZV-\x00checksum fault offset %lld of \"%s\"\x00checksum_verification\x00enable%\x00yes\x00on\x00page_size\x00cksm/%z\x00verify_checksum\x00tablename\x00idcolumn\x00parentcolumn\x00CREATE TABLE x(id,depth,root HIDDEN,tablename HIDDEN,idcolumn HIDDEN,parentcolumn HIDDEN)\x00SELECT \"%w\".\"%w\" FROM \"%w\" WHERE \"%w\".\"%w\"=?1\x00transitive_closure\x00rb\x00cannot open '%s' for reading\x00line %d: unescaped %c character\x00line %d: unterminated %c-quoted field\n\x00more than one '%s' parameter\x00true\x00no\x00off\x00false\x00header\x00more than one 'header' parameter\x00testflags\x00columns\x00more than one 'columns' parameter\x00column= value must be positive\x00bad parameter: '%s'\x00must specify either filename= or data= but not both\x00%sc%d TEXT\x00,\x00%s\"%w\" TEXT\x00bad schema: '%s' - %s\x00filename\x00data\x00schema\x00csv\x00csv_wr\x00decimal_sum\x00decimal\x00decimal_cmp\x00decimal_add\x00decimal_sub\x00decimal_mul\x00 \x00eval\x00CREATE TABLE x(addr,opcode,p1,p2,p3,p4,p5,comment,sql HIDDEN)\x00EXPLAIN %s\x00explain\x00wb\x00wrong number of arguments to function writefile()\x00failed to create symlink: %s\x00failed to create directory: %s\x00failed to write file: %s\x00CREATE TABLE x(name,mode,mtime,data,path HIDDEN,dir HIDDEN)\x00cannot read directory: %s\x00%s/%s\x00cannot stat file: %s\x00table function fsdir requires an argument\x00table function fsdir requires a non-NULL argument\x00fsdir\x00readfile\x00writefile\x00lsmode\x00%s: ruleset must be between 0 and %d\x00%s: wrong number of CREATE VIRTUAL TABLE arguments\x00CREATE TABLE x(word,distance,ruleset)\x00fuzzer\x00ieee754(%lld,%d)\x00ieee754\x00ieee754_mantissa\x00ieee754_exponent\x00ieee754_to_blob\x00ieee754_from_blob\x00BEGIN; SELECT * FROM %s%q%ssqlite_schema\x00'\x00'.\x00PRAGMA %s%q%spage_size\x00sqlite3_mmap_warm_cache: Warmed up %d pages of %s\x00END\x00AND (%s)\x00collate \"%w\"\x00SELECT %s FROM %s WHERE %s>=(?1 || ?2) %s AND %s<=(?1 || char(1114111)) %s %s ORDER BY 1 %s ASC LIMIT 1\x00next_char\x00NULL\x00is\x00not\x00in(\x00in(select\x00in(with\x00?,?,?\x002nd argument to percentile() is not a number between 0.0 and 100.0\x002nd argument to percentile() is not the same for all input rows\x001st argument to percentile() is not numeric\x00Inf input to percentile()\x00percentile\x00CREATE TABLE prefixes(prefix TEXT, original_string TEXT HIDDEN)\x00prefixes\x00prefix_length\x00unknown \\ escape\x00afnrtv\\()*.+?[$^{|}]\x00\a\f\n\r\t\v\x00unmatched '('\x00'*' without operand\x00'+' without operand\x00'?' without operand\x00'{m,n}' without operand\x00unmatched '{'\x00n less than m in '{m,n}'\x00both m and n are zero in '{m,n}'\x00POSIX character classes not supported\x00unclosed '['\x00unrecognized character\x00regexp\x00remember\x00CREATE TABLE x(value,start hidden,stop hidden,step hidden)\x00generate_series() requires SQLite 3.8.12 or later\x00generate_series\x00.ABCDHLRMY9 ?\x00non-ASCII input to editdist()\x00NULL input to editdist()\x00SELECT iLang, cFrom, cTo, iCost FROM \"%w\" WHERE iLang>=0 ORDER BY iLang\x00editdist3\x00DROP TABLE IF EXISTS \"%w\".\"%w_vocab\"\x00CREATE TABLE x(word,rank,distance,langid, score, matchlen, phonehash HIDDEN, top HIDDEN, scope HIDDEN, srchcnt HIDDEN, soundslike HIDDEN, command HIDDEN)\x00CREATE TABLE IF NOT EXISTS \"%w\".\"%w_vocab\"(\n id INTEGER PRIMARY KEY,\n rank INT,\n langid INT,\n word TEXT,\n k1 TEXT,\n k2 TEXT\n);\n\x00CREATE INDEX IF NOT EXISTS \"%w\".\"%w_vocab_index_langid_k2\" ON \"%w_vocab\"(langid,k2);\x00edit_cost_table=\x00bad argument to spellfix1(): \"%s\"\x00SELECT id, word, rank, coalesce(k1,word) FROM \"%w\".\"%w_vocab\" WHERE langid=%d AND k2>=?1 AND k2=%lld\x00AND\x00%z %s rowid<=%lld\x00CREATE TABLE x(value)\x00wholenumber\x00CREATE TABLE y(name PRIMARY KEY,mode,mtime,sz,rawdata,data,method,z HIDDEN) WITHOUT ROWID;\x00zipfile\x00zipfile constructor requires one argument\x00error in fread()\x00error in fwrite()\x00failed to read CDS at offset %lld\x00%.*s\x00failed to read LFH at offset %d\x001.2.11\x00inflateInit2() failed (%d)\x00inflate() failed (%d)\x00zipfile: deflate() error\x00cannot find end of central directory record\x00zipfile() function requires an argument\x00cannot open file: %s\x00-rwxrwxrwx\x00zipfile: mode does not match data\x00zipfile: parse error in mode: %s\x00zipfile: missing filename\x00ab+\x00zipfile: failed to open file %s for writing\x00sz must be NULL\x00rawdata must be NULL\x00unknown compression method: %d\x00%s/\x00duplicate name: \"%s\"\x00{\"version-made-by\" : %u, \"version-to-extract\" : %u, \"flags\" : %u, \"compression\" : %u, \"time\" : %u, \"date\" : %u, \"crc32\" : %u, \"compressed-size\" : %u, \"uncompressed-size\" : %u, \"file-name-length\" : %u, \"extra-field-length\" : %u, \"file-comment-length\" : %u, \"disk-number-start\" : %u, \"internal-attr\" : %u, \"external-attr\" : %u, \"offset\" : %u }\x00zipfile_cds\x00wrong number of arguments to function zipfile()\x00first argument to zipfile() must be non-NULL\x00illegal method value: %d\x00non-directory name must not end with /\x00rbu_delta\x00step\x00close\x00create_rbu_delta\x00savestate\x00dbMain_eval\x00SQL\x00bp_progress\x00db\x00RBU\x00state\x00progress\x00close_no_error\x00temp_size_limit\x00LIMIT\x00temp_size\x00dbRbu_eval\x00METHOD\x00method\x00 - \x00oal\x00move\x00checkpoint\x00done\x00error\x00NAME TARGET-DB RBU-DB ?STATE-DB?\x00NAME TARGET-DB ?STATE-DB?\x00?-default? NAME PARENT\x00NAME\x00sqlite3rbu_db(0, 0)!=0\x00sqlite3rbu\x00sqlite3rbu_vacuum\x00sqlite3rbu_create_vfs\x00sqlite3rbu_destroy_vfs\x00sqlite3rbu_internal_test\x00incrblob\x00incrblob_%d\x00%lld\x00sqlite_unlock_notify_arg\x00sqlite_unlock_notify_argcount\x00DELETE\x00INSERT\x00UPDATE\x00SQLITE_COPY\x00SQLITE_CREATE_INDEX\x00SQLITE_CREATE_TABLE\x00SQLITE_CREATE_TEMP_INDEX\x00SQLITE_CREATE_TEMP_TABLE\x00SQLITE_CREATE_TEMP_TRIGGER\x00SQLITE_CREATE_TEMP_VIEW\x00SQLITE_CREATE_TRIGGER\x00SQLITE_CREATE_VIEW\x00SQLITE_DELETE\x00SQLITE_DROP_INDEX\x00SQLITE_DROP_TABLE\x00SQLITE_DROP_TEMP_INDEX\x00SQLITE_DROP_TEMP_TABLE\x00SQLITE_DROP_TEMP_TRIGGER\x00SQLITE_DROP_TEMP_VIEW\x00SQLITE_DROP_TRIGGER\x00SQLITE_DROP_VIEW\x00SQLITE_INSERT\x00SQLITE_PRAGMA\x00SQLITE_READ\x00SQLITE_SELECT\x00SQLITE_TRANSACTION\x00SQLITE_UPDATE\x00SQLITE_ATTACH\x00SQLITE_DETACH\x00SQLITE_ALTER_TABLE\x00SQLITE_REINDEX\x00SQLITE_ANALYZE\x00SQLITE_CREATE_VTABLE\x00SQLITE_DROP_VTABLE\x00SQLITE_FUNCTION\x00SQLITE_SAVEPOINT\x00SQLITE_RECURSIVE\x00????\x00SQLITE_DENY\x00SQLITE_IGNORE\x00RELEASE _tcl_transaction\x00COMMIT\x00ROLLBACK TO _tcl_transaction ; RELEASE _tcl_transaction\x00option\x00?CALLBACK?\x00?DATABASE? FILENAME\x00cannot open target database: \x00backup failed: \x00CALLBACK\x00cache option ?arg?\x00flush\x00size\x00size n\x00cannot convert \"\x00\" to integer\x00bad option \"\x00\": must be flush or size\x00NAME SCRIPT\x00SCRIPT\x00?OPTION? ?BOOLEAN?\x00unknown config option: \"\x00\"\x00CONFLICT-ALGORITHM TABLE FILENAME ?SEPARATOR? ?NULLINDICATOR?\x00\t\x00Error: non-null separator required for copy\x00rollback\x00abort\x00fail\x00ignore\x00replace\x00Error: \"\x00\", conflict-algorithm must be one of: rollback, abort, fail, ignore, or replace\x00SELECT * FROM '%q'\x00Error: no such table: \x00Error: \x00Error: can't malloc()\x00INSERT OR %q INTO '%q' VALUES(?\x00Error: cannot open file: \x00BEGIN\x00Error: %s line %d: expected %d columns of data but found %d\x00, failed while processing line: \x00?DATABASE? VALUE\x00-maxsize\x00-readonly\x00unknown option: \x00unable to set MEMDB content\x00extension loading is turned off at compile-time\x00-withoutnulls\x00unknown option: \"\x00?OPTIONS? SQL ?ARRAY-NAME? ?SCRIPT?\x00NAME ?SWITCHES? SCRIPT\x00-argcount\x00option requires an argument: \x00number of arguments must be non-negative\x00-deterministic\x00-directonly\x00-innocuous\x00-returntype\x00real\x00text\x00blob\x00any\x00type\x00\": must be -argcount, -deterministic, -directonly, -innocuous, or -returntype\x00?-readonly? ?DB? TABLE COLUMN ROWID\x00NULLVALUE\x00N CALLBACK\x00KEY\x00cannot open source database: \x00restore failed: \x00restore failed: source database busy\x00?DATABASE?\x00(step|sort|autoindex)\x00sort\x00autoindex\x00vmstep\x00bad argument: should be autoindex, step, sort or vmstep\x00MILLISECONDS\x00?CALLBACK? ?MASK?\x00trace type\x00SAVEPOINT _tcl_transaction\x00[TYPE] SCRIPT\x00transaction type\x00BEGIN EXCLUSIVE\x00BEGIN IMMEDIATE\x00?SCRIPT?\x00SUB-COMMAND ?ARGS?\x00hook ?SCRIPT?\x00INDEX\x00-use-legacy-prepare\x00-last-stmt-ptr\x00%p\x00unknown argument: \x00authorizer\x00backup\x00bind_fallback\x00busy\x00cache\x00changes\x00collate\x00collation_needed\x00commit_hook\x00complete\x00config\x00copy\x00deserialize\x00enable_load_extension\x00errorcode\x00exists\x00function\x00interrupt\x00last_insert_rowid\x00nullvalue\x00onecolumn\x00preupdate\x00profile\x00rekey\x00restore\x00rollback_hook\x00serialize\x00status\x00timeout\x00total_changes\x00trace\x00trace_v2\x00transaction\x00unlock_notify\x00update_hook\x00version\x00wal_hook\x00defensive\x00dqs_ddl\x00dqs_dml\x00enable_fkey\x00enable_qpsg\x00enable_trigger\x00enable_view\x00fts3_tokenizer\x00legacy_alter_table\x00legacy_file_format\x00load_extension\x00no_ckpt_on_close\x00reset_database\x00trigger_eqp\x00trusted_schema\x00writable_schema\x00statement\x00row\x00deferred\x00exclusive\x00immediate\x00depth\x00hook\x00new\x00old\x00HANDLE ?FILENAME? ?-vfs VFSNAME? ?-readonly BOOLEAN? ?-create BOOLEAN? ?-nofollow BOOLEAN? ?-nomutex BOOLEAN? ?-fullmutex BOOLEAN? ?-uri BOOLEAN?\x00-version\x00-sourceid\x00-has-codec\x000\x00-key\x00-vfs\x00-create\x00-nofollow\x00-nomutex\x00-fullmutex\x00-uri\x00-translatefilename\x00sqlite3\x00sqlite\x003.35.5\x00if {[llength $argv]>=1} {\nset argv0 [lindex $argv 0]\nset argv [lrange $argv 1 end]\nsource $argv0\n} else {\nset line {}\nwhile {![eof stdin]} {\nif {$line!=\"\"} {\nputs -nonewline \"> \"\n} else {\nputs -nonewline \"% \"\n}\nflush stdout\nappend line [gets stdin]\nif {[info complete $line]} {\nif {[catch {uplevel #0 $line} result]} {\nputs stderr \"Error: $result\"\n} elseif {$result!=\"\"} {\nputs $result\n}\nset line {}\n} else {\nappend line \\n\n}\n}\n}\n\x00SQLITE_DEBUG_BREAK\x00attach debugger to process %d and press any key to continue.\n\x00utf-8\x00argc\x00argv0\x00argv\x00errorInfo\x00%s: %s\n\x00SQLITE-CONNECTION\x00command not found: \x00error code %s (%d) does not match sqlite3_errcode %s (%d)\x00OMIT_MISUSE\x00wrong # args: should be \"\x00 DB FORMAT STRING\x00 DB HEX\x00 DB\x00 DB SQL\x00%z%s%s\x00%s%n\x00abcdefghijklmnopqrstuvwxyz\x00 DB FORMAT STRING ?COUNT?\x00 DB\"\x00 FILENAME\"\x00%02x\x00%04x\x00tkt2213 is not fixed\x00text16\x00bytes\x00bytes16\x00noop\x00x_coalesce\x00hex8\x00hex16\x00tkt2213func\x00pointer_change\x00counter1\x00counter2\x00intreal\x00x_sqlite_exec\x00value of 40 handed to x_count\x00x_count totals to 42\x00x_count\x00legacy_count\x00 TEXT\"\x00 FORMAT INT INT INT\"\x00argument is not a valid 64-bit integer\x00 FORMAT INT INT ?STRING?\"\x00 INT FORMAT INT INT ?STRING?\"\x00N must be non-negative\x00 FORMAT INT INT DOUBLE\"\x00 FORMAT DOUBLE DOUBLE\"\x00 FORMAT STRING\"\x00%08x%08x\x002nd argument should be 16-characters of hex\x00DB BOOLEAN\x00DB dbname tblname colname\x00CHANNEL ROWID\x00DB-HANDLE NAME CMP-PROC DEL-PROC\x00sqlite3_create_collate_v2() failed to detect an invalid encoding\x00utf8\x00utf16\x00utf16le\x00utf16be\x00DB NAME NARG ENC SWITCHES...\x00encoding\x00-func\x00-step\x00-final\x00-destroy\x00switch\x00DB-HANDLE FILE ?PROC?\x00this build omits sqlite3_load_extension()\x00DB-HANDLE ONOFF\x00string\x00value\x00first argument should be one of: int int64 string double null value\x00 DB FUNCTION-NAME\x00 \x00STMT PARAMETER RESETFLAG\x00SQLITE_STMTSTATUS_FULLSCAN_STEP\x00SQLITE_STMTSTATUS_SORT\x00SQLITE_STMTSTATUS_AUTOINDEX\x00SQLITE_STMTSTATUS_VM_STEP\x00SQLITE_STMTSTATUS_REPREPARE\x00SQLITE_STMTSTATUS_RUN\x00SQLITE_STMTSTATUS_MEMUSED\x00NBYTE\x00DB DBNAME\x00DB DBNAME SNAPSHOT\x00SNAPSHOT\x00SNAPSHOT1 SNAPSHOT2\x00bad SNAPSHOT\x00FILE\x00PATH\x00 DB STMT\x00 STMT\x00 FROM-STMT TO-STMT\x00 VM IDX VALUE (null|static|normal)\"\x00static\x00static-nbytes\x00normal\x00blob10\x00abc\x00xyz\x00pq\x004th argument should be \"null\" or \"static\" or \"normal\"\x00(%d) \x00test_collate\x00UTF-8\x00UTF-16LE\x00UTF-16BE\x00 \x00utf16bin\x00utf16_unaligned\x00utf16_aligned\x00test_function\x00\x00STMT IDX N\x00 STMT N VALUE\x00NaN\x00SNaN\x00-NaN\x00-SNaN\x00+Inf\x00-Inf\x00Epsilon\x00-Epsilon\x00NaN0\x00-NaN0\x00 STMT N\x00 STMT N VALUE BYTES\x00 STMT N DATA BYTES\x00cannot use %d blob bytes, have %d\x00-transient\x00-static\x00-int32\x00-int64\x00-double\x00-text\x00--\x00text data must be either -static or -transient\x00cannot be both -static and -transient\x00[OPTIONS] STMT IDX VALUE ...\x00STMT\x00STMT N\x00STMT NAME\x00 DB sql bytes ?tailvar?\x00 DB sql bytes tailvar\x00 DB sql bytes flags tailvar\x00\x00SELECT 1\x00 filename options-list\x00FILENAME FLAGS VFS\x00SQLITE_OPEN_READONLY\x00SQLITE_OPEN_READWRITE\x00SQLITE_OPEN_CREATE\x00SQLITE_OPEN_DELETEONCLOSE\x00SQLITE_OPEN_EXCLUSIVE\x00SQLITE_OPEN_AUTOPROXY\x00SQLITE_OPEN_MAIN_DB\x00SQLITE_OPEN_TEMP_DB\x00SQLITE_OPEN_TRANSIENT_DB\x00SQLITE_OPEN_MAIN_JOURNAL\x00SQLITE_OPEN_TEMP_JOURNAL\x00SQLITE_OPEN_SUBJOURNAL\x00SQLITE_OPEN_SUPER_JOURNAL\x00SQLITE_OPEN_NOMUTEX\x00SQLITE_OPEN_FULLMUTEX\x00SQLITE_OPEN_SHAREDCACHE\x00SQLITE_OPEN_PRIVATECACHE\x00SQLITE_OPEN_WAL\x00SQLITE_OPEN_URI\x00flag\x00\x00 STMT column\x00FLOAT\x00TEXT\x00BLOB\x00 DB MAGIC\x00SQLITE_MAGIC_OPEN\x00SQLITE_MAGIC_CLOSED\x00SQLITE_MAGIC_BUSY\x00SQLITE_MAGIC_ERROR\x00 DB function-name\x00VARIABLE\x00?N?\x001234567890000000\x00__one\x00__two\x00notadatabase\x00Unexpected non-zero errno: \x00DB [DBNAME]\x00%u\x00DB DBNAME SIZE\x00 DB PWD\x00PWD too big\x00%s/test.proxy\x00Lock proxy file did not match the previously assigned value\x00 DB FLAG\x00%d %d\x00 DB ?AUXDB?\x00DB N\x00 DB ID VALUE\x00unknown limit type: \x00SQLITE_LIMIT_LENGTH\x00SQLITE_LIMIT_SQL_LENGTH\x00SQLITE_LIMIT_COLUMN\x00SQLITE_LIMIT_EXPR_DEPTH\x00SQLITE_LIMIT_COMPOUND_SELECT\x00SQLITE_LIMIT_VDBE_OP\x00SQLITE_LIMIT_FUNCTION_ARG\x00SQLITE_LIMIT_ATTACHED\x00SQLITE_LIMIT_LIKE_PATTERN_LENGTH\x00SQLITE_LIMIT_VARIABLE_NUMBER\x00SQLITE_LIMIT_TRIGGER_DEPTH\x00SQLITE_LIMIT_WORKER_THREADS\x00SQLITE_LIMIT_TOOSMALL\x00SQLITE_LIMIT_TOOBIG\x00SEED ?DB?\x00BOOLEAN\x00current\x00max\x00min\x00recyclable\x00DB ?NAME?\x00passive\x00full\x00restart\x00truncate\x00DB MODE ?NAME?\x00mode\x00DB VALUE\x00COMMAND ...\x00command has no objProc: \x00%d %d %d %s\n\x00SQLITE_TESTCTRL_LOCALTIME_FAULT\x00SQLITE_TESTCTRL_SORTER_MMAP\x00SQLITE_TESTCTRL_IMPOSTER\x00SQLITE_TESTCTRL_INTERNAL_FUNCTIONS\x00VERB ARGS...\x00VERB\x00ONOFF\x00DB LIMIT\x00DB dbName onOff tnum\x00ru_utime=%d.%06d ru_stime=%d.%06d ru_minflt=%d ru_majflt=%d\x00DB OPT BOOLEAN\x00unknown optimization - should be one of:\x00all\x00none\x00query-flattener\x00groupby-order\x00factor-constants\x00distinct-opt\x00cover-idx-scan\x00order-by-idx-join\x00transitive\x00omit-noop-join\x00stat4\x00skip-scan\x00push-down\x00DB NAME ...\x00no such extension: \x00initialization of \x00 failed: \x00amatch\x00appendvfs\x00closure\x00fileio\x00nextchar\x00series\x00spellfix\x00totype\x00BOOL\x00DB SQL1 NSTEP SQL2\x00data error: (a!=b)\x00checksum mismatch\x00sql error: \x00TYPE\x00Deliberate panic\x00DB SETTING [VALUE]\x00SQLITE_*\x00DBCONFIG_*\x00ENABLE_*\x00unknown sqlite3_db_config setting\x00FKEY\x00TRIGGER\x00FTS3_TOKENIZER\x00LOAD_EXTENSION\x00NO_CKPT_ON_CLOSE\x00QPSG\x00TRIGGER_EQP\x00RESET_DB\x00DEFENSIVE\x00WRITABLE_SCHEMA\x00LEGACY_ALTER_TABLE\x00DQS_DML\x00DQS_DDL\x00LEGACY_FILE_FORMAT\x00DB ?SCHEMA?\x00icecube\x00DB ?DBNAME?\x00DB OFFSET DATA\x00HEXDB\x00| size %d pagesize %d\x00bad 'pagesize' field\x00bad 'size' field\x00| page %d offset %d\x00| %d: %x %x %x %x %x %x %x %x %x %x %x %x %x %x %x %x\x00sqlite_search_count\x00sqlite_found_count\x00sqlite_sort_count\x00sqlite3_max_blobsize\x00sqlite_like_count\x00sqlite_interrupt_count\x00sqlite_open_file_count\x00sqlite_current_time\x00sqlite_hostid_num\x00sqlite3_xferopt_count\x00sqlite3_pager_readdb_count\x00sqlite3_pager_writedb_count\x00sqlite3_pager_writej_count\x00unaligned_string_counter\x00sqlite_last_needed_collation\x00sqlite_query_plan\x00sqlite_opentemp_count\x00sqlite_static_bind_value\x00sqlite_static_bind_nbyte\x00sqlite_temp_directory\x00sqlite_data_directory\x00bitmask_size\x00longdouble_size\x00sqlite_sync_count\x00sqlite_fullsync_count\x00db_enter\x00db_leave\x00sqlite3_mprintf_int\x00sqlite3_mprintf_int64\x00sqlite3_mprintf_long\x00sqlite3_mprintf_str\x00sqlite3_snprintf_str\x00sqlite3_mprintf_stronly\x00sqlite3_mprintf_double\x00sqlite3_mprintf_scaled\x00sqlite3_mprintf_hexdouble\x00sqlite3_mprintf_z_test\x00sqlite3_mprintf_n_test\x00sqlite3_snprintf_int\x00sqlite3_last_insert_rowid\x00sqlite3_exec_printf\x00sqlite3_exec_hex\x00sqlite3_exec\x00sqlite3_exec_nr\x00sqlite3_get_table_printf\x00sqlite3_close\x00sqlite3_close_v2\x00sqlite3_create_function\x00sqlite3_create_aggregate\x00sqlite3_drop_modules\x00sqlite_register_test_function\x00sqlite_abort\x00sqlite_bind\x00breakpoint\x00sqlite3_key\x00sqlite3_rekey\x00sqlite_set_magic\x00sqlite3_interrupt\x00sqlite_delete_function\x00sqlite_delete_collation\x00sqlite3_get_autocommit\x00sqlite3_busy_timeout\x00printf\x00sqlite3IoTrace\x00clang_sanitize_address\x00sqlite3_db_config\x00sqlite3_txn_state\x00bad_behavior\x00register_dbstat_vtab\x00sqlite3_connection_pointer\x00intarray_addr\x00int64array_addr\x00doublearray_addr\x00textarray_addr\x00sqlite3_bind_int\x00sqlite3_bind_zeroblob\x00sqlite3_bind_zeroblob64\x00sqlite3_bind_int64\x00sqlite3_bind_double\x00sqlite3_bind_null\x00sqlite3_bind_text\x00sqlite3_bind_text16\x00sqlite3_bind_blob\x00sqlite3_carray_bind\x00sqlite3_bind_parameter_count\x00sqlite3_bind_parameter_name\x00sqlite3_bind_parameter_index\x00sqlite3_clear_bindings\x00sqlite3_sleep\x00sqlite3_errcode\x00sqlite3_extended_errcode\x00sqlite3_errmsg\x00sqlite3_errmsg16\x00sqlite3_open\x00sqlite3_open16\x00sqlite3_open_v2\x00sqlite3_complete16\x00sqlite3_normalize\x00sqlite3_prepare\x00sqlite3_prepare16\x00sqlite3_prepare_v2\x00sqlite3_prepare_v3\x00sqlite3_prepare_tkt3134\x00sqlite3_prepare16_v2\x00sqlite3_finalize\x00sqlite3_stmt_status\x00sqlite3_reset\x00sqlite3_expired\x00sqlite3_transfer_bindings\x00sqlite3_changes\x00sqlite3_step\x00sqlite3_sql\x00sqlite3_expanded_sql\x00sqlite3_next_stmt\x00sqlite3_stmt_readonly\x00sqlite3_stmt_isexplain\x00sqlite3_stmt_busy\x00uses_stmt_journal\x00sqlite3_release_memory\x00sqlite3_db_release_memory\x00sqlite3_db_cacheflush\x00sqlite3_system_errno\x00sqlite3_db_filename\x00sqlite3_db_readonly\x00sqlite3_soft_heap_limit\x00sqlite3_soft_heap_limit64\x00sqlite3_hard_heap_limit64\x00sqlite3_thread_cleanup\x00sqlite3_pager_refcounts\x00sqlite3_load_extension\x00sqlite3_enable_load_extension\x00sqlite3_extended_result_codes\x00sqlite3_limit\x00dbconfig_maindbname_icecube\x00save_prng_state\x00restore_prng_state\x00reset_prng_state\x00prng_seed\x00extra_schema_checks\x00database_never_corrupt\x00database_may_be_corrupt\x00optimization_control\x00tcl_objproc\x00sqlite3_column_count\x00sqlite3_data_count\x00sqlite3_column_type\x00sqlite3_column_blob\x00sqlite3_column_double\x00sqlite3_column_int64\x00sqlite3_column_text\x00sqlite3_column_name\x00sqlite3_column_int\x00sqlite3_column_bytes\x00sqlite3_column_decltype\x00sqlite3_column_database_name\x00sqlite3_column_table_name\x00sqlite3_column_origin_name\x00sqlite3_column_bytes16\x00sqlite3_column_text16\x00sqlite3_column_name16\x00add_alignment_test_collations\x00sqlite3_column_decltype16\x00sqlite3_column_database_name16\x00sqlite3_column_table_name16\x00sqlite3_column_origin_name16\x00sqlite3_create_collation_v2\x00sqlite3_global_recover\x00working_64bit_int\x00vfs_unlink_test\x00vfs_initfail_test\x00vfs_unregister_all\x00vfs_reregister_all\x00file_control_test\x00file_control_lasterrno_test\x00file_control_lockproxy_test\x00file_control_chunksize_test\x00file_control_sizehint_test\x00file_control_data_version\x00file_control_persist_wal\x00file_control_powersafe_overwrite\x00file_control_vfsname\x00file_control_reservebytes\x00file_control_tempfilename\x00sqlite3_vfs_list\x00sqlite3_create_function_v2\x00add_test_collate\x00add_test_collate_needed\x00add_test_function\x00add_test_utf16bin_collate\x00sqlite3_test_errstr\x00tcl_variable_type\x00sqlite3_enable_shared_cache\x00sqlite3_shared_cache_report\x00sqlite3_libversion_number\x00sqlite3_table_column_metadata\x00sqlite3_blob_reopen\x00pcache_stats\x00sqlite3_unlock_notify\x00sqlite3_wal_checkpoint\x00sqlite3_wal_checkpoint_v2\x00sqlite3_wal_autocheckpoint\x00test_sqlite3_log\x00print_explain_query_plan\x00sqlite3_test_control\x00getrusage\x00load_static_extension\x00sorter_test_fakeheap\x00sorter_test_sort4_helper\x00vfs_current_time_int64\x00sqlite3_snapshot_get\x00sqlite3_snapshot_open\x00sqlite3_snapshot_free\x00sqlite3_snapshot_cmp\x00sqlite3_snapshot_recover\x00sqlite3_snapshot_get_blob\x00sqlite3_snapshot_open_blob\x00sqlite3_snapshot_cmp_blob\x00sqlite3_delete_database\x00atomic_batch_write\x00sqlite3_mmap_warm\x00sqlite3_config_sorterref\x00decode_hexdb\x00test_write_db\x00sqlite3_register_cksumvfs\x00sqlite3_unregister_cksumvfs\x00*** OBSOLETE VARIABLE ***\x00 FILENAME N-PAGE\"\x00 ID\"\x00ref\x00page\x00err\x00hit\x00miss\x00ovfl\x00 ID PGNO\"\x00 PAGE\"\x00 PAGE DATA\"\x00 N-MEGABYTES FILE\"\x00open failed: \x00Hello, World!\x00write failed: \x00 PENDING-BYTE\"\x00fault simulator script failed: [%s]\x00 SCRIPT\"\x00 SIZE PROGRAM\"\x00sqlite_io_error_pending\x00sqlite_io_error_persist\x00sqlite_io_error_hit\x00sqlite_io_error_hardhit\x00sqlite_diskfull_pending\x00sqlite_diskfull\x00sqlite_pending_byte\x00pager_open\x00pager_close\x00pager_commit\x00pager_rollback\x00pager_stmt_begin\x00pager_stmt_commit\x00pager_stmt_rollback\x00pager_stats\x00pager_pagecount\x00page_get\x00page_lookup\x00page_unref\x00page_read\x00page_write\x00page_number\x00pager_truncate\x00fake_big_file\x00sqlite3BitvecBuiltinTest\x00sqlite3_test_control_pending_byte\x00sqlite3_test_control_fault_install\x00 FILENAME NCACHE FLAGS\"\x00read\x00write\x00 ID TABLENUM WRITEABLE\"\x00 START MULTIPLIER COUNT INCREMENT\"\x00putVarint returned %d - should be between 1 and 9\x00putVarint returned %d and getVarint returned %d\x00Wrote 0x%016llx and got back 0x%016llx\x00putVarint returned %d and GetVarint32 returned %d\x00Wrote 0x%016llx and got back 0x%016llx from GetVarint32\x00 DB-HANDLE ?N?\"\x00No such db-handle: \"\x00 BT NCACHE\"\x00?-intkey? CSR KEY VALUE\x00btree_insert\x00btree_open\x00btree_close\x00btree_begin_transaction\x00btree_pager_stats\x00btree_cursor\x00btree_close_cursor\x00btree_next\x00btree_eof\x00btree_payload_size\x00btree_first\x00btree_varint_test\x00btree_from_db\x00btree_ismemdb\x00btree_set_cache_size\x00thread ID must be an upper case letter\x00 ID FILENAME\x00thread \x00 is already running\x00failed to create the thread\x00 ID\x00no such thread\x00 ID N\x00column number out of range\x00no database is open\x00 ID SQL\x00no virtual machine available\x00 IDL\x00 ID1 ID2\x00 ID DB\x00thread_create\x00thread_wait\x00thread_halt\x00thread_argc\x00thread_argv\x00thread_colname\x00thread_result\x00thread_error\x00thread_compile\x00thread_step\x00thread_finalize\x00thread_swap\x00thread_db_get\x00thread_db_put\x00thread_stmt_get\x00 \x00hello world\x00UTF8\x00UTF16LE\x00UTF16BE\x00UTF16\x00No such encoding: \x00 \x00binarize\x00test_value_overhead\x00test_translate\x00translate_selftest\x00out of memory in the crash simulator\n\x00atomic\x00atomic512\x00atomic1k\x00atomic2k\x00atomic4k\x00atomic8k\x00atomic16k\x00atomic32k\x00atomic64k\x00sequential\x00safe_append\x00powersafe_overwrite\x00batch-atomic\x00-sectorsize\x00-characteristics\x00Bad option: \"\x00\" - must be \"-characteristics\" or \"-sectorsize\"\x00Option requires an argument: \"\x00no such flag\x00ENABLE ?DEFAULT?\x00crash\x00?OPTIONS? DELAY CRASHFILE\x00Filename is too long: \"\x00NWRITE\x00?-default? PARENT-VFS\x00-default\x00\": must be -default\x00Error in jt_register\x00sqlite3_crash_enable\x00sqlite3_crashparams\x00sqlite3_crash_now\x00sqlite3_simulate_device\x00sqlite3_crash_on_write\x00unregister_devsim\x00register_jt_vfs\x00unregister_jt_vfs\x00client_create\x00client_wait\x00client_halt\x00client_argc\x00client_argv\x00client_colname\x00client_result\x00client_error\x00client_compile\x00client_step\x00client_reset\x00client_finalize\x00client_swap\x00echo_module_fail(%s,%s)\x00echo-vtab-error: %s\x00SELECT * FROM %Q\x00PRAGMA index_list(%s)\x00PRAGMA index_info(%s)\x00echo_module\x00SELECT sql FROM sqlite_schema WHERE type = 'table' AND name = ?\x00%s%s\x00xCreate\x00CREATE TABLE %Q(logmsg)\x00xConnect\x00xDisconnect\x00xDestroy\x00DROP TABLE %Q\x00xOpen\x00xNext\x00xColumn\x00xFilter\x00, *\x00%z, %s\x00%z, NULL\x00echo_module_ignore_usable\x00xBestIndex\x00echo_module_cost\x00SELECT count(*) FROM %Q\x00SELECT rowid%z FROM %Q\x00rowid\x00=\x00<\x00>\x00<=\x00>=\x00LIKE\x00like\x00glob\x00 %s %s LIKE (SELECT '%%'||?||'%%')\x00 %s %s %s ?\x00DESC\x00ASC\x00 ORDER BY %s %s\x00xUpdate\x00 SET\x00UPDATE %Q\x00 SET rowid=?1 \x00%s %Q=?%d\x00 WHERE rowid=?%d\x00DELETE FROM %Q WHERE rowid = ?1\x00INSERT INTO %Q (\x00%s%Q\x00%s?%d\x00) VALUES(\x00echo(%s)\x00xBegin\x00echo_module_begin_fail\x00xSync\x00echo_module_sync_fail\x00xCommit\x00xRollback\x00::echo_glob_overload\x00xRename\x00ALTER TABLE %s RENAME TO %s%s\x00echo\x00echo_v2\x00DB SQL\x00register_echo_module\x00sqlite3_declare_vtab\x00N/A\x00sqlite3_create_collation\x00Error testing function: \x00sqlite3_malloc\x00sqlite3_realloc\x00c_misuse_test\x00c_realloc_test\x00c_collation_test\x00sqlite3_reset_auto_extension\x00npage\x00finish\x00remaining\x00pagecount\x00CMDNAME DESTHANDLE DESTNAME SRCHANDLE SRCNAME\x00sqlite3_backup_init() failed\x00sqlite3_backup\x00wrong number of arguments\x00unexpected: %s\x00eq\x00gt\x00le\x00lt\x00ge\x00match\x00ne\x00isnot\x00isnotnull\x00isnull\x00op\x00column\x00usable\x00desc\x00cost\x00orderby\x00idxnum\x00idxstr\x00rows\x00use\x00omit\x00unexpected: %d\x00tcl\x00register_tcl_module\x00incrblob_\x00DB DATABASE TABLE COLUMN ROWID FLAGS VARNAME\x00HANDLE\x00CHANNEL OFFSET N\x00out of memory in testdata/sqlite-src-3350500/src/test_blob.c\x00HANDLE OFFSET DATA ?NDATA?\x00sqlite3_blob_open\x00sqlite3_blob_close\x00sqlite3_blob_bytes\x00sqlite3_blob_read\x00sqlite3_blob_write\x00sqlite_options\x00malloc_usable_size\x00rowid32\x00casesensitivelike\x00curdir\x001\x00win32malloc\x00debug\x00default_ckptfullfsync\x00direct_read\x00dirsync\x00lfs\x00pagecache_overflow_stats\x00mmap\x00worker_threads\x008\x00memdebug\x008_3_names\x00cursorhints\x00hiddencolumns\x00mathlib\x00mem3\x00mem5\x00offset_sql_func\x00snapshot\x00mutex\x00mutex_noop\x00altertable\x00api_armor\x00atomicwrite\x00json1\x00has_codec\x00like_match_blobs\x00attach\x00auth\x00autoinc\x00autoreset\x00autovacuum\x00default_autovacuum\x00between_opt\x00builtin_test\x00bloblit\x00cast\x00check\x00cte\x00columnmetadata\x00oversize_cell_check\x00compileoption_diags\x00compound\x00conflict\x00crashtest\x00datetime\x00decltype\x00deprecated\x00diskio\x00floatingpoint\x00foreignkey\x00fts1\x00fts2\x00fts3\x00fts5\x00fts3_unicode\x00fts4_deferred\x00gettable\x00icu\x00icu_collations\x00integrityck\x00legacyformat\x00like_opt\x00load_ext\x00localtime\x00lookaside\x00long_double\x00memorydb\x00memorymanage\x00mergesort\x00null_trim\x00or_opt\x00rbu\x00pager_pragmas\x00pragma\x00reindex\x00rtree\x00rtree_int_only\x00schema_pragmas\x00schema_version\x00session\x00stmtvtab\x00scanstatus\x00lock_proxy_pragmas\x00prefer_proxy_locking\x00shared_cache\x00subquery\x00tclvar\x00threadsafe\x00threadsafe1\x00threadsafe2\x00tempdb\x00trigger\x00truncate_opt\x00vacuum\x00view\x00vtab\x00wal\x00wsd\x00update_delete_limit\x00fast_secure_delete\x00secure_delete\x00userauth\x00multiplex_ext_overwrite\x00yytrackmaxstackdepth\x00sqllog\x00uri_00_error\x00normalize\x00windowfunc\x00SQLITE_MAX_LENGTH\x00SQLITE_MAX_COLUMN\x00SQLITE_MAX_SQL_LENGTH\x00SQLITE_MAX_EXPR_DEPTH\x00SQLITE_MAX_COMPOUND_SELECT\x00SQLITE_MAX_VDBE_OP\x00SQLITE_MAX_FUNCTION_ARG\x00SQLITE_MAX_VARIABLE_NUMBER\x00SQLITE_MAX_PAGE_SIZE\x00SQLITE_MAX_PAGE_COUNT\x00SQLITE_MAX_LIKE_PATTERN_LENGTH\x00SQLITE_MAX_TRIGGER_DEPTH\x00SQLITE_DEFAULT_CACHE_SIZE\x00SQLITE_DEFAULT_PAGE_SIZE\x00SQLITE_DEFAULT_FILE_FORMAT\x00SQLITE_DEFAULT_SYNCHRONOUS\x00SQLITE_DEFAULT_WAL_SYNCHRONOUS\x00SQLITE_MAX_ATTACHED\x00SQLITE_MAX_DEFAULT_PAGE_SIZE\x00SQLITE_MAX_WORKER_THREADS\x00TEMP_STORE\x00__GNUC__\x00%s-journal\x00%s-wal\x00%s-shm\x00%s%03d\x00%s-journal%03d\x00%s-wal%03d\x00Loadable extensions are not supported\x00demo\x00register_demovfs\x00unregister_demovfs\x00devsym\x00writecrash\x00CREATE TABLE xyz(dir, name);\x00CREATE TABLE xyz(path, size, data);\x00WITH r(d) AS ( SELECT CASE WHEN dir=?2 THEN ?3 ELSE dir END || '/' || name FROM fsdir WHERE dir=?1 AND name NOT LIKE '.%' UNION ALL SELECT dir || '/' || name FROM r, fsdir WHERE dir=d AND name NOT LIKE '.%') SELECT d FROM r;\x00/\x00CREATE TABLE x(path TEXT, data TEXT)\x00SELECT * FROM %Q.%Q WHERE rowid=?\x00fs\x00fstree\x00register_fs_module\x00abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-!,:*^+=_|?/<> \x00sqlite3_prepare_v2() error: %s\x000123456789abcdef\x00x'\x00test_agg_errmsg16\x00randstr\x00test_destructor\x00test_destructor16\x00hex_to_utf16be\x00hex_to_utf16le\x00hex_to_utf8\x00test_destructor_count\x00test_auxdata\x00test_error\x00test_eval\x00test_isolation\x00test_counter\x00real2hex\x00test_decode\x00test_extract\x00test_zeroblob\x00test_getsubtype\x00test_setsubtype\x00test_frombind\x00tx\x00funcxx_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789\x00nullx_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789\x00sqlite3_create_function abused test failed\x00invalid matchinfo blob passed to function rank()\x00wrong number of arguments to function rank()\x00rank\x00autoinstall_test_functions\x00abuse_create_function\x00install_fts3_rank_function\x000123456789ABCDEF\x00FILENAME OFFSET AMT\x00r\x00cannot open input file \x00FILENAME OFFSET HEXDATA\x00r+b\x00r+\x00cannot open output file \x00HEXDATA\x00[utf8_to_utf8] unavailable - SQLITE_DEBUG not defined\x00BLOB VARNAME\x00LIST\x00hexio_read\x00hexio_write\x00hexio_get_int\x00hexio_render_int16\x00hexio_render_int32\x00utf8_to_utf8\x00read_fts3varint\x00make_fts3record\x00mem\x00pcache\x00Unknown argument: \"\x00init_wrapper_install\x00init_wrapper_query\x00init_wrapper_uninstall\x00init_wrapper_clear\x00CREATE TABLE x(value INTEGER PRIMARY KEY)\x00CREATE VIRTUAL TABLE temp.%Q USING %Q\x00INTARRAY\x00SQLITE_NOMEM\x00sqlite3_intarray_create\x00sqlite3_intarray_bind\x00jt\x00-journal\x00NBYTES\x00PRIOR NBYTES\x00bad pointer: \x00PRIOR\x00ADDRESS SIZE HEX\x00size must be positive\x00no data\x00ADDRESS SIZE\x00?RESET?\x00DEPT\x00FILENAME\x00COUNTER ?OPTIONS?\x00-repeat\x00-benigncnt\x00TITLE\x00SUB-COMMAND ...\x00start\x00stop\x00dump\x00clear\x00sync\x00SIZE N\x00INSTALLFLAG DISCARDCHANCE PRNGSEEED HIGHSTRESS\x00discard-chance should be between 0 and 100\x00SIZE COUNT\x00BUFID SIZE COUNT\x00illegal arguments - see documentation\x00NBYTE NMINALLOC\x00[DB]\x00sqlite3_db_config(db, 99999) does not return SQLITE_ERROR\x00sqlite3_config(99999) does not return SQLITE_ERROR\x00PARAMETER RESETFLAG\x00SQLITE_STATUS_MEMORY_USED\x00SQLITE_STATUS_MALLOC_SIZE\x00SQLITE_STATUS_PAGECACHE_USED\x00SQLITE_STATUS_PAGECACHE_OVERFLOW\x00SQLITE_STATUS_PAGECACHE_SIZE\x00SQLITE_STATUS_SCRATCH_USED\x00SQLITE_STATUS_SCRATCH_OVERFLOW\x00SQLITE_STATUS_SCRATCH_SIZE\x00SQLITE_STATUS_PARSER_STACK\x00SQLITE_STATUS_MALLOC_COUNT\x00DB PARAMETER RESETFLAG\x00SQLITE_\x00DBSTATUS_\x00LOOKASIDE_USED\x00CACHE_USED\x00SCHEMA_USED\x00STMT_USED\x00LOOKASIDE_HIT\x00LOOKASIDE_MISS_SIZE\x00LOOKASIDE_MISS_FULL\x00CACHE_HIT\x00CACHE_MISS\x00CACHE_WRITE\x00DEFERRED_FKS\x00CACHE_USED_SHARED\x00CACHE_SPILL\x00?INTEGER?\x00sqlite3_free\x00memset\x00memget\x00sqlite3_memory_used\x00sqlite3_memory_highwater\x00sqlite3_memdebug_backtrace\x00sqlite3_memdebug_dump\x00sqlite3_memdebug_fail\x00sqlite3_memdebug_pending\x00sqlite3_memdebug_settitle\x00sqlite3_memdebug_malloc_count\x00sqlite3_memdebug_log\x00sqlite3_config_pagecache\x00sqlite3_config_alt_pcache\x00sqlite3_status\x00sqlite3_db_status\x00install_malloc_faultsim\x00sqlite3_config_heap\x00sqlite3_config_heap_size\x00sqlite3_config_memstatus\x00sqlite3_config_lookaside\x00sqlite3_config_error\x00sqlite3_config_uri\x00sqlite3_config_cis\x00sqlite3_config_pmasz\x00sqlite3_db_config_lookaside\x00sqlite3_dump_memsys3\x00sqlite3_dump_memsys5\x00sqlite3_install_memsys3\x00sqlite3_memdebug_vfs_oom_test\x00%05u\x00 FILENAME [OFFSET AMT]\"\x00unable to open file \"\x00\" for reading\x00md5\x00md5-10x8\x00md5file\x00md5file-10x8\x00md5sum\x00%03d\x00multiplexor.xAccess failure on %s\x00multiplexor.xOpen failure on %s\x00multiplex_control\x00chunksize\x00multiplex_truncate\x00multiplex/%z\x00multiplex\x00NAME MAKEDEFAULT\x00-force\x00?-force?\x00enable\x00chunk_size\x00max_chunks\x00HANDLE DBNAME SUB-COMMAND INT-VALUE\x00expected database handle, got \"\x00sqlite3_multiplex_initialize\x00sqlite3_multiplex_shutdown\x00sqlite3_multiplex_control\x00fast\x00recursive\x00static_main\x00static_mem\x00static_open\x00static_prng\x00static_lru\x00static_pmem\x00static_app1\x00static_app2\x00static_app3\x00static_vfs1\x00static_vfs2\x00static_vfs3\x00mutex counters are \x00already installed\x00not installed\x00singlethread\x00multithread\x00serialized\x00mutex name\x00disable_mutex_init\x00disable_mutex_try\x00sqlite3_shutdown\x00sqlite3_initialize\x00sqlite3_config\x00enter_static_mutex\x00leave_static_mutex\x00enter_db_mutex\x00leave_db_mutex\x00alloc_dealloc_mutex\x00install_mutex_counters\x00read_mutex_counters\x00clear_mutex_counters\x00\x00\x00\x00\x00\x00\x00\x00vfslog/%z\x00sqlite_ostrace1.....\x00xClose\x00xRead\x00xWrite\x00xTruncate\x00xFilesize\x00xLock\x00xUnlock\x00xCheckResLock\x00xFileControl\x00xSectorSize\x00xDeviceChar\x00xDelete\x00xAccess\x00xFullPathname\x00xRandomness\x00xSleep\x00xCurrentTime\x00xShmUnmap\x00xShmLock\x00xShmBarrier\x00xShmMap\x00annotation\x00CREATE TABLE xxx(event, file, click, rc, size, offset)\x00vfslog\x00VFS\x00failed\x00VFS PARENT LOGFILE\x00bad sqlite3 handle: \x00annotate\x00finalize\x00register\x00quota/%z\x00quota\x00::piLimit_\x00PATTERN LIMIT SCRIPT\x00FILENAME MODE\x00HANDLE SIZE NELEM\x00HANDLE SIZE NELEM CONTENT\x00HANDLE ?HARDSYNC?\x00HANDLE OFFSET WHENCE\x00SEEK_SET\x00SEEK_CUR\x00SEEK_END\x00WHENCE should be SEEK_SET, SEEK_CUR, or SEEK_END\x00HANDLE SIZE\x00PATTERN TEXT\x00sqlite3_quota_initialize\x00sqlite3_quota_shutdown\x00sqlite3_quota_set\x00sqlite3_quota_file\x00sqlite3_quota_dump\x00sqlite3_quota_fopen\x00sqlite3_quota_fread\x00sqlite3_quota_fwrite\x00sqlite3_quota_fclose\x00sqlite3_quota_fflush\x00sqlite3_quota_fseek\x00sqlite3_quota_rewind\x00sqlite3_quota_ftell\x00sqlite3_quota_ftruncate\x00sqlite3_quota_file_size\x00sqlite3_quota_file_truesize\x00sqlite3_quota_file_mtime\x00sqlite3_quota_remove\x00sqlite3_quota_glob\x00sqlite3_quota_file_available\x00sqlite3_quota_ferror\x00cube\x00circle\x00Qcircle\x00breadthfirstsearch\x00register_cube_geom\x00register_circle_geom\x00CREATE TABLE x(database,tablename,cid,name,type,not_null,dflt_value,pk)\x00SELECT name FROM sqlite_temp_schema WHERE type='table'\x00SELECT name FROM %Q.sqlite_schema WHERE type='table'\x00PRAGMA %Q.table_info(%Q)\x00PRAGMA database_list\x00register_schema_module\x00PRAGMA main.journal_mode\x00CMDNAME PATH ?VFS? ?BUSY-HANDLER-SCRIPT?\x00sqlite3demo_superlock\x00open\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00pread\x00pread64\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00mremap\x00SYSCALL-LIST\x00system-call\x00?COUNT PERSIST?\x00EACCES\x00EINTR\x00EIO\x00EOVERFLOW\x00ENOMEM\x00EAGAIN\x00ETIMEDOUT\x00EBUSY\x00EPERM\x00EDEADLK\x00ENOLCK\x00SYSCALL ERRNO\x00errno\x00PGSZ\x00getpagesize\x00pgsz out of range\x00fault\x00install\x00uninstall\x00list\x00defaultvfs\x00pagesize\x00VFS does not support xSetSystemCall\x00test_syscall\x00load_testfixture_extensions\x00SLAVE\x00CREATE TABLE x( name TEXT, arrayname TEXT, value TEXT, fullname TEXT PRIMARY KEY) WITHOUT ROWID\x00array names\x00tclvar_filter_cmd\x00%s(%s)\x00expr {[info exists ::tclvar_set_omit] && $::tclvar_set_omit}\x00the 'fullname' column must be TEXT\x00prohibited TCL variable change\x00proc like {pattern str} {\n set p [string map {% * _ ?} $pattern]\n string match $p $str\n}\nproc tclvar_filter_cmd {eq match glob regexp like} {\n set res {}\n set pattern $eq\n if {$pattern=={}} { set pattern $match }\n if {$pattern=={}} { set pattern * }\n foreach v [uplevel #0 info vars $pattern] {\n if {($glob=={} || [string match $glob [uplevel #0 set $v]])\n && ($like=={} || [like $like [uplevel #0 set $v]])\n && ($regexp=={} || [regexp $regexp [uplevel #0 set $v]])\n } {\n lappend res $v\n }\n }\n set res\n}\n\x00register_tclvar_module\x00clock_seconds\x00sqlthread\x00sqlite3_blocking_step\x00sqlite3_blocking_prepare_v2\x00sqlite3_nonblocking_prepare_v2\x00set\x00Error in Tcl_CreateThread()\x00no parent thread\x00parent\x00spawn\x00VARNAME SCRIPT\x00DBNAME\x00id\x00%s \x00SQLITE_IOERR\x00SQLITE_LOCKED\x00SQLITE_BUSY\x00SQLITE_READONLY\x00SQLITE_READONLY_CANTINIT\x00SQLITE_NOTFOUND\x00SQLITE_OMIT\x00normal|dataonly\x00full|dataonly\x00xCheckReservedLock\x00BEGIN_ATOMIC_WRITE\x00COMMIT_ATOMIC_WRITE\x00ZIPVFS\x00anon\x00SQLITE_ACCESS_EXISTS\x00SQLITE_ACCESS_READWRITE\x00SQLITE_ACCESS_READ\x00xShmOpen\x00 lock\x00 unlock\x00 shared\x00 exclusive\x00shm\x00delete\x00filter\x00ioerr\x00fullerr\x00cantopenerr\x00script\x00devchar\x00sectorsize\x00subcommand\x00FILE ?VALUE?\x00failed to get full path: \x00no such file: \x00unknown method: \x00?CNT PERSIST?\x00default\x00undeletable_when_open\x00immutable\x00?ATTR-LIST?\x00bad flags: \x00?VALUE?\x00-noshm\x00-szosfile\x00-mxpathname\x00-iversion\x00-fullshm\x00VFSNAME ?-noshm BOOL? ?-fullshm BOOL? ?-default BOOL? ?-mxpathname INT? ?-szosfile INT? ?-iversion INT?\x00shared\x00lock\x00unlock\x00DB DBNAME (shared|exclusive) (lock|unlock) OFFSET N\x00ARG\x00DB DBNAME SLOT ?VALUE?\x00*-shm is not yet mapped\x00testvfs\x00vfs_shmlock\x00vfs_set_readmark\x00DB NAME XSTEP XFINAL XVALUE XINVERSE\x00fff\x00misuse test error\x00invalid argument\x00sumint\x00sum\x00sqlite3_create_window_function\x00test_create_window_function_misuse\x00test_create_sumint\x00test_override_sum\x00" var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data diff --git a/lib/capi_darwin_arm64.go b/lib/capi_darwin_arm64.go index 0f4c131..a194e84 100644 --- a/lib/capi_darwin_arm64.go +++ b/lib/capi_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -pkgname sqlite3 -o lib/sqlite_darwin_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3350400/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. +// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -pkgname sqlite3 -o lib/sqlite_darwin_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3350500/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. package sqlite3 diff --git a/lib/sqlite_darwin_amd64.go b/lib/sqlite_darwin_amd64.go index 60b6750..192969e 100644 --- a/lib/sqlite_darwin_amd64.go +++ b/lib/sqlite_darwin_amd64.go @@ -119361,7 +119361,6 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt goto __4 goto __6 __6: - } } @@ -174629,7 +174628,6 @@ __15: goto __14 goto __16 __16: - } // This is a helper function for rbuObjIterCacheTableInfo(). It populates diff --git a/lib/sqlite_darwin_arm64.go b/lib/sqlite_darwin_arm64.go index 03d63ca..f8eeefa 100644 --- a/lib/sqlite_darwin_arm64.go +++ b/lib/sqlite_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines "" -export-enums "" -export-externs X -export-fields F -export-typedefs "" -pkgname sqlite3 -o lib/sqlite_darwin_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3350400/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. +// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines "" -export-enums "" -export-externs X -export-fields F -export-typedefs "" -pkgname sqlite3 -o lib/sqlite_darwin_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3350500/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. package sqlite3 @@ -886,12 +886,18 @@ const ( IOPOL_TYPE_DISK = 0 IOPOL_TYPE_VFS_ATIME_UPDATES = 2 IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION = 6 + IOPOL_TYPE_VFS_IGNORE_PERMISSIONS = 7 IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES = 3 + IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE = 8 IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME = 4 IOPOL_TYPE_VFS_TRIGGER_RESOLVE = 5 IOPOL_UTILITY = 4 IOPOL_VFS_CONTENT_PROTECTION_DEFAULT = 0 IOPOL_VFS_CONTENT_PROTECTION_IGNORE = 1 + IOPOL_VFS_IGNORE_PERMISSIONS_OFF = 0 + IOPOL_VFS_IGNORE_PERMISSIONS_ON = 1 + IOPOL_VFS_SKIP_MTIME_UPDATE_OFF = 0 + IOPOL_VFS_SKIP_MTIME_UPDATE_ON = 1 IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME = 1 IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT = 0 IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT = 0 @@ -1080,7 +1086,7 @@ const ( MAX_AUDIT_RECORDS = 20 MAX_AUDIT_RECORD_SIZE = 32767 MAX_CANON = 1024 - MAX_FATAL_kGUARD_EXC_CODE = 64 + MAX_FATAL_kGUARD_EXC_CODE = 128 MAX_INPUT = 1024 MAX_PATHNAME = 512 MAX_SECTOR_SIZE = 0x10000 @@ -1163,6 +1169,9 @@ const ( MNT_UPDATE = 0x00010000 MNT_VISFLAGMASK = 3622893567 MNT_WAIT = 1 + MPG_FLAGS_IMMOVABLE_PINNED = 72057594037927936 + MPG_FLAGS_MOD_REFS_PINNED_DEALLOC = 72057594037927936 + MPG_FLAGS_NONE = 0 MPG_FLAGS_STRICT_REPLY_INVALID_REPLY_DISP = 72057594037927936 MPG_FLAGS_STRICT_REPLY_INVALID_REPLY_PORT = 144115188075855872 MPG_FLAGS_STRICT_REPLY_INVALID_VOUCHER = 288230376151711744 @@ -2085,6 +2094,7 @@ const ( SQLITE_DEFAULT_FILE_FORMAT = 4 SQLITE_DEFAULT_FILE_PERMISSIONS = 0644 SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT = -1 + SQLITE_DEFAULT_LOOKASIDE = 40 SQLITE_DEFAULT_MEMSTATUS = 1 SQLITE_DEFAULT_MMAP_SIZE = 0 SQLITE_DEFAULT_PAGE_SIZE = 4096 @@ -2510,7 +2520,7 @@ const ( SQLITE_SHM_UNLOCK = 1 SQLITE_SORTER_PMASZ = 250 SQLITE_SOUNDEX = 1 - SQLITE_SOURCE_ID = "2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e" + SQLITE_SOURCE_ID = "2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886" SQLITE_SO_ASC = 0 SQLITE_SO_DESC = 1 SQLITE_SO_UNDEFINED = -1 @@ -2608,8 +2618,8 @@ const ( SQLITE_UTF8 = 1 SQLITE_VDBEINT_H = 0 SQLITE_VDBE_H = 0 - SQLITE_VERSION = "3.35.4" - SQLITE_VERSION_NUMBER = 3035004 + SQLITE_VERSION = "3.35.5" + SQLITE_VERSION_NUMBER = 3035005 SQLITE_VTABRISK_High = 2 SQLITE_VTABRISK_Low = 0 SQLITE_VTABRISK_Normal = 1 @@ -3864,7 +3874,7 @@ const ( // to differentiate among them. // Reasons for exception for a guarded mach port -const ( /* port.h:368:1: */ +const ( /* port.h:367:1: */ KGUARD_EXC_DESTROY = 1 KGUARD_EXC_MOD_REFS = 2 KGUARD_EXC_SET_CONTEXT = 4 @@ -3886,7 +3896,9 @@ const ( /* port.h:368:1: */ KGUARD_EXC_SEND_INVALID_VOUCHER = 131072 KGUARD_EXC_SEND_INVALID_RIGHT = 262144 KGUARD_EXC_RCV_INVALID_NAME = 524288 - KGUARD_EXC_RCV_GUARDED_DESC = 1048576 + KGUARD_EXC_RCV_GUARDED_DESC = 1048576 // should never be fatal; for development only + KGUARD_EXC_MOD_REFS_NON_FATAL = 2097152 + KGUARD_EXC_IMMOVABLE_NON_FATAL = 4194304 ) // Copyright (c) 2003-2012 Apple Inc. All rights reserved. @@ -4276,7 +4288,7 @@ type X__float128 = float64 /* :47:21 */ // ***************************************************************************** // // This file is an amalgamation of many separate C source files from SQLite -// version 3.35.4. By combining all the individual C code files into this +// version 3.35.5. By combining all the individual C code files into this // single large file, the entire code can be compiled as a single translation // unit. This allows many compilers to do optimizations that would not be // possible if the files were compiled separately. Performance improvements @@ -4657,7 +4669,7 @@ type Va_list = X__gnuc_va_list /* stdarg.h:99:24 */ // of the hash might be different from [SQLITE_SOURCE_ID].)^ // // See also: [sqlite_version()] and [sqlite_source_id()]. -var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 269 /* "3.35.4" */)) /* sqlite3.c:1225:23 */ +var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 269 /* "3.35.5" */)) /* sqlite3.c:1225:23 */ // CAPI3REF: Database Connection Handle // KEYWORDS: {database connection} {database connections} @@ -10939,6 +10951,7 @@ type __darwin_arm_neon_state = struct { } /* _structs.h:448:1 */ type __darwin_arm_amx_state_v1 = struct { + _ [0]uint64 F__x [8][64]X__uint8_t F__y [8][64]X__uint8_t F__z [64][64]X__uint8_t @@ -32133,18 +32146,18 @@ type Mach_port_type_array_t = uintptr /* port.h:200:26 */ // User-references for capabilities. -type Mach_port_urefs_t = Natural_t /* port.h:236:19 */ -type Mach_port_delta_t = Integer_t /* port.h:237:19 */ // change in urefs +type Mach_port_urefs_t = Natural_t /* port.h:235:19 */ +type Mach_port_delta_t = Integer_t /* port.h:236:19 */ // change in urefs // Attributes of ports. (See mach_port_get_receive_status.) -type Mach_port_seqno_t = Natural_t /* port.h:241:19 */ // sequence number -type Mach_port_mscount_t = Natural_t /* port.h:242:19 */ // make-send count -type Mach_port_msgcount_t = Natural_t /* port.h:243:19 */ // number of msgs -type Mach_port_rights_t = Natural_t /* port.h:244:19 */ // number of rights +type Mach_port_seqno_t = Natural_t /* port.h:240:19 */ // sequence number +type Mach_port_mscount_t = Natural_t /* port.h:241:19 */ // make-send count +type Mach_port_msgcount_t = Natural_t /* port.h:242:19 */ // number of msgs +type Mach_port_rights_t = Natural_t /* port.h:243:19 */ // number of rights // Are there outstanding send rights for a given port? -type Mach_port_srights_t = uint32 /* port.h:251:22 */ // status of send rights +type Mach_port_srights_t = uint32 /* port.h:250:22 */ // status of send rights type mach_port_status = struct { Fmps_pset Mach_port_rights_t @@ -32157,19 +32170,19 @@ type mach_port_status = struct { Fmps_pdrequest Boolean_t Fmps_nsrequest Boolean_t Fmps_flags Natural_t -} /* port.h:253:9 */ +} /* port.h:252:9 */ // status of send rights -type Mach_port_status_t = mach_port_status /* port.h:264:3 */ +type Mach_port_status_t = mach_port_status /* port.h:263:3 */ // System-wide values for setting queue limits on a port -type mach_port_limits = struct{ Fmpl_qlimit Mach_port_msgcount_t } /* port.h:276:9 */ +type mach_port_limits = struct{ Fmpl_qlimit Mach_port_msgcount_t } /* port.h:275:9 */ // System-wide values for setting queue limits on a port -type Mach_port_limits_t = mach_port_limits /* port.h:278:3 */ +type Mach_port_limits_t = mach_port_limits /* port.h:277:3 */ // Possible values for mps_flags (part of mach_port_status_t) @@ -32177,27 +32190,28 @@ type mach_port_info_ext = struct { Fmpie_status Mach_port_status_t Fmpie_boost_cnt Mach_port_msgcount_t Freserved [6]Uint32_t -} /* port.h:290:9 */ +} /* port.h:289:9 */ // Possible values for mps_flags (part of mach_port_status_t) -type Mach_port_info_ext_t = mach_port_info_ext /* port.h:294:3 */ +type Mach_port_info_ext_t = mach_port_info_ext /* port.h:293:3 */ -type Mach_port_info_t = uintptr /* port.h:296:19 */ // varying array of natural_t +type Mach_port_info_t = uintptr /* port.h:295:19 */ // varying array of natural_t // Flavors for mach_port_get/set_attributes() -type Mach_port_flavor_t = int32 /* port.h:299:17 */ +type Mach_port_flavor_t = int32 /* port.h:298:17 */ // Structure used to pass information about port allocation requests. // Must be padded to 64-bits total length. type mach_port_qos = struct { Fname uint32 /* unsigned name: 1, unsigned prealloc: 1, boolean_t pad1: 30 */ + _ [4]byte Flen Natural_t -} /* port.h:319:9 */ +} /* port.h:318:9 */ // Structure used to pass information about port allocation requests. // Must be padded to 64-bits total length. -type Mach_port_qos_t = mach_port_qos /* port.h:324:3 */ +type Mach_port_qos_t = mach_port_qos /* port.h:323:3 */ // Mach Port Guarding definitions @@ -32212,7 +32226,7 @@ type mach_port_options = struct { Fflags Uint32_t Fmpl Mach_port_limits_t F__8 struct{ Freserved [2]Uint64_t } -} /* port.h:349:9 */ +} /* port.h:348:9 */ // Mach Port Guarding definitions @@ -32223,9 +32237,9 @@ type mach_port_options = struct { // Structure to define optional attributes for a newly // constructed port. -type Mach_port_options_t = mach_port_options /* port.h:356:2 */ +type Mach_port_options_t = mach_port_options /* port.h:355:2 */ -type Mach_port_options_ptr_t = uintptr /* port.h:358:29 */ +type Mach_port_options_ptr_t = uintptr /* port.h:357:29 */ // Credential flags that can be set on a credential // also forces credential cache miss @@ -102008,39 +102022,21 @@ __8: Xsqlite3OpenTable(tls, pParse, iCur, iDb, pTab, OP_OpenWrite) addr = Xsqlite3VdbeAddOp1(tls, v, OP_Rewind, iCur) reg = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) - *(*int32)(unsafe.Pointer(pParse + 56 /* &.nMem */)) += (int32((*Table)(unsafe.Pointer(pTab)).FnCol)) if !(((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0)) { goto __10 } Xsqlite3VdbeAddOp2(tls, v, OP_Rowid, iCur, reg) + *(*int32)(unsafe.Pointer(pParse + 56 /* &.nMem */)) += (int32((*Table)(unsafe.Pointer(pTab)).FnCol)) goto __11 __10: pPk = Xsqlite3PrimaryKeyIndex(tls, pTab) -__11: - ; + *(*int32)(unsafe.Pointer(pParse + 56 /* &.nMem */)) += (int32((*Index)(unsafe.Pointer(pPk)).FnColumn)) i = 0 __12: - if !(i < int32((*Table)(unsafe.Pointer(pTab)).FnCol)) { + if !(i < int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) { goto __14 } - if !((i != iCol) && ((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(i)*32)).FcolFlags) & COLFLAG_VIRTUAL) == 0)) { - goto __15 - } - if !(pPk != 0) { - goto __16 - } - iPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(i))) - iColPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(iCol))) - regOut = (((reg + 1) + iPos) - (libc.Bool32(iPos > iColPos))) - goto __17 -__16: - regOut = ((reg + 1) + nField) -__17: - ; - Xsqlite3ExprCodeGetColumnOfTable(tls, v, pTab, iCur, i, regOut) - nField++ -__15: - ; + Xsqlite3VdbeAddOp3(tls, v, OP_Column, iCur, i, ((reg + i) + 1)) goto __13 __13: i++ @@ -102048,17 +102044,65 @@ __13: goto __14 __14: ; - regRec = (reg + int32((*Table)(unsafe.Pointer(pTab)).FnCol)) - Xsqlite3VdbeAddOp3(tls, v, OP_MakeRecord, (reg + 1), nField, regRec) - if !(pPk != 0) { + nField = int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol) +__11: + ; + regRec = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) + i = 0 +__15: + if !(i < int32((*Table)(unsafe.Pointer(pTab)).FnCol)) { + goto __17 + } + if !((i != iCol) && ((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(i)*32)).FcolFlags) & COLFLAG_VIRTUAL) == 0)) { goto __18 } - Xsqlite3VdbeAddOp4Int(tls, v, OP_IdxInsert, iCur, regRec, (reg + 1), int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) - goto __19 -__18: - Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iCur, regRec, reg) -__19: + if !(pPk != 0) { + goto __19 + } + iPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(i))) + iColPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(iCol))) + if !(iPos < int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) { + goto __21 + } + goto __16 +__21: ; + regOut = (((reg + 1) + iPos) - (libc.Bool32(iPos > iColPos))) + goto __20 +__19: + regOut = ((reg + 1) + nField) +__20: + ; + if !(i == int32((*Table)(unsafe.Pointer(pTab)).FiPKey)) { + goto __22 + } + Xsqlite3VdbeAddOp2(tls, v, OP_Null, 0, regOut) + goto __23 +__22: + Xsqlite3ExprCodeGetColumnOfTable(tls, v, pTab, iCur, i, regOut) +__23: + ; + nField++ +__18: + ; + goto __16 +__16: + i++ + goto __15 + goto __17 +__17: + ; + Xsqlite3VdbeAddOp3(tls, v, OP_MakeRecord, (reg + 1), nField, regRec) + if !(pPk != 0) { + goto __24 + } + Xsqlite3VdbeAddOp4Int(tls, v, OP_IdxInsert, iCur, regRec, (reg + 1), int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) + goto __25 +__24: + Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iCur, regRec, reg) +__25: + ; + Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_SAVEPOSITION)) Xsqlite3VdbeAddOp2(tls, v, OP_Next, iCur, (addr + 1)) Xsqlite3VdbeJumpHere(tls, v, addr) @@ -102071,7 +102115,7 @@ exit_drop_column: } // Register built-in functions used to help implement ALTER TABLE -func Xsqlite3AlterFunctions(tls *libc.TLS) { /* sqlite3.c:108744:21: */ +func Xsqlite3AlterFunctions(tls *libc.TLS) { /* sqlite3.c:108755:21: */ Xsqlite3InsertBuiltinFuncs(tls, uintptr(unsafe.Pointer(&aAlterTableFuncs)), (int32(uint64(unsafe.Sizeof(aAlterTableFuncs)) / uint64(unsafe.Sizeof(FuncDef{}))))) } @@ -102079,7 +102123,7 @@ var aAlterTableFuncs = [4]FuncDef{ {FnArg: int8(9), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9883 /* "sqlite_rename_co..." */}, {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9904 /* "sqlite_rename_ta..." */}, {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9924 /* "sqlite_rename_te..." */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9943 /* "sqlite_drop_colu..." */}} /* sqlite3.c:108745:18 */ + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 9943 /* "sqlite_drop_colu..." */}} /* sqlite3.c:108756:18 */ //************* End of alter.c ********************************************** //************* Begin file analyze.c **************************************** @@ -102235,7 +102279,7 @@ var aAlterTableFuncs = [4]FuncDef{ // or it may be a NULL pointer. If it is not NULL, then all entries in // the sqlite_statN tables associated with the named table are deleted. // If zWhere==0, then code is generated to delete all stat table entries. -func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWhere uintptr, zWhereType uintptr) { /* sqlite3.c:108922:13: */ +func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWhere uintptr, zWhereType uintptr) { /* sqlite3.c:108933:13: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -102315,7 +102359,7 @@ var aTable = [3]struct { {FzName: ts + 10033 /* "sqlite_stat1" */, FzCols: ts + 10046 /* "tbl,idx,stat" */}, {FzName: ts + 10059 /* "sqlite_stat4" */, FzCols: ts + 10072 /* "tbl,idx,neq,nlt,..." */}, {FzName: ts + 10100 /* "sqlite_stat3" */}, -} /* sqlite3.c:108932:5 */ +} /* sqlite3.c:108943:5 */ // Recommended number of samples for sqlite_stat4 @@ -102342,14 +102386,14 @@ type StatAccum1 = struct { FnMaxEqZero int32 FiGet int32 Fa uintptr -} /* sqlite3.c:109020:9 */ +} /* sqlite3.c:109031:9 */ // Recommended number of samples for sqlite_stat4 // Three SQL functions - stat_init(), stat_push(), and stat_get() - // share an instance of the following structure to hold their state // information. -type StatAccum = StatAccum1 /* sqlite3.c:109020:26 */ +type StatAccum = StatAccum1 /* sqlite3.c:109031:26 */ type StatSample1 = struct { FanEq uintptr FanDLt uintptr @@ -102360,12 +102404,12 @@ type StatSample1 = struct { _ [3]byte FiCol int32 FiHash U32 -} /* sqlite3.c:109020:9 */ +} /* sqlite3.c:109031:9 */ -type StatSample = StatSample1 /* sqlite3.c:109021:27 */ +type StatSample = StatSample1 /* sqlite3.c:109032:27 */ // Reclaim memory used by a StatSample -func sampleClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:109062:13: */ +func sampleClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:109073:13: */ if (*StatSample)(unsafe.Pointer(p)).FnRowid != 0 { Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(p + 24 /* &.u */))) @@ -102374,7 +102418,7 @@ func sampleClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:109062:13: } // Initialize the BLOB value of a ROWID -func sampleSetRowid(tls *libc.TLS, db uintptr, p uintptr, n int32, pData uintptr) { /* sqlite3.c:109074:13: */ +func sampleSetRowid(tls *libc.TLS, db uintptr, p uintptr, n int32, pData uintptr) { /* sqlite3.c:109085:13: */ if (*StatSample)(unsafe.Pointer(p)).FnRowid != 0 { Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(p + 24 /* &.u */))) @@ -102389,7 +102433,7 @@ func sampleSetRowid(tls *libc.TLS, db uintptr, p uintptr, n int32, pData uintptr } // Initialize the INTEGER value of a ROWID. -func sampleSetRowidInt64(tls *libc.TLS, db uintptr, p uintptr, iRowid I64) { /* sqlite3.c:109090:13: */ +func sampleSetRowidInt64(tls *libc.TLS, db uintptr, p uintptr, iRowid I64) { /* sqlite3.c:109101:13: */ if (*StatSample)(unsafe.Pointer(p)).FnRowid != 0 { Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(p + 24 /* &.u */))) @@ -102399,7 +102443,7 @@ func sampleSetRowidInt64(tls *libc.TLS, db uintptr, p uintptr, iRowid I64) { /* } // Copy the contents of object (*pFrom) into (*pTo). -func sampleCopy(tls *libc.TLS, p uintptr, pTo uintptr, pFrom uintptr) { /* sqlite3.c:109103:13: */ +func sampleCopy(tls *libc.TLS, p uintptr, pTo uintptr, pFrom uintptr) { /* sqlite3.c:109114:13: */ (*StatSample)(unsafe.Pointer(pTo)).FisPSample = (*StatSample)(unsafe.Pointer(pFrom)).FisPSample (*StatSample)(unsafe.Pointer(pTo)).FiCol = (*StatSample)(unsafe.Pointer(pFrom)).FiCol (*StatSample)(unsafe.Pointer(pTo)).FiHash = (*StatSample)(unsafe.Pointer(pFrom)).FiHash @@ -102414,7 +102458,7 @@ func sampleCopy(tls *libc.TLS, p uintptr, pTo uintptr, pFrom uintptr) { /* sqlit } // Reclaim all memory of a StatAccum structure. -func statAccumDestructor(tls *libc.TLS, pOld uintptr) { /* sqlite3.c:109121:13: */ +func statAccumDestructor(tls *libc.TLS, pOld uintptr) { /* sqlite3.c:109132:13: */ var p uintptr = pOld if (*StatAccum)(unsafe.Pointer(p)).FmxSample != 0 { var i int32 @@ -102449,7 +102493,7 @@ func statAccumDestructor(tls *libc.TLS, pOld uintptr) { /* sqlite3.c:109121:13: // value is a pointer to the StatAccum object. The datatype of the // return value is BLOB, but it is really just a pointer to the StatAccum // object. -func statInit(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109156:13: */ +func statInit(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109167:13: */ var p uintptr var nCol int32 // Number of columns in index being sampled var nKeyCol int32 // Number of key columns @@ -102545,7 +102589,7 @@ var statInitFuncdef = FuncDef{ FnArg: int8(4), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10113 /* "stat_init" */} /* sqlite3.c:109243:22 */ + FzName: ts + 10113 /* "stat_init" */} /* sqlite3.c:109254:22 */ // pNew and pOld are both candidate non-periodic samples selected for // the same column (pNew->iCol==pOld->iCol). Ignoring this column and @@ -102556,7 +102600,7 @@ var statInitFuncdef = FuncDef{ // // This function assumes that for each argument sample, the contents of // the anEq[] array from pSample->anEq[pSample->iCol+1] onwards are valid. -func sampleIsBetterPost(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109267:12: */ +func sampleIsBetterPost(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109278:12: */ var nCol int32 = (*StatAccum)(unsafe.Pointer(pAccum)).FnCol var i int32 @@ -102578,7 +102622,7 @@ func sampleIsBetterPost(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintpt // // This function assumes that for each argument sample, the contents of // the anEq[] array from pSample->anEq[pSample->iCol] onwards are valid. -func sampleIsBetter(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109291:12: */ +func sampleIsBetter(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109302:12: */ var nEqNew TRowcnt = *(*TRowcnt)(unsafe.Pointer((*StatSample)(unsafe.Pointer(pNew)).FanEq + uintptr((*StatSample)(unsafe.Pointer(pNew)).FiCol)*4)) var nEqOld TRowcnt = *(*TRowcnt)(unsafe.Pointer((*StatSample)(unsafe.Pointer(pOld)).FanEq + uintptr((*StatSample)(unsafe.Pointer(pOld)).FiCol)*4)) @@ -102596,7 +102640,7 @@ func sampleIsBetter(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) i // Copy the contents of sample *pNew into the p->a[] array. If necessary, // remove the least desirable sample from p->a[] to make room. -func sampleInsert(tls *libc.TLS, p uintptr, pNew uintptr, nEqZero int32) { /* sqlite3.c:109314:13: */ +func sampleInsert(tls *libc.TLS, p uintptr, pNew uintptr, nEqZero int32) { /* sqlite3.c:109325:13: */ var pSample uintptr var i int32 var pOld uintptr @@ -102739,7 +102783,7 @@ __11: // p->current contains a sample that reflects the previous row of the // index. The value of anEq[iChng] and subsequent anEq[] elements are // correct at this point. -func samplePushPrevious(tls *libc.TLS, p uintptr, iChng int32) { /* sqlite3.c:109406:13: */ +func samplePushPrevious(tls *libc.TLS, p uintptr, iChng int32) { /* sqlite3.c:109417:13: */ var i int32 // Check if any samples from the aBest[] array should be pushed @@ -102791,7 +102835,7 @@ func samplePushPrevious(tls *libc.TLS, p uintptr, iChng int32) { /* sqlite3.c:10 // if it wants the byte-code to do special processing. // // The R parameter is only used for STAT4 -func statPush(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109458:13: */ +func statPush(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109469:13: */ var i int32 // The three function arguments @@ -102863,7 +102907,7 @@ var statPushFuncdef = FuncDef{ FnArg: (int8(2 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10123 /* "stat_push" */} /* sqlite3.c:109533:22 */ + FzName: ts + 10123 /* "stat_push" */} /* sqlite3.c:109544:22 */ // Implementation of the stat_get(P,J) SQL function. This routine is // used to query statistical information that has been gathered into @@ -102882,7 +102926,7 @@ var statPushFuncdef = FuncDef{ // STAT_GET_STAT1 and is hence omitted and this routine becomes // a one-parameter function, stat_get(P), that always returns the // stat1 table entry information. -func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109570:13: */ +func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109581:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -102997,9 +103041,9 @@ var statGetFuncdef = FuncDef{ FnArg: (int8(1 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10150 /* "stat_get" */} /* sqlite3.c:109685:22 */ + FzName: ts + 10150 /* "stat_get" */} /* sqlite3.c:109696:22 */ -func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, regOut int32) { /* sqlite3.c:109697:13: */ +func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, regOut int32) { /* sqlite3.c:109708:13: */ Xsqlite3VdbeAddOp2(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_Integer, iParam, (regStat + 1)) Xsqlite3VdbeAddFunctionCall(tls, pParse, 0, regStat, regOut, (1 + IsStat4), @@ -103008,7 +103052,7 @@ func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, reg // Generate code to do an analysis of all indices associated with // a single table. -func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr, iStatCur int32, iMem int32, iTab int32) { /* sqlite3.c:109738:13: */ +func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr, iStatCur int32, iMem int32, iTab int32) { /* sqlite3.c:109749:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // Database handle var pIdx uintptr // An index to being analyzed var iIdxCur int32 // Cursor open on index being analyzed @@ -103368,7 +103412,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Generate code that will cause the most recent index analysis to // be loaded into internal hash tables where is can be used. -func loadAnalysis(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110100:13: */ +func loadAnalysis(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110111:13: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) if v != 0 { Xsqlite3VdbeAddOp1(tls, v, OP_LoadAnalysis, iDb) @@ -103376,7 +103420,7 @@ func loadAnalysis(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:11010 } // Generate code that will do an analysis of an entire database -func analyzeDatabase(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110110:13: */ +func analyzeDatabase(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110121:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pSchema uintptr = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*32)).FpSchema // Schema of database iDb var k uintptr @@ -103401,7 +103445,7 @@ func analyzeDatabase(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:11 // Generate code that will do an analysis of a single table in // a database. If pOnlyIdx is not NULL then it is a single index // in pTab that should be analyzed. -func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) { /* sqlite3.c:110137:13: */ +func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) { /* sqlite3.c:110148:13: */ var iDb int32 var iStatCur int32 @@ -103428,7 +103472,7 @@ func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) // Form 1 causes all indices in all attached databases to be analyzed. // Form 2 analyzes all indices the single database named. // Form 3 analyzes all indices associated with the named table. -func Xsqlite3Analyze(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:110168:21: */ +func Xsqlite3Analyze(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:110179:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -103491,16 +103535,16 @@ func Xsqlite3Analyze(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintp type analysisInfo = struct { Fdb uintptr FzDatabase uintptr -} /* sqlite3.c:110220:9 */ +} /* sqlite3.c:110231:9 */ // Used to pass information from the analyzer reader through to the // callback routine. -type AnalysisInfo = analysisInfo /* sqlite3.c:110220:29 */ +type AnalysisInfo = analysisInfo /* sqlite3.c:110231:29 */ // The first argument points to a nul-terminated string containing a // list of space separated integers. Read the first nOut of these into // the array aOut[]. -func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, aLog uintptr, pIndex uintptr) { /* sqlite3.c:110231:13: */ +func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, aLog uintptr, pIndex uintptr) { /* sqlite3.c:110242:13: */ var z uintptr = zIntArray var c int32 var i int32 @@ -103559,7 +103603,7 @@ func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, // // Entries for which argv[1]==NULL simply record the number of rows in // the table. -func analysisLoader(tls *libc.TLS, pData uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:110304:12: */ +func analysisLoader(tls *libc.TLS, pData uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:110315:12: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -103621,7 +103665,7 @@ func analysisLoader(tls *libc.TLS, pData uintptr, argc int32, argv uintptr, NotU // If the Index.aSample variable is not NULL, delete the aSample[] array // and its contents. -func Xsqlite3DeleteIndexSamples(tls *libc.TLS, db uintptr, pIdx uintptr) { /* sqlite3.c:110367:21: */ +func Xsqlite3DeleteIndexSamples(tls *libc.TLS, db uintptr, pIdx uintptr) { /* sqlite3.c:110378:21: */ if (*Index)(unsafe.Pointer(pIdx)).FaSample != 0 { var j int32 for j = 0; j < (*Index)(unsafe.Pointer(pIdx)).FnSample; j++ { @@ -103638,7 +103682,7 @@ func Xsqlite3DeleteIndexSamples(tls *libc.TLS, db uintptr, pIdx uintptr) { /* sq // Populate the pIdx->aAvgEq[] array based on the samples currently // stored in pIdx->aSample[]. -func initAvgEq(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:110392:13: */ +func initAvgEq(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:110403:13: */ if pIdx != 0 { var aSample uintptr = (*Index)(unsafe.Pointer(pIdx)).FaSample var pFinal uintptr = (aSample + uintptr(((*Index)(unsafe.Pointer(pIdx)).FnSample-1))*40) @@ -103696,7 +103740,7 @@ func initAvgEq(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:110392:13: */ // Look up an index by name. Or, if the name of a WITHOUT ROWID table // is supplied instead, find the PRIMARY KEY index for that table. -func findIndexOrPrimaryKey(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:110451:14: */ +func findIndexOrPrimaryKey(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:110462:14: */ var pIdx uintptr = Xsqlite3FindIndex(tls, db, zName, zDb) if pIdx == uintptr(0) { var pTab uintptr = Xsqlite3FindTable(tls, db, zName, zDb) @@ -103717,7 +103761,7 @@ func findIndexOrPrimaryKey(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr // zSql2: SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4 // // where %Q is replaced with the database name before the SQL is executed. -func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb uintptr) int32 { /* sqlite3.c:110476:12: */ +func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb uintptr) int32 { /* sqlite3.c:110487:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -103853,7 +103897,7 @@ func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb ui // Load content from the sqlite_stat4 table into // the Index.aSample[] arrays of all indices. -func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:110597:12: */ +func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:110608:12: */ var rc int32 = SQLITE_OK // Result codes from subroutines if Xsqlite3FindTable(tls, db, ts+10059 /* "sqlite_stat4" */, zDb) != 0 { @@ -103883,7 +103927,7 @@ func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:1105 // If an OOM error occurs, this function always sets db->mallocFailed. // This means if the caller does not care about other errors, the return // code may be ignored. -func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlite3.c:110632:20: */ +func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlite3.c:110643:20: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -103988,7 +104032,7 @@ func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlit // ATTACH DATABASE abc||def AS 'db2' // // will fail because neither abc or def can be resolved. -func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* sqlite3.c:110737:12: */ +func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* sqlite3.c:110748:12: */ var rc int32 = SQLITE_OK if pExpr != 0 { if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_ID { @@ -104002,7 +104046,7 @@ func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* s // Return true if zName points to a name that may be used to refer to // database iDb attached to handle db. -func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int32 { /* sqlite3.c:110754:20: */ +func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int32 { /* sqlite3.c:110765:20: */ return (libc.Bool32((Xsqlite3StrICmp(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*32)).FzDbSName, zName) == 0) || ((iDb == 0) && (Xsqlite3StrICmp(tls, ts+5747 /* "main" */, zName) == 0)))) } @@ -104020,7 +104064,7 @@ func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int3 // If the db->init.reopenMemdb flags is set, then instead of attaching a // new database, close the database on db->init.iDb and reopen it as an // empty MemDB. -func attachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110776:13: */ +func attachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110787:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -104313,7 +104357,7 @@ __34: // DETACH DATABASE x // // SELECT sqlite_detach(x) -func detachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110969:13: */ +func detachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110980:13: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -104418,7 +104462,7 @@ detach_error: // This procedure generates VDBE code for a single invocation of either the // sqlite_detach() or sqlite_attach() SQL user functions. -func codeAttach(tls *libc.TLS, pParse uintptr, type1 int32, pFunc uintptr, pAuthArg uintptr, pFilename uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111031:13: */ +func codeAttach(tls *libc.TLS, pParse uintptr, type1 int32, pFunc uintptr, pAuthArg uintptr, pFilename uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111042:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -104496,7 +104540,7 @@ attach_end: // Called by the parser to compile a DETACH statement. // // DETACH pDbname -func Xsqlite3Detach(tls *libc.TLS, pParse uintptr, pDbname uintptr) { /* sqlite3.c:111102:21: */ +func Xsqlite3Detach(tls *libc.TLS, pParse uintptr, pDbname uintptr) { /* sqlite3.c:111113:21: */ codeAttach(tls, pParse, SQLITE_DETACH, uintptr(unsafe.Pointer(&detach_func)), pDbname, uintptr(0), uintptr(0), pDbname) } @@ -104504,12 +104548,12 @@ var detach_func = FuncDef{ FnArg: int8(1), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10631 /* "sqlite_detach" */} /* sqlite3.c:111103:24 */ + FzName: ts + 10631 /* "sqlite_detach" */} /* sqlite3.c:111114:24 */ // Called by the parser to compile an ATTACH statement. // // ATTACH p AS pDbname KEY pKey -func Xsqlite3Attach(tls *libc.TLS, pParse uintptr, p uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111122:21: */ +func Xsqlite3Attach(tls *libc.TLS, pParse uintptr, p uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111133:21: */ codeAttach(tls, pParse, SQLITE_ATTACH, uintptr(unsafe.Pointer(&attach_func)), p, p, pDbname, pKey) } @@ -104517,10 +104561,10 @@ var attach_func = FuncDef{ FnArg: int8(3), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 10645 /* "sqlite_attach" */} /* sqlite3.c:111123:24 */ + FzName: ts + 10645 /* "sqlite_attach" */} /* sqlite3.c:111134:24 */ // Expression callback used by sqlite3FixAAAA() routines. -func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111141:12: */ +func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111152:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -104540,7 +104584,7 @@ func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111 } // Select callback used by sqlite3FixAAAA() routines. -func fixSelectCb(tls *libc.TLS, p uintptr, pSelect uintptr) int32 { /* sqlite3.c:111158:12: */ +func fixSelectCb(tls *libc.TLS, p uintptr, pSelect uintptr) int32 { /* sqlite3.c:111169:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -104598,7 +104642,7 @@ __3: // Initialize a DbFixer structure. This routine must be called prior // to passing the structure to one of the sqliteFixAAAA() routines below. -func Xsqlite3FixInit(tls *libc.TLS, pFix uintptr, pParse uintptr, iDb int32, zType uintptr, pName uintptr) { /* sqlite3.c:111198:21: */ +func Xsqlite3FixInit(tls *libc.TLS, pFix uintptr, pParse uintptr, iDb int32, zType uintptr, pName uintptr) { /* sqlite3.c:111209:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb (*DbFixer)(unsafe.Pointer(pFix)).FpParse = pParse @@ -104632,7 +104676,7 @@ func Xsqlite3FixInit(tls *libc.TLS, pFix uintptr, pParse uintptr, iDb int32, zTy // to an object in a different database, an error message is added to // pParse->zErrMsg and these routines return non-zero. If everything // checks out, these routines return 0. -func Xsqlite3FixSrcList(tls *libc.TLS, pFix uintptr, pList uintptr) int32 { /* sqlite3.c:111236:20: */ +func Xsqlite3FixSrcList(tls *libc.TLS, pFix uintptr, pList uintptr) int32 { /* sqlite3.c:111247:20: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -104647,15 +104691,15 @@ func Xsqlite3FixSrcList(tls *libc.TLS, pFix uintptr, pList uintptr) int32 { /* s return res } -func Xsqlite3FixSelect(tls *libc.TLS, pFix uintptr, pSelect uintptr) int32 { /* sqlite3.c:111250:20: */ +func Xsqlite3FixSelect(tls *libc.TLS, pFix uintptr, pSelect uintptr) int32 { /* sqlite3.c:111261:20: */ return Xsqlite3WalkSelect(tls, (pFix + 8 /* &.w */), pSelect) } -func Xsqlite3FixExpr(tls *libc.TLS, pFix uintptr, pExpr uintptr) int32 { /* sqlite3.c:111256:20: */ +func Xsqlite3FixExpr(tls *libc.TLS, pFix uintptr, pExpr uintptr) int32 { /* sqlite3.c:111267:20: */ return Xsqlite3WalkExpr(tls, (pFix + 8 /* &.w */), pExpr) } -func Xsqlite3FixTriggerStep(tls *libc.TLS, pFix uintptr, pStep uintptr) int32 { /* sqlite3.c:111265:20: */ +func Xsqlite3FixTriggerStep(tls *libc.TLS, pFix uintptr, pStep uintptr) int32 { /* sqlite3.c:111276:20: */ for pStep != 0 { if (((Xsqlite3WalkSelect(tls, (pFix+8 /* &.w */), (*TriggerStep)(unsafe.Pointer(pStep)).FpSelect) != 0) || (Xsqlite3WalkExpr(tls, (pFix+8 /* &.w */), (*TriggerStep)(unsafe.Pointer(pStep)).FpWhere) != 0)) || @@ -104742,7 +104786,7 @@ func Xsqlite3FixTriggerStep(tls *libc.TLS, pFix uintptr, pStep uintptr) int32 { // // Setting the auth function to NULL disables this hook. The default // setting of the auth function is NULL. -func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uintptr) int32 { /* sqlite3.c:111367:16: */ +func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uintptr) int32 { /* sqlite3.c:111378:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FxAuth = xAuth (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg = pArg @@ -104755,7 +104799,7 @@ func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uint // Write an error message into pParse->zErrMsg that explains that the // user-supplied authorization function returned an illegal value. -func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111387:13: */ +func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111398:13: */ Xsqlite3ErrorMsg(tls, pParse, ts+10729 /* "authorizer malfu..." */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR } @@ -104767,7 +104811,7 @@ func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:11138 // If SQLITE_IGNORE is returned and pExpr is not NULL, then pExpr is changed // to an SQL NULL expression. Otherwise, if pExpr is NULL, then SQLITE_IGNORE // is treated as SQLITE_DENY. In this case an error is left in pParse. -func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintptr, iDb int32) int32 { /* sqlite3.c:111401:20: */ +func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintptr, iDb int32) int32 { /* sqlite3.c:111412:20: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -104799,7 +104843,7 @@ func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintp // If the auth function returns SQLITE_IGNORE, change the TK_COLUMN // instruction into a TK_NULL. If the auth function returns SQLITE_DENY, // then generate an error. -func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uintptr, pTabList uintptr) { /* sqlite3.c:111437:21: */ +func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uintptr, pTabList uintptr) { /* sqlite3.c:111448:21: */ var pTab uintptr = uintptr(0) // The table being read var zCol uintptr // Name of the column of the table var iSrc int32 // Index in pTabList->a[] of table being read @@ -104848,7 +104892,7 @@ func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uint // either SQLITE_OK (zero) or SQLITE_IGNORE or SQLITE_DENY. If SQLITE_DENY // is returned, then the error count and error message in pParse are // modified appropriately. -func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, zArg2 uintptr, zArg3 uintptr) int32 { /* sqlite3.c:111494:20: */ +func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, zArg2 uintptr, zArg3 uintptr) int32 { /* sqlite3.c:111505:20: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var rc int32 @@ -104880,7 +104924,7 @@ func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, // Push an authorization context. After this routine is called, the // zArg3 argument to authorization callbacks will be zContext until // popped. Or if pParse==0, this routine is a no-op. -func Xsqlite3AuthContextPush(tls *libc.TLS, pParse uintptr, pContext uintptr, zContext uintptr) { /* sqlite3.c:111543:21: */ +func Xsqlite3AuthContextPush(tls *libc.TLS, pParse uintptr, pContext uintptr, zContext uintptr) { /* sqlite3.c:111554:21: */ (*AuthContext)(unsafe.Pointer(pContext)).FpParse = pParse (*AuthContext)(unsafe.Pointer(pContext)).FzAuthContext = (*Parse)(unsafe.Pointer(pParse)).FzAuthContext @@ -104889,7 +104933,7 @@ func Xsqlite3AuthContextPush(tls *libc.TLS, pParse uintptr, pContext uintptr, zC // Pop an authorization context that was previously pushed // by sqlite3AuthContextPush -func Xsqlite3AuthContextPop(tls *libc.TLS, pContext uintptr) { /* sqlite3.c:111558:21: */ +func Xsqlite3AuthContextPop(tls *libc.TLS, pContext uintptr) { /* sqlite3.c:111569:21: */ if (*AuthContext)(unsafe.Pointer(pContext)).FpParse != 0 { (*Parse)(unsafe.Pointer((*AuthContext)(unsafe.Pointer(pContext)).FpParse)).FzAuthContext = (*AuthContext)(unsafe.Pointer(pContext)).FzAuthContext (*AuthContext)(unsafe.Pointer(pContext)).FpParse = uintptr(0) @@ -104904,7 +104948,7 @@ func Xsqlite3AuthContextPop(tls *libc.TLS, pContext uintptr) { /* sqlite3.c:1115 // This routine just records the fact that the lock is desired. The // code to make the lock occur is generated by a later call to // codeTableLocks() which occurs during sqlite3FinishCoding(). -func Xsqlite3TableLock(tls *libc.TLS, pParse uintptr, iDb int32, iTab Pgno, isWriteLock U8, zName uintptr) { /* sqlite3.c:111617:21: */ +func Xsqlite3TableLock(tls *libc.TLS, pParse uintptr, iDb int32, iTab Pgno, isWriteLock U8, zName uintptr) { /* sqlite3.c:111628:21: */ var pToplevel uintptr var i int32 var nBytes int32 @@ -104946,7 +104990,7 @@ func Xsqlite3TableLock(tls *libc.TLS, pParse uintptr, iDb int32, iTab Pgno, isWr // Code an OP_TableLock instruction for each table locked by the // statement (configured by calls to sqlite3TableLock()). -func codeTableLocks(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111660:13: */ +func codeTableLocks(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111671:13: */ var i int32 var pVdbe uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe @@ -104970,7 +105014,7 @@ func codeTableLocks(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111660:13: */ // // Note that if an error occurred, it might be the case that // no VDBE code was generated. -func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111699:21: */ +func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111710:21: */ var db uintptr var v uintptr @@ -105111,7 +105155,7 @@ func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111699:2 // Not everything is nestable. This facility is designed to permit // INSERT, UPDATE, and DELETE operations against the schema table. Use // care if you decide to try to use this routine for some other purposes. -func Xsqlite3NestedParse(tls *libc.TLS, pParse uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:111856:21: */ +func Xsqlite3NestedParse(tls *libc.TLS, pParse uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:111867:21: */ bp := tls.Alloc(160) defer tls.Free(160) @@ -105159,7 +105203,7 @@ func Xsqlite3NestedParse(tls *libc.TLS, pParse uintptr, zFormat uintptr, va uint // auxiliary databases added using the ATTACH command. // // See also sqlite3LocateTable(). -func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintptr) uintptr { /* sqlite3.c:111908:22: */ +func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintptr) uintptr { /* sqlite3.c:111919:22: */ var p uintptr = uintptr(0) var i int32 @@ -105235,7 +105279,7 @@ func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintp // The difference between this routine and sqlite3FindTable() is that this // routine leaves an error message in pParse->zErrMsg where // sqlite3FindTable() does not. -func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr, zDbase uintptr) uintptr { /* sqlite3.c:111986:22: */ +func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr, zDbase uintptr) uintptr { /* sqlite3.c:111997:22: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -105295,7 +105339,7 @@ func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr // the search to schema (p->pSchema) if it is not NULL. p->pSchema may be // non-NULL if it is part of a view or trigger program definition. See // sqlite3FixSrcList() for details. -func Xsqlite3LocateTableItem(tls *libc.TLS, pParse uintptr, flags U32, p uintptr) uintptr { /* sqlite3.c:112046:22: */ +func Xsqlite3LocateTableItem(tls *libc.TLS, pParse uintptr, flags U32, p uintptr) uintptr { /* sqlite3.c:112057:22: */ var zDb uintptr if (*SrcItem)(unsafe.Pointer(p)).FpSchema != 0 { @@ -105317,7 +105361,7 @@ func Xsqlite3LocateTableItem(tls *libc.TLS, pParse uintptr, flags U32, p uintptr // for duplicate index names is done.) The search order is // TEMP first, then MAIN, then any auxiliary databases added // using the ATTACH command. -func Xsqlite3FindIndex(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:112074:22: */ +func Xsqlite3FindIndex(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:112085:22: */ var p uintptr = uintptr(0) var i int32 // All mutexes are required for schema access. Make sure we hold them. @@ -105344,7 +105388,7 @@ func Xsqlite3FindIndex(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) ui } // Reclaim the memory used by an index -func Xsqlite3FreeIndex(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:112094:21: */ +func Xsqlite3FreeIndex(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:112105:21: */ Xsqlite3DeleteIndexSamples(tls, db, p) Xsqlite3ExprDelete(tls, db, (*Index)(unsafe.Pointer(p)).FpPartIdxWhere) Xsqlite3ExprListDelete(tls, db, (*Index)(unsafe.Pointer(p)).FaColExpr) @@ -105360,7 +105404,7 @@ func Xsqlite3FreeIndex(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:1120 // unlike that index from its Table then remove the index from // the index hash table and free all memory structures associated // with the index. -func Xsqlite3UnlinkAndDeleteIndex(tls *libc.TLS, db uintptr, iDb int32, zIdxName uintptr) { /* sqlite3.c:112114:21: */ +func Xsqlite3UnlinkAndDeleteIndex(tls *libc.TLS, db uintptr, iDb int32, zIdxName uintptr) { /* sqlite3.c:112125:21: */ var pIndex uintptr var pHash uintptr @@ -105392,7 +105436,7 @@ func Xsqlite3UnlinkAndDeleteIndex(tls *libc.TLS, db uintptr, iDb int32, zIdxName // // Entry 0 (the "main" database) and entry 1 (the "temp" database) // are never candidates for being collapsed. -func Xsqlite3CollapseDatabaseArray(tls *libc.TLS, db uintptr) { /* sqlite3.c:112147:21: */ +func Xsqlite3CollapseDatabaseArray(tls *libc.TLS, db uintptr) { /* sqlite3.c:112158:21: */ var i int32 var j int32 for i = libc.AssignInt32(&j, 2); i < (*Sqlite3)(unsafe.Pointer(db)).FnDb; i++ { @@ -105418,7 +105462,7 @@ func Xsqlite3CollapseDatabaseArray(tls *libc.TLS, db uintptr) { /* sqlite3.c:112 // Reset the schema for the database at index iDb. Also reset the // TEMP schema. The reset is deferred if db->nSchemaLock is not zero. // Deferred resets may be run by calling with iDb<0. -func Xsqlite3ResetOneSchema(tls *libc.TLS, db uintptr, iDb int32) { /* sqlite3.c:112174:21: */ +func Xsqlite3ResetOneSchema(tls *libc.TLS, db uintptr, iDb int32) { /* sqlite3.c:112185:21: */ var i int32 if iDb >= 0 { @@ -105439,7 +105483,7 @@ func Xsqlite3ResetOneSchema(tls *libc.TLS, db uintptr, iDb int32) { /* sqlite3.c // Erase all schema information from all attached databases (including // "main" and "temp") for a single database connection. -func Xsqlite3ResetAllSchemasOfConnection(tls *libc.TLS, db uintptr) { /* sqlite3.c:112198:21: */ +func Xsqlite3ResetAllSchemasOfConnection(tls *libc.TLS, db uintptr) { /* sqlite3.c:112209:21: */ var i int32 Xsqlite3BtreeEnterAll(tls, db) for i = 0; i < (*Sqlite3)(unsafe.Pointer(db)).FnDb; i++ { @@ -105461,13 +105505,13 @@ func Xsqlite3ResetAllSchemasOfConnection(tls *libc.TLS, db uintptr) { /* sqlite3 } // This routine is called when a commit occurs. -func Xsqlite3CommitInternalChanges(tls *libc.TLS, db uintptr) { /* sqlite3.c:112222:21: */ +func Xsqlite3CommitInternalChanges(tls *libc.TLS, db uintptr) { /* sqlite3.c:112233:21: */ *(*U32)(unsafe.Pointer(db + 44 /* &.mDbFlags */)) &= (libc.Uint32FromInt32(libc.CplInt32(DBFLAG_SchemaChange))) } // Delete memory allocated for the column names of a table or view (the // Table.aCol[] array). -func Xsqlite3DeleteColumnNames(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112230:21: */ +func Xsqlite3DeleteColumnNames(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112241:21: */ var i int32 var pCol uintptr @@ -105509,7 +105553,7 @@ func Xsqlite3DeleteColumnNames(tls *libc.TLS, db uintptr, pTable uintptr) { /* s // lookaside memory, but some ephemeral Table objects do.) Or the // db parameter can be used with db->pnBytesFreed to measure the memory // used by the Table object. -func deleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112260:29: */ +func deleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112271:29: */ var pIndex uintptr var pNext uintptr @@ -105542,7 +105586,7 @@ func deleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:11226 } -func Xsqlite3DeleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112311:21: */ +func Xsqlite3DeleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112322:21: */ // Do not delete the table until the reference count reaches zero. if !(pTable != 0) { return @@ -105555,7 +105599,7 @@ func Xsqlite3DeleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3 // Unlink the given table from the hash tables and the delete the // table structure with all its indices and foreign keys. -func Xsqlite3UnlinkAndDeleteTable(tls *libc.TLS, db uintptr, iDb int32, zTabName uintptr) { /* sqlite3.c:112323:21: */ +func Xsqlite3UnlinkAndDeleteTable(tls *libc.TLS, db uintptr, iDb int32, zTabName uintptr) { /* sqlite3.c:112334:21: */ var p uintptr var pDb uintptr @@ -105577,7 +105621,7 @@ func Xsqlite3UnlinkAndDeleteTable(tls *libc.TLS, db uintptr, iDb int32, zTabName // Tokens are often just pointers into the original SQL text and so // are not \000 terminated and are not persistent. The returned string // is \000 terminated and is persistent. -func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { /* sqlite3.c:112351:21: */ +func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { /* sqlite3.c:112362:21: */ var zName uintptr if pName != 0 { zName = Xsqlite3DbStrNDup(tls, db, (*Token)(unsafe.Pointer(pName)).Fz, uint64((*Token)(unsafe.Pointer(pName)).Fn)) @@ -105590,7 +105634,7 @@ func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { / // Open the sqlite_schema table stored in database number iDb for // writing. The table is opened using cursor 0. -func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c:112366:21: */ +func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c:112377:21: */ var v uintptr = Xsqlite3GetVdbe(tls, p) Xsqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), ts+5245 /* "sqlite_master" */) Xsqlite3VdbeAddOp4Int(tls, v, OP_OpenWrite, 0, SCHEMA_ROOT, iDb, 5) @@ -105603,7 +105647,7 @@ func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c // of a database ("main", "temp" or the name of an attached db). This // function returns the index of the named database in db->aDb[], or // -1 if the named db cannot be found. -func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:112381:20: */ +func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:112392:20: */ var i int32 = -1 // Database number if zName != 0 { var pDb uintptr @@ -105639,7 +105683,7 @@ func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sql // "temp" or the name of an attached db). This routine returns the // index of the named database in db->aDb[], or -1 if the named db // does not exist. -func Xsqlite3FindDb(tls *libc.TLS, db uintptr, pName uintptr) int32 { /* sqlite3.c:112401:20: */ +func Xsqlite3FindDb(tls *libc.TLS, db uintptr, pName uintptr) int32 { /* sqlite3.c:112412:20: */ var i int32 // Database number var zName uintptr // Name we are searching for zName = Xsqlite3NameFromToken(tls, db, pName) @@ -105663,7 +105707,7 @@ func Xsqlite3FindDb(tls *libc.TLS, db uintptr, pName uintptr) int32 { /* sqlite3 // This routine sets the *ppUnqual pointer to point at the token (pName1 or // pName2) that stores the unqualified table name. The index of the // database "xxx" is returned. -func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pUnqual uintptr) int32 { /* sqlite3.c:112426:20: */ +func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pUnqual uintptr) int32 { /* sqlite3.c:112437:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -105690,7 +105734,7 @@ func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 u } // True if PRAGMA writable_schema is ON -func Xsqlite3WritableSchema(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:112459:20: */ +func Xsqlite3WritableSchema(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:112470:20: */ return (libc.Bool32(((*Sqlite3)(unsafe.Pointer(db)).Fflags & (uint64(SQLITE_WriteSchema | SQLITE_Defensive))) == uint64(SQLITE_WriteSchema))) } @@ -105704,7 +105748,7 @@ func Xsqlite3WritableSchema(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:1124 // When parsing the sqlite_schema table, this routine also checks to // make sure the "type", "name", and "tbl_name" columns are consistent // with the SQL. -func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType uintptr, zTblName uintptr) int32 { /* sqlite3.c:112481:20: */ +func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType uintptr, zTblName uintptr) int32 { /* sqlite3.c:112492:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -105735,7 +105779,7 @@ func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType } // Return the PRIMARY KEY index of a table -func Xsqlite3PrimaryKeyIndex(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:112519:22: */ +func Xsqlite3PrimaryKeyIndex(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:112530:22: */ var p uintptr for p = (*Table)(unsafe.Pointer(pTab)).FpIndex; (p != 0) && !((int32(*(*uint16)(unsafe.Pointer((p) + 100 /* &.idxType */)) & 0x3 >> 0)) == SQLITE_IDXTYPE_PRIMARYKEY); p = (*Index)(unsafe.Pointer(p)).FpNext { } @@ -105746,7 +105790,7 @@ func Xsqlite3PrimaryKeyIndex(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c // for the column iCol in the table (as defined by the CREATE TABLE statement) // find the (first) offset of that column in index pIdx. Or return -1 // if column iCol is not used in index pIdx. -func Xsqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol I16) I16 { /* sqlite3.c:112531:20: */ +func Xsqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol I16) I16 { /* sqlite3.c:112542:20: */ var i int32 for i = 0; i < int32((*Index)(unsafe.Pointer(pIdx)).FnColumn); i++ { if int32(iCol) == int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) { @@ -105766,7 +105810,7 @@ func Xsqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol I16) I16 { /* // and only there are VIRTUAL columns to the left. // // If SQLITE_OMIT_GENERATED_COLUMNS, this routine is a no-op macro. -func Xsqlite3StorageColumnToTable(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112551:20: */ +func Xsqlite3StorageColumnToTable(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112562:20: */ if ((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_HasVirtual)) != 0 { var i int32 for i = 0; i <= int32(iCol); i++ { @@ -105813,7 +105857,7 @@ func Xsqlite3StorageColumnToTable(tls *libc.TLS, pTab uintptr, iCol I16) I16 { / // this routine is a no-op macro. If the pTab does not have any virtual // columns, then this routine is no-op that always return iCol. If iCol // is negative (indicating the ROWID column) then this routine return iCol. -func Xsqlite3TableColumnToStorage(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112599:20: */ +func Xsqlite3TableColumnToStorage(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112610:20: */ var i int32 var n I16 @@ -105851,7 +105895,7 @@ func Xsqlite3TableColumnToStorage(tls *libc.TLS, pTab uintptr, iCol I16) I16 { / // routines will be called to add more information to this record. // At the end of the CREATE TABLE statement, the sqlite3EndTable() routine // is called to complete the construction of the new table record. -func Xsqlite3StartTable(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, isTemp int32, isView int32, isVirtual int32, noErr int32) { /* sqlite3.c:112633:21: */ +func Xsqlite3StartTable(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, isTemp int32, isView int32, isVirtual int32, noErr int32) { /* sqlite3.c:112644:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -106112,8 +106156,8 @@ var aCode = [4]U8{ U8(SQLITE_CREATE_TEMP_TABLE), U8(SQLITE_CREATE_VIEW), U8(SQLITE_CREATE_TEMP_VIEW), -} /* sqlite3.c:112680:21 */ -var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* sqlite3.c:112768:23 */ +} /* sqlite3.c:112691:21 */ +var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* sqlite3.c:112779:23 */ // Set properties of a table column based on the (magical) // name of the column. @@ -106123,7 +106167,7 @@ var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* s // with any application-generated triggers. // Clean up the data structures associated with the RETURNING clause. -func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite3.c:112852:13: */ +func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite3.c:112863:13: */ var pHash uintptr pHash = ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*32)).FpSchema + 56 /* &.trigHash */) Xsqlite3HashInsert(tls, pHash, ts+11072 /* "sqlite_returning" */, uintptr(0)) @@ -106145,7 +106189,7 @@ func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite // is attached to a DELETE, INSERT, or UPDATE, so construct it as a // RETURNING trigger instead. It will then be converted into the appropriate // type on the first call to sqlite3TriggersExist(). -func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:112876:21: */ +func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:112887:21: */ var pRet uintptr var pHash uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -106194,7 +106238,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql // in a CREATE TABLE statement. sqlite3StartTable() gets called // first to get things going. Then this routine is called for each // column. -func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintptr) { /* sqlite3.c:112923:21: */ +func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintptr) { /* sqlite3.c:112934:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -106267,7 +106311,7 @@ func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintp // parsing a CREATE TABLE statement. A "NOT NULL" constraint has // been seen on a column. This routine sets the notNull flag on // the column currently under construction. -func Xsqlite3AddNotNull(tls *libc.TLS, pParse uintptr, onError int32) { /* sqlite3.c:112995:21: */ +func Xsqlite3AddNotNull(tls *libc.TLS, pParse uintptr, onError int32) { /* sqlite3.c:113006:21: */ var p uintptr var pCol uintptr p = (*Parse)(unsafe.Pointer(pParse)).FpNewTable @@ -106314,7 +106358,7 @@ func Xsqlite3AddNotNull(tls *libc.TLS, pParse uintptr, onError int32) { /* sqlit // // If none of the substrings in the above table are found, // SQLITE_AFF_NUMERIC is returned. -func Xsqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) int8 { /* sqlite3.c:113042:21: */ +func Xsqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) int8 { /* sqlite3.c:113053:21: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -106388,7 +106432,7 @@ func Xsqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) int8 { /* sq // // This routine is called by the parser while in the middle of // parsing a CREATE TABLE statement. -func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113119:21: */ +func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113130:21: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -106440,7 +106484,7 @@ func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStar // if the expression is just a TK_STRING with an optional COLLATE clause. // If the expression is anything other than TK_STRING, the expression is // unchanged. -func sqlite3StringToId(tls *libc.TLS, p uintptr) { /* sqlite3.c:113178:13: */ +func sqlite3StringToId(tls *libc.TLS, p uintptr) { /* sqlite3.c:113189:13: */ if int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_STRING { (*Expr)(unsafe.Pointer(p)).Fop = U8(TK_ID) } else if (int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_COLLATE) && (int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(p)).FpLeft)).Fop) == TK_STRING) { @@ -106449,7 +106493,7 @@ func sqlite3StringToId(tls *libc.TLS, p uintptr) { /* sqlite3.c:113178:13: */ } // Tag the given column as being part of the PRIMARY KEY -func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { /* sqlite3.c:113189:13: */ +func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { /* sqlite3.c:113200:13: */ *(*U16)(unsafe.Pointer(pCol + 28 /* &.colFlags */)) |= U16((COLFLAG_PRIMKEY)) if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) != 0 { @@ -106474,7 +106518,7 @@ func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { / // // If the key is not an INTEGER PRIMARY KEY, then create a unique // index for the key. No index is created for INTEGER PRIMARY KEYs. -func Xsqlite3AddPrimaryKey(tls *libc.TLS, pParse uintptr, pList uintptr, onError int32, autoInc int32, sortOrder int32) { /* sqlite3.c:113219:21: */ +func Xsqlite3AddPrimaryKey(tls *libc.TLS, pParse uintptr, pList uintptr, onError int32, autoInc int32, sortOrder int32) { /* sqlite3.c:113230:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -106604,7 +106648,7 @@ primary_key_exit: } // Add a new CHECK constraint to the table currently under construction. -func Xsqlite3AddCheckConstraint(tls *libc.TLS, pParse uintptr, pCheckExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113294:21: */ +func Xsqlite3AddCheckConstraint(tls *libc.TLS, pParse uintptr, pCheckExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113305:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -106634,7 +106678,7 @@ func Xsqlite3AddCheckConstraint(tls *libc.TLS, pParse uintptr, pCheckExpr uintpt // Set the collation function of the most recently parsed table column // to the CollSeq given. -func Xsqlite3AddCollateType(tls *libc.TLS, pParse uintptr, pToken uintptr) { /* sqlite3.c:113328:21: */ +func Xsqlite3AddCollateType(tls *libc.TLS, pParse uintptr, pToken uintptr) { /* sqlite3.c:113339:21: */ var p uintptr var i int32 var zColl uintptr // Dequoted name of collation sequence @@ -106671,7 +106715,7 @@ func Xsqlite3AddCollateType(tls *libc.TLS, pParse uintptr, pToken uintptr) { /* // Change the most recently parsed column to be a GENERATED ALWAYS AS // column. -func Xsqlite3AddGenerated(tls *libc.TLS, pParse uintptr, pExpr uintptr, pType uintptr) { /* sqlite3.c:113363:21: */ +func Xsqlite3AddGenerated(tls *libc.TLS, pParse uintptr, pExpr uintptr, pType uintptr) { /* sqlite3.c:113374:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -106766,7 +106810,7 @@ generated_done: // // IMPLEMENTATION-OF: R-34230-56049 SQLite automatically increments // the schema-version whenever the schema changes. -func Xsqlite3ChangeCookie(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:113431:21: */ +func Xsqlite3ChangeCookie(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:113442:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe @@ -106780,7 +106824,7 @@ func Xsqlite3ChangeCookie(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3 // // The estimate is conservative. It might be larger that what is // really needed. -func identLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:113447:12: */ +func identLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:113458:12: */ var n int32 n = 0 __1: @@ -106815,7 +106859,7 @@ __3: // characters, does not begin with a digit and is not an SQL keyword, // then it is copied to the output buffer exactly as it is. Otherwise, // it is quoted using double-quotes. -func identPut(tls *libc.TLS, z uintptr, pIdx uintptr, zSignedIdent uintptr) { /* sqlite3.c:113468:13: */ +func identPut(tls *libc.TLS, z uintptr, pIdx uintptr, zSignedIdent uintptr) { /* sqlite3.c:113479:13: */ var zIdent uintptr = zSignedIdent var i int32 var j int32 @@ -106851,7 +106895,7 @@ func identPut(tls *libc.TLS, z uintptr, pIdx uintptr, zSignedIdent uintptr) { /* // Generate a CREATE TABLE statement appropriate for the given // table. Memory to hold the text of the statement is obtained // from sqliteMalloc() and must be freed by the calling function. -func createTableStmt(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:113496:13: */ +func createTableStmt(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:113507:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -106943,11 +106987,11 @@ var azType1 = [5]uintptr{ /* SQLITE_AFF_NUMERIC */ ts + 11538, /* " NUM" */ /* SQLITE_AFF_INTEGER */ ts + 11543, /* " INT" */ /* SQLITE_AFF_REAL */ ts + 11548, /* " REAL" */ -} /* sqlite3.c:113526:23 */ +} /* sqlite3.c:113537:23 */ // Resize an Index object to hold N columns total. Return SQLITE_OK // on success and SQLITE_NOMEM on an OOM error. -func resizeIndexObject(tls *libc.TLS, db uintptr, pIdx uintptr, N int32) int32 { /* sqlite3.c:113564:12: */ +func resizeIndexObject(tls *libc.TLS, db uintptr, pIdx uintptr, N int32) int32 { /* sqlite3.c:113575:12: */ var zExtra uintptr var nByte int32 if int32((*Index)(unsafe.Pointer(pIdx)).FnColumn) >= N { @@ -106976,7 +107020,7 @@ func resizeIndexObject(tls *libc.TLS, db uintptr, pIdx uintptr, N int32) int32 { } // Estimate the total row width for a table. -func estimateTableWidth(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:113591:13: */ +func estimateTableWidth(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:113602:13: */ var wTable uint32 = uint32(0) var pTabCol uintptr var i int32 @@ -107005,7 +107049,7 @@ __3: } // Estimate the average size of a row for an index. -func estimateIndexWidth(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113605:13: */ +func estimateIndexWidth(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113616:13: */ var wIndex uint32 = uint32(0) var i int32 var aCol uintptr = (*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FpTable)).FaCol @@ -107025,7 +107069,7 @@ func estimateIndexWidth(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113605:13: * // Return true if column number x is any of the first nCol entries of aiCol[]. // This is used to determine if the column number x appears in any of the // first nCol entries of an index. -func hasColumn(tls *libc.TLS, aiCol uintptr, nCol int32, x int32) int32 { /* sqlite3.c:113621:12: */ +func hasColumn(tls *libc.TLS, aiCol uintptr, nCol int32, x int32) int32 { /* sqlite3.c:113632:12: */ for libc.PostDecInt32(&nCol, 1) > 0 { if x == int32(*(*I16)(unsafe.Pointer(libc.PostIncUintptr(&aiCol, 2)))) { @@ -107046,7 +107090,7 @@ func hasColumn(tls *libc.TLS, aiCol uintptr, nCol int32, x int32) int32 { /* sql // This routine differs from hasColumn() in that both the column and the // collating sequence must match for this routine, but for hasColumn() only // the column name must match. -func isDupColumn(tls *libc.TLS, pIdx uintptr, nKey int32, pPk uintptr, iCol int32) int32 { /* sqlite3.c:113644:12: */ +func isDupColumn(tls *libc.TLS, pIdx uintptr, nKey int32, pPk uintptr, iCol int32) int32 { /* sqlite3.c:113655:12: */ var i int32 var j int32 @@ -107079,7 +107123,7 @@ func isDupColumn(tls *libc.TLS, pIdx uintptr, nKey int32, pPk uintptr, iCol int3 // // The colNotIdxed mask is AND-ed with the SrcList.a[].colUsed mask // to determine if the index is covering index. -func recomputeColumnsNotIndexed(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113683:13: */ +func recomputeColumnsNotIndexed(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113694:13: */ var m Bitmask = uint64(0) var j int32 var pTab uintptr = (*Index)(unsafe.Pointer(pIdx)).FpTable @@ -107118,7 +107162,7 @@ func recomputeColumnsNotIndexed(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:1136 // indices with the PRIMARY KEY columns. // // For virtual tables, only (1) is performed. -func convertToWithoutRowidTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:113723:13: */ +func convertToWithoutRowidTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:113734:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -107277,7 +107321,7 @@ func convertToWithoutRowidTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { / // Return true if pTab is a virtual table and zName is a shadow table name // for that virtual table. -func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uintptr) int32 { /* sqlite3.c:113874:20: */ +func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uintptr) int32 { /* sqlite3.c:113885:20: */ var nName int32 // Length of zName var pMod uintptr // Module for the virtual table @@ -107309,7 +107353,7 @@ func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uint // // zName is temporarily modified while this routine is running, but is // restored to its original value prior to this routine returning. -func Xsqlite3ShadowTableName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:113898:20: */ +func Xsqlite3ShadowTableName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:113909:20: */ var zTail uintptr // Pointer to the last "_" in zName var pTab uintptr // Table that zName is a shadow of zTail = libc.Xstrrchr(tls, zName, '_') @@ -107346,7 +107390,7 @@ func Xsqlite3ShadowTableName(tls *libc.TLS, db uintptr, zName uintptr) int32 { / // was called to create a table generated from a // "CREATE TABLE ... AS SELECT ..." statement. The column names of // the new table will match the result set of the SELECT. -func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr, tabOpts U8, pSelect uintptr) { /* sqlite3.c:113959:21: */ +func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr, tabOpts U8, pSelect uintptr) { /* sqlite3.c:113970:21: */ bp := tls.Alloc(144) defer tls.Free(144) @@ -107619,7 +107663,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr } // The parser calls this routine in order to create a new VIEW -func Xsqlite3CreateView(tls *libc.TLS, pParse uintptr, pBegin uintptr, pName1 uintptr, pName2 uintptr, pCNames uintptr, pSelect uintptr, isTemp int32, noErr int32) { /* sqlite3.c:114247:21: */ +func Xsqlite3CreateView(tls *libc.TLS, pParse uintptr, pBegin uintptr, pName1 uintptr, pName2 uintptr, pCNames uintptr, pSelect uintptr, isTemp int32, noErr int32) { /* sqlite3.c:114258:21: */ bp := tls.Alloc(120) defer tls.Free(120) @@ -107728,7 +107772,7 @@ __10: // The Table structure pTable is really a VIEW. Fill in the names of // the columns of the view in the pTable structure. Return the number // of errors. If an error is seen leave an error message in pParse->zErrMsg. -func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) int32 { /* sqlite3.c:114328:20: */ +func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) int32 { /* sqlite3.c:114339:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -107848,7 +107892,7 @@ func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) i } // Clear the column names from every VIEW in database idx. -func sqliteViewResetAll(tls *libc.TLS, db uintptr, idx int32) { /* sqlite3.c:114459:13: */ +func sqliteViewResetAll(tls *libc.TLS, db uintptr, idx int32) { /* sqlite3.c:114470:13: */ var i uintptr if !((int32((*Schema)(unsafe.Pointer((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer((db))).FaDb+uintptr(idx)*32)).FpSchema)).FschemaFlags) & (DB_UnresetViews)) == (DB_UnresetViews)) { @@ -107880,7 +107924,7 @@ func sqliteViewResetAll(tls *libc.TLS, db uintptr, idx int32) { /* sqlite3.c:114 // We must continue looping until all tables and indices with // rootpage==iFrom have been converted to have a rootpage of iTo // in order to be certain that we got the right one. -func Xsqlite3RootPageMoved(tls *libc.TLS, db uintptr, iDb int32, iFrom Pgno, iTo Pgno) { /* sqlite3.c:114495:21: */ +func Xsqlite3RootPageMoved(tls *libc.TLS, db uintptr, iDb int32, iFrom Pgno, iTo Pgno) { /* sqlite3.c:114506:21: */ var pElem uintptr var pHash uintptr var pDb uintptr @@ -107906,7 +107950,7 @@ func Xsqlite3RootPageMoved(tls *libc.TLS, db uintptr, iDb int32, iFrom Pgno, iTo // Also write code to modify the sqlite_schema table and internal schema // if a root-page of another table is moved by the btree-layer whilst // erasing iTable (this can happen with an auto-vacuum database). -func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { /* sqlite3.c:114525:13: */ +func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { /* sqlite3.c:114536:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -107936,7 +107980,7 @@ func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { / // Code to update the sqlite_schema tables and internal schema definitions // in case a root-page belonging to another table is moved by the btree layer // is also added (this can happen with an auto-vacuum database). -func destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:114555:13: */ +func destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:114566:13: */ // If the database may be auto-vacuum capable (if SQLITE_OMIT_AUTOVACUUM // is not defined), then it is important to call OP_Destroy on the // table and index root-pages in order, starting with the numerically @@ -107982,7 +108026,7 @@ func destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:11 // Remove entries from the sqlite_statN tables (for N in (1,2,3)) // after a DROP INDEX or DROP TABLE command. -func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uintptr, zName uintptr) { /* sqlite3.c:114604:13: */ +func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uintptr, zName uintptr) { /* sqlite3.c:114615:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -108001,7 +108045,7 @@ func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uint } // Generate code to drop a table. -func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int32, isView int32) { /* sqlite3.c:114627:21: */ +func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int32, isView int32) { /* sqlite3.c:114638:21: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -108065,7 +108109,7 @@ func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int3 // Return TRUE if shadow tables should be read-only in the current // context. -func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:114700:20: */ +func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:114711:20: */ if ((((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_Defensive)) != uint64(0)) && ((*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx == uintptr(0))) && ((*Sqlite3)(unsafe.Pointer(db)).FnVdbeExec == 0) { @@ -108075,7 +108119,7 @@ func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3. } // Return true if it is not allowed to drop the given table -func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sqlite3.c:114715:12: */ +func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sqlite3.c:114726:12: */ if Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+7370 /* "sqlite_" */, 7) == 0 { if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+2351 /* "stat" */, 4) == 0 { return 0 @@ -108093,7 +108137,7 @@ func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sq // This routine is called to do the work of a DROP TABLE statement. // pName is the name of the table to be dropped. -func Xsqlite3DropTable(tls *libc.TLS, pParse uintptr, pName uintptr, isView int32, noErr int32) { /* sqlite3.c:114731:21: */ +func Xsqlite3DropTable(tls *libc.TLS, pParse uintptr, pName uintptr, isView int32, noErr int32) { /* sqlite3.c:114742:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -108280,7 +108324,7 @@ exit_drop_table: // // The foreign key is set for IMMEDIATE processing. A subsequent call // to sqlite3DeferForeignKey() might change this to DEFERRED. -func Xsqlite3CreateForeignKey(tls *libc.TLS, pParse uintptr, pFromCol uintptr, pTo uintptr, pToCol uintptr, flags int32) { /* sqlite3.c:114848:21: */ +func Xsqlite3CreateForeignKey(tls *libc.TLS, pParse uintptr, pFromCol uintptr, pTo uintptr, pToCol uintptr, flags int32) { /* sqlite3.c:114859:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -108501,7 +108545,7 @@ fk_end: // parameter is 1 for INITIALLY DEFERRED and 0 for INITIALLY IMMEDIATE. // The behavior of the most recently created foreign key is adjusted // accordingly. -func Xsqlite3DeferForeignKey(tls *libc.TLS, pParse uintptr, isDeferred int32) { /* sqlite3.c:114978:21: */ +func Xsqlite3DeferForeignKey(tls *libc.TLS, pParse uintptr, isDeferred int32) { /* sqlite3.c:114989:21: */ var pTab uintptr var pFKey uintptr if ((libc.AssignUintptr(&pTab, (*Parse)(unsafe.Pointer(pParse)).FpNewTable)) == uintptr(0)) || ((libc.AssignUintptr(&pFKey, (*Table)(unsafe.Pointer(pTab)).FpFKey)) == uintptr(0)) { @@ -108520,7 +108564,7 @@ func Xsqlite3DeferForeignKey(tls *libc.TLS, pParse uintptr, isDeferred int32) { // root page number of the index. If memRootPage is negative, then // the index already exists and must be cleared before being refilled and // the root page number of the index is taken from pIndex->tnum. -func sqlite3RefillIndex(tls *libc.TLS, pParse uintptr, pIndex uintptr, memRootPage int32) { /* sqlite3.c:114999:13: */ +func sqlite3RefillIndex(tls *libc.TLS, pParse uintptr, pIndex uintptr, memRootPage int32) { /* sqlite3.c:115010:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -108632,7 +108676,7 @@ func sqlite3RefillIndex(tls *libc.TLS, pParse uintptr, pIndex uintptr, memRootPa // Increase the allocation size to provide an extra nExtra bytes // of 8-byte aligned space after the Index object and return a // pointer to this extra space in *ppExtra. -func Xsqlite3AllocateIndexObject(tls *libc.TLS, db uintptr, nCol I16, nExtra int32, ppExtra uintptr) uintptr { /* sqlite3.c:115105:22: */ +func Xsqlite3AllocateIndexObject(tls *libc.TLS, db uintptr, nCol I16, nExtra int32, ppExtra uintptr) uintptr { /* sqlite3.c:115116:22: */ var p uintptr // Allocated index object var nByte int32 // Bytes of space for Index object + arrays @@ -108657,7 +108701,7 @@ func Xsqlite3AllocateIndexObject(tls *libc.TLS, db uintptr, nCol I16, nExtra int // If expression list pList contains an expression that was parsed with // an explicit "NULLS FIRST" or "NULLS LAST" clause, leave an error in // pParse and return non-zero. Otherwise, return zero. -func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int32 { /* sqlite3.c:115138:20: */ +func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int32 { /* sqlite3.c:115149:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -108690,7 +108734,7 @@ func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int3 // pList is a list of columns to be indexed. pList will be NULL if this // is a primary key or unique-constraint on the most recent column added // to the table currently under construction. -func Xsqlite3CreateIndex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pTblName uintptr, pList uintptr, onError int32, pStart uintptr, pPIWhere uintptr, sortOrder int32, ifNotExist int32, idxType U8) { /* sqlite3.c:115166:21: */ +func Xsqlite3CreateIndex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pTblName uintptr, pList uintptr, onError int32, pStart uintptr, pPIWhere uintptr, sortOrder int32, ifNotExist int32, idxType U8) { /* sqlite3.c:115177:21: */ bp := tls.Alloc(256) defer tls.Free(256) @@ -109456,7 +109500,7 @@ __81: goto __101 } Xsqlite3ErrorMsg(tls, pParse, ts+12817 /* "invalid rootpage" */, 0) - (*Parse)(unsafe.Pointer(pParse)).Frc = Xsqlite3CorruptError(tls, 115618) + (*Parse)(unsafe.Pointer(pParse)).Frc = Xsqlite3CorruptError(tls, 115629) goto exit_create_index __101: ; @@ -109647,7 +109691,7 @@ __113: // Apart from that, we have little to go on besides intuition as to // how aiRowEst[] should be initialized. The numbers generated here // are based on typical values found in actual indices. -func Xsqlite3DefaultRowEst(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:115773:21: */ +func Xsqlite3DefaultRowEst(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:115784:21: */ var a uintptr = (*Index)(unsafe.Pointer(pIdx)).FaiRowLogEst var x LogEst var nCopy int32 = func() int32 { @@ -109691,11 +109735,11 @@ func Xsqlite3DefaultRowEst(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:115773:21 } } -var aVal = [5]LogEst{int16(33), int16(32), int16(30), int16(28), int16(26)} /* sqlite3.c:115775:23 */ +var aVal = [5]LogEst{int16(33), int16(32), int16(30), int16(28), int16(26)} /* sqlite3.c:115786:23 */ // This routine will drop an existing named index. This routine // implements the DROP INDEX statement. -func Xsqlite3DropIndex(tls *libc.TLS, pParse uintptr, pName uintptr, ifExists int32) { /* sqlite3.c:115817:21: */ +func Xsqlite3DropIndex(tls *libc.TLS, pParse uintptr, pName uintptr, ifExists int32) { /* sqlite3.c:115828:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -109813,7 +109857,7 @@ exit_drop_index: // // Otherwise, if the realloc() fails, *pIdx is set to -1, *pnEntry remains // unchanged and a copy of pArray returned. -func Xsqlite3ArrayAllocate(tls *libc.TLS, db uintptr, pArray uintptr, szEntry int32, pnEntry uintptr, pIdx uintptr) uintptr { /* sqlite3.c:115898:21: */ +func Xsqlite3ArrayAllocate(tls *libc.TLS, db uintptr, pArray uintptr, szEntry int32, pnEntry uintptr, pIdx uintptr) uintptr { /* sqlite3.c:115909:21: */ var z uintptr var n Sqlite3_int64 = Sqlite3_int64(libc.AssignPtrInt32(pIdx, *(*int32)(unsafe.Pointer(pnEntry)))) if (n & (n - int64(1))) == int64(0) { @@ -109840,7 +109884,7 @@ func Xsqlite3ArrayAllocate(tls *libc.TLS, db uintptr, pArray uintptr, szEntry in // need be. // // A new IdList is returned, or NULL if malloc() fails. -func Xsqlite3IdListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pToken uintptr) uintptr { /* sqlite3.c:115928:23: */ +func Xsqlite3IdListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pToken uintptr) uintptr { /* sqlite3.c:115939:23: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -109871,7 +109915,7 @@ func Xsqlite3IdListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pToken u } // Delete an IdList. -func Xsqlite3IdListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:115956:21: */ +func Xsqlite3IdListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:115967:21: */ var i int32 if pList == uintptr(0) { return @@ -109885,7 +109929,7 @@ func Xsqlite3IdListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3 // Return the index in pList of the identifier named zId. Return -1 // if not found. -func Xsqlite3IdListIndex(tls *libc.TLS, pList uintptr, zName uintptr) int32 { /* sqlite3.c:115970:20: */ +func Xsqlite3IdListIndex(tls *libc.TLS, pList uintptr, zName uintptr) int32 { /* sqlite3.c:115981:20: */ var i int32 if pList == uintptr(0) { return -1 @@ -109923,7 +109967,7 @@ func Xsqlite3IdListIndex(tls *libc.TLS, pList uintptr, zName uintptr) int32 { /* // If a memory allocation fails or the SrcList becomes too large, leave // the original SrcList unchanged, return NULL, and leave an error message // in pParse. -func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra int32, iStart int32) uintptr { /* sqlite3.c:116011:24: */ +func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra int32, iStart int32) uintptr { /* sqlite3.c:116022:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -110005,7 +110049,7 @@ func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra // // Both pTable and pDatabase are assumed to be quoted. They are dequoted // before being added to the SrcList. -func Xsqlite3SrcListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pTable uintptr, pDatabase uintptr) uintptr { /* sqlite3.c:116100:24: */ +func Xsqlite3SrcListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pTable uintptr, pDatabase uintptr) uintptr { /* sqlite3.c:116111:24: */ var pItem uintptr var db uintptr // Cannot have C without B @@ -110044,7 +110088,7 @@ func Xsqlite3SrcListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pTable } // Assign VdbeCursor index numbers to all tables in a SrcList -func Xsqlite3SrcListAssignCursors(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:116145:21: */ +func Xsqlite3SrcListAssignCursors(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:116156:21: */ var i int32 var pItem uintptr @@ -110076,7 +110120,7 @@ func Xsqlite3SrcListAssignCursors(tls *libc.TLS, pParse uintptr, pList uintptr) } // Delete an entire SrcList including all its substructure. -func Xsqlite3SrcListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:116163:21: */ +func Xsqlite3SrcListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:116174:21: */ var i int32 var pItem uintptr if pList == uintptr(0) { @@ -110139,7 +110183,7 @@ __3: // // Return a new SrcList which encodes is the FROM with the new // term added. -func Xsqlite3SrcListAppendFromTerm(tls *libc.TLS, pParse uintptr, p uintptr, pTable uintptr, pDatabase uintptr, pAlias uintptr, pSubquery uintptr, pOn uintptr, pUsing uintptr) uintptr { /* sqlite3.c:116197:24: */ +func Xsqlite3SrcListAppendFromTerm(tls *libc.TLS, pParse uintptr, p uintptr, pTable uintptr, pDatabase uintptr, pAlias uintptr, pSubquery uintptr, pOn uintptr, pUsing uintptr) uintptr { /* sqlite3.c:116208:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -110203,7 +110247,7 @@ append_from_error: // Add an INDEXED BY or NOT INDEXED clause to the most recently added // element of the source-list passed as the second argument. -func Xsqlite3SrcListIndexedBy(tls *libc.TLS, pParse uintptr, p uintptr, pIndexedBy uintptr) { /* sqlite3.c:116248:21: */ +func Xsqlite3SrcListIndexedBy(tls *libc.TLS, pParse uintptr, p uintptr, pIndexedBy uintptr) { /* sqlite3.c:116259:21: */ if (p != 0) && ((*Token)(unsafe.Pointer(pIndexedBy)).Fn > uint32(0)) { var pItem uintptr @@ -110224,7 +110268,7 @@ func Xsqlite3SrcListIndexedBy(tls *libc.TLS, pParse uintptr, p uintptr, pIndexed // Append the contents of SrcList p2 to SrcList p1 and return the resulting // SrcList. Or, if an error occurs, return NULL. In all cases, p1 and p2 // are deleted by this function. -func Xsqlite3SrcListAppendList(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr) uintptr { /* sqlite3.c:116273:24: */ +func Xsqlite3SrcListAppendList(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr) uintptr { /* sqlite3.c:116284:24: */ if p2 != 0 { var pNew uintptr = Xsqlite3SrcListEnlarge(tls, pParse, p1, (*SrcList)(unsafe.Pointer(p2)).FnSrc, 1) @@ -110241,7 +110285,7 @@ func Xsqlite3SrcListAppendList(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uin // Add the list of function arguments to the SrcList entry for a // table-valued-function. -func Xsqlite3SrcListFuncArgs(tls *libc.TLS, pParse uintptr, p uintptr, pList uintptr) { /* sqlite3.c:116292:21: */ +func Xsqlite3SrcListFuncArgs(tls *libc.TLS, pParse uintptr, p uintptr, pList uintptr) { /* sqlite3.c:116303:21: */ if p != 0 { var pItem uintptr = ((p + 8 /* &.a */) + uintptr(((*SrcList)(unsafe.Pointer(p)).FnSrc-1))*112) @@ -110265,7 +110309,7 @@ func Xsqlite3SrcListFuncArgs(tls *libc.TLS, pParse uintptr, p uintptr, pList uin // The operator is "natural cross join". The A and B operands are stored // in p->a[0] and p->a[1], respectively. The parser initially stores the // operator with A. This routine shifts that operator over to B. -func Xsqlite3SrcListShiftJoinType(tls *libc.TLS, p uintptr) { /* sqlite3.c:116320:21: */ +func Xsqlite3SrcListShiftJoinType(tls *libc.TLS, p uintptr) { /* sqlite3.c:116331:21: */ if p != 0 { var i int32 for i = ((*SrcList)(unsafe.Pointer(p)).FnSrc - 1); i > 0; i-- { @@ -110276,7 +110320,7 @@ func Xsqlite3SrcListShiftJoinType(tls *libc.TLS, p uintptr) { /* sqlite3.c:11632 } // Generate VDBE code for a BEGIN statement. -func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* sqlite3.c:116333:21: */ +func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* sqlite3.c:116344:21: */ var db uintptr var v uintptr var i int32 @@ -110311,7 +110355,7 @@ func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* s // Generate VDBE code for a COMMIT or ROLLBACK statement. // Code for ROLLBACK is generated if eType==TK_ROLLBACK. Otherwise // code is generated for a COMMIT. -func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sqlite3.c:116369:21: */ +func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sqlite3.c:116380:21: */ var v uintptr var isRollback int32 @@ -110333,7 +110377,7 @@ func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sql // This function is called by the parser when it parses a command to create, // release or rollback an SQL savepoint. -func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { /* sqlite3.c:116391:21: */ +func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { /* sqlite3.c:116402:21: */ var zName uintptr = Xsqlite3NameFromToken(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pName) if zName != 0 { var v uintptr = Xsqlite3GetVdbe(tls, pParse) @@ -110346,11 +110390,11 @@ func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { } } -var az = [3]uintptr{ts + 13180 /* "BEGIN" */, ts + 13202 /* "RELEASE" */, ts + 13186 /* "ROLLBACK" */} /* sqlite3.c:116396:23 */ +var az = [3]uintptr{ts + 13180 /* "BEGIN" */, ts + 13202 /* "RELEASE" */, ts + 13186 /* "ROLLBACK" */} /* sqlite3.c:116407:23 */ // Make sure the TEMP database is open and available for use. Return // the number of errors. Leave any error messages in the pParse structure. -func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:116411:20: */ +func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:116422:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -110376,13 +110420,13 @@ func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3. return 0 } -var flags int32 = ((((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OPEN_EXCLUSIVE) | SQLITE_OPEN_DELETEONCLOSE) | SQLITE_OPEN_TEMP_DB) /* sqlite3.c:116416:22 */ +var flags int32 = ((((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OPEN_EXCLUSIVE) | SQLITE_OPEN_DELETEONCLOSE) | SQLITE_OPEN_TEMP_DB) /* sqlite3.c:116427:22 */ // Record the fact that the schema cookie will need to be verified // for database iDb. The code to actually verify the schema cookie // will occur at the end of the top-level VDBE and will be generated // later, by sqlite3FinishCoding(). -func sqlite3CodeVerifySchemaAtToplevel(tls *libc.TLS, pToplevel uintptr, iDb int32) { /* sqlite3.c:116446:13: */ +func sqlite3CodeVerifySchemaAtToplevel(tls *libc.TLS, pToplevel uintptr, iDb int32) { /* sqlite3.c:116457:13: */ if (libc.Bool32((((*Parse)(unsafe.Pointer(pToplevel)).FcookieMask) & (YDbMask((YDbMask(1))) << (iDb))) != YDbMask(0))) == 0 { *(*YDbMask)(unsafe.Pointer(pToplevel + 116 /* &.cookieMask */)) |= (YDbMask((YDbMask(1))) << (iDb)) @@ -110392,7 +110436,7 @@ func sqlite3CodeVerifySchemaAtToplevel(tls *libc.TLS, pToplevel uintptr, iDb int } } -func Xsqlite3CodeVerifySchema(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:116458:21: */ +func Xsqlite3CodeVerifySchema(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:116469:21: */ sqlite3CodeVerifySchemaAtToplevel(tls, func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -110403,7 +110447,7 @@ func Xsqlite3CodeVerifySchema(tls *libc.TLS, pParse uintptr, iDb int32) { /* sql // If argument zDb is NULL, then call sqlite3CodeVerifySchema() for each // attached database. Otherwise, invoke it for the database named zDb only. -func Xsqlite3CodeVerifyNamedSchema(tls *libc.TLS, pParse uintptr, zDb uintptr) { /* sqlite3.c:116467:21: */ +func Xsqlite3CodeVerifyNamedSchema(tls *libc.TLS, pParse uintptr, zDb uintptr) { /* sqlite3.c:116478:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var i int32 for i = 0; i < (*Sqlite3)(unsafe.Pointer(db)).FnDb; i++ { @@ -110425,7 +110469,7 @@ func Xsqlite3CodeVerifyNamedSchema(tls *libc.TLS, pParse uintptr, zDb uintptr) { // rollback the whole transaction. For operations where all constraints // can be checked before any changes are made to the database, it is never // necessary to undo a write and the checkpoint should not be set. -func Xsqlite3BeginWriteOperation(tls *libc.TLS, pParse uintptr, setStatement int32, iDb int32) { /* sqlite3.c:116491:21: */ +func Xsqlite3BeginWriteOperation(tls *libc.TLS, pParse uintptr, setStatement int32, iDb int32) { /* sqlite3.c:116502:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -110442,7 +110486,7 @@ func Xsqlite3BeginWriteOperation(tls *libc.TLS, pParse uintptr, setStatement int // inserting multiple rows in a table, or inserting a row and index entries.) // If an abort occurs after some of these writes have completed, then it will // be necessary to undo the completed writes. -func Xsqlite3MultiWrite(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116505:21: */ +func Xsqlite3MultiWrite(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116516:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -110466,7 +110510,7 @@ func Xsqlite3MultiWrite(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116505:21: // particular, it prevents us from writing an effective // implementation of sqlite3AssertMayAbort()) and so we have chosen // to take the safe route and skip the optimization. -func Xsqlite3MayAbort(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116526:21: */ +func Xsqlite3MayAbort(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116537:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -110479,7 +110523,7 @@ func Xsqlite3MayAbort(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116526:21: * // Code an OP_Halt that causes the vdbe to return an SQLITE_CONSTRAINT // error. The onError parameter determines which (if any) of the statement // and/or current transaction is rolled back. -func Xsqlite3HaltConstraint(tls *libc.TLS, pParse uintptr, errCode int32, onError int32, p4 uintptr, p4type I8, p5Errmsg U8) { /* sqlite3.c:116536:21: */ +func Xsqlite3HaltConstraint(tls *libc.TLS, pParse uintptr, errCode int32, onError int32, p4 uintptr, p4type I8, p5Errmsg U8) { /* sqlite3.c:116547:21: */ var v uintptr v = Xsqlite3GetVdbe(tls, pParse) @@ -110492,7 +110536,7 @@ func Xsqlite3HaltConstraint(tls *libc.TLS, pParse uintptr, errCode int32, onErro } // Code an OP_Halt due to UNIQUE or PRIMARY KEY constraint violation. -func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx uintptr) { /* sqlite3.c:116558:21: */ +func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx uintptr) { /* sqlite3.c:116569:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -110531,7 +110575,7 @@ func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx } // Code an OP_Halt due to non-unique rowid. -func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab uintptr) { /* sqlite3.c:116594:21: */ +func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab uintptr) { /* sqlite3.c:116605:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -110551,7 +110595,7 @@ func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab // Check to see if pIndex uses the collating sequence pColl. Return // true if it does and false if it does not. -func collationMatch(tls *libc.TLS, zColl uintptr, pIndex uintptr) int32 { /* sqlite3.c:116618:12: */ +func collationMatch(tls *libc.TLS, zColl uintptr, pIndex uintptr) int32 { /* sqlite3.c:116629:12: */ var i int32 for i = 0; i < int32((*Index)(unsafe.Pointer(pIndex)).FnColumn); i++ { @@ -110566,7 +110610,7 @@ func collationMatch(tls *libc.TLS, zColl uintptr, pIndex uintptr) int32 { /* sql // Recompute all indices of pTab that use the collating sequence pColl. // If pColl==0 then recompute all indices of pTab. -func reindexTable(tls *libc.TLS, pParse uintptr, pTab uintptr, zColl uintptr) { /* sqlite3.c:116637:13: */ +func reindexTable(tls *libc.TLS, pParse uintptr, pTab uintptr, zColl uintptr) { /* sqlite3.c:116648:13: */ if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { var pIndex uintptr // An index associated with pTab @@ -110583,7 +110627,7 @@ func reindexTable(tls *libc.TLS, pParse uintptr, pTab uintptr, zColl uintptr) { // Recompute all indices of all tables in all databases where the // indices use the collating sequence pColl. If pColl==0 then recompute // all indices everywhere. -func reindexDatabases(tls *libc.TLS, pParse uintptr, zColl uintptr) { /* sqlite3.c:116658:13: */ +func reindexDatabases(tls *libc.TLS, pParse uintptr, zColl uintptr) { /* sqlite3.c:116669:13: */ var pDb uintptr // A single database var iDb int32 // The database index number var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // The database connection @@ -110625,7 +110669,7 @@ __3: // Form 2 rebuilds all indices in all databases that use the named // collating function. Forms 3 and 4 rebuild the named index or all // indices associated with the named table. -func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:116690:21: */ +func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:116701:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -110692,7 +110736,7 @@ func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintp // // The caller should invoke sqlite3KeyInfoUnref() on the returned object // when it has finished using it. -func Xsqlite3KeyInfoOfIndex(tls *libc.TLS, pParse uintptr, pIdx uintptr) uintptr { /* sqlite3.c:116750:24: */ +func Xsqlite3KeyInfoOfIndex(tls *libc.TLS, pParse uintptr, pIdx uintptr) uintptr { /* sqlite3.c:116761:24: */ var i int32 var nCol int32 = int32((*Index)(unsafe.Pointer(pIdx)).FnColumn) var nKey int32 = int32((*Index)(unsafe.Pointer(pIdx)).FnKeyCol) @@ -110738,7 +110782,7 @@ func Xsqlite3KeyInfoOfIndex(tls *libc.TLS, pParse uintptr, pIdx uintptr) uintptr } // Create a new CTE object -func Xsqlite3CteNew(tls *libc.TLS, pParse uintptr, pName uintptr, pArglist uintptr, pQuery uintptr, eM10d U8) uintptr { /* sqlite3.c:116794:20: */ +func Xsqlite3CteNew(tls *libc.TLS, pParse uintptr, pName uintptr, pArglist uintptr, pQuery uintptr, eM10d U8) uintptr { /* sqlite3.c:116805:20: */ var pNew uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -110758,7 +110802,7 @@ func Xsqlite3CteNew(tls *libc.TLS, pParse uintptr, pName uintptr, pArglist uintp // Clear information from a Cte object, but do not deallocate storage // for the object itself. -func cteClear(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116823:13: */ +func cteClear(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116834:13: */ Xsqlite3ExprListDelete(tls, db, (*Cte)(unsafe.Pointer(pCte)).FpCols) Xsqlite3SelectDelete(tls, db, (*Cte)(unsafe.Pointer(pCte)).FpSelect) @@ -110766,7 +110810,7 @@ func cteClear(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116823:13: } // Free the contents of the CTE object passed as the second argument. -func Xsqlite3CteDelete(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116833:21: */ +func Xsqlite3CteDelete(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116844:21: */ cteClear(tls, db, pCte) Xsqlite3DbFree(tls, db, pCte) @@ -110776,7 +110820,7 @@ func Xsqlite3CteDelete(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:1 // WITH clause. The CTE described by teh third argument is added to // the WITH clause of the second argument. If the second argument is // NULL, then a new WITH argument is created. -func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) uintptr { /* sqlite3.c:116845:21: */ +func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) uintptr { /* sqlite3.c:116856:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -110819,7 +110863,7 @@ func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) } // Free the contents of the With object passed as the second argument. -func Xsqlite3WithDelete(tls *libc.TLS, db uintptr, pWith uintptr) { /* sqlite3.c:116892:21: */ +func Xsqlite3WithDelete(tls *libc.TLS, db uintptr, pWith uintptr) { /* sqlite3.c:116903:21: */ if pWith != 0 { var i int32 for i = 0; i < (*With)(unsafe.Pointer(pWith)).FnCte; i++ { @@ -110849,7 +110893,7 @@ func Xsqlite3WithDelete(tls *libc.TLS, db uintptr, pWith uintptr) { /* sqlite3.c // Invoke the 'collation needed' callback to request a collation sequence // in the encoding enc of name zName, length nName. -func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sqlite3.c:116927:13: */ +func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sqlite3.c:116938:13: */ if (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded != 0 { var zExternal uintptr = Xsqlite3DbStrDup(tls, db, zName) @@ -110876,7 +110920,7 @@ func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sq // of this collation function (for other text encodings) available. Use one // of these instead if they exist. Avoid a UTF-8 <-> UTF-16 conversion if // possible. -func synthCollSeq(tls *libc.TLS, db uintptr, pColl uintptr) int32 { /* sqlite3.c:116956:12: */ +func synthCollSeq(tls *libc.TLS, db uintptr, pColl uintptr) int32 { /* sqlite3.c:116967:12: */ var pColl2 uintptr var z uintptr = (*CollSeq)(unsafe.Pointer(pColl)).FzName var i int32 @@ -110891,7 +110935,7 @@ func synthCollSeq(tls *libc.TLS, db uintptr, pColl uintptr) int32 { /* sqlite3.c return SQLITE_ERROR } -var aEnc = [3]U8{U8(SQLITE_UTF16BE), U8(SQLITE_UTF16LE), U8(SQLITE_UTF8)} /* sqlite3.c:116960:19 */ +var aEnc = [3]U8{U8(SQLITE_UTF16BE), U8(SQLITE_UTF16LE), U8(SQLITE_UTF8)} /* sqlite3.c:116971:19 */ // This routine is called on a collation sequence before it is used to // check that it is defined. An undefined collation sequence exists when @@ -110902,7 +110946,7 @@ var aEnc = [3]U8{U8(SQLITE_UTF16BE), U8(SQLITE_UTF16LE), U8(SQLITE_UTF8)} /* sql // request a definition of the collating sequence. If this doesn't work, // an equivalent collating sequence that uses a text encoding different // from the main database is substituted, if one is available. -func Xsqlite3CheckCollSeq(tls *libc.TLS, pParse uintptr, pColl uintptr) int32 { /* sqlite3.c:116983:20: */ +func Xsqlite3CheckCollSeq(tls *libc.TLS, pParse uintptr, pColl uintptr) int32 { /* sqlite3.c:116994:20: */ if (pColl != 0) && ((*CollSeq)(unsafe.Pointer(pColl)).FxCmp == uintptr(0)) { var zName uintptr = (*CollSeq)(unsafe.Pointer(pColl)).FzName var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -110926,7 +110970,7 @@ func Xsqlite3CheckCollSeq(tls *libc.TLS, pParse uintptr, pColl uintptr) int32 { // Stored immediately after the three collation sequences is a copy of // the collation sequence name. A pointer to this string is stored in // each collation sequence structure. -func findCollSeqEntry(tls *libc.TLS, db uintptr, zName uintptr, create int32) uintptr { /* sqlite3.c:117011:16: */ +func findCollSeqEntry(tls *libc.TLS, db uintptr, zName uintptr, create int32) uintptr { /* sqlite3.c:117022:16: */ var pColl uintptr pColl = Xsqlite3HashFind(tls, (db + 608 /* &.aCollSeq */), zName) @@ -110971,7 +111015,7 @@ func findCollSeqEntry(tls *libc.TLS, db uintptr, zName uintptr, create int32) ui // cannot be found. // // See also: sqlite3LocateCollSeq(), sqlite3GetCollSeq() -func Xsqlite3FindCollSeq(tls *libc.TLS, db uintptr, enc U8, zName uintptr, create int32) uintptr { /* sqlite3.c:117063:24: */ +func Xsqlite3FindCollSeq(tls *libc.TLS, db uintptr, enc U8, zName uintptr, create int32) uintptr { /* sqlite3.c:117074:24: */ var pColl uintptr if zName != 0 { @@ -110987,7 +111031,7 @@ func Xsqlite3FindCollSeq(tls *libc.TLS, db uintptr, enc U8, zName uintptr, creat // Change the text encoding for a database connection. This means that // the pDfltColl must change as well. -func Xsqlite3SetTextEncoding(tls *libc.TLS, db uintptr, enc U8) { /* sqlite3.c:117085:21: */ +func Xsqlite3SetTextEncoding(tls *libc.TLS, db uintptr, enc U8) { /* sqlite3.c:117096:21: */ (*Sqlite3)(unsafe.Pointer(db)).Fenc = enc // EVIDENCE-OF: R-08308-17224 The default collating function for all @@ -111007,7 +111051,7 @@ func Xsqlite3SetTextEncoding(tls *libc.TLS, db uintptr, enc U8) { /* sqlite3.c:1 // sequence can be found. If no collation is found, leave an error message. // // See also: sqlite3LocateCollSeq(), sqlite3FindCollSeq() -func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zName uintptr) uintptr { /* sqlite3.c:117108:24: */ +func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zName uintptr) uintptr { /* sqlite3.c:117119:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -111053,7 +111097,7 @@ func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zN // and generates an error message. // // See also: sqlite3FindCollSeq(), sqlite3GetCollSeq() -func Xsqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) uintptr { /* sqlite3.c:117159:24: */ +func Xsqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) uintptr { /* sqlite3.c:117170:24: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var enc U8 = (*Sqlite3)(unsafe.Pointer(db)).Fenc var initbusy U8 = (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy @@ -111094,7 +111138,7 @@ func Xsqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) uintptr // If nArg==(-2) then any function with a non-null xSFunc is // a perfect match and any function with xSFunc NULL is // a non-match. -func matchQuality(tls *libc.TLS, p uintptr, nArg int32, enc U8) int32 { /* sqlite3.c:117202:12: */ +func matchQuality(tls *libc.TLS, p uintptr, nArg int32, enc U8) int32 { /* sqlite3.c:117213:12: */ var match int32 // Wrong number of arguments means "no match" @@ -111130,7 +111174,7 @@ func matchQuality(tls *libc.TLS, p uintptr, nArg int32, enc U8) int32 { /* sqlit // Search a FuncDefHash for a function with the given name. Return // a pointer to the matching FuncDef if found, or 0 if there is no match. -func Xsqlite3FunctionSearch(tls *libc.TLS, h int32, zFunc uintptr) uintptr { /* sqlite3.c:117238:24: */ +func Xsqlite3FunctionSearch(tls *libc.TLS, h int32, zFunc uintptr) uintptr { /* sqlite3.c:117249:24: */ var p uintptr for p = *(*uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3BuiltinFunctions)) /* &.a */) + uintptr(h)*8)); p != 0; p = *(*uintptr)(unsafe.Pointer(p + 64 /* &.u */)) { if Xsqlite3StrICmp(tls, (*FuncDef)(unsafe.Pointer(p)).FzName, zFunc) == 0 { @@ -111141,7 +111185,7 @@ func Xsqlite3FunctionSearch(tls *libc.TLS, h int32, zFunc uintptr) uintptr { /* } // Insert a new FuncDef into a FuncDefHash hash table. -func Xsqlite3InsertBuiltinFuncs(tls *libc.TLS, aDef uintptr, nDef int32) { /* sqlite3.c:117254:21: */ +func Xsqlite3InsertBuiltinFuncs(tls *libc.TLS, aDef uintptr, nDef int32) { /* sqlite3.c:117265:21: */ var i int32 for i = 0; i < nDef; i++ { var pOther uintptr @@ -111179,7 +111223,7 @@ func Xsqlite3InsertBuiltinFuncs(tls *libc.TLS, aDef uintptr, nDef int32) { /* sq // If createFlag is false, then a function with the required name and // number of arguments may be returned even if the eTextRep flag does not // match that requested. -func Xsqlite3FindFunction(tls *libc.TLS, db uintptr, zName uintptr, nArg int32, enc U8, createFlag U8) uintptr { /* sqlite3.c:117299:24: */ +func Xsqlite3FindFunction(tls *libc.TLS, db uintptr, zName uintptr, nArg int32, enc U8, createFlag U8) uintptr { /* sqlite3.c:117310:24: */ var p uintptr // Iterator variable var pBest uintptr = uintptr(0) // Best match found so far var bestScore int32 = 0 // Score of best match @@ -111259,7 +111303,7 @@ func Xsqlite3FindFunction(tls *libc.TLS, db uintptr, zName uintptr, nArg int32, // of the schema hash tables). // // The Schema.cache_size variable is not cleared. -func Xsqlite3SchemaClear(tls *libc.TLS, p uintptr) { /* sqlite3.c:117391:21: */ +func Xsqlite3SchemaClear(tls *libc.TLS, p uintptr) { /* sqlite3.c:117402:21: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -111294,7 +111338,7 @@ func Xsqlite3SchemaClear(tls *libc.TLS, p uintptr) { /* sqlite3.c:117391:21: */ // Find and return the schema associated with a BTree. Create // a new one if necessary. -func Xsqlite3SchemaGet(tls *libc.TLS, db uintptr, pBt uintptr) uintptr { /* sqlite3.c:117423:23: */ +func Xsqlite3SchemaGet(tls *libc.TLS, db uintptr, pBt uintptr) uintptr { /* sqlite3.c:117434:23: */ var p uintptr if pBt != 0 { p = Xsqlite3BtreeSchema(tls, pBt, int32(unsafe.Sizeof(Schema{})), *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3SchemaClear}))) @@ -111341,7 +111385,7 @@ func Xsqlite3SchemaGet(tls *libc.TLS, db uintptr, pBt uintptr) uintptr { /* sqli // pSrc->a[0].pTab Pointer to the Table object // pSrc->a[0].pIndex Pointer to the INDEXED BY index, if there is one // -func Xsqlite3SrcListLookup(tls *libc.TLS, pParse uintptr, pSrc uintptr) uintptr { /* sqlite3.c:117474:22: */ +func Xsqlite3SrcListLookup(tls *libc.TLS, pParse uintptr, pSrc uintptr) uintptr { /* sqlite3.c:117485:22: */ var pItem uintptr = pSrc + 8 /* &.a */ var pTab uintptr @@ -111371,7 +111415,7 @@ func Xsqlite3SrcListLookup(tls *libc.TLS, pParse uintptr, pSrc uintptr) uintptr // 3) The table is a shadow table, the database connection is in // defensive mode, and the current sqlite3_prepare() // is for a top-level SQL statement. -func tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:117505:12: */ +func tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:117516:12: */ var db uintptr if (*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0 { return (libc.Bool32((*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer((*VTable)(unsafe.Pointer(Xsqlite3GetVTable(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pTab))).FpMod)).FpModule)).FxUpdate == uintptr(0))) @@ -111390,7 +111434,7 @@ func tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlit // Check to make sure the given table is writable. If it is not // writable, generate an error message and return 1. If it is // writable return 0; -func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int32) int32 { /* sqlite3.c:117524:20: */ +func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int32) int32 { /* sqlite3.c:117535:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -111408,7 +111452,7 @@ func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int3 // Evaluate a view and store its result in an ephemeral table. The // pWhere argument is an optional WHERE clause that restricts the // set of rows in the view that are to be added to the ephemeral table. -func Xsqlite3MaterializeView(tls *libc.TLS, pParse uintptr, pView uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr, iCur int32) { /* sqlite3.c:117545:21: */ +func Xsqlite3MaterializeView(tls *libc.TLS, pParse uintptr, pView uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr, iCur int32) { /* sqlite3.c:117556:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -111440,7 +111484,7 @@ func Xsqlite3MaterializeView(tls *libc.TLS, pParse uintptr, pView uintptr, pWher // DELETE FROM table_wxyz WHERE a<5 AND b NOT NULL; // \________/ \________________/ // pTabList pWhere -func Xsqlite3DeleteFrom(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:117683:21: */ +func Xsqlite3DeleteFrom(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:117694:21: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -112036,7 +112080,7 @@ delete_from_cleanup: // starting at iIdxCur) that already points to the index entry to be deleted. // Except, this optimization is disabled if there are BEFORE triggers since // the trigger body might have moved the cursor. -func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTrigger uintptr, iDataCur int32, iIdxCur int32, iPk int32, nPk I16, count U8, onconf U8, eMode U8, iIdxNoSeek int32) { /* sqlite3.c:118128:21: */ +func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTrigger uintptr, iDataCur int32, iIdxCur int32, iPk int32, nPk I16, count U8, onconf U8, eMode U8, iIdxNoSeek int32) { /* sqlite3.c:118139:21: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // Vdbe var iOld int32 = 0 // First register in OLD.* array var iLabel int32 // Label resolved to end of generated code @@ -112173,7 +112217,7 @@ func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTri // // 3. The "iDataCur" cursor must be already be positioned on the row // that is to be deleted. -func Xsqlite3GenerateRowIndexDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, aRegIdx uintptr, iIdxNoSeek int32) { /* sqlite3.c:118280:21: */ +func Xsqlite3GenerateRowIndexDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, aRegIdx uintptr, iIdxNoSeek int32) { /* sqlite3.c:118291:21: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -112262,7 +112306,7 @@ __3: // This optimization is helpful when doing a DELETE or an INTEGRITY_CHECK // on a table with multiple indices, and especially with the ROWID or // PRIMARY KEY columns of the index. -func Xsqlite3GenerateIndexKey(tls *libc.TLS, pParse uintptr, pIdx uintptr, iDataCur int32, regOut int32, prefixOnly int32, piPartIdxLabel uintptr, pPrior uintptr, regPrior int32) int32 { /* sqlite3.c:118345:20: */ +func Xsqlite3GenerateIndexKey(tls *libc.TLS, pParse uintptr, pIdx uintptr, iDataCur int32, regOut int32, prefixOnly int32, piPartIdxLabel uintptr, pPrior uintptr, regPrior int32) int32 { /* sqlite3.c:118356:20: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var j int32 var regBase int32 @@ -112316,7 +112360,7 @@ func Xsqlite3GenerateIndexKey(tls *libc.TLS, pParse uintptr, pIdx uintptr, iData // If a prior call to sqlite3GenerateIndexKey() generated a jump-over label // because it was a partial index, then this routine should be called to // resolve that label. -func Xsqlite3ResolvePartIdxLabel(tls *libc.TLS, pParse uintptr, iLabel int32) { /* sqlite3.c:118405:21: */ +func Xsqlite3ResolvePartIdxLabel(tls *libc.TLS, pParse uintptr, iLabel int32) { /* sqlite3.c:118416:21: */ if iLabel != 0 { Xsqlite3VdbeResolveLabel(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, iLabel) } @@ -112344,7 +112388,7 @@ func Xsqlite3ResolvePartIdxLabel(tls *libc.TLS, pParse uintptr, iLabel int32) { // #include "vdbeInt.h" // Return the collating function associated with a function. -func sqlite3GetFuncCollSeq(tls *libc.TLS, context uintptr) uintptr { /* sqlite3.c:118439:16: */ +func sqlite3GetFuncCollSeq(tls *libc.TLS, context uintptr) uintptr { /* sqlite3.c:118450:16: */ var pOp uintptr pOp = ((*Vdbe)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(context)).FpVdbe)).FaOp + uintptr(((*Sqlite3_context)(unsafe.Pointer(context)).FiOp-1))*24) @@ -112354,14 +112398,14 @@ func sqlite3GetFuncCollSeq(tls *libc.TLS, context uintptr) uintptr { /* sqlite3. // Indicate that the accumulator load should be skipped on this // iteration of the aggregate loop. -func sqlite3SkipAccumulatorLoad(tls *libc.TLS, context uintptr) { /* sqlite3.c:118452:13: */ +func sqlite3SkipAccumulatorLoad(tls *libc.TLS, context uintptr) { /* sqlite3.c:118463:13: */ (*Sqlite3_context)(unsafe.Pointer(context)).FisError = -1 (*Sqlite3_context)(unsafe.Pointer(context)).FskipFlag = U8(1) } // Implementation of the non-aggregate min() and max() functions -func minmaxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118461:13: */ +func minmaxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118472:13: */ var i int32 var mask int32 // 0 for min() or 0xffffffff for max() var iBest int32 @@ -112391,7 +112435,7 @@ func minmaxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s } // Return the type of the argument. -func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:118491:13: */ +func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:118502:13: */ var i int32 = (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))) - 1) _ = NotUsed @@ -112402,10 +112446,10 @@ func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / Xsqlite3_result_text(tls, context, azType2[i], -1, uintptr(0)) } -var azType2 = [5]uintptr{ts + 5557 /* "integer" */, ts + 5552 /* "real" */, ts + 13490 /* "text" */, ts + 13495 /* "blob" */, ts + 5547 /* "null" */} /* sqlite3.c:118496:21 */ +var azType2 = [5]uintptr{ts + 5557 /* "integer" */, ts + 5552 /* "real" */, ts + 13490 /* "text" */, ts + 13495 /* "blob" */, ts + 5547 /* "null" */} /* sqlite3.c:118507:21 */ // Implementation of the length() function -func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118516:13: */ +func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118527:13: */ _ = argc switch Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))) { @@ -112454,7 +112498,7 @@ func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // // IMP: R-23979-26855 The abs(X) function returns the absolute value of // the numeric argument X. -func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118558:13: */ +func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118569:13: */ _ = argc switch Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))) { @@ -112508,7 +112552,7 @@ func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // If both haystack and needle are BLOBs, then the result is one more than // the number of bytes in haystack prior to the first occurrence of needle, // or 0 if needle never occurs in haystack. -func instrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118607:13: */ +func instrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118618:13: */ var zHaystack uintptr var zNeedle uintptr var nHaystack int32 @@ -112623,7 +112667,7 @@ endInstrOOM: } // Implementation of the printf() function. -func printfFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118675:13: */ +func printfFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118686:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -112658,7 +112702,7 @@ func printfFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // If p1 is negative, then we begin abs(p1) from the end of x[]. // // If p2 is negative, return the p2 characters preceding p1. -func substrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118711:13: */ +func substrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118722:13: */ var z uintptr var z2 uintptr var len int32 @@ -112766,7 +112810,7 @@ func substrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s } // Implementation of the round() function -func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118806:13: */ +func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118817:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -112820,7 +112864,7 @@ func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // the database handle that malloc() has failed and return NULL. // If nByte is larger than the maximum string or blob length, then // raise an SQLITE_TOOBIG exception and return NULL. -func contextMalloc(tls *libc.TLS, context uintptr, nByte I64) uintptr { /* sqlite3.c:118847:13: */ +func contextMalloc(tls *libc.TLS, context uintptr, nByte I64) uintptr { /* sqlite3.c:118858:13: */ var z uintptr var db uintptr = Xsqlite3_context_db_handle(tls, context) @@ -112837,7 +112881,7 @@ func contextMalloc(tls *libc.TLS, context uintptr, nByte I64) uintptr { /* sqlit } // Implementation of the upper() and lower() SQL functions. -func upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118868:13: */ +func upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118879:13: */ var z1 uintptr var z2 uintptr var i int32 @@ -112858,7 +112902,7 @@ func upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq } } -func lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118887:13: */ +func lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118898:13: */ var z1 uintptr var z2 uintptr var i int32 @@ -112887,7 +112931,7 @@ func lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // is. We might as well use the "version()" function as a substitute. // Implementation of random(). Return a random integer. -func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118920:13: */ +func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118931:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -112911,7 +112955,7 @@ func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) // Implementation of randomblob(N). Return a random blob // that is N bytes long. -func randomBlob(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118946:13: */ +func randomBlob(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118957:13: */ var n Sqlite3_int64 var p uintptr @@ -112929,7 +112973,7 @@ func randomBlob(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // Implementation of the last_insert_rowid() SQL function. The return // value is the same as the sqlite3_last_insert_rowid() API function. -func last_insert_rowid(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118970:13: */ +func last_insert_rowid(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118981:13: */ var db uintptr = Xsqlite3_context_db_handle(tls, context) _ = NotUsed _ = NotUsed2 @@ -112944,7 +112988,7 @@ func last_insert_rowid(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 u // IMP: R-62073-11209 The changes() SQL function is a wrapper // around the sqlite3_changes() C/C++ function and hence follows the same // rules for counting changes. -func changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118990:13: */ +func changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119001:13: */ var db uintptr = Xsqlite3_context_db_handle(tls, context) _ = NotUsed _ = NotUsed2 @@ -112953,7 +112997,7 @@ func changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { // Implementation of the total_changes() SQL function. The return value is // the same as the sqlite3_total_changes() API function. -func total_changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119004:13: */ +func total_changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119015:13: */ var db uintptr = Xsqlite3_context_db_handle(tls, context) _ = NotUsed _ = NotUsed2 @@ -112968,20 +113012,20 @@ type compareInfo = struct { FmatchOne U8 FmatchSet U8 FnoCase U8 -} /* sqlite3.c:119019:1 */ +} /* sqlite3.c:119030:1 */ // For LIKE and GLOB matching on EBCDIC machines, assume that every // character is exactly one byte in size. Also, provde the Utf8Read() // macro for fast reading of the next character in the common case where // the next character is ASCII. -var globInfo = compareInfo{FmatchAll: U8('*'), FmatchOne: U8('?'), FmatchSet: U8('[')} /* sqlite3.c:119039:33 */ +var globInfo = compareInfo{FmatchAll: U8('*'), FmatchOne: U8('?'), FmatchSet: U8('[')} /* sqlite3.c:119050:33 */ // The correct SQL-92 behavior is for the LIKE operator to ignore // case. Thus 'a' LIKE 'A' would be true. -var likeInfoNorm = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_'), FnoCase: U8(1)} /* sqlite3.c:119042:33 */ +var likeInfoNorm = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_'), FnoCase: U8(1)} /* sqlite3.c:119053:33 */ // If SQLITE_CASE_SENSITIVE_LIKE is defined, then the LIKE operator // is case sensitive causing 'a' LIKE 'A' to be false -var likeInfoAlt = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_')} /* sqlite3.c:119045:33 */ +var likeInfoAlt = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_')} /* sqlite3.c:119056:33 */ // Possible error returns from patternMatch() @@ -113021,7 +113065,7 @@ var likeInfoAlt = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_')} /* sqlite3 // The comments within this routine usually assume glob matching. // // This routine is usually quick, but can be N**2 in the worst case. -func patternCompare(tls *libc.TLS, zPattern uintptr, zString uintptr, pInfo uintptr, matchOther U32) int32 { /* sqlite3.c:119092:12: */ +func patternCompare(tls *libc.TLS, zPattern uintptr, zString uintptr, pInfo uintptr, matchOther U32) int32 { /* sqlite3.c:119103:12: */ bp := tls.Alloc(19) defer tls.Free(19) *(*uintptr)(unsafe.Pointer(bp)) = zPattern @@ -113207,13 +113251,13 @@ func patternCompare(tls *libc.TLS, zPattern uintptr, zString uintptr, pInfo uint // The sqlite3_strglob() interface. Return 0 on a match (like strcmp()) and // non-zero if there is no match. -func Xsqlite3_strglob(tls *libc.TLS, zGlobPattern uintptr, zString uintptr) int32 { /* sqlite3.c:119225:16: */ +func Xsqlite3_strglob(tls *libc.TLS, zGlobPattern uintptr, zString uintptr) int32 { /* sqlite3.c:119236:16: */ return patternCompare(tls, zGlobPattern, zString, uintptr(unsafe.Pointer(&globInfo)), uint32('[')) } // The sqlite3_strlike() interface. Return 0 on a match and non-zero for // a miss - like strcmp(). -func Xsqlite3_strlike(tls *libc.TLS, zPattern uintptr, zStr uintptr, esc uint32) int32 { /* sqlite3.c:119233:16: */ +func Xsqlite3_strlike(tls *libc.TLS, zPattern uintptr, zStr uintptr, esc uint32) int32 { /* sqlite3.c:119244:16: */ return patternCompare(tls, zPattern, zStr, uintptr(unsafe.Pointer(&likeInfoNorm)), esc) } @@ -113231,7 +113275,7 @@ func Xsqlite3_strlike(tls *libc.TLS, zPattern uintptr, zStr uintptr, esc uint32) // // This same function (with a different compareInfo structure) computes // the GLOB operator. -func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119259:13: */ +func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119270:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -113294,7 +113338,7 @@ func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // Implementation of the NULLIF(x,y) function. The result is the first // argument if the arguments are different. The result is NULL if the // arguments are equal to each other. -func nullifFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:119330:13: */ +func nullifFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:119341:13: */ var pColl uintptr = sqlite3GetFuncCollSeq(tls, context) _ = NotUsed if Xsqlite3MemCompare(tls, *(*uintptr)(unsafe.Pointer(argv)), *(*uintptr)(unsafe.Pointer(argv + 1*8)), pColl) != 0 { @@ -113304,7 +113348,7 @@ func nullifFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / // Implementation of the sqlite_version() function. The result is the version // of the SQLite library that is running. -func versionFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119346:13: */ +func versionFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119357:13: */ _ = NotUsed _ = NotUsed2 // IMP: R-48699-48617 This function is an SQL wrapper around the @@ -113315,7 +113359,7 @@ func versionFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr // Implementation of the sqlite_source_id() function. The result is a string // that identifies the particular version of the source code used to build // SQLite. -func sourceidFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119362:13: */ +func sourceidFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119373:13: */ _ = NotUsed _ = NotUsed2 // IMP: R-24470-31136 This function is an SQL wrapper around the @@ -113326,7 +113370,7 @@ func sourceidFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintpt // Implementation of the sqlite_log() function. This is a wrapper around // sqlite3_log(). The return value is NULL. The function exists purely for // its side-effects. -func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119378:13: */ +func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119389:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -113338,7 +113382,7 @@ func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // Implementation of the sqlite_compileoption_used() function. // The result is an integer that identifies if the compiler option // was used to build SQLite. -func compileoptionusedFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119394:13: */ +func compileoptionusedFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119405:13: */ var zOptName uintptr _ = argc @@ -113353,7 +113397,7 @@ func compileoptionusedFunc(tls *libc.TLS, context uintptr, argc int32, argv uint // Implementation of the sqlite_compileoption_get() function. // The result is a string that identifies the compiler options // used to build SQLite. -func compileoptiongetFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119418:13: */ +func compileoptiongetFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119429:13: */ var n int32 _ = argc @@ -113368,14 +113412,14 @@ func compileoptiongetFunc(tls *libc.TLS, context uintptr, argc int32, argv uintp var hexdigits = [16]int8{ int8('0'), int8('1'), int8('2'), int8('3'), int8('4'), int8('5'), int8('6'), int8('7'), int8('8'), int8('9'), int8('A'), int8('B'), int8('C'), int8('D'), int8('E'), int8('F'), -} /* sqlite3.c:119436:19 */ +} /* sqlite3.c:119447:19 */ // Implementation of the QUOTE() function. This function takes a single // argument. If the argument is numeric, the return value is the same as // the argument. If the argument is NULL, the return value is the string // "NULL". Otherwise, the argument is enclosed in single quotes with // single-quote escapes. -func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119448:13: */ +func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119459:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -113475,7 +113519,7 @@ func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // The unicode() function. Return the integer unicode code-point value // for the first character of the input string. -func unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119524:13: */ +func unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119535:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -113489,7 +113533,7 @@ func unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // The char() function takes zero or more arguments, each of which is // an integer. It constructs a string where each character of the string // is the unicode character for the corresponding integer argument. -func charFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119539:13: */ +func charFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119550:13: */ var z uintptr var zOut uintptr var i int32 @@ -113527,7 +113571,7 @@ func charFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // The hex() function. Interpret the argument as a blob. Return // a hexadecimal rendering as text. -func hexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119580:13: */ +func hexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119591:13: */ var i int32 var n int32 var pBlob uintptr @@ -113565,7 +113609,7 @@ func hexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli } // The zeroblob(N) function returns a zero-filled blob of size N bytes. -func zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119608:13: */ +func zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119619:13: */ var n I64 var rc int32 @@ -113584,7 +113628,7 @@ func zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // them A, B, and C. The result is also a string which is derived // from A by replacing every occurrence of B with C. The match // must be exact. Collating sequences are not used. -func replaceFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119631:13: */ +func replaceFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119642:13: */ var zStr uintptr // The input string A var zPattern uintptr // The pattern string B var zRep uintptr // The replacement string C @@ -113673,7 +113717,7 @@ func replaceFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // Implementation of the TRIM(), LTRIM(), and RTRIM() functions. // The userdata is 0x1 for left trim, 0x2 for right trim, 0x3 for both. -func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119724:13: */ +func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119735:13: */ var zIn uintptr // Input string var zCharSet uintptr // Set of characters to trim var nIn int32 // Number of bytes in input @@ -113775,8 +113819,8 @@ func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql Xsqlite3_result_text(tls, context, zIn, nIn, libc.UintptrFromInt32(-1)) } -var lenOne = [1]uint8{uint8(1)} /* sqlite3.c:119746:32 */ -var azOne = [1]uintptr{uintptr(ts + 9642 /* " " */)} /* sqlite3.c:119747:26 */ +var lenOne = [1]uint8{uint8(1)} /* sqlite3.c:119757:32 */ +var azOne = [1]uintptr{uintptr(ts + 9642 /* " " */)} /* sqlite3.c:119758:26 */ // IMP: R-25361-16150 This function is omitted from SQLite by default. It // is only available if the SQLITE_SOUNDEX compile-time option is used @@ -113785,7 +113829,7 @@ var azOne = [1]uintptr{uintptr(ts + 9642 /* " " */)} /* sqlite3.c:119747:26 */ // // IMP: R-59782-00072 The soundex(X) function returns a string that is the // soundex encoding of the string X. -func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119836:13: */ +func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119847:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -113836,10 +113880,10 @@ var iCode = [128]uint8{ uint8(1), uint8(2), uint8(6), uint8(2), uint8(3), uint8(0), uint8(1), uint8(0), uint8(2), uint8(0), uint8(2), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), uint8(1), uint8(2), uint8(3), uint8(0), uint8(1), uint8(2), uint8(0), uint8(0), uint8(2), uint8(2), uint8(4), uint8(5), uint8(5), uint8(0), uint8(1), uint8(2), uint8(6), uint8(2), uint8(3), uint8(0), uint8(1), uint8(0), uint8(2), uint8(0), uint8(2), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), -} /* sqlite3.c:119844:30 */ +} /* sqlite3.c:119855:30 */ // A function that loads a shared-library extension then returns NULL. -func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119889:13: */ +func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119900:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -113875,11 +113919,11 @@ type SumCtx1 = struct { Foverflow U8 Fapprox U8 _ [6]byte -} /* sqlite3.c:119920:9 */ +} /* sqlite3.c:119931:9 */ // An instance of the following structure holds the context of a // sum() or avg() aggregate computation. -type SumCtx = SumCtx1 /* sqlite3.c:119920:23 */ +type SumCtx = SumCtx1 /* sqlite3.c:119931:23 */ // Routines used to compute the sum, average, and total. // @@ -113889,7 +113933,7 @@ type SumCtx = SumCtx1 /* sqlite3.c:119920:23 */ // SUM might return an integer if it never encounters a floating point // value. TOTAL never fails, but SUM might through an exception if // it overflows an integer. -func sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119939:13: */ +func sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119950:13: */ var p uintptr var type1 int32 @@ -113911,7 +113955,7 @@ func sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli } } -func sumInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119961:13: */ +func sumInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119972:13: */ var p uintptr var type1 int32 @@ -113934,7 +113978,7 @@ func sumInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s } } -func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119986:13: */ +func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119997:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) if (p != 0) && ((*SumCtx)(unsafe.Pointer(p)).Fcnt > int64(0)) { @@ -113948,7 +113992,7 @@ func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119986:13: */ } } -func avgFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119999:13: */ +func avgFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120010:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) if (p != 0) && ((*SumCtx)(unsafe.Pointer(p)).Fcnt > int64(0)) { @@ -113956,7 +114000,7 @@ func avgFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119999:13: */ } } -func totalFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120006:13: */ +func totalFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120017:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) // (double)0 In case of SQLITE_OMIT_FLOATING_POINT... @@ -113970,14 +114014,14 @@ func totalFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120006:13: */ // The following structure keeps track of state information for the // count() aggregate function. -type CountCtx1 = struct{ Fn I64 } /* sqlite3.c:120017:9 */ +type CountCtx1 = struct{ Fn I64 } /* sqlite3.c:120028:9 */ // The following structure keeps track of state information for the // count() aggregate function. -type CountCtx = CountCtx1 /* sqlite3.c:120017:25 */ +type CountCtx = CountCtx1 /* sqlite3.c:120028:25 */ // Routines to implement the count() aggregate function. -func countStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120028:13: */ +func countStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120039:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, int32(unsafe.Sizeof(CountCtx{}))) if ((argc == 0) || (SQLITE_NULL != Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))))) && (p != 0) { @@ -113991,7 +114035,7 @@ func countStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq } -func countFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120044:13: */ +func countFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120055:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) Xsqlite3_result_int64(tls, context, func() int64 { @@ -114002,7 +114046,7 @@ func countFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120044:13: */ }()) } -func countInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:120050:13: */ +func countInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:120061:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, ctx, int32(unsafe.Sizeof(CountCtx{}))) // p is always non-NULL since countStep() will have been called first @@ -114012,7 +114056,7 @@ func countInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sql } // Routines to implement min() and max() aggregate functions. -func minmaxStep(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:120068:13: */ +func minmaxStep(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:120079:13: */ var pArg uintptr = *(*uintptr)(unsafe.Pointer(argv)) var pBest uintptr _ = NotUsed @@ -114050,7 +114094,7 @@ func minmaxStep(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / } } -func minMaxValueFinalize(tls *libc.TLS, context uintptr, bValue int32) { /* sqlite3.c:120106:13: */ +func minMaxValueFinalize(tls *libc.TLS, context uintptr, bValue int32) { /* sqlite3.c:120117:13: */ var pRes uintptr pRes = Xsqlite3_aggregate_context(tls, context, 0) if pRes != 0 { @@ -114063,16 +114107,16 @@ func minMaxValueFinalize(tls *libc.TLS, context uintptr, bValue int32) { /* sqli } } -func minMaxValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120117:13: */ +func minMaxValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120128:13: */ minMaxValueFinalize(tls, context, 1) } -func minMaxFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120123:13: */ +func minMaxFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120134:13: */ minMaxValueFinalize(tls, context, 0) } // group_concat(EXPR, ?SEPARATOR?) -func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120130:13: */ +func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120141:13: */ var zVal uintptr var pAccum uintptr var zSep uintptr @@ -114108,7 +114152,7 @@ func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { } } -func groupConcatInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120163:13: */ +func groupConcatInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120174:13: */ var n int32 var pAccum uintptr @@ -114137,7 +114181,7 @@ func groupConcatInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr } } -func groupConcatFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120194:13: */ +func groupConcatFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120205:13: */ var pAccum uintptr pAccum = Xsqlite3_aggregate_context(tls, context, 0) if pAccum != 0 { @@ -114152,7 +114196,7 @@ func groupConcatFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120194:1 } } -func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120209:13: */ +func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120220:13: */ var pAccum uintptr pAccum = Xsqlite3_aggregate_context(tls, context, 0) if pAccum != 0 { @@ -114170,7 +114214,7 @@ func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120209:13: // This routine does per-connection function registration. Most // of the built-in functions above are part of the global function set. // This routine only deals with those that are not global. -func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { /* sqlite3.c:120232:21: */ +func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { /* sqlite3.c:120243:21: */ var rc int32 = Xsqlite3_overload_function(tls, db, ts+13612 /* "MATCH" */, 2) if rc == SQLITE_NOMEM { @@ -114181,7 +114225,7 @@ func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { // Re-register the built-in LIKE functions. The caseSensitive // parameter determines whether or not the LIKE operator is case // sensitive. -func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int32) { /* sqlite3.c:120245:21: */ +func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int32) { /* sqlite3.c:120256:21: */ var pInfo uintptr var flags int32 if caseSensitive != 0 { @@ -114216,7 +114260,7 @@ func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int3 // the function (default for LIKE). If the function makes the distinction // between uppercase and lowercase (as does GLOB) then *pIsNocase is set to // false. -func Xsqlite3IsLikeFunction(tls *libc.TLS, db uintptr, pExpr uintptr, pIsNocase uintptr, aWc uintptr) int32 { /* sqlite3.c:120278:20: */ +func Xsqlite3IsLikeFunction(tls *libc.TLS, db uintptr, pExpr uintptr, pIsNocase uintptr, aWc uintptr) int32 { /* sqlite3.c:120289:20: */ var pDef uintptr var nExpr int32 @@ -114265,7 +114309,7 @@ func Xsqlite3IsLikeFunction(tls *libc.TLS, db uintptr, pExpr uintptr, pIsNocase // Extra math functions that require linking with -lm // Implementation of sign(X) function. -func signFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120504:13: */ +func signFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120515:13: */ var type0 int32 var x float64 _ = argc @@ -114293,7 +114337,7 @@ func signFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // a consequence of calling sqlite3_initialize()). // // After this routine runs -func Xsqlite3RegisterBuiltinFunctions(tls *libc.TLS) { /* sqlite3.c:120526:21: */ +func Xsqlite3RegisterBuiltinFunctions(tls *libc.TLS) { /* sqlite3.c:120537:21: */ Xsqlite3AlterFunctions(tls) Xsqlite3WindowFunctions(tls) Xsqlite3RegisterDateTimeFunctions(tls) @@ -114372,7 +114416,7 @@ var aBuiltinFunc = [68]FuncDef{ {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 14073 /* "coalesce" */}, {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 14082 /* "sign" */}, {FnArg: int8(-1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 14073 /* "coalesce" */}, - {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(int64(INLINEFUNC_iif)), FxSFunc: 0, FzName: ts + 14087 /* "iif" */}} /* sqlite3.c:120537:18 */ + {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(int64(INLINEFUNC_iif)), FxSFunc: 0, FzName: ts + 14087 /* "iif" */}} /* sqlite3.c:120548:18 */ //************* End of func.c *********************************************** //************* Begin file fkey.c ******************************************* @@ -114547,7 +114591,7 @@ var aBuiltinFunc = [68]FuncDef{ // then non-zero is returned, and a "foreign key mismatch" error loaded // into pParse. If an OOM error occurs, non-zero is returned and the // pParse->db->mallocFailed flag is set. -func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey uintptr, ppIdx uintptr, paiCol uintptr) int32 { /* sqlite3.c:120885:20: */ +func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey uintptr, ppIdx uintptr, paiCol uintptr) int32 { /* sqlite3.c:120896:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -114693,7 +114737,7 @@ func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey // // These operations are identified in the comment at the top of this file // (fkey.c) as "I.1" and "D.1". -func fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32, isIgnore int32) { /* sqlite3.c:121020:13: */ +func fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32, isIgnore int32) { /* sqlite3.c:121031:13: */ var i int32 // Iterator variable var v uintptr = Xsqlite3GetVdbe(tls, pParse) // Vdbe to add code to var iCur int32 = ((*Parse)(unsafe.Pointer(pParse)).FnTab - 1) // Cursor number to use @@ -114823,7 +114867,7 @@ func fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx // regBase is the first of an array of register that contains the data // for pTab. regBase itself holds the rowid. regBase+1 holds the first // column. regBase+2 holds the second column, and so forth. -func exprTableRegister(tls *libc.TLS, pParse uintptr, pTab uintptr, regBase int32, iCol I16) uintptr { /* sqlite3.c:121173:13: */ +func exprTableRegister(tls *libc.TLS, pParse uintptr, pTab uintptr, regBase int32, iCol I16) uintptr { /* sqlite3.c:121184:13: */ var pExpr uintptr var pCol uintptr var zColl uintptr @@ -114850,7 +114894,7 @@ func exprTableRegister(tls *libc.TLS, pParse uintptr, pTab uintptr, regBase int3 // Return an Expr object that refers to column iCol of table pTab which // has cursor iCur. -func exprTableColumn(tls *libc.TLS, db uintptr, pTab uintptr, iCursor int32, iCol I16) uintptr { /* sqlite3.c:121205:13: */ +func exprTableColumn(tls *libc.TLS, db uintptr, pTab uintptr, iCursor int32, iCol I16) uintptr { /* sqlite3.c:121216:13: */ var pExpr uintptr = Xsqlite3Expr(tls, db, TK_COLUMN, uintptr(0)) if pExpr != 0 { *(*uintptr)(unsafe.Pointer(pExpr + 64 /* &.y */)) = pTab @@ -114890,7 +114934,7 @@ func exprTableColumn(tls *libc.TLS, db uintptr, pTab uintptr, iCursor int32, iCo // // These operations are identified in the comment at the top of this file // (fkey.c) as "I.2" and "D.2". -func fkScanChildren(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32) { /* sqlite3.c:121252:13: */ +func fkScanChildren(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32) { /* sqlite3.c:121263:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -115014,7 +115058,7 @@ func fkScanChildren(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, p // "t2". Calling this function with "t2" as the argument would return a // NULL pointer (as there are no FK constraints for which t2 is the parent // table). -func Xsqlite3FkReferences(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:121381:21: */ +func Xsqlite3FkReferences(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:121392:21: */ return Xsqlite3HashFind(tls, ((*Table)(unsafe.Pointer(pTab)).FpSchema + 80 /* &.fkeyHash */), (*Table)(unsafe.Pointer(pTab)).FzName) } @@ -115024,7 +115068,7 @@ func Xsqlite3FkReferences(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:12 // // The Trigger structure or any of its sub-components may be allocated from // the lookaside buffer belonging to database handle dbMem. -func fkTriggerDelete(tls *libc.TLS, dbMem uintptr, p uintptr) { /* sqlite3.c:121393:13: */ +func fkTriggerDelete(tls *libc.TLS, dbMem uintptr, p uintptr) { /* sqlite3.c:121404:13: */ if p != 0 { var pStep uintptr = (*Trigger)(unsafe.Pointer(p)).Fstep_list Xsqlite3ExprDelete(tls, dbMem, (*TriggerStep)(unsafe.Pointer(pStep)).FpWhere) @@ -115050,7 +115094,7 @@ func fkTriggerDelete(tls *libc.TLS, dbMem uintptr, p uintptr) { /* sqlite3.c:121 // then the equivalent of "DELETE FROM " is executed before dropping // the table from the database. Triggers are disabled while running this // DELETE, but foreign key actions are not. -func Xsqlite3FkDropTable(tls *libc.TLS, pParse uintptr, pName uintptr, pTab uintptr) { /* sqlite3.c:121421:21: */ +func Xsqlite3FkDropTable(tls *libc.TLS, pParse uintptr, pName uintptr, pTab uintptr) { /* sqlite3.c:121432:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_ForeignKeys)) != 0) && !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { var iSkip int32 = 0 @@ -115113,7 +115157,7 @@ func Xsqlite3FkDropTable(tls *libc.TLS, pParse uintptr, pName uintptr, pTab uint // // This function returns true if any of the columns that are part of the // child key for FK constraint *p are modified. -func fkChildIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121484:12: */ +func fkChildIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121495:12: */ var i int32 for i = 0; i < (*FKey)(unsafe.Pointer(p)).FnCol; i++ { var iChildKey int32 = (*sColMap)(unsafe.Pointer((p + 64 /* &.aCol */) + uintptr(i)*16)).FiFrom @@ -115137,7 +115181,7 @@ func fkChildIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, // // This function returns true if any of the columns that are part of the // parent key for FK constraint *p are modified. -func fkParentIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121511:12: */ +func fkParentIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121522:12: */ var i int32 for i = 0; i < (*FKey)(unsafe.Pointer(p)).FnCol; i++ { var zKey uintptr = (*sColMap)(unsafe.Pointer((p + 64 /* &.aCol */) + uintptr(i)*16)).FzCol @@ -115161,7 +115205,7 @@ func fkParentIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, // Return true if the parser passed as the first argument is being // used to code a trigger that is really a "SET NULL" action belonging // to trigger pFKey. -func isSetNullAction(tls *libc.TLS, pParse uintptr, pFKey uintptr) int32 { /* sqlite3.c:121540:12: */ +func isSetNullAction(tls *libc.TLS, pParse uintptr, pFKey uintptr) int32 { /* sqlite3.c:121551:12: */ var pTop uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -115196,7 +115240,7 @@ func isSetNullAction(tls *libc.TLS, pParse uintptr, pFKey uintptr) int32 { /* sq // the original record is deleted from the table using the calling convention // described for DELETE. Then again after the original record is deleted // but before the new record is inserted using the INSERT convention. -func Xsqlite3FkCheck(tls *libc.TLS, pParse uintptr, pTab uintptr, regOld int32, regNew int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:121573:21: */ +func Xsqlite3FkCheck(tls *libc.TLS, pParse uintptr, pTab uintptr, regOld int32, regNew int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:121584:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -115395,7 +115439,7 @@ func Xsqlite3FkCheck(tls *libc.TLS, pParse uintptr, pTab uintptr, regOld int32, // This function is called before generating code to update or delete a // row contained in table pTab. -func Xsqlite3FkOldmask(tls *libc.TLS, pParse uintptr, pTab uintptr) U32 { /* sqlite3.c:121775:20: */ +func Xsqlite3FkOldmask(tls *libc.TLS, pParse uintptr, pTab uintptr) U32 { /* sqlite3.c:121786:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -115454,7 +115498,7 @@ func Xsqlite3FkOldmask(tls *libc.TLS, pParse uintptr, pTab uintptr) U32 { /* sql // not "NO ACTION" (i.e. is CASCADE, SET DEFAULT or SET NULL). // // Or, assuming some other foreign key processing is required, 1. -func Xsqlite3FkRequired(tls *libc.TLS, pParse uintptr, pTab uintptr, aChange uintptr, chngRowid int32) int32 { /* sqlite3.c:121825:20: */ +func Xsqlite3FkRequired(tls *libc.TLS, pParse uintptr, pTab uintptr, aChange uintptr, chngRowid int32) int32 { /* sqlite3.c:121836:20: */ var eRet int32 = 1 // Value to return if bHaveFK is true var bHaveFK int32 = 0 // If FK processing is required if ((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).Fflags & uint64(SQLITE_ForeignKeys)) != 0 { @@ -115522,7 +115566,7 @@ func Xsqlite3FkRequired(tls *libc.TLS, pParse uintptr, pTab uintptr, aChange uin // The returned pointer is cached as part of the foreign key object. It // is eventually freed along with the rest of the foreign key object by // sqlite3FkDelete(). -func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, pChanges uintptr) uintptr { /* sqlite3.c:121893:16: */ +func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, pChanges uintptr) uintptr { /* sqlite3.c:121904:16: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -115724,7 +115768,7 @@ func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, // This function is called when deleting or updating a row to implement // any required CASCADE, SET NULL or SET DEFAULT actions. -func Xsqlite3FkActions(tls *libc.TLS, pParse uintptr, pTab uintptr, pChanges uintptr, regOld int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:122085:21: */ +func Xsqlite3FkActions(tls *libc.TLS, pParse uintptr, pTab uintptr, pChanges uintptr, regOld int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:122096:21: */ // If foreign-key support is enabled, iterate through all FKs that // refer to table pTab. If there is an action associated with the FK // for this operation (either update or delete), invoke the associated @@ -115745,7 +115789,7 @@ func Xsqlite3FkActions(tls *libc.TLS, pParse uintptr, pTab uintptr, pChanges uin // Free all memory associated with foreign key definitions attached to // table pTab. Remove the deleted foreign keys from the Schema.fkeyHash // hash table. -func Xsqlite3FkDelete(tls *libc.TLS, db uintptr, pTab uintptr) { /* sqlite3.c:122117:21: */ +func Xsqlite3FkDelete(tls *libc.TLS, db uintptr, pTab uintptr) { /* sqlite3.c:122128:21: */ var pFKey uintptr // Iterator variable var pNext uintptr // Copy of pFKey->pNextFrom @@ -115805,7 +115849,7 @@ func Xsqlite3FkDelete(tls *libc.TLS, db uintptr, pTab uintptr) { /* sqlite3.c:12 // // If pTab is a WITHOUT ROWID table, then it is the PRIMARY KEY index // for that table that is actually opened. -func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTab uintptr, opcode int32) { /* sqlite3.c:122183:21: */ +func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTab uintptr, opcode int32) { /* sqlite3.c:122194:21: */ var v uintptr v = (*Parse)(unsafe.Pointer(pParse)).FpVdbe @@ -115847,7 +115891,7 @@ func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTa // Memory for the buffer containing the column index affinity string // is managed along with the rest of the Index structure. It will be // released when sqlite3DeleteIndex() is called. -func Xsqlite3IndexAffinityStr(tls *libc.TLS, db uintptr, pIdx uintptr) uintptr { /* sqlite3.c:122230:27: */ +func Xsqlite3IndexAffinityStr(tls *libc.TLS, db uintptr, pIdx uintptr) uintptr { /* sqlite3.c:122241:27: */ if !(int32((*Index)(unsafe.Pointer(pIdx)).FzColAff) != 0) { // The first time a column affinity string for a particular index is // required, it is allocated and populated here. It is then stored as @@ -115906,7 +115950,7 @@ func Xsqlite3IndexAffinityStr(tls *libc.TLS, db uintptr, pIdx uintptr) uintptr { // 'C' NUMERIC // 'D' INTEGER // 'E' REAL -func Xsqlite3TableAffinity(tls *libc.TLS, v uintptr, pTab uintptr, iReg int32) { /* sqlite3.c:122289:21: */ +func Xsqlite3TableAffinity(tls *libc.TLS, v uintptr, pTab uintptr, iReg int32) { /* sqlite3.c:122300:21: */ var i int32 var j int32 var zColAff uintptr = (*Table)(unsafe.Pointer(pTab)).FzColAff @@ -115944,7 +115988,7 @@ func Xsqlite3TableAffinity(tls *libc.TLS, v uintptr, pTab uintptr, iReg int32) { // have been opened at any point in the VDBE program. This is used to see if // a statement of the form "INSERT INTO SELECT ..." can // run without using a temporary table for the results of the SELECT. -func readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122328:12: */ +func readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122339:12: */ var v uintptr = Xsqlite3GetVdbe(tls, p) var i int32 var iEnd int32 = Xsqlite3VdbeCurrentAddr(tls, v) @@ -115980,7 +116024,7 @@ func readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) int32 { /* sq // This walker callback will compute the union of colFlags flags for all // referenced columns in a CHECK constraint or generated column expression. -func exprColumnFlagUnion(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:122365:12: */ +func exprColumnFlagUnion(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:122376:12: */ if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN) && (int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) >= 0) { *(*U16)(unsafe.Pointer(pWalker + 36 /* &.eCode */)) |= U16((int32((*Column)(unsafe.Pointer((*Table1)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)))).FaCol + uintptr((*Expr)(unsafe.Pointer(pExpr)).FiColumn)*32)).FcolFlags))) @@ -115993,7 +116037,7 @@ func exprColumnFlagUnion(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { // or VIRTUAL columns have not yet been initialized. This routine goes // back and computes the values for those columns based on the previously // computed normal columns. -func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore int32, pTab uintptr) { /* sqlite3.c:122381:21: */ +func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore int32, pTab uintptr) { /* sqlite3.c:122392:21: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -116099,7 +116143,7 @@ func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore in // // The 2nd register is the one that is returned. That is all the // insert routine needs to know about. -func autoIncBegin(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122499:12: */ +func autoIncBegin(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122510:12: */ var memId int32 = 0 // Register holding maximum rowid if (((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Autoincrement)) != U32(0)) && @@ -116153,7 +116197,7 @@ func autoIncBegin(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr) int32 // This routine generates code that will initialize all of the // register used by the autoincrement tracker. -func Xsqlite3AutoincrementBegin(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122550:21: */ +func Xsqlite3AutoincrementBegin(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122561:21: */ var p uintptr // Information about an AUTOINCREMENT var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // The database connection var pDb uintptr // Database only autoinc table @@ -116193,7 +116237,7 @@ func Xsqlite3AutoincrementBegin(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:12 } } -var iLn1 int32 = 0 /* sqlite3.c:122564:22 */ +var iLn1 int32 = 0 /* sqlite3.c:122575:22 */ var autoInc = [12]VdbeOpList{ /* 0 */ {Fopcode: U8(OP_Null)}, /* 1 */ {Fopcode: U8(OP_Rewind), Fp2: int8(10)}, @@ -116207,7 +116251,7 @@ var autoInc = [12]VdbeOpList{ /* 9 */ {Fopcode: U8(OP_Next), Fp2: int8(2)}, /* 10 */ {Fopcode: U8(OP_Integer)}, /* 11 */ {Fopcode: U8(OP_Close)}, -} /* sqlite3.c:122565:29 */ +} /* sqlite3.c:122576:29 */ // Update the maximum rowid for an autoincrement calculation. // @@ -116215,7 +116259,7 @@ var autoInc = [12]VdbeOpList{ // new rowid that is about to be inserted. If that new rowid is // larger than the maximum rowid in the memId memory cell, then the // memory cell is updated. -func autoIncStep(tls *libc.TLS, pParse uintptr, memId int32, regRowid int32) { /* sqlite3.c:122611:13: */ +func autoIncStep(tls *libc.TLS, pParse uintptr, memId int32, regRowid int32) { /* sqlite3.c:122622:13: */ if memId > 0 { Xsqlite3VdbeAddOp2(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_MemMax, memId, regRowid) } @@ -116226,7 +116270,7 @@ func autoIncStep(tls *libc.TLS, pParse uintptr, memId int32, regRowid int32) { / // Every statement that might do an INSERT into an autoincrement // table (either directly or through triggers) needs to call this // routine just before the "exit" code. -func autoIncrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122624:29: */ +func autoIncrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122635:29: */ var p uintptr var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -116257,16 +116301,16 @@ func autoIncrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122624:29: * } } -var iLn2 int32 = 0 /* sqlite3.c:122631:22 */ +var iLn2 int32 = 0 /* sqlite3.c:122642:22 */ var autoIncEnd = [5]VdbeOpList{ /* 0 */ {Fopcode: U8(OP_NotNull), Fp2: int8(2)}, /* 1 */ {Fopcode: U8(OP_NewRowid)}, /* 2 */ {Fopcode: U8(OP_MakeRecord), Fp2: int8(2)}, /* 3 */ {Fopcode: U8(OP_Insert)}, /* 4 */ {Fopcode: U8(OP_Close)}, -} /* sqlite3.c:122632:29 */ +} /* sqlite3.c:122643:29 */ -func Xsqlite3AutoincrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122661:21: */ +func Xsqlite3AutoincrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122672:21: */ if (*Parse)(unsafe.Pointer(pParse)).FpAinc != 0 { autoIncrementEnd(tls, pParse) } @@ -116367,7 +116411,7 @@ func Xsqlite3AutoincrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:1226 // transfer values form intermediate table into // end loop // D: cleanup -func Xsqlite3Insert(tls *libc.TLS, pParse uintptr, pTabList uintptr, pSelect uintptr, pColumn uintptr, onError int32, pUpsert uintptr) { /* sqlite3.c:122780:21: */ +func Xsqlite3Insert(tls *libc.TLS, pParse uintptr, pTabList uintptr, pSelect uintptr, pColumn uintptr, onError int32, pUpsert uintptr) { /* sqlite3.c:122791:21: */ bp := tls.Alloc(204) defer tls.Free(204) @@ -117409,7 +117453,7 @@ insert_cleanup: // Set bit 0x01 of pWalker->eCode if pWalker->eCode to 0 and if this // expression node references any of the // columns that are being modifed by an UPDATE statement. -func checkConstraintExprNode(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:123520:12: */ +func checkConstraintExprNode(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:123531:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN { if int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) >= 0 { @@ -117436,7 +117480,7 @@ func checkConstraintExprNode(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int3 // The operation of this routine is the same - return true if an only if // the expression uses one or more of columns identified by the second and // third arguments. -func Xsqlite3ExprReferencesUpdatedColumn(tls *libc.TLS, pExpr uintptr, aiChng uintptr, chngRowid int32) int32 { /* sqlite3.c:123549:20: */ +func Xsqlite3ExprReferencesUpdatedColumn(tls *libc.TLS, pExpr uintptr, aiChng uintptr, chngRowid int32) int32 { /* sqlite3.c:123560:20: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -117470,7 +117514,7 @@ type IndexListTerm1 = struct { Fp uintptr Fix int32 _ [4]byte -} /* sqlite3.c:123582:9 */ +} /* sqlite3.c:123593:9 */ // The sqlite3GenerateConstraintChecks() routine usually wants to visit // the indexes of a table in the order provided in the Table->pIndex list. @@ -117481,7 +117525,7 @@ type IndexListTerm1 = struct { // The IndexIterator object is used to walk through all of the indexes // of a table in either Index.pNext order, or in some other order established // by an array of IndexListTerm objects. -type IndexListTerm = IndexListTerm1 /* sqlite3.c:123582:30 */ +type IndexListTerm = IndexListTerm1 /* sqlite3.c:123593:30 */ type IndexIterator1 = struct { FeType int32 Fi int32 @@ -117489,12 +117533,12 @@ type IndexIterator1 = struct { Flx struct{ FpIdx uintptr } _ [8]byte } -} /* sqlite3.c:123583:9 */ +} /* sqlite3.c:123594:9 */ -type IndexIterator = IndexIterator1 /* sqlite3.c:123583:30 */ +type IndexIterator = IndexIterator1 /* sqlite3.c:123594:30 */ // Return the first index on the list -func indexIteratorFirst(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123607:14: */ +func indexIteratorFirst(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123618:14: */ if (*IndexIterator)(unsafe.Pointer(pIter)).FeType != 0 { *(*int32)(unsafe.Pointer(pIx)) = (*IndexListTerm)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer((pIter + 8 /* &.u */ /* &.ax */) + 8 /* &.aIdx */)))).Fix @@ -117507,7 +117551,7 @@ func indexIteratorFirst(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* } // Return the next index from the list. Return NULL when out of indexes -func indexIteratorNext(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123619:14: */ +func indexIteratorNext(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123630:14: */ if (*IndexIterator)(unsafe.Pointer(pIter)).FeType != 0 { var i int32 = libc.PreIncInt32(&(*IndexIterator)(unsafe.Pointer(pIter)).Fi, 1) if i >= *(*int32)(unsafe.Pointer((pIter + 8 /* &.u */ /* &.ax */) /* &.nIdx */)) { @@ -117613,7 +117657,7 @@ func indexIteratorNext(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* s // Or if overrideError==OE_Default, then the pParse->onError parameter // is used. Or if pParse->onError==OE_Default then the onError value // for the constraint is used. -func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintptr, aRegIdx uintptr, iDataCur int32, iIdxCur int32, regNewData int32, regOldData int32, pkChng U8, overrideError U8, ignoreDest int32, pbMayReplace uintptr, aiChng uintptr, pUpsert uintptr) { /* sqlite3.c:123726:21: */ +func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintptr, aRegIdx uintptr, iDataCur int32, iIdxCur int32, regNewData int32, regOldData int32, pkChng U8, overrideError U8, ignoreDest int32, pbMayReplace uintptr, aiChng uintptr, pUpsert uintptr) { /* sqlite3.c:123737:21: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -117940,6 +117984,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt goto __4 goto __6 __6: + } } @@ -118469,7 +118514,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt // number is iCur, and register regData contains the new record for the // PK index. This function adds code to invoke the pre-update hook, // if one is registered. -func codeWithoutRowidPreupdate(tls *libc.TLS, pParse uintptr, pTab uintptr, iCur int32, regData int32) { /* sqlite3.c:124579:13: */ +func codeWithoutRowidPreupdate(tls *libc.TLS, pParse uintptr, pTab uintptr, iCur int32, regData int32) { /* sqlite3.c:124590:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var r int32 = Xsqlite3GetTempReg(tls, pParse) @@ -118486,7 +118531,7 @@ func codeWithoutRowidPreupdate(tls *libc.TLS, pParse uintptr, pTab uintptr, iCur // // The arguments to this routine should be the same as the first six // arguments to sqlite3GenerateConstraintChecks. -func Xsqlite3CompleteInsertion(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, regNewData int32, aRegIdx uintptr, update_flags int32, appendBias int32, useSeekResult int32) { /* sqlite3.c:124607:21: */ +func Xsqlite3CompleteInsertion(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, regNewData int32, aRegIdx uintptr, update_flags int32, appendBias int32, useSeekResult int32) { /* sqlite3.c:124618:21: */ var v uintptr // Prepared statements under construction var pIdx uintptr // An index being inserted or updated var pik_flags U8 // flag values passed to the btree insert @@ -118590,7 +118635,7 @@ __3: // // If pTab is a virtual table, then this routine is a no-op and the // *piDataCur and *piIdxCur values are left uninitialized. -func Xsqlite3OpenTableAndIndices(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, p5 U8, iBase int32, aToOpen uintptr, piDataCur uintptr, piIdxCur uintptr) int32 { /* sqlite3.c:124696:20: */ +func Xsqlite3OpenTableAndIndices(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, p5 U8, iBase int32, aToOpen uintptr, piDataCur uintptr, piIdxCur uintptr) int32 { /* sqlite3.c:124707:20: */ var i int32 var iDb int32 var iDataCur int32 @@ -118667,7 +118712,7 @@ __3: // * The same onError processing (OE_Abort, OE_Ignore, etc) // * The same collating sequence on each column // * The index has the exact same WHERE clause -func xferCompatibleIndex(tls *libc.TLS, pDest uintptr, pSrc uintptr) int32 { /* sqlite3.c:124774:12: */ +func xferCompatibleIndex(tls *libc.TLS, pDest uintptr, pSrc uintptr) int32 { /* sqlite3.c:124785:12: */ var i int32 if (int32((*Index)(unsafe.Pointer(pDest)).FnKeyCol) != int32((*Index)(unsafe.Pointer(pSrc)).FnKeyCol)) || (int32((*Index)(unsafe.Pointer(pDest)).FnColumn) != int32((*Index)(unsafe.Pointer(pSrc)).FnColumn)) { @@ -118725,7 +118770,7 @@ func xferCompatibleIndex(tls *libc.TLS, pDest uintptr, pSrc uintptr) int32 { /* // is no chance that the xfer optimization can be applied. // // This optimization is particularly useful at making VACUUM run faster. -func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uintptr, onError int32, iDbDest int32) int32 { /* sqlite3.c:124835:12: */ +func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uintptr, onError int32, iDbDest int32) int32 { /* sqlite3.c:124846:12: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pEList uintptr // The result set of the SELECT var pSrc uintptr // The table in the FROM clause of SELECT @@ -119105,7 +119150,7 @@ func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uint // the xCallback() function is called. pArg becomes the first // argument to xCallback(). If xCallback=NULL then no callback // is invoked, even for queries. -func Xsqlite3_exec(tls *libc.TLS, db uintptr, zSql uintptr, xCallback Sqlite3_callback, pArg uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:125245:16: */ +func Xsqlite3_exec(tls *libc.TLS, db uintptr, zSql uintptr, xCallback Sqlite3_callback, pArg uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:125256:16: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -119126,7 +119171,7 @@ func Xsqlite3_exec(tls *libc.TLS, db uintptr, zSql uintptr, xCallback Sqlite3_ca if !(!(Xsqlite3SafetyCheckOk(tls, db) != 0)) { goto __1 } - return Xsqlite3MisuseError(tls, 125258) + return Xsqlite3MisuseError(tls, 125269) __1: ; if !(zSql == uintptr(0)) { @@ -119313,7 +119358,7 @@ __26: // This is the function signature used for all extension entry points. It // is also defined in the file "loadext.c". -type Sqlite3_loadext_entry = uintptr /* sqlite3.c:125725:13 */ +type Sqlite3_loadext_entry = uintptr /* sqlite3.c:125736:13 */ // The following macros redefine the API routines so that they are // redirected through the global sqlite3_api structure. @@ -119635,7 +119680,7 @@ var sqlite3Apis = Sqlite3_api_routines{ Fdatabase_file_object: 0, // Version 3.34.0 and later Ftxn_state: 0, -} /* sqlite3.c:126159:35 */ +} /* sqlite3.c:126170:35 */ // True if x is the directory separator character @@ -119649,7 +119694,7 @@ var sqlite3Apis = Sqlite3_api_routines{ // If an error occurs and pzErrMsg is not 0, then fill *pzErrMsg with // error message text. The calling function should free this memory // by calling sqlite3DbFree(db, ). -func sqlite3LoadExtension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126531:12: */ +func sqlite3LoadExtension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126542:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -119790,9 +119835,9 @@ func sqlite3LoadExtension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintpt var azEndings = [1]uintptr{ ts + 14519, /* "dylib" */ -} /* sqlite3.c:126549:21 */ +} /* sqlite3.c:126560:21 */ -func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126672:16: */ +func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126683:16: */ var rc int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) rc = sqlite3LoadExtension(tls, db, zFile, zProc, pzErrMsg) @@ -119803,7 +119848,7 @@ func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uin // Call this routine when the database connection is closing in order // to clean up loaded extensions -func Xsqlite3CloseExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126690:21: */ +func Xsqlite3CloseExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126701:21: */ var i int32 for i = 0; i < (*Sqlite3)(unsafe.Pointer(db)).FnExtension; i++ { @@ -119814,7 +119859,7 @@ func Xsqlite3CloseExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126690:21 // Enable or disable extension loading. Extension loading is disabled by // default so as not to open security holes in older applications. -func Xsqlite3_enable_load_extension(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:126703:16: */ +func Xsqlite3_enable_load_extension(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:126714:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if onoff != 0 { *(*U64)(unsafe.Pointer(db + 48 /* &.flags */)) |= (uint64(SQLITE_LoadExtension | SQLITE_LoadExtFunc)) @@ -119834,15 +119879,15 @@ type sqlite3AutoExtList = struct { FnExt U32 _ [4]byte FaExt uintptr -} /* sqlite3.c:126723:9 */ +} /* sqlite3.c:126734:9 */ // The following object holds the list of automatically loaded // extensions. // // This list is shared across threads. The SQLITE_MUTEX_STATIC_MAIN // mutex must be held while accessing this list. -type Sqlite3AutoExtList = sqlite3AutoExtList /* sqlite3.c:126723:35 */ -var sqlite3Autoext = sqlite3AutoExtList{} /* sqlite3.c:126727:3 */ +type Sqlite3AutoExtList = sqlite3AutoExtList /* sqlite3.c:126734:35 */ +var sqlite3Autoext = sqlite3AutoExtList{} /* sqlite3.c:126738:3 */ // The "wsdAutoext" macro will resolve to the autoextension // state vector. If writable static data is unsupported on the target, @@ -119852,7 +119897,7 @@ var sqlite3Autoext = sqlite3AutoExtList{} /* sqlite3.c:126727:3 */ // Register a statically linked extension that is automatically // loaded by every new database connection. -func Xsqlite3_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126749:16: */ +func Xsqlite3_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126760:16: */ var rc int32 = SQLITE_OK rc = Xsqlite3_initialize(tls) if rc != 0 { @@ -119893,7 +119938,7 @@ func Xsqlite3_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c: // // Return 1 if xInit was found on the list and removed. Return 0 if xInit // was not on the list. -func Xsqlite3_cancel_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126796:16: */ +func Xsqlite3_cancel_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126807:16: */ var mutex uintptr = Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN) var i int32 var n int32 = 0 @@ -119912,7 +119957,7 @@ func Xsqlite3_cancel_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sql } // Reset the automatic extension loading mechanism. -func Xsqlite3_reset_auto_extension(tls *libc.TLS) { /* sqlite3.c:126821:17: */ +func Xsqlite3_reset_auto_extension(tls *libc.TLS) { /* sqlite3.c:126832:17: */ if Xsqlite3_initialize(tls) == SQLITE_OK { var mutex uintptr = Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN) @@ -119927,7 +119972,7 @@ func Xsqlite3_reset_auto_extension(tls *libc.TLS) { /* sqlite3.c:126821:17: */ // Load all automatic extensions. // // If anything goes wrong, set an error in the database connection. -func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126843:21: */ +func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126854:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -120056,7 +120101,7 @@ var pragCName = [51]uintptr{ /* 49 */ ts + 14779, /* "cache_size" */ // Used by: default_cache_size // module_list pragma_list reuses 9 /* 50 */ ts + 14790, /* "timeout" */ // Used by: busy_timeout -} /* sqlite3.c:126983:19 */ +} /* sqlite3.c:126994:19 */ // Definitions of all built-in pragmas type PragmaName1 = struct { @@ -120067,10 +120112,10 @@ type PragmaName1 = struct { FnPragCName U8 _ [4]byte FiArg U64 -} /* sqlite3.c:127042:9 */ +} /* sqlite3.c:127053:9 */ // Definitions of all built-in pragmas -type PragmaName = PragmaName1 /* sqlite3.c:127049:3 */ +type PragmaName = PragmaName1 /* sqlite3.c:127060:3 */ var aPragmaName = [66]PragmaName{ { /* zName: */ FzName: ts + 14798, /* "analysis_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_ANALYSIS_LIMIT), @@ -120306,7 +120351,7 @@ var aPragmaName = [66]PragmaName{ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: (uint64(SQLITE_WriteSchema | SQLITE_NoSchemaError))}, -} /* sqlite3.c:127050:25 */ +} /* sqlite3.c:127061:25 */ // Number of pragmas: 67 on by default, 77 total. @@ -120322,7 +120367,7 @@ var aPragmaName = [66]PragmaName{ // should be passed into sqlite3BtreeSetSafetyLevel(). The is done // to support legacy SQL code. The safety level used to be boolean // and older scripts may have used numbers 0 for OFF and 1 for ON. -func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* sqlite3.c:127579:11: */ +func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* sqlite3.c:127590:11: */ // on no off false yes true extra full var i int32 var n int32 @@ -120339,13 +120384,13 @@ func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* s return dflt } -var zText = *(*[25]int8)(unsafe.Pointer(ts + 15770 /* "onoffalseyestrue..." */)) /* sqlite3.c:127581:21 */ -var iOffset = [8]U8{U8(0), U8(1), U8(2), U8(4), U8(9), U8(12), U8(15), U8(20)} /* sqlite3.c:127582:19 */ -var iLength = [8]U8{U8(2), U8(2), U8(3), U8(5), U8(3), U8(4), U8(5), U8(4)} /* sqlite3.c:127583:19 */ -var iValue = [8]U8{U8(1), U8(0), U8(0), U8(0), U8(1), U8(1), U8(3), U8(2)} /* sqlite3.c:127584:19 */ +var zText = *(*[25]int8)(unsafe.Pointer(ts + 15770 /* "onoffalseyestrue..." */)) /* sqlite3.c:127592:21 */ +var iOffset = [8]U8{U8(0), U8(1), U8(2), U8(4), U8(9), U8(12), U8(15), U8(20)} /* sqlite3.c:127593:19 */ +var iLength = [8]U8{U8(2), U8(2), U8(3), U8(5), U8(3), U8(4), U8(5), U8(4)} /* sqlite3.c:127594:19 */ +var iValue = [8]U8{U8(1), U8(0), U8(0), U8(0), U8(1), U8(1), U8(3), U8(2)} /* sqlite3.c:127595:19 */ // Interpret the given string as a boolean value. -func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:127604:19: */ +func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:127615:19: */ return (U8(libc.Bool32(int32(getSafetyLevel(tls, z, 1, dflt)) != 0))) } @@ -120354,7 +120399,7 @@ func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:127 // the rest of the file if PRAGMAs are omitted from the build. // Interpret the given string as a locking mode value. -func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127617:12: */ +func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127628:12: */ if z != 0 { if 0 == Xsqlite3StrICmp(tls, z, ts+15795 /* "exclusive" */) { return PAGER_LOCKINGMODE_EXCLUSIVE @@ -120370,7 +120415,7 @@ func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127617:12: */ // // The following strings, "none", "full" and "incremental" are // acceptable, as are their numeric equivalents: 0, 1 and 2 respectively. -func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127632:12: */ +func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127643:12: */ var i int32 if 0 == Xsqlite3StrICmp(tls, z, ts+15812 /* "none" */) { return BTREE_AUTOVACUUM_NONE @@ -120393,7 +120438,7 @@ func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127632:12: */ // Interpret the given string as a temp db location. Return 1 for file // backed temporary databases, 2 for the Red-Black tree in memory database // and 0 to use the compile-time default. -func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127648:12: */ +func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127659:12: */ if (int32(*(*int8)(unsafe.Pointer(z))) >= '0') && (int32(*(*int8)(unsafe.Pointer(z))) <= '2') { return (int32(*(*int8)(unsafe.Pointer(z))) - '0') } else if Xsqlite3StrICmp(tls, z, ts+14736 /* "file" */) == 0 { @@ -120408,7 +120453,7 @@ func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127648:12: */ // Invalidate temp storage, either when the temp storage is changed // from default, or when 'file' and the temp_store_directory has changed -func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:127666:12: */ +func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:127677:12: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*32)).FpBt != uintptr(0) { if !(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0) || @@ -120427,7 +120472,7 @@ func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:1 // If the TEMP database is open, close it and mark the database schema // as needing reloading. This must be done when using the SQLITE_TEMP_STORE // or DEFAULT_TEMP_STORE pragmas. -func changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) int32 { /* sqlite3.c:127690:12: */ +func changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) int32 { /* sqlite3.c:127701:12: */ var ts int32 = getTempStore(tls, zStorageType) var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if int32((*Sqlite3)(unsafe.Pointer(db)).Ftemp_store) == ts { @@ -120441,7 +120486,7 @@ func changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) int3 } // Set result column names for a pragma. -func setPragmaResultColumnNames(tls *libc.TLS, v uintptr, pPragma uintptr) { /* sqlite3.c:127705:13: */ +func setPragmaResultColumnNames(tls *libc.TLS, v uintptr, pPragma uintptr) { /* sqlite3.c:127716:13: */ var n U8 = (*PragmaName)(unsafe.Pointer(pPragma)).FnPragCName Xsqlite3VdbeSetNumCols(tls, v, func() int32 { if int32(n) == 0 { @@ -120475,7 +120520,7 @@ func setPragmaResultColumnNames(tls *libc.TLS, v uintptr, pPragma uintptr) { /* } // Generate code to return a single integer value. -func returnSingleInt(tls *libc.TLS, v uintptr, value I64) { /* sqlite3.c:127724:13: */ +func returnSingleInt(tls *libc.TLS, v uintptr, value I64) { /* sqlite3.c:127735:13: */ bp := tls.Alloc(8) defer tls.Free(8) *(*I64)(unsafe.Pointer(bp)) = value @@ -120485,7 +120530,7 @@ func returnSingleInt(tls *libc.TLS, v uintptr, value I64) { /* sqlite3.c:127724: } // Generate code to return a single text value. -func returnSingleText(tls *libc.TLS, v uintptr, zValue uintptr) { /* sqlite3.c:127732:13: */ +func returnSingleText(tls *libc.TLS, v uintptr, zValue uintptr) { /* sqlite3.c:127743:13: */ if zValue != 0 { Xsqlite3VdbeLoadString(tls, v, 1, zValue) Xsqlite3VdbeAddOp2(tls, v, OP_ResultRow, 1, 1) @@ -120494,7 +120539,7 @@ func returnSingleText(tls *libc.TLS, v uintptr, zValue uintptr) { /* sqlite3.c:1 // Set the safety_level and pager flags for pager iDb. Or if iDb<0 // set these values for all pagers. -func setAllPagerFlags(tls *libc.TLS, db uintptr) { /* sqlite3.c:127748:13: */ +func setAllPagerFlags(tls *libc.TLS, db uintptr) { /* sqlite3.c:127759:13: */ if (*Sqlite3)(unsafe.Pointer(db)).FautoCommit != 0 { var pDb uintptr = (*Sqlite3)(unsafe.Pointer(db)).FaDb var n int32 = (*Sqlite3)(unsafe.Pointer(db)).FnDb @@ -120510,7 +120555,7 @@ func setAllPagerFlags(tls *libc.TLS, db uintptr) { /* sqlite3.c:127748:13: */ } // Return a human-readable name for a constraint resolution action. -func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:127776:19: */ +func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:127787:19: */ var zName uintptr switch int32(action) { case OE_SetNull: @@ -120535,7 +120580,7 @@ func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:127776:19: */ // Parameter eMode must be one of the PAGER_JOURNALMODE_XXX constants // defined in pager.h. This function returns the associated lowercase // journal-mode name. -func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c:127796:27: */ +func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c:127807:27: */ if eMode == (int32(uint64(unsafe.Sizeof(azModeName)) / uint64(unsafe.Sizeof(uintptr(0))))) { return uintptr(0) @@ -120545,10 +120590,10 @@ func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c: var azModeName = [6]uintptr{ ts + 15951 /* "delete" */, ts + 15958 /* "persist" */, ts + 15966 /* "off" */, ts + 15970 /* "truncate" */, ts + 15834 /* "memory" */, ts + 15979, /* "wal" */ -} /* sqlite3.c:127797:15 */ +} /* sqlite3.c:127808:15 */ // Locate a pragma in the aPragmaName[] array. -func pragmaLocate(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:127818:25: */ +func pragmaLocate(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:127829:25: */ var upr int32 var lwr int32 var mid int32 = 0 @@ -120575,7 +120620,7 @@ func pragmaLocate(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:127818:25 // Create zero or more entries in the output for the SQL functions // defined by FuncDef p. -func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, showInternFuncs int32) { /* sqlite3.c:127839:13: */ +func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, showInternFuncs int32) { /* sqlite3.c:127850:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -120604,15 +120649,15 @@ func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, sh } } -var mask U32 = (U32((((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS) | SQLITE_FUNC_INTERNAL)) /* sqlite3.c:127847:22 */ -var azEnc = [4]uintptr{uintptr(0), ts + 15996 /* "utf8" */, ts + 16001 /* "utf16le" */, ts + 16009 /* "utf16be" */} /* sqlite3.c:127854:23 */ +var mask U32 = (U32((((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS) | SQLITE_FUNC_INTERNAL)) /* sqlite3.c:127858:22 */ +var azEnc = [4]uintptr{uintptr(0), ts + 15996 /* "utf8" */, ts + 16001 /* "utf16le" */, ts + 16009 /* "utf16be" */} /* sqlite3.c:127865:23 */ // Helper subroutine for PRAGMA integrity_check: // // Generate code to output a single-column result row with a value of the // string held in register 3. Decrement the result count in register 1 // and halt if the maximum number of result rows have been issued. -func integrityCheckResultRow(tls *libc.TLS, v uintptr) int32 { /* sqlite3.c:127891:12: */ +func integrityCheckResultRow(tls *libc.TLS, v uintptr) int32 { /* sqlite3.c:127902:12: */ var addr int32 Xsqlite3VdbeAddOp2(tls, v, OP_ResultRow, 3, 1) addr = Xsqlite3VdbeAddOp3(tls, v, OP_IfPos, 1, (Xsqlite3VdbeCurrentAddr(tls, v) + 2), 1) @@ -120634,7 +120679,7 @@ func integrityCheckResultRow(tls *libc.TLS, v uintptr) int32 { /* sqlite3.c:1278 // If the left side is "database.id" then pId1 is the database name // and pId2 is the id. If the left side is just "id" then pId1 is the // id and pId2 is any empty string. -func Xsqlite3Pragma(tls *libc.TLS, pParse uintptr, pId1 uintptr, pId2 uintptr, pValue uintptr, minusFlag int32) { /* sqlite3.c:127915:21: */ +func Xsqlite3Pragma(tls *libc.TLS, pParse uintptr, pId1 uintptr, pId2 uintptr, pValue uintptr, minusFlag int32) { /* sqlite3.c:127926:21: */ bp := tls.Alloc(536) defer tls.Free(536) @@ -123841,9 +123886,9 @@ type EncName = struct { FzName uintptr Fenc U8 _ [7]byte -} /* sqlite3.c:129364:18 */ +} /* sqlite3.c:129375:18 */ -var iLn3 int32 = 0 /* sqlite3.c:128040:22 */ +var iLn3 int32 = 0 /* sqlite3.c:128051:22 */ var getCacheSize = [9]VdbeOpList{ {Fopcode: U8(OP_Transaction)}, // 0 {Fopcode: U8(OP_ReadCookie), Fp2: int8(1), Fp3: int8(BTREE_DEFAULT_CACHE_SIZE)}, // 1 @@ -123854,16 +123899,16 @@ var getCacheSize = [9]VdbeOpList{ {Fopcode: U8(OP_Integer), Fp2: int8(1)}, // 6 {Fopcode: U8(OP_Noop)}, {Fopcode: U8(OP_ResultRow), Fp1: int8(1), Fp2: int8(1)}, -} /* sqlite3.c:128041:29 */ -var iLn4 int32 = 0 /* sqlite3.c:128309:26 */ +} /* sqlite3.c:128052:29 */ +var iLn4 int32 = 0 /* sqlite3.c:128320:26 */ var setMeta6 = [5]VdbeOpList{ {Fopcode: U8(OP_Transaction), Fp2: int8(1)}, // 0 {Fopcode: U8(OP_ReadCookie), Fp2: int8(1), Fp3: int8(BTREE_LARGEST_ROOT_PAGE)}, {Fopcode: U8(OP_If), Fp1: int8(1)}, // 2 {Fopcode: U8(OP_Halt), Fp2: int8(OE_Abort)}, // 3 {Fopcode: U8(OP_SetCookie), Fp2: int8(BTREE_INCR_VACUUM)}, // 4 -} /* sqlite3.c:128310:33 */ -var iLn5 int32 = 0 /* sqlite3.c:129314:24 */ +} /* sqlite3.c:128321:33 */ +var iLn5 int32 = 0 /* sqlite3.c:129325:24 */ var endCode = [7]VdbeOpList{ {Fopcode: U8(OP_AddImm), Fp1: int8(1)}, // 0 {Fopcode: U8(OP_IfNotZero), Fp1: int8(1), Fp2: int8(4)}, // 1 @@ -123872,7 +123917,7 @@ var endCode = [7]VdbeOpList{ {Fopcode: U8(OP_Halt)}, // 4 {Fopcode: U8(OP_String8), Fp2: int8(3)}, // 5 {Fopcode: U8(OP_Goto), Fp2: int8(3)}, // 6 -} /* sqlite3.c:129315:31 */ +} /* sqlite3.c:129326:31 */ var encnames1 = [9]EncName{ {FzName: ts + 16404 /* "UTF8" */, Fenc: U8(SQLITE_UTF8)}, {FzName: ts + 16409 /* "UTF-8" */, Fenc: U8(SQLITE_UTF8)}, // Must be element [1] @@ -123883,16 +123928,16 @@ var encnames1 = [9]EncName{ {FzName: ts + 16449 /* "UTF-16" */}, // SQLITE_UTF16NATIVE {FzName: ts + 16456 /* "UTF16" */}, // SQLITE_UTF16NATIVE {}, -} /* sqlite3.c:129367:7 */ +} /* sqlite3.c:129378:7 */ var setCookie = [2]VdbeOpList{ {Fopcode: U8(OP_Transaction), Fp2: int8(1)}, // 0 {Fopcode: U8(OP_SetCookie)}, // 1 -} /* sqlite3.c:129447:31 */ +} /* sqlite3.c:129458:31 */ var readCookie = [3]VdbeOpList{ {Fopcode: U8(OP_Transaction)}, // 0 {Fopcode: U8(OP_ReadCookie), Fp2: int8(1)}, // 1 {Fopcode: U8(OP_ResultRow), Fp1: int8(1), Fp2: int8(1)}, -} /* sqlite3.c:129462:31 */ +} /* sqlite3.c:129473:31 */ // **************************************************************************** // // Implementation of an eponymous virtual table that runs a pragma. @@ -123904,24 +123949,24 @@ type PragmaVtab1 = struct { FnHidden U8 FiHidden U8 _ [6]byte -} /* sqlite3.c:129822:9 */ +} /* sqlite3.c:129833:9 */ // **************************************************************************** // // Implementation of an eponymous virtual table that runs a pragma. // -type PragmaVtab = PragmaVtab1 /* sqlite3.c:129822:27 */ +type PragmaVtab = PragmaVtab1 /* sqlite3.c:129833:27 */ type PragmaVtabCursor1 = struct { Fbase Sqlite3_vtab_cursor FpPragma uintptr FiRowid Sqlite_int64 FazArg [2]uintptr -} /* sqlite3.c:129823:9 */ +} /* sqlite3.c:129834:9 */ -type PragmaVtabCursor = PragmaVtabCursor1 /* sqlite3.c:129823:33 */ +type PragmaVtabCursor = PragmaVtabCursor1 /* sqlite3.c:129834:33 */ // Pragma virtual table module xConnect method. -func pragmaVtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:129841:12: */ +func pragmaVtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:129852:12: */ bp := tls.Alloc(264) defer tls.Free(264) @@ -123995,7 +124040,7 @@ __3: } // Pragma virtual table module xDisconnect method. -func pragmaVtabDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:129903:12: */ +func pragmaVtabDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:129914:12: */ var pTab uintptr = pVtab Xsqlite3_free(tls, pTab) return SQLITE_OK @@ -124007,7 +124052,7 @@ func pragmaVtabDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:129 // query planner to give == constraints on as many hidden parameters as // possible, and especially on the first hidden parameter. So return a // high cost if hidden parameters are unconstrained. -func pragmaVtabBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:129916:12: */ +func pragmaVtabBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:129927:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -124072,7 +124117,7 @@ __3: } // Create a new cursor for the pragma virtual table -func pragmaVtabOpen(tls *libc.TLS, pVtab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:129953:12: */ +func pragmaVtabOpen(tls *libc.TLS, pVtab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:129964:12: */ var pCsr uintptr pCsr = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(PragmaVtabCursor{}))) if pCsr == uintptr(0) { @@ -124085,7 +124130,7 @@ func pragmaVtabOpen(tls *libc.TLS, pVtab uintptr, ppCursor uintptr) int32 { /* s } // Clear all content from pragma virtual table cursor. -func pragmaVtabCursorClear(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:129964:13: */ +func pragmaVtabCursorClear(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:129975:13: */ var i int32 Xsqlite3_finalize(tls, (*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FpPragma) (*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FpPragma = uintptr(0) @@ -124096,7 +124141,7 @@ func pragmaVtabCursorClear(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:129964:13 } // Close a pragma virtual table cursor -func pragmaVtabClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:129975:12: */ +func pragmaVtabClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:129986:12: */ var pCsr uintptr = cur pragmaVtabCursorClear(tls, pCsr) Xsqlite3_free(tls, pCsr) @@ -124104,7 +124149,7 @@ func pragmaVtabClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:129975:12: } // Advance the pragma virtual table cursor to the next row -func pragmaVtabNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:129983:12: */ +func pragmaVtabNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:129994:12: */ var pCsr uintptr = pVtabCursor var rc int32 = SQLITE_OK @@ -124120,7 +124165,7 @@ func pragmaVtabNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:129 } // Pragma virtual table module xFilter method. -func pragmaVtabFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:130001:12: */ +func pragmaVtabFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:130012:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -124188,14 +124233,14 @@ __3: } // Pragma virtual table module xEof method. -func pragmaVtabEof(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:130051:12: */ +func pragmaVtabEof(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:130062:12: */ var pCsr uintptr = pVtabCursor return (libc.Bool32((*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FpPragma == uintptr(0))) } // The xColumn method simply returns the corresponding column from // the PRAGMA. -func pragmaVtabColumn(tls *libc.TLS, pVtabCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:130059:12: */ +func pragmaVtabColumn(tls *libc.TLS, pVtabCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:130070:12: */ var pCsr uintptr = pVtabCursor var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pVtabCursor)).FpVtab if i < int32((*PragmaVtab)(unsafe.Pointer(pTab)).FiHidden) { @@ -124207,7 +124252,7 @@ func pragmaVtabColumn(tls *libc.TLS, pVtabCursor uintptr, ctx uintptr, i int32) } // Pragma virtual table module xRowid method. -func pragmaVtabRowid(tls *libc.TLS, pVtabCursor uintptr, p uintptr) int32 { /* sqlite3.c:130077:12: */ +func pragmaVtabRowid(tls *libc.TLS, pVtabCursor uintptr, p uintptr) int32 { /* sqlite3.c:130088:12: */ var pCsr uintptr = pVtabCursor *(*Sqlite_int64)(unsafe.Pointer(p)) = (*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FiRowid return SQLITE_OK @@ -124225,12 +124270,12 @@ var pragmaVtabModule = Sqlite3_module{ // xCreate - create a table FxEof: 0, // xEof FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:130084:29 */ +} /* sqlite3.c:130095:29 */ // Check to see if zTabName is really the name of a pragma. If it is, // then register an eponymous virtual table for that pragma and return // a pointer to the Module object for the new virtual table. -func Xsqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) uintptr { /* sqlite3.c:130116:23: */ +func Xsqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) uintptr { /* sqlite3.c:130127:23: */ var pName uintptr pName = pragmaLocate(tls, (zName + uintptr(7))) @@ -124263,7 +124308,7 @@ func Xsqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) uintpt // Fill the InitData structure with an error message that indicates // that the database is corrupt. -func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) { /* sqlite3.c:130153:13: */ +func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) { /* sqlite3.c:130164:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -124284,7 +124329,7 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) zExtra)) (*InitData)(unsafe.Pointer(pData)).Frc = SQLITE_ERROR } else if ((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_WriteSchema)) != 0 { - (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130171) + (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130182) } else { var z uintptr var zObj uintptr @@ -124298,14 +124343,14 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) z = Xsqlite3MPrintf(tls, db, ts+16611 /* "%z - %s" */, libc.VaList(bp+40, z, zExtra)) } *(*uintptr)(unsafe.Pointer((*InitData)(unsafe.Pointer(pData)).FpzErrMsg)) = z - (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130178) + (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130189) } } // Check to see if any sibling index (another index on the same table) // of pIndex has the same root page number, and if it does, return true. // This would indicate a corrupt schema. -func Xsqlite3IndexHasDuplicateRootPage(tls *libc.TLS, pIndex uintptr) int32 { /* sqlite3.c:130187:20: */ +func Xsqlite3IndexHasDuplicateRootPage(tls *libc.TLS, pIndex uintptr) int32 { /* sqlite3.c:130198:20: */ var p uintptr for p = (*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIndex)).FpTable)).FpIndex; p != 0; p = (*Index)(unsafe.Pointer(p)).FpNext { if ((*Index)(unsafe.Pointer(p)).Ftnum == (*Index)(unsafe.Pointer(pIndex)).Ftnum) && (p != pIndex) { @@ -124327,7 +124372,7 @@ func Xsqlite3IndexHasDuplicateRootPage(tls *libc.TLS, pIndex uintptr) int32 { /* // argv[3] = root page number for table or index. 0 for trigger or view. // argv[4] = SQL text for the CREATE statement. // -func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:130221:20: */ +func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:130232:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -124428,7 +124473,7 @@ func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr // database. iDb==1 should never be used. iDb>=2 is used for // auxiliary databases. Return one of the SQLITE_ error codes to // indicate success or failure. -func Xsqlite3InitOne(tls *libc.TLS, db uintptr, iDb int32, pzErrMsg uintptr, mFlags U32) int32 { /* sqlite3.c:130323:20: */ +func Xsqlite3InitOne(tls *libc.TLS, db uintptr, iDb int32, pzErrMsg uintptr, mFlags U32) int32 { /* sqlite3.c:130334:20: */ bp := tls.Alloc(124) defer tls.Free(124) @@ -124724,7 +124769,7 @@ __24: // // After a database is initialized, the DB_SchemaLoaded bit is set // bit is set in the flags field of the Db structure. -func Xsqlite3Init(tls *libc.TLS, db uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:130558:20: */ +func Xsqlite3Init(tls *libc.TLS, db uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:130569:20: */ var i int32 var rc int32 var commit_internal int32 = libc.BoolInt32(!(((*Sqlite3)(unsafe.Pointer(db)).FmDbFlags & U32(DBFLAG_SchemaChange)) != 0)) @@ -124756,7 +124801,7 @@ func Xsqlite3Init(tls *libc.TLS, db uintptr, pzErrMsg uintptr) int32 { /* sqlite // This routine is a no-op if the database schema is already initialized. // Otherwise, the schema is loaded. An error code is returned. -func Xsqlite3ReadSchema(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:130590:20: */ +func Xsqlite3ReadSchema(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:130601:20: */ var rc int32 = SQLITE_OK var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -124775,7 +124820,7 @@ func Xsqlite3ReadSchema(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:1305 // Check schema cookies in all databases. If any cookie is out // of date set pParse->rc to SQLITE_SCHEMA. If all schema cookies // make no changes to pParse->rc. -func schemaIsValid(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130612:13: */ +func schemaIsValid(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130623:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -124827,7 +124872,7 @@ func schemaIsValid(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130612:13: */ // // If the same database is attached more than once, the first // attached database is returned. -func Xsqlite3SchemaToIndex(tls *libc.TLS, db uintptr, pSchema uintptr) int32 { /* sqlite3.c:130661:20: */ +func Xsqlite3SchemaToIndex(tls *libc.TLS, db uintptr, pSchema uintptr) int32 { /* sqlite3.c:130672:20: */ var i int32 = -32768 // If pSchema is NULL, then return -32768. This happens when code in @@ -124854,7 +124899,7 @@ func Xsqlite3SchemaToIndex(tls *libc.TLS, db uintptr, pSchema uintptr) int32 { / } // Free all memory allocations in the pParse object -func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130691:21: */ +func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130702:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb for (*Parse)(unsafe.Pointer(pParse)).FpCleanup != 0 { var pCleanup uintptr = (*Parse)(unsafe.Pointer(pParse)).FpCleanup @@ -124905,7 +124950,7 @@ func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130691:21 // return value thereafter. Something like this: // // pObj = sqlite3ParserAddCleanup(pParse, destructor, pObj); -func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, pPtr uintptr) uintptr { /* sqlite3.c:130739:21: */ +func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, pPtr uintptr) uintptr { /* sqlite3.c:130750:21: */ var pCleanup uintptr = Xsqlite3DbMallocRaw(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, uint64(unsafe.Sizeof(ParseCleanup{}))) if pCleanup != 0 { (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpNext = (*Parse)(unsafe.Pointer(pParse)).FpCleanup @@ -124920,7 +124965,7 @@ func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, p } // Compile the UTF-8 encoded SQL statement zSql into a statement handle. -func sqlite3Prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pReprepare uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130763:12: */ +func sqlite3Prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pReprepare uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130774:12: */ bp := tls.Alloc(432) defer tls.Free(432) @@ -125120,13 +125165,13 @@ end_prepare: return rc } -func sqlite3LockAndPrepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pOld uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130903:12: */ +func sqlite3LockAndPrepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pOld uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130914:12: */ var rc int32 var cnt int32 = 0 *(*uintptr)(unsafe.Pointer(ppStmt)) = uintptr(0) if !(Xsqlite3SafetyCheckOk(tls, db) != 0) || (zSql == uintptr(0)) { - return Xsqlite3MisuseError(tls, 130920) + return Xsqlite3MisuseError(tls, 130931) } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) Xsqlite3BtreeEnterAll(tls, db) @@ -125152,7 +125197,7 @@ func sqlite3LockAndPrepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32 // if the statement cannot be recompiled because another connection has // locked the sqlite3_schema table, return SQLITE_LOCKED. If any other error // occurs, return SQLITE_SCHEMA. -func Xsqlite3Reprepare(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:130949:20: */ +func Xsqlite3Reprepare(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:130960:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -125191,14 +125236,14 @@ func Xsqlite3Reprepare(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:130949:20: // sqlite3_step(). In the new version, the original SQL text is retained // and the statement is automatically recompiled if an schema change // occurs. -func Xsqlite3_prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130988:16: */ +func Xsqlite3_prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130999:16: */ var rc int32 rc = sqlite3LockAndPrepare(tls, db, zSql, nBytes, uint32(0), uintptr(0), ppStmt, pzTail) // VERIFY: F13021 return rc } -func Xsqlite3_prepare_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131000:16: */ +func Xsqlite3_prepare_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131011:16: */ var rc int32 // EVIDENCE-OF: R-37923-12173 The sqlite3_prepare_v2() interface works // exactly the same as sqlite3_prepare_v3() with a zero prepFlags @@ -125211,7 +125256,7 @@ func Xsqlite3_prepare_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, return rc } -func Xsqlite3_prepare_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131018:16: */ +func Xsqlite3_prepare_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131029:16: */ var rc int32 // EVIDENCE-OF: R-56861-42673 sqlite3_prepare_v3() differs from // sqlite3_prepare_v2() only in having the extra prepFlags parameter, @@ -125228,7 +125273,7 @@ func Xsqlite3_prepare_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, } // Compile the UTF-16 encoded SQL statement zSql into a statement handle. -func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131046:12: */ +func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131057:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -125241,7 +125286,7 @@ func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, pre *(*uintptr)(unsafe.Pointer(ppStmt)) = uintptr(0) if !(Xsqlite3SafetyCheckOk(tls, db) != 0) || (zSql == uintptr(0)) { - return Xsqlite3MisuseError(tls, 131067) + return Xsqlite3MisuseError(tls, 131078) } if nBytes >= 0 { var sz int32 @@ -125276,21 +125321,21 @@ func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, pre // sqlite3_step(). In the new version, the original SQL text is retained // and the statement is automatically recompiled if an schema change // occurs. -func Xsqlite3_prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131104:16: */ +func Xsqlite3_prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131115:16: */ var rc int32 rc = sqlite3Prepare16(tls, db, zSql, nBytes, uint32(0), ppStmt, pzTail) // VERIFY: F13021 return rc } -func Xsqlite3_prepare16_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131116:16: */ +func Xsqlite3_prepare16_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131127:16: */ var rc int32 rc = sqlite3Prepare16(tls, db, zSql, nBytes, uint32(SQLITE_PREPARE_SAVESQL), ppStmt, pzTail) // VERIFY: F13021 return rc } -func Xsqlite3_prepare16_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131128:16: */ +func Xsqlite3_prepare16_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131139:16: */ var rc int32 rc = sqlite3Prepare16(tls, db, zSql, nBytes, (uint32(SQLITE_PREPARE_SAVESQL) | (prepFlags & uint32(SQLITE_PREPARE_MASK))), @@ -125324,7 +125369,7 @@ type DistinctCtx1 = struct { _ [2]byte FtabTnct int32 FaddrTnct int32 -} /* sqlite3.c:131169:9 */ +} /* sqlite3.c:131180:9 */ //************* End of prepare.c ******************************************** //************* Begin file select.c ***************************************** @@ -125345,7 +125390,7 @@ type DistinctCtx1 = struct { // An instance of the following object is used to record information about // how to process the DISTINCT keyword, to simplify passing that information // into the selectInnerLoop() routine. -type DistinctCtx = DistinctCtx1 /* sqlite3.c:131169:28 */ +type DistinctCtx = DistinctCtx1 /* sqlite3.c:131180:28 */ // An instance of the following object is used to record information about // the ORDER BY (or GROUP BY) clause of query is being coded. @@ -125375,7 +125420,7 @@ type SortCtx1 = struct { FsortFlags U8 _ [3]byte FpDeferredRowLoad uintptr -} /* sqlite3.c:131195:9 */ +} /* sqlite3.c:131206:9 */ // An instance of the following object is used to record information about // the ORDER BY (or GROUP BY) clause of query is being coded. @@ -125393,19 +125438,19 @@ type SortCtx1 = struct { // When the sorter-reference optimization is used, there is one entry in the // aDefer[] array for each database table that may be read as values are // extracted from the sorter. -type SortCtx = SortCtx1 /* sqlite3.c:131195:24 */ +type SortCtx = SortCtx1 /* sqlite3.c:131206:24 */ type RowLoadInfo1 = struct { FregResult int32 FecelFlags U8 _ [3]byte -} /* sqlite3.c:131195:9 */ +} /* sqlite3.c:131206:9 */ // Delete all the content of a Select structure. Deallocate the structure // itself depending on the value of bFree // // If bFree==1, call sqlite3DbFree() on the p object. // If bFree==0, Leave the first Select object unfreed -func clearSelect(tls *libc.TLS, db uintptr, p uintptr, bFree int32) { /* sqlite3.c:131225:13: */ +func clearSelect(tls *libc.TLS, db uintptr, p uintptr, bFree int32) { /* sqlite3.c:131236:13: */ for p != 0 { var pPrior uintptr = (*Select)(unsafe.Pointer(p)).FpPrior Xsqlite3ExprListDelete(tls, db, (*Select)(unsafe.Pointer(p)).FpEList) @@ -125434,7 +125479,7 @@ func clearSelect(tls *libc.TLS, db uintptr, p uintptr, bFree int32) { /* sqlite3 } // Initialize a SelectDest structure. -func Xsqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int32) { /* sqlite3.c:131254:21: */ +func Xsqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int32) { /* sqlite3.c:131265:21: */ (*SelectDest)(unsafe.Pointer(pDest)).FeDest = U8(eDest) (*SelectDest)(unsafe.Pointer(pDest)).FiSDParm = iParm (*SelectDest)(unsafe.Pointer(pDest)).FiSDParm2 = 0 @@ -125445,7 +125490,7 @@ func Xsqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int // Allocate a new Select structure and return a pointer to that // structure. -func Xsqlite3SelectNew(tls *libc.TLS, pParse uintptr, pEList uintptr, pSrc uintptr, pWhere uintptr, pGroupBy uintptr, pHaving uintptr, pOrderBy uintptr, selFlags U32, pLimit uintptr) uintptr { /* sqlite3.c:131268:23: */ +func Xsqlite3SelectNew(tls *libc.TLS, pParse uintptr, pEList uintptr, pSrc uintptr, pWhere uintptr, pGroupBy uintptr, pHaving uintptr, pOrderBy uintptr, selFlags U32, pLimit uintptr) uintptr { /* sqlite3.c:131279:23: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -125495,14 +125540,14 @@ func Xsqlite3SelectNew(tls *libc.TLS, pParse uintptr, pEList uintptr, pSrc uintp } // Delete the given Select structure and all of its substructures. -func Xsqlite3SelectDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:131326:21: */ +func Xsqlite3SelectDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:131337:21: */ if p != 0 { clearSelect(tls, db, p, 1) } } // Return a pointer to the right-most SELECT statement in a compound. -func findRightmost(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:131333:15: */ +func findRightmost(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:131344:15: */ for (*Select)(unsafe.Pointer(p)).FpNext != 0 { p = (*Select)(unsafe.Pointer(p)).FpNext } @@ -125524,7 +125569,7 @@ func findRightmost(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:131333:15: * // // If an illegal or unsupported join type is seen, then still return // a join type, but put an error in the pParse structure. -func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC uintptr) int32 { /* sqlite3.c:131355:20: */ +func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC uintptr) int32 { /* sqlite3.c:131366:20: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -125578,7 +125623,7 @@ func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC return jointype } -var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 16910 /* "naturaleftouteri..." */)) /* sqlite3.c:131360:21 */ +var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 16910 /* "naturaleftouteri..." */)) /* sqlite3.c:131371:21 */ var aKeyword = [7]struct { Fi U8 FnChar U8 @@ -125591,11 +125636,11 @@ var aKeyword = [7]struct { /* full */ {Fi: U8(19), FnChar: U8(4), Fcode: (U8((JT_LEFT | JT_RIGHT) | JT_OUTER))}, /* inner */ {Fi: U8(23), FnChar: U8(5), Fcode: U8(JT_INNER)}, /* cross */ {Fi: U8(28), FnChar: U8(5), Fcode: (U8(JT_INNER | JT_CROSS))}, -} /* sqlite3.c:131365:5 */ +} /* sqlite3.c:131376:5 */ // Return the index of a column in a table. Return -1 if the column // is not contained in the table. -func Xsqlite3ColumnIndex(tls *libc.TLS, pTab uintptr, zCol uintptr) int32 { /* sqlite3.c:131416:20: */ +func Xsqlite3ColumnIndex(tls *libc.TLS, pTab uintptr, zCol uintptr) int32 { /* sqlite3.c:131427:20: */ var i int32 var h U8 = Xsqlite3StrIHash(tls, zCol) var pCol uintptr @@ -125629,7 +125674,7 @@ __3: // of the matching column and return TRUE. // // If not found, return FALSE. -func tableAndColumnIndex(tls *libc.TLS, pSrc uintptr, N int32, zCol uintptr, piTab uintptr, piCol uintptr, bIgnoreHidden int32) int32 { /* sqlite3.c:131435:12: */ +func tableAndColumnIndex(tls *libc.TLS, pSrc uintptr, N int32, zCol uintptr, piTab uintptr, piCol uintptr, bIgnoreHidden int32) int32 { /* sqlite3.c:131446:12: */ var i int32 // For looping over tables in pSrc var iCol int32 // Index of column matching zCol @@ -125657,7 +125702,7 @@ func tableAndColumnIndex(tls *libc.TLS, pSrc uintptr, N int32, zCol uintptr, piT // where tab1 is the iSrc'th table in SrcList pSrc and tab2 is the // (iSrc+1)'th. Column col1 is column iColLeft of tab1, and col2 is // column iColRight of tab2. -func addWhereTerm(tls *libc.TLS, pParse uintptr, pSrc uintptr, iLeft int32, iColLeft int32, iRight int32, iColRight int32, isOuterJoin int32, ppWhere uintptr) { /* sqlite3.c:131473:13: */ +func addWhereTerm(tls *libc.TLS, pParse uintptr, pSrc uintptr, iLeft int32, iColLeft int32, iRight int32, iColRight int32, isOuterJoin int32, ppWhere uintptr) { /* sqlite3.c:131484:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pE1 uintptr var pE2 uintptr @@ -125699,7 +125744,7 @@ func addWhereTerm(tls *libc.TLS, pParse uintptr, pSrc uintptr, iLeft int32, iCol // defer the handling of t1.x=5, it will be processed immediately // after the t1 loop and rows with t1.x!=5 will never appear in // the output, which is incorrect. -func Xsqlite3SetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131532:21: */ +func Xsqlite3SetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131543:21: */ for p != 0 { *(*U32)(unsafe.Pointer(p + 4 /* &.flags */)) |= (U32(EP_FromJoin)) @@ -125720,7 +125765,7 @@ func Xsqlite3SetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c: // an ordinary term that omits the EP_FromJoin mark. // // This happens when a LEFT JOIN is simplified into an ordinary JOIN. -func unsetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131555:13: */ +func unsetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131566:13: */ for p != 0 { if (((*Expr)(unsafe.Pointer((p))).Fflags & (U32(EP_FromJoin))) != U32(0)) && ((iTable < 0) || ((*Expr)(unsafe.Pointer(p)).FiRightJoinTable == iTable)) { @@ -125752,7 +125797,7 @@ func unsetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131555 // also attached to the left entry. // // This routine returns the number of errors encountered. -func sqliteProcessJoin(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:131589:12: */ +func sqliteProcessJoin(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:131600:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -125866,11 +125911,11 @@ __3: // An instance of this object holds information (beyond pParse and pSelect) // needed to load the next result row that is to be added to the sorter. -type RowLoadInfo = RowLoadInfo1 /* sqlite3.c:131681:28 */ +type RowLoadInfo = RowLoadInfo1 /* sqlite3.c:131692:28 */ // This routine does the work of loading query data into an array of // registers so that it can be added to the sorter. -func innerLoopLoadRow(tls *libc.TLS, pParse uintptr, pSelect uintptr, pInfo uintptr) { /* sqlite3.c:131695:13: */ +func innerLoopLoadRow(tls *libc.TLS, pParse uintptr, pSelect uintptr, pInfo uintptr) { /* sqlite3.c:131706:13: */ Xsqlite3ExprCodeExprList(tls, pParse, (*Select)(unsafe.Pointer(pSelect)).FpEList, (*RowLoadInfo)(unsafe.Pointer(pInfo)).FregResult, 0, (*RowLoadInfo)(unsafe.Pointer(pInfo)).FecelFlags) } @@ -125879,7 +125924,7 @@ func innerLoopLoadRow(tls *libc.TLS, pParse uintptr, pSelect uintptr, pInfo uint // added into the sorter. // // Return the register in which the result is stored. -func makeSorterRecord(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regBase int32, nBase int32) int32 { /* sqlite3.c:131716:12: */ +func makeSorterRecord(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regBase int32, nBase int32) int32 { /* sqlite3.c:131727:12: */ var nOBSat int32 = (*SortCtx)(unsafe.Pointer(pSort)).FnOBSat var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var regOut int32 = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) @@ -125892,7 +125937,7 @@ func makeSorterRecord(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uint // Generate code that will push the record in registers regData // through regData+nData-1 onto the sorter. -func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regData int32, regOrigData int32, nData int32, nPrefixReg int32) { /* sqlite3.c:131737:13: */ +func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regData int32, regOrigData int32, nData int32, nPrefixReg int32) { /* sqlite3.c:131748:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // Stmt under construction var bSeq int32 = (libc.Bool32((int32((*SortCtx)(unsafe.Pointer(pSort)).FsortFlags) & SORTFLAG_UseSorter) == 0)) var nExpr int32 = (*ExprList)(unsafe.Pointer((*SortCtx)(unsafe.Pointer(pSort)).FpOrderBy)).FnExpr // No. of ORDER BY terms @@ -126035,7 +126080,7 @@ func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintpt } // Add code to implement the OFFSET -func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* sqlite3.c:131879:13: */ +func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* sqlite3.c:131890:13: */ if iOffset > 0 { Xsqlite3VdbeAddOp3(tls, v, OP_IfPos, iOffset, iContinue, 1) @@ -126049,7 +126094,7 @@ func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* s // // A jump to addrRepeat is made and the N+1 values are popped from the // stack if the top N elements are not distinct. -func codeDistinct(tls *libc.TLS, pParse uintptr, iTab int32, addrRepeat int32, N int32, iMem int32) { /* sqlite3.c:131899:13: */ +func codeDistinct(tls *libc.TLS, pParse uintptr, iTab int32, addrRepeat int32, N int32, iMem int32) { /* sqlite3.c:131910:13: */ var v uintptr var r1 int32 @@ -126069,7 +126114,7 @@ func codeDistinct(tls *libc.TLS, pParse uintptr, iTab int32, addrRepeat int32, N // are evaluated in order to get the data for this row. If srcTab is // zero or more, then data is pulled from srcTab and p->pEList is used only // to get the number of columns and the collation sequence for each column. -func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSort uintptr, pDistinct uintptr, pDest uintptr, iContinue int32, iBreak int32) { /* sqlite3.c:132008:13: */ +func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSort uintptr, pDistinct uintptr, pDest uintptr, iContinue int32, iBreak int32) { /* sqlite3.c:132019:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -126480,7 +126525,7 @@ func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSo // Allocate a KeyInfo object sufficient for an index of N key columns and // X extra columns. -func Xsqlite3KeyInfoAlloc(tls *libc.TLS, db uintptr, N int32, X int32) uintptr { /* sqlite3.c:132450:24: */ +func Xsqlite3KeyInfoAlloc(tls *libc.TLS, db uintptr, N int32, X int32) uintptr { /* sqlite3.c:132461:24: */ var nExtra int32 = (int32(((uint64(N + X)) * (uint64(unsafe.Sizeof(uintptr(0))) + uint64(1))) - uint64(unsafe.Sizeof(uintptr(0))))) var p uintptr = Xsqlite3DbMallocRawNN(tls, db, (uint64(uint64(unsafe.Sizeof(KeyInfo{})) + uint64(nExtra)))) if p != 0 { @@ -126498,7 +126543,7 @@ func Xsqlite3KeyInfoAlloc(tls *libc.TLS, db uintptr, N int32, X int32) uintptr { } // Deallocate a KeyInfo object -func Xsqlite3KeyInfoUnref(tls *libc.TLS, p uintptr) { /* sqlite3.c:132470:21: */ +func Xsqlite3KeyInfoUnref(tls *libc.TLS, p uintptr) { /* sqlite3.c:132481:21: */ if p != 0 { (*KeyInfo)(unsafe.Pointer(p)).FnRef-- @@ -126509,7 +126554,7 @@ func Xsqlite3KeyInfoUnref(tls *libc.TLS, p uintptr) { /* sqlite3.c:132470:21: */ } // Make a new pointer to a KeyInfo object -func Xsqlite3KeyInfoRef(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:132481:24: */ +func Xsqlite3KeyInfoRef(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:132492:24: */ if p != 0 { (*KeyInfo)(unsafe.Pointer(p)).FnRef++ @@ -126529,7 +126574,7 @@ func Xsqlite3KeyInfoRef(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:132481: // Space to hold the KeyInfo structure is obtained from malloc. The calling // function is responsible for seeing that this structure is eventually // freed. -func Xsqlite3KeyInfoFromExprList(tls *libc.TLS, pParse uintptr, pList uintptr, iStart int32, nExtra int32) uintptr { /* sqlite3.c:132513:24: */ +func Xsqlite3KeyInfoFromExprList(tls *libc.TLS, pParse uintptr, pList uintptr, iStart int32, nExtra int32) uintptr { /* sqlite3.c:132524:24: */ var nExpr int32 var pInfo uintptr var pItem uintptr @@ -126563,7 +126608,7 @@ func Xsqlite3KeyInfoFromExprList(tls *libc.TLS, pParse uintptr, pList uintptr, i } // Name of the connection operator, used for error messages. -func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:132540:27: */ +func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:132551:27: */ var z uintptr switch id { case TK_ALL: @@ -126590,7 +126635,7 @@ func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:132540 // // where xxx is one of "DISTINCT", "ORDER BY" or "GROUP BY". Exactly which // is determined by the zUsage argument. -func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite3.c:132562:13: */ +func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite3.c:132573:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -126607,7 +126652,7 @@ func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite // then the results were placed in a sorter. After the loop is terminated // we need to run the sorter and output the results. The following // routine generates the code needed to do that. -func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, nColumn int32, pDest uintptr) { /* sqlite3.c:132588:13: */ +func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, nColumn int32, pDest uintptr) { /* sqlite3.c:132599:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // The prepared statement var addrBreak int32 = (*SortCtx)(unsafe.Pointer(pSort)).FlabelDone // Jump here to exit loop var addrContinue int32 = Xsqlite3VdbeMakeLabel(tls, pParse) // Jump here for next cycle @@ -126783,7 +126828,7 @@ func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, n // // This routine has either 3 or 6 parameters depending on whether or not // the SQLITE_ENABLE_COLUMN_METADATA compile-time option is used. -func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, pzOrigTab uintptr, pzOrigCol uintptr) uintptr { /* sqlite3.c:132813:19: */ +func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, pzOrigTab uintptr, pzOrigCol uintptr) uintptr { /* sqlite3.c:132824:19: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -126904,7 +126949,7 @@ func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, // Generate code that will tell the VDBE the declaration types of columns // in the result set. -func generateColumnTypes(tls *libc.TLS, pParse uintptr, pTabList uintptr, pEList uintptr) { /* sqlite3.c:132956:13: */ +func generateColumnTypes(tls *libc.TLS, pParse uintptr, pTabList uintptr, pEList uintptr) { /* sqlite3.c:132967:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -126961,7 +127006,7 @@ func generateColumnTypes(tls *libc.TLS, pParse uintptr, pTabList uintptr, pEList // full=ON, short=ANY: If the result refers directly to a table column, // then the result column name with the table name // prefix, ex: TABLE.COLUMN. Otherwise use zSpan. -func generateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:133023:13: */ +func generateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:133034:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -127057,7 +127102,7 @@ func generateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sq // when modifying this routine to avoid breaking legacy. // // See Also: generateColumnNames() -func Xsqlite3ColumnsFromExprList(tls *libc.TLS, pParse uintptr, pEList uintptr, pnCol uintptr, paCol uintptr) int32 { /* sqlite3.c:133115:20: */ +func Xsqlite3ColumnsFromExprList(tls *libc.TLS, pParse uintptr, pEList uintptr, pnCol uintptr, paCol uintptr) int32 { /* sqlite3.c:133126:20: */ bp := tls.Alloc(60) defer tls.Free(60) @@ -127187,7 +127232,7 @@ __3: // // This routine requires that all identifiers in the SELECT // statement be resolved. -func Xsqlite3SelectAddColumnTypeAndCollation(tls *libc.TLS, pParse uintptr, pTab uintptr, pSelect uintptr, aff int8) { /* sqlite3.c:133219:21: */ +func Xsqlite3SelectAddColumnTypeAndCollation(tls *libc.TLS, pParse uintptr, pTab uintptr, pSelect uintptr, aff int8) { /* sqlite3.c:133230:21: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -127252,7 +127297,7 @@ __3: // Given a SELECT statement, generate a Table structure that describes // the result set of that SELECT. -func Xsqlite3ResultSetOfSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, aff int8) uintptr { /* sqlite3.c:133270:22: */ +func Xsqlite3ResultSetOfSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, aff int8) uintptr { /* sqlite3.c:133281:22: */ var pTab uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var savedFlags U64 @@ -127287,7 +127332,7 @@ func Xsqlite3ResultSetOfSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, a // Get a VDBE for the given parser context. Create a new one if necessary. // If an error occurs, return NULL and leave a message in pParse. -func Xsqlite3GetVdbe(tls *libc.TLS, pParse uintptr) uintptr { /* sqlite3.c:133303:21: */ +func Xsqlite3GetVdbe(tls *libc.TLS, pParse uintptr) uintptr { /* sqlite3.c:133314:21: */ if (*Parse)(unsafe.Pointer(pParse)).FpVdbe != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpVdbe } @@ -127319,7 +127364,7 @@ func Xsqlite3GetVdbe(tls *libc.TLS, pParse uintptr) uintptr { /* sqlite3.c:13330 // redefined. The UNION ALL operator uses this property to force // the reuse of the same limit and offset registers across multiple // SELECT statements. -func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int32) { /* sqlite3.c:133339:13: */ +func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int32) { /* sqlite3.c:133350:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -127376,7 +127421,7 @@ func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int3 // // The collating sequence for the compound select is taken from the // left-most term of the select that has a collating sequence. -func multiSelectCollSeq(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:133396:16: */ +func multiSelectCollSeq(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:133407:16: */ var pRet uintptr if (*Select)(unsafe.Pointer(p)).FpPrior != 0 { pRet = multiSelectCollSeq(tls, pParse, (*Select)(unsafe.Pointer(p)).FpPrior, iCol) @@ -127400,7 +127445,7 @@ func multiSelectCollSeq(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) ui // Space to hold the KeyInfo structure is obtained from malloc. The calling // function is responsible for ensuring that this structure is eventually // freed. -func multiSelectOrderByKeyInfo(tls *libc.TLS, pParse uintptr, p uintptr, nExtra int32) uintptr { /* sqlite3.c:133422:16: */ +func multiSelectOrderByKeyInfo(tls *libc.TLS, pParse uintptr, p uintptr, nExtra int32) uintptr { /* sqlite3.c:133433:16: */ var pOrderBy uintptr = (*Select)(unsafe.Pointer(p)).FpOrderBy var nOrderBy int32 = (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(p)).FpOrderBy)).FnExpr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -127464,7 +127509,7 @@ func multiSelectOrderByKeyInfo(tls *libc.TLS, pParse uintptr, p uintptr, nExtra // with a positive value, then the first OFFSET outputs are discarded rather // than being sent to pDest. The LIMIT count does not begin until after OFFSET // rows have been skipped. -func generateWithRecursiveQuery(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) { /* sqlite3.c:133488:13: */ +func generateWithRecursiveQuery(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) { /* sqlite3.c:133499:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -127707,7 +127752,7 @@ end_of_recursive_query: // clause occurs within scalar expression (ex: "SELECT (VALUES(1),(2),(3))"). // The sqlite3CodeSubselect will have added the LIMIT 1 clause in tht case. // Since the limit is exactly 1, we only need to evalutes the left-most VALUES. -func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133665:12: */ +func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133676:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -127747,7 +127792,7 @@ func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // Return true if the SELECT statement which is known to be the recursive // part of a recursive CTE still has its anchor terms attached. If the // anchor terms have already been removed, then return false. -func hasAnchor(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:133702:12: */ +func hasAnchor(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:133713:12: */ for (p != 0) && (((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_Recursive)) != U32(0)) { p = (*Select)(unsafe.Pointer(p)).FpPrior } @@ -127783,7 +127828,7 @@ func hasAnchor(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:133702:12: */ // // Notice that because of the way SQLite parses compound SELECTs, the // individual selects always group from left to right. -func multiSelect(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133738:12: */ +func multiSelect(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133749:12: */ bp := tls.Alloc(144) defer tls.Free(144) @@ -128230,7 +128275,7 @@ multi_select_end: // Error message for when two or more terms of a compound select have different // size result sets. -func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:134083:21: */ +func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:134094:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -128261,7 +128306,7 @@ func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) // // If the LIMIT found in p->iLimit is reached, jump immediately to // iBreak. -func generateOutputSubroutine(tls *libc.TLS, pParse uintptr, p uintptr, pIn uintptr, pDest uintptr, regReturn int32, regPrev int32, pKeyInfo uintptr, iBreak int32) int32 { /* sqlite3.c:134113:12: */ +func generateOutputSubroutine(tls *libc.TLS, pParse uintptr, p uintptr, pIn uintptr, pDest uintptr, regReturn int32, regPrev int32, pKeyInfo uintptr, iBreak int32) int32 { /* sqlite3.c:134124:12: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var iContinue int32 var addr int32 @@ -128457,7 +128502,7 @@ func generateOutputSubroutine(tls *libc.TLS, pParse uintptr, p uintptr, pIn uint // actually called using Gosub and they do not Return. EofA and EofB loop // until all data is exhausted then jump to the "end" labe. AltB, AeqB, // and AgtB jump to either L2 or to one of EofA or EofB. -func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:134321:12: */ +func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:134332:12: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -128790,14 +128835,14 @@ type SubstContext1 = struct { FisLeftJoin int32 _ [4]byte FpEList uintptr -} /* sqlite3.c:134628:9 */ +} /* sqlite3.c:134639:9 */ // An instance of the SubstContext object describes an substitution edit // to be performed on a parse tree. // // All references to columns in table iTable are to be replaced by corresponding // expressions in pEList. -type SubstContext = SubstContext1 /* sqlite3.c:134634:3 */ +type SubstContext = SubstContext1 /* sqlite3.c:134645:3 */ // Scan through the expression pExpr. Replace every reference to // a column in table number iTable with a copy of the iColumn-th @@ -128810,7 +128855,7 @@ type SubstContext = SubstContext1 /* sqlite3.c:134634:3 */ // FORM clause entry is iTable. This routine makes the necessary // changes to pExpr so that it refers directly to the source table // of the subquery rather the result set of the subquery. -func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite3.c:134653:13: */ +func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite3.c:134664:13: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -128892,7 +128937,7 @@ func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite return pExpr } -func substExprList(tls *libc.TLS, pSubst uintptr, pList uintptr) { /* sqlite3.c:134733:13: */ +func substExprList(tls *libc.TLS, pSubst uintptr, pList uintptr) { /* sqlite3.c:134744:13: */ var i int32 if pList == uintptr(0) { return @@ -128902,7 +128947,7 @@ func substExprList(tls *libc.TLS, pSubst uintptr, pList uintptr) { /* sqlite3.c: } } -func substSelect(tls *libc.TLS, pSubst uintptr, p uintptr, doPrior int32) { /* sqlite3.c:134743:13: */ +func substSelect(tls *libc.TLS, pSubst uintptr, p uintptr, doPrior int32) { /* sqlite3.c:134754:13: */ var pSrc uintptr var pItem uintptr var i int32 @@ -128945,7 +128990,7 @@ func substSelect(tls *libc.TLS, pSubst uintptr, p uintptr, doPrior int32) { /* s // // This routine scans the entire SELECT statement and recomputes the // pSrcItem->colUsed mask. -func recomputeColumnsUsedExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134778:12: */ +func recomputeColumnsUsedExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134789:12: */ var pItem uintptr if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_COLUMN { return WRC_Continue @@ -128961,7 +129006,7 @@ func recomputeColumnsUsedExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int return WRC_Continue } -func recomputeColumnsUsed(tls *libc.TLS, pSelect uintptr, pSrcItem uintptr) { /* sqlite3.c:134787:13: */ +func recomputeColumnsUsed(tls *libc.TLS, pSelect uintptr, pSrcItem uintptr) { /* sqlite3.c:134798:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -128993,7 +129038,7 @@ func recomputeColumnsUsed(tls *libc.TLS, pSelect uintptr, pSrcItem uintptr) { /* // // If pSrc contains any sub-selects, call this routine recursively // on the FROM clause of each such sub-select, with iExcept set to -1. -func srclistRenumberCursors(tls *libc.TLS, pParse uintptr, aCsrMap uintptr, pSrc uintptr, iExcept int32) { /* sqlite3.c:134816:13: */ +func srclistRenumberCursors(tls *libc.TLS, pParse uintptr, aCsrMap uintptr, pSrc uintptr, iExcept int32) { /* sqlite3.c:134827:13: */ var i int32 var pItem uintptr i = 0 @@ -129023,7 +129068,7 @@ __3: // Expression walker callback used by renumberCursors() to update // Expr objects to match newly assigned cursor numbers. -func renumberCursorsCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134839:12: */ +func renumberCursorsCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134850:12: */ var aCsrMap uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) var op int32 = int32((*Expr)(unsafe.Pointer(pExpr)).Fop) if ((op == TK_COLUMN) || (op == TK_IF_NULL_ROW)) && (*(*int32)(unsafe.Pointer(aCsrMap + uintptr((*Expr)(unsafe.Pointer(pExpr)).FiTable)*4)) != 0) { @@ -129051,7 +129096,7 @@ func renumberCursorsCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* // * the array entries for all cursor numbers that do *not* appear in // FROM clauses of the select statement as described above are // initialized to zero. -func renumberCursors(tls *libc.TLS, pParse uintptr, p uintptr, iExcept int32, aCsrMap uintptr) { /* sqlite3.c:134869:13: */ +func renumberCursors(tls *libc.TLS, pParse uintptr, p uintptr, iExcept int32, aCsrMap uintptr) { /* sqlite3.c:134880:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -129221,7 +129266,7 @@ func renumberCursors(tls *libc.TLS, pParse uintptr, p uintptr, iExcept int32, aC // // All of the expression analysis must occur on both the outer query and // the subquery before this routine runs. -func flattenSubquery(tls *libc.TLS, pParse uintptr, p uintptr, iFrom int32, isAgg int32) int32 { /* sqlite3.c:135040:12: */ +func flattenSubquery(tls *libc.TLS, pParse uintptr, p uintptr, iFrom int32, isAgg int32) int32 { /* sqlite3.c:135051:12: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -129643,7 +129688,7 @@ __3: // A structure to keep track of all of the column values that are fixed to // a known value due to WHERE clause constraints of the form COLUMN=VALUE. -type WhereConst = WhereConst1 /* sqlite3.c:135463:27 */ +type WhereConst = WhereConst1 /* sqlite3.c:135474:27 */ // Add a new entry to the pConst object. Except, do not add duplicate // pColumn entires. Also, do not add if doing so would not be appropriate. @@ -129651,7 +129696,7 @@ type WhereConst = WhereConst1 /* sqlite3.c:135463:27 */ // The caller guarantees the pColumn is a column and pValue is a constant. // This routine has to do some additional checks before completing the // insert. -func constInsert(tls *libc.TLS, pConst uintptr, pColumn uintptr, pValue uintptr, pExpr uintptr) { /* sqlite3.c:135479:13: */ +func constInsert(tls *libc.TLS, pConst uintptr, pColumn uintptr, pValue uintptr, pExpr uintptr) { /* sqlite3.c:135490:13: */ var i int32 if ((*Expr)(unsafe.Pointer((pColumn))).Fflags & (U32(EP_FixedCol))) != U32(0) { @@ -129690,7 +129735,7 @@ func constInsert(tls *libc.TLS, pConst uintptr, pColumn uintptr, pValue uintptr, // is a constant expression and where the term must be true because it // is part of the AND-connected terms of the expression. For each term // found, add it to the pConst structure. -func findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { /* sqlite3.c:135524:13: */ +func findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { /* sqlite3.c:135535:13: */ var pRight uintptr var pLeft uintptr if pExpr == uintptr(0) { @@ -129722,7 +129767,7 @@ func findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { /* sqlite3 // to be replaced by a value. If pExpr is equivalent to one of the // columns named in pWalker->u.pConst, then overwrite it with its // corresponding value. -func propagateConstantExprRewrite(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:135552:12: */ +func propagateConstantExprRewrite(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:135563:12: */ var i int32 var pConst uintptr if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_COLUMN { @@ -129789,7 +129834,7 @@ func propagateConstantExprRewrite(tls *libc.TLS, pWalker uintptr, pExpr uintptr) // routines know to generate the constant "123" instead of looking up the // column value. Also, to avoid collation problems, this optimization is // only attempted if the "a=123" term uses the default BINARY collation. -func propagateConstants(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:135614:12: */ +func propagateConstants(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:135625:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -129840,7 +129885,7 @@ func propagateConstants(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sql // // * the sub-query uses only one distinct window frame, and // * that the window frame has a PARTITION BY clase. -func pushDownWindowCheck(tls *libc.TLS, pParse uintptr, pSubq uintptr, pExpr uintptr) int32 { /* sqlite3.c:135663:12: */ +func pushDownWindowCheck(tls *libc.TLS, pParse uintptr, pSubq uintptr, pExpr uintptr) int32 { /* sqlite3.c:135674:12: */ return Xsqlite3ExprIsConstantOrGroupBy(tls, pParse, pExpr, (*Window)(unsafe.Pointer((*Select)(unsafe.Pointer(pSubq)).FpWin)).FpPartition) } @@ -129911,7 +129956,7 @@ func pushDownWindowCheck(tls *libc.TLS, pParse uintptr, pSubq uintptr, pExpr uin // // Return 0 if no changes are made and non-zero if one or more WHERE clause // terms are duplicated into the subquery. -func pushDownWhereTerms(tls *libc.TLS, pParse uintptr, pSubq uintptr, pWhere uintptr, iCursor int32, isLeftJoin int32) int32 { /* sqlite3.c:135741:12: */ +func pushDownWhereTerms(tls *libc.TLS, pParse uintptr, pSubq uintptr, pWhere uintptr, iCursor int32, isLeftJoin int32) int32 { /* sqlite3.c:135752:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -129998,7 +130043,7 @@ func pushDownWhereTerms(tls *libc.TLS, pParse uintptr, pSubq uintptr, pWhere uin // This routine must be called after aggregate functions have been // located but before their arguments have been subjected to aggregate // analysis. -func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 { /* sqlite3.c:135843:11: */ +func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 { /* sqlite3.c:135854:11: */ var eRet int32 = WHERE_ORDERBY_NORMAL // Return value var pEList uintptr = *(*uintptr)(unsafe.Pointer(pFunc + 32 /* &.x */)) // Arguments to agg function var zFunc uintptr // Name of aggregate function pFunc @@ -130040,7 +130085,7 @@ func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 // where table is a database table, not a sub-select or view. If the query // does match this pattern, then a pointer to the Table object representing // is returned. Otherwise, 0 is returned. -func isSimpleCount(tls *libc.TLS, p uintptr, pAggInfo uintptr) uintptr { /* sqlite3.c:135889:14: */ +func isSimpleCount(tls *libc.TLS, p uintptr, pAggInfo uintptr) uintptr { /* sqlite3.c:135900:14: */ var pTab uintptr var pExpr uintptr @@ -130075,7 +130120,7 @@ func isSimpleCount(tls *libc.TLS, p uintptr, pAggInfo uintptr) uintptr { /* sqli // was such a clause and the named index cannot be found, return // SQLITE_ERROR and leave an error in pParse. Otherwise, populate // pFrom->pIndex and return SQLITE_OK. -func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:135920:20: */ +func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:135931:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -130113,7 +130158,7 @@ func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 // This transformation is only needed for EXCEPT, INTERSECT, and UNION. // The UNION ALL operator works fine with multiSelectOrderBy() even when // there are COLLATE terms in the ORDER BY. -func convertCompoundSelectToSubquery(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:135961:12: */ +func convertCompoundSelectToSubquery(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:135972:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -130192,7 +130237,7 @@ func convertCompoundSelectToSubquery(tls *libc.TLS, pWalker uintptr, p uintptr) // Check to see if the FROM clause term pFrom has table-valued function // arguments. If it does, leave an error message in pParse and return // non-zero, since pFrom is not allowed to be a table-valued function. -func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136026:12: */ +func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136037:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -130211,7 +130256,7 @@ func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* s // // If a non-NULL value is returned, set *ppContext to point to the With // object that the returned CTE belongs to. -func searchWith(tls *libc.TLS, pWith uintptr, pItem uintptr, ppContext uintptr) uintptr { /* sqlite3.c:136045:19: */ +func searchWith(tls *libc.TLS, pWith uintptr, pItem uintptr, ppContext uintptr) uintptr { /* sqlite3.c:136056:19: */ var zName uintptr = (*SrcItem)(unsafe.Pointer(pItem)).FzName var p uintptr @@ -130236,7 +130281,7 @@ func searchWith(tls *libc.TLS, pWith uintptr, pItem uintptr, ppContext uintptr) // should be freed along with the Parse object. In other cases, when // bFree==0, the With object will be freed along with the SELECT // statement with which it is associated. -func Xsqlite3WithPush(tls *libc.TLS, pParse uintptr, pWith uintptr, bFree U8) { /* sqlite3.c:136076:21: */ +func Xsqlite3WithPush(tls *libc.TLS, pParse uintptr, pWith uintptr, bFree U8) { /* sqlite3.c:136087:21: */ if pWith != 0 { (*With)(unsafe.Pointer(pWith)).FpOuter = (*Parse)(unsafe.Pointer(pParse)).FpWith @@ -130264,7 +130309,7 @@ func Xsqlite3WithPush(tls *libc.TLS, pParse uintptr, pWith uintptr, bFree U8) { // Return 0 if no match is found. // Return 1 if a match is found. // Return 2 if an error condition is detected. -func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom uintptr) int32 { /* sqlite3.c:136104:12: */ +func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom uintptr) int32 { /* sqlite3.c:136115:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -130429,7 +130474,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom // This function is used as the xSelectCallback2() callback by // sqlite3SelectExpand() when walking a SELECT tree to resolve table // names and other FROM clause elements. -func selectPopWith(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136270:13: */ +func selectPopWith(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136281:13: */ var pParse uintptr = (*Walker)(unsafe.Pointer(pWalker)).FpParse if ((*Parse)(unsafe.Pointer(pParse)).FpWith != 0) && ((*Select)(unsafe.Pointer(p)).FpPrior == uintptr(0)) { var pWith uintptr = (*Select)(unsafe.Pointer(findRightmost(tls, p))).FpWith @@ -130445,7 +130490,7 @@ func selectPopWith(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136 // allocates and populates the SrcList_item.pTab object. If successful, // SQLITE_OK is returned. Otherwise, if an OOM error is encountered, // SQLITE_NOMEM. -func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136291:20: */ +func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136302:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -130498,7 +130543,7 @@ func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 // If found, expand each "*" to be every column in every table // and TABLE.* to be every column in TABLE. // -func selectExpander(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:136337:12: */ +func selectExpander(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:136348:12: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -130836,7 +130881,7 @@ __3: // If anything goes wrong, an error message is written into pParse. // The calling function can detect the problem by looking at pParse->nErr // and/or pParse->db->mallocFailed. -func sqlite3SelectExpand(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136652:13: */ +func sqlite3SelectExpand(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136663:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -130874,7 +130919,7 @@ func sqlite3SelectExpand(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sq // by selectExpander() but the type and collation information was omitted // at that point because identifiers had not yet been resolved. This // routine is called after identifier resolution. -func selectAddSubqueryTypeInfo(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136682:13: */ +func selectAddSubqueryTypeInfo(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136693:13: */ var pParse uintptr var i int32 var pTabList uintptr @@ -130922,7 +130967,7 @@ __3: // SELECT statement. // // Use this routine after name resolution. -func sqlite3SelectAddTypeInfo(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136717:13: */ +func sqlite3SelectAddTypeInfo(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136728:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -130951,7 +130996,7 @@ func sqlite3SelectAddTypeInfo(tls *libc.TLS, pParse uintptr, pSelect uintptr) { // * Identifiers in expression are matched to tables. // // This routine acts recursively on all subqueries within the SELECT. -func Xsqlite3SelectPrep(tls *libc.TLS, pParse uintptr, p uintptr, pOuterNC uintptr) { /* sqlite3.c:136741:21: */ +func Xsqlite3SelectPrep(tls *libc.TLS, pParse uintptr, p uintptr, pOuterNC uintptr) { /* sqlite3.c:136752:21: */ if (*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).FmallocFailed != 0 { return @@ -130976,7 +131021,7 @@ func Xsqlite3SelectPrep(tls *libc.TLS, pParse uintptr, p uintptr, pOuterNC uintp // intermediate results while calculating an aggregate. This // routine generates code that stores NULLs in all of those memory // cells. -func resetAccumulator(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136764:13: */ +func resetAccumulator(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136775:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 var pFunc uintptr @@ -131021,7 +131066,7 @@ __3: // Invoke the OP_AggFinalize opcode for every aggregate function // in the AggInfo structure. -func finalizeAggFunctions(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136806:13: */ +func finalizeAggFunctions(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136817:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 var pF uintptr @@ -131059,7 +131104,7 @@ __3: // in pAggInfo, then only populate the pAggInfo->nAccumulator accumulator // registers if register regAcc contains 0. The caller will take care // of setting and clearing regAcc. -func updateAccumulator(tls *libc.TLS, pParse uintptr, regAcc int32, pAggInfo uintptr) { /* sqlite3.c:136828:13: */ +func updateAccumulator(tls *libc.TLS, pParse uintptr, regAcc int32, pAggInfo uintptr) { /* sqlite3.c:136839:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 var regHit int32 = 0 @@ -131200,7 +131245,7 @@ __9: // Add a single OP_Explain instruction to the VDBE to explain a simple // count(*) query ("SELECT count(*) FROM pTab"). -func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintptr) { /* sqlite3.c:136925:13: */ +func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintptr) { /* sqlite3.c:136936:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -131232,7 +131277,7 @@ func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintpt // sub-expression matches the criteria for being moved to the WHERE // clause. If so, add it to the WHERE clause and replace the sub-expression // within the HAVING expression with a constant "1". -func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:136954:12: */ +func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:136965:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_AND { var pS uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) if (Xsqlite3ExprIsConstantOrGroupBy(tls, (*Walker)(unsafe.Pointer(pWalker)).FpParse, pExpr, (*Select)(unsafe.Pointer(pS)).FpGroupBy) != 0) && @@ -131270,7 +131315,7 @@ func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { // A term of the HAVING expression is eligible for transfer if it consists // entirely of constants and expressions that are also GROUP BY terms that // use the "BINARY" collation sequence. -func havingToWhere(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:136990:13: */ +func havingToWhere(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:137001:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -131288,7 +131333,7 @@ func havingToWhere(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:1369 // Check to see if the pThis entry of pTabList is a self-join of a prior view. // If it is, then return the SrcList_item for the prior view. If it is not, // then return 0. -func isSelfJoinView(tls *libc.TLS, pTabList uintptr, pThis uintptr) uintptr { /* sqlite3.c:137010:16: */ +func isSelfJoinView(tls *libc.TLS, pTabList uintptr, pThis uintptr) uintptr { /* sqlite3.c:137021:16: */ var pItem uintptr if ((*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pThis)).FpSelect)).FselFlags & U32(SF_PushDown)) != 0 { @@ -131329,7 +131374,7 @@ func isSelfJoinView(tls *libc.TLS, pTabList uintptr, pThis uintptr) uintptr { /* } // Deallocate a single AggInfo object -func agginfoFree(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:137045:13: */ +func agginfoFree(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:137056:13: */ Xsqlite3DbFree(tls, db, (*AggInfo)(unsafe.Pointer(p)).FaCol) Xsqlite3DbFree(tls, db, (*AggInfo)(unsafe.Pointer(p)).FaFunc) Xsqlite3DbFreeNN(tls, db, p) @@ -131346,7 +131391,7 @@ func agginfoFree(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:137045:13: // // This routine does NOT free the Select structure passed in. The // calling function needs to do that. -func Xsqlite3Select(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:137151:20: */ +func Xsqlite3Select(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:137162:20: */ bp := tls.Alloc(216) defer tls.Free(216) @@ -132838,7 +132883,7 @@ type TabResult1 = struct { FnData U32 Frc int32 _ [4]byte -} /* sqlite3.c:138337:9 */ +} /* sqlite3.c:138348:9 */ //************* End of select.c ********************************************* //************* Begin file table.c ****************************************** @@ -132862,12 +132907,12 @@ type TabResult1 = struct { // This structure is used to pass data from sqlite3_get_table() through // to the callback function is uses to build the result. -type TabResult = TabResult1 /* sqlite3.c:138345:3 */ +type TabResult = TabResult1 /* sqlite3.c:138356:3 */ // This routine is called once for each row in the result table. Its job // is to fill in the TabResult structure appropriately, allocating new // memory as necessary. -func sqlite3_get_table_cb(tls *libc.TLS, pArg uintptr, nCol int32, argv uintptr, colv uintptr) int32 { /* sqlite3.c:138352:12: */ +func sqlite3_get_table_cb(tls *libc.TLS, pArg uintptr, nCol int32, argv uintptr, colv uintptr) int32 { /* sqlite3.c:138363:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -132998,7 +133043,7 @@ malloc_failed: // from malloc(). But the caller cannot free this memory directly. // Instead, the entire table should be passed to sqlite3_free_table() when // the calling procedure is finished using it. -func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintptr, pnRow uintptr, pnColumn uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:138426:16: */ +func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintptr, pnRow uintptr, pnColumn uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:138437:16: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -133070,7 +133115,7 @@ func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintp } // This routine frees the space the sqlite3_get_table() malloced. -func Xsqlite3_free_table(tls *libc.TLS, azResult uintptr) { /* sqlite3.c:138495:17: */ +func Xsqlite3_free_table(tls *libc.TLS, azResult uintptr) { /* sqlite3.c:138506:17: */ if azResult != 0 { var i int32 var n int32 @@ -133101,7 +133146,7 @@ func Xsqlite3_free_table(tls *libc.TLS, azResult uintptr) { /* sqlite3.c:138495: // #include "sqliteInt.h" // Delete a linked list of TriggerStep structures. -func Xsqlite3DeleteTriggerStep(tls *libc.TLS, db uintptr, pTriggerStep uintptr) { /* sqlite3.c:138530:21: */ +func Xsqlite3DeleteTriggerStep(tls *libc.TLS, db uintptr, pTriggerStep uintptr) { /* sqlite3.c:138541:21: */ for pTriggerStep != 0 { var pTmp uintptr = pTriggerStep pTriggerStep = (*TriggerStep)(unsafe.Pointer(pTriggerStep)).FpNext @@ -133130,7 +133175,7 @@ func Xsqlite3DeleteTriggerStep(tls *libc.TLS, db uintptr, pTriggerStep uintptr) // To state it another way: This routine returns a list of all triggers // that fire off of pTab. The list will include any TEMP triggers on // pTab as well as the triggers lised in pTab->pTrigger. -func Xsqlite3TriggerList(tls *libc.TLS, pParse uintptr, pTab uintptr) uintptr { /* sqlite3.c:138561:24: */ +func Xsqlite3TriggerList(tls *libc.TLS, pParse uintptr, pTab uintptr) uintptr { /* sqlite3.c:138572:24: */ var pTmpSchema uintptr // Schema of the pTab table var pList uintptr // List of triggers to return var p uintptr // Loop variable for TEMP triggers @@ -133170,7 +133215,7 @@ func Xsqlite3TriggerList(tls *libc.TLS, pParse uintptr, pTab uintptr) uintptr { // in pParse->pNewTrigger. After the trigger actions have been parsed, the // sqlite3FinishTrigger() function is called to complete the trigger // construction process. -func Xsqlite3BeginTrigger(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, tr_tm int32, op int32, pColumns uintptr, pTableName uintptr, pWhen uintptr, isTemp int32, noErr int32) { /* sqlite3.c:138605:21: */ +func Xsqlite3BeginTrigger(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, tr_tm int32, op int32, pColumns uintptr, pTableName uintptr, pWhen uintptr, isTemp int32, noErr int32) { /* sqlite3.c:138616:21: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -133477,7 +133522,7 @@ __31: // This routine is called after all of the trigger actions have been parsed // in order to complete the process of building the trigger. -func Xsqlite3FinishTrigger(tls *libc.TLS, pParse uintptr, pStepList uintptr, pAll uintptr) { /* sqlite3.c:138812:21: */ +func Xsqlite3FinishTrigger(tls *libc.TLS, pParse uintptr, pStepList uintptr, pAll uintptr) { /* sqlite3.c:138823:21: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -133601,7 +133646,7 @@ triggerfinish_cleanup: // Duplicate a range of text from an SQL statement, then convert all // whitespace characters into ordinary space characters. -func triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138900:13: */ +func triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138911:13: */ var z uintptr = Xsqlite3DbSpanDup(tls, db, zStart, zEnd) var i int32 if z != 0 { @@ -133619,7 +133664,7 @@ func triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) uin // // The parser calls this routine when it finds a SELECT statement in // body of a TRIGGER. -func Xsqlite3TriggerSelectStep(tls *libc.TLS, db uintptr, pSelect uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138914:28: */ +func Xsqlite3TriggerSelectStep(tls *libc.TLS, db uintptr, pSelect uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138925:28: */ var pTriggerStep uintptr = Xsqlite3DbMallocZero(tls, db, uint64(unsafe.Sizeof(TriggerStep{}))) if pTriggerStep == uintptr(0) { Xsqlite3SelectDelete(tls, db, pSelect) @@ -133636,7 +133681,7 @@ func Xsqlite3TriggerSelectStep(tls *libc.TLS, db uintptr, pSelect uintptr, zStar // holds both the TriggerStep object and the TriggerStep.target.z string. // // If an OOM error occurs, NULL is returned and db->mallocFailed is set. -func triggerStepAllocate(tls *libc.TLS, pParse uintptr, op U8, pName uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138938:20: */ +func triggerStepAllocate(tls *libc.TLS, pParse uintptr, op U8, pName uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138949:20: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -133660,7 +133705,7 @@ func triggerStepAllocate(tls *libc.TLS, pParse uintptr, op U8, pName uintptr, zS // // The parser calls this routine when it sees an INSERT inside the // body of a trigger. -func Xsqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pColumn uintptr, pSelect uintptr, orconf U8, pUpsert uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138970:28: */ +func Xsqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pColumn uintptr, pSelect uintptr, orconf U8, pUpsert uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138981:28: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -133692,7 +133737,7 @@ func Xsqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTableName uintptr // Construct a trigger step that implements an UPDATE statement and return // a pointer to that trigger step. The parser calls this routine when it // sees an UPDATE statement inside the body of a CREATE TRIGGER. -func Xsqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pFrom uintptr, pEList uintptr, pWhere uintptr, orconf U8, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139015:28: */ +func Xsqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pFrom uintptr, pEList uintptr, pWhere uintptr, orconf U8, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139026:28: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -133721,7 +133766,7 @@ func Xsqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTableName uintptr // Construct a trigger step that implements a DELETE statement and return // a pointer to that trigger step. The parser calls this routine when it // sees a DELETE statement inside the body of a CREATE TRIGGER. -func Xsqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pWhere uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139055:28: */ +func Xsqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pWhere uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139066:28: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -133740,7 +133785,7 @@ func Xsqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTableName uintptr } // Recursively delete a Trigger structure -func Xsqlite3DeleteTrigger(tls *libc.TLS, db uintptr, pTrigger uintptr) { /* sqlite3.c:139082:21: */ +func Xsqlite3DeleteTrigger(tls *libc.TLS, db uintptr, pTrigger uintptr) { /* sqlite3.c:139093:21: */ if (pTrigger == uintptr(0)) || ((*Trigger)(unsafe.Pointer(pTrigger)).FbReturning != 0) { return } @@ -133760,7 +133805,7 @@ func Xsqlite3DeleteTrigger(tls *libc.TLS, db uintptr, pTrigger uintptr) { /* sql // same job as this routine except it takes a pointer to the trigger // instead of the trigger name. // -func Xsqlite3DropTrigger(tls *libc.TLS, pParse uintptr, pName uintptr, noErr int32) { /* sqlite3.c:139100:21: */ +func Xsqlite3DropTrigger(tls *libc.TLS, pParse uintptr, pName uintptr, noErr int32) { /* sqlite3.c:139111:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -133844,12 +133889,12 @@ drop_trigger_cleanup: // Return a pointer to the Table structure for the table that a trigger // is set on. -func tableOfTrigger(tls *libc.TLS, pTrigger uintptr) uintptr { /* sqlite3.c:139142:14: */ +func tableOfTrigger(tls *libc.TLS, pTrigger uintptr) uintptr { /* sqlite3.c:139153:14: */ return Xsqlite3HashFind(tls, ((*Trigger)(unsafe.Pointer(pTrigger)).FpTabSchema + 8 /* &.tblHash */), (*Trigger)(unsafe.Pointer(pTrigger)).Ftable) } // Drop a trigger given a pointer to that trigger. -func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { /* sqlite3.c:139150:21: */ +func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { /* sqlite3.c:139161:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -133890,7 +133935,7 @@ func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { / } // Remove a trigger from the hash tables of the sqlite* pointer. -func Xsqlite3UnlinkAndDeleteTrigger(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) { /* sqlite3.c:139188:21: */ +func Xsqlite3UnlinkAndDeleteTrigger(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) { /* sqlite3.c:139199:21: */ var pTrigger uintptr var pHash uintptr @@ -133921,7 +133966,7 @@ func Xsqlite3UnlinkAndDeleteTrigger(tls *libc.TLS, db uintptr, iDb int32, zName // wildcard that matches anything. Likewise if pEList==NULL then // it matches anything so always return true. Return false only // if there is no match. -func checkColumnOverlap(tls *libc.TLS, pIdList uintptr, pEList uintptr) int32 { /* sqlite3.c:139222:12: */ +func checkColumnOverlap(tls *libc.TLS, pIdList uintptr, pEList uintptr) int32 { /* sqlite3.c:139233:12: */ var e int32 if (pIdList == uintptr(0)) || (pEList == uintptr(0)) { return 1 @@ -133938,7 +133983,7 @@ func checkColumnOverlap(tls *libc.TLS, pIdList uintptr, pEList uintptr) int32 { // one trigger that must be fired when an operation of type 'op' is // performed on the table, and, if that operation is an UPDATE, if at // least one of the columns in pChanges is being modified. -func Xsqlite3TriggersExist(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, pChanges uintptr, pMask uintptr) uintptr { /* sqlite3.c:139237:24: */ +func Xsqlite3TriggersExist(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, pChanges uintptr, pMask uintptr) uintptr { /* sqlite3.c:139248:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -134065,7 +134110,7 @@ __17: // referring to a target in another database. An exception is when the // trigger is in TEMP in which case it can refer to any other database it // wants. -func Xsqlite3TriggerStepSrc(tls *libc.TLS, pParse uintptr, pStep uintptr) uintptr { /* sqlite3.c:139311:24: */ +func Xsqlite3TriggerStepSrc(tls *libc.TLS, pParse uintptr, pStep uintptr) uintptr { /* sqlite3.c:139322:24: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pSrc uintptr // SrcList to be returned var zName uintptr = Xsqlite3DbStrDup(tls, db, (*TriggerStep)(unsafe.Pointer(pStep)).FzTarget) @@ -134090,7 +134135,7 @@ func Xsqlite3TriggerStepSrc(tls *libc.TLS, pParse uintptr, pStep uintptr) uintpt // Return true if the pExpr term from the RETURNING clause argument // list is of the form "*". Raise an error if the terms if of the // form "table.*". -func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sqlite3.c:139342:12: */ +func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sqlite3.c:139353:12: */ if int32((*Expr)(unsafe.Pointer(pTerm)).Fop) == TK_ASTERISK { return 1 @@ -134111,7 +134156,7 @@ func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sql // // This routine makes a copy of the pList, and at the same time expands // any "*" wildcards to be the complete set of columns from pTab. -func sqlite3ExpandReturning(tls *libc.TLS, pParse uintptr, pList uintptr, pTab uintptr) uintptr { /* sqlite3.c:139362:17: */ +func sqlite3ExpandReturning(tls *libc.TLS, pParse uintptr, pList uintptr, pTab uintptr) uintptr { /* sqlite3.c:139373:17: */ var pNew uintptr = uintptr(0) var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var i int32 @@ -134161,7 +134206,7 @@ func sqlite3ExpandReturning(tls *libc.TLS, pParse uintptr, pList uintptr, pTab u // Generate code for the RETURNING trigger. Unlike other triggers // that invoke a subprogram in the bytecode, the code for RETURNING // is generated in-line. -func codeReturningTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, regIn int32) { /* sqlite3.c:139414:13: */ +func codeReturningTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, regIn int32) { /* sqlite3.c:139425:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -134206,7 +134251,7 @@ func codeReturningTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab // Generate VDBE code for the statements inside the body of a single // trigger. -func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf int32) int32 { /* sqlite3.c:139466:12: */ +func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf int32) int32 { /* sqlite3.c:139477:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -134293,7 +134338,7 @@ func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf // Parse context structure pFrom has just been used to create a sub-vdbe // (trigger program). If an error has occurred, transfer error information // from pFrom to pTo. -func transferParseError(tls *libc.TLS, pTo uintptr, pFrom uintptr) { /* sqlite3.c:139570:13: */ +func transferParseError(tls *libc.TLS, pTo uintptr, pFrom uintptr) { /* sqlite3.c:139581:13: */ if (*Parse)(unsafe.Pointer(pTo)).FnErr == 0 { (*Parse)(unsafe.Pointer(pTo)).FzErrMsg = (*Parse)(unsafe.Pointer(pFrom)).FzErrMsg @@ -134306,7 +134351,7 @@ func transferParseError(tls *libc.TLS, pTo uintptr, pFrom uintptr) { /* sqlite3. // Create and populate a new TriggerPrg object with a sub-program // implementing trigger pTrigger with ON CONFLICT policy orconf. -func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139586:19: */ +func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139597:19: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -134413,7 +134458,7 @@ func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintpt // trigger pTrigger with default ON CONFLICT algorithm orconf. If no such // TriggerPrg object exists, a new object is allocated and populated before // being returned. -func getRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139701:19: */ +func getRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139712:19: */ var pRoot uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -134441,7 +134486,7 @@ func getRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr // table pTab. The reg, orconf and ignoreJump parameters passed to this // function are the same as those described in the header function for // sqlite3CodeRowTrigger() -func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139735:21: */ +func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139746:21: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) // Main VM var pPrg uintptr pPrg = getRowTrigger(tls, pParse, p, pTab, orconf) @@ -134501,7 +134546,7 @@ func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab // trigger program to use (REPLACE, IGNORE etc.). Parameter ignoreJump // is the instruction that control should jump to if a trigger program // raises an IGNORE exception. -func Xsqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op int32, pChanges uintptr, tr_tm int32, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139807:21: */ +func Xsqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op int32, pChanges uintptr, tr_tm int32, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139818:21: */ var p uintptr // Used to iterate through pTrigger list for p = pTrigger; p != 0; p = (*Trigger)(unsafe.Pointer(p)).FpNext { @@ -134549,7 +134594,7 @@ func Xsqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op // included in the returned mask if the TRIGGER_BEFORE bit is set in the // tr_tm parameter. Similarly, values accessed by AFTER triggers are only // included in the returned mask if the TRIGGER_AFTER bit is set in tr_tm. -func Xsqlite3TriggerColmask(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pChanges uintptr, isNew int32, tr_tm int32, pTab uintptr, orconf int32) U32 { /* sqlite3.c:139877:20: */ +func Xsqlite3TriggerColmask(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pChanges uintptr, isNew int32, tr_tm int32, pTab uintptr, orconf int32) U32 { /* sqlite3.c:139888:20: */ var op int32 if pChanges != 0 { op = TK_UPDATE @@ -134606,7 +134651,7 @@ func Xsqlite3TriggerColmask(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pCh // (not a virtual table) then the value might have been stored as an // integer. In that case, add an OP_RealAffinity opcode to make sure // it has been converted into REAL. -func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg int32) { /* sqlite3.c:139975:21: */ +func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg int32) { /* sqlite3.c:139986:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -134635,7 +134680,7 @@ func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg // aXRef[j] will be non-negative if column j of the original table is // being updated. chngRowid will be true if the rowid of the table is // being updated. -func indexColumnIsBeingUpdated(tls *libc.TLS, pIdx uintptr, iCol int32, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140007:12: */ +func indexColumnIsBeingUpdated(tls *libc.TLS, pIdx uintptr, iCol int32, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140018:12: */ var iIdxCol I16 = *(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(iCol)*2)) // Cannot index rowid if int32(iIdxCol) >= 0 { @@ -134656,7 +134701,7 @@ func indexColumnIsBeingUpdated(tls *libc.TLS, pIdx uintptr, iCol int32, aXRef ui // aXRef[j] will be non-negative if column j of the original table is // being updated. chngRowid will be true if the rowid of the table is // being updated. -func indexWhereClauseMightChange(tls *libc.TLS, pIdx uintptr, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140037:12: */ +func indexWhereClauseMightChange(tls *libc.TLS, pIdx uintptr, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140048:12: */ if (*Index)(unsafe.Pointer(pIdx)).FpPartIdxWhere == uintptr(0) { return 0 } @@ -134668,7 +134713,7 @@ func indexWhereClauseMightChange(tls *libc.TLS, pIdx uintptr, aXRef uintptr, chn // Expr.iColumn set to value (iCol+1). The resolver will modify the // expression to be a TK_COLUMN reading column iCol of the first // table in the source-list (pSrc->a[0]). -func exprRowColumn(tls *libc.TLS, pParse uintptr, iCol int32) uintptr { /* sqlite3.c:140053:13: */ +func exprRowColumn(tls *libc.TLS, pParse uintptr, iCol int32) uintptr { /* sqlite3.c:140064:13: */ var pRet uintptr = Xsqlite3PExpr(tls, pParse, TK_ROW, uintptr(0), uintptr(0)) if pRet != 0 { (*Expr)(unsafe.Pointer(pRet)).FiColumn = (YnVar(iCol + 1)) @@ -134712,7 +134757,7 @@ func exprRowColumn(tls *libc.TLS, pParse uintptr, iCol int32) uintptr { /* sqlit // records with automatically assigned integer keys For intkey tables, the // rowid value in is used as the integer key, and the // remaining fields make up the table record. -func updateFromSelect(tls *libc.TLS, pParse uintptr, iEph int32, pPk uintptr, pChanges uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:140097:13: */ +func updateFromSelect(tls *libc.TLS, pParse uintptr, iEph int32, pPk uintptr, pChanges uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:140108:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -134790,7 +134835,7 @@ func updateFromSelect(tls *libc.TLS, pParse uintptr, iEph int32, pPk uintptr, pC // onError | pChanges | pWhere // \_______________________/ // pTabList -func Xsqlite3Update(tls *libc.TLS, pParse uintptr, pTabList uintptr, pChanges uintptr, pWhere uintptr, onError int32, pOrderBy uintptr, pLimit uintptr, pUpsert uintptr) { /* sqlite3.c:140191:21: */ +func Xsqlite3Update(tls *libc.TLS, pParse uintptr, pTabList uintptr, pChanges uintptr, pWhere uintptr, onError int32, pOrderBy uintptr, pLimit uintptr, pUpsert uintptr) { /* sqlite3.c:140202:21: */ bp := tls.Alloc(108) defer tls.Free(108) @@ -136176,7 +136221,7 @@ update_cleanup: // The "onepass" strategy does not use an ephemeral table. Instead, it // stores the same values (A, B and C above) in a register array and // makes a single invocation of VUpdate. -func updateVirtualTable(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pChanges uintptr, pRowid uintptr, aXRef uintptr, pWhere uintptr, onError int32) { /* sqlite3.c:141073:13: */ +func updateVirtualTable(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pChanges uintptr, pRowid uintptr, aXRef uintptr, pWhere uintptr, onError int32) { /* sqlite3.c:141084:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -136348,7 +136393,7 @@ func updateVirtualTable(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintpt // #include "sqliteInt.h" // Free a list of Upsert objects -func upsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141259:29: */ +func upsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141270:29: */ for ok := true; ok; ok = p != 0 { var pNext uintptr = (*Upsert)(unsafe.Pointer(p)).FpNextUpsert Xsqlite3ExprListDelete(tls, db, (*Upsert)(unsafe.Pointer(p)).FpUpsertTarget) @@ -136361,14 +136406,14 @@ func upsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141259:29 } } -func Xsqlite3UpsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141271:21: */ +func Xsqlite3UpsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141282:21: */ if p != 0 { upsertDelete(tls, db, p) } } // Duplicate an Upsert object. -func Xsqlite3UpsertDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:141279:23: */ +func Xsqlite3UpsertDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:141290:23: */ if p == uintptr(0) { return uintptr(0) } @@ -136381,7 +136426,7 @@ func Xsqlite3UpsertDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite } // Create a new Upsert object. -func Xsqlite3UpsertNew(tls *libc.TLS, db uintptr, pTarget uintptr, pTargetWhere uintptr, pSet uintptr, pWhere uintptr, pNext uintptr) uintptr { /* sqlite3.c:141293:23: */ +func Xsqlite3UpsertNew(tls *libc.TLS, db uintptr, pTarget uintptr, pTargetWhere uintptr, pSet uintptr, pWhere uintptr, pNext uintptr) uintptr { /* sqlite3.c:141304:23: */ var pNew uintptr pNew = Xsqlite3DbMallocZero(tls, db, uint64(unsafe.Sizeof(Upsert{}))) if pNew == uintptr(0) { @@ -136407,7 +136452,7 @@ func Xsqlite3UpsertNew(tls *libc.TLS, db uintptr, pTarget uintptr, pTargetWhere // // Return SQLITE_OK if everything works, or an error code is something // is wrong. -func Xsqlite3UpsertAnalyzeTarget(tls *libc.TLS, pParse uintptr, pTabList uintptr, pUpsert uintptr) int32 { /* sqlite3.c:141328:20: */ +func Xsqlite3UpsertAnalyzeTarget(tls *libc.TLS, pParse uintptr, pTabList uintptr, pUpsert uintptr) int32 { /* sqlite3.c:141339:20: */ bp := tls.Alloc(232) defer tls.Free(232) @@ -136549,7 +136594,7 @@ __3: // Return true if pUpsert is the last ON CONFLICT clause with a // conflict target, or if pUpsert is followed by another ON CONFLICT // clause that targets the INTEGER PRIMARY KEY. -func Xsqlite3UpsertNextIsIPK(tls *libc.TLS, pUpsert uintptr) int32 { /* sqlite3.c:141455:20: */ +func Xsqlite3UpsertNextIsIPK(tls *libc.TLS, pUpsert uintptr) int32 { /* sqlite3.c:141466:20: */ var pNext uintptr if pUpsert == uintptr(0) { return 0 @@ -136571,7 +136616,7 @@ func Xsqlite3UpsertNextIsIPK(tls *libc.TLS, pUpsert uintptr) int32 { /* sqlite3. // a particular index pIdx, return a pointer to the particular ON CONFLICT // clause that applies to the index. Or, if the index is not subject to // any ON CONFLICT clause, return NULL. -func Xsqlite3UpsertOfIndex(tls *libc.TLS, pUpsert uintptr, pIdx uintptr) uintptr { /* sqlite3.c:141471:23: */ +func Xsqlite3UpsertOfIndex(tls *libc.TLS, pUpsert uintptr, pIdx uintptr) uintptr { /* sqlite3.c:141482:23: */ for ((pUpsert != 0) && ((*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertTarget != uintptr(0))) && ((*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertIdx != pIdx) { @@ -136587,7 +136632,7 @@ func Xsqlite3UpsertOfIndex(tls *libc.TLS, pUpsert uintptr, pIdx uintptr) uintptr // currently points to the conflicting table row. Otherwise, if pIdx // is not NULL, then pIdx is the constraint that failed and iCur is a // cursor points to the conflicting row. -func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab uintptr, pIdx uintptr, iCur int32) { /* sqlite3.c:141491:21: */ +func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab uintptr, pIdx uintptr, iCur int32) { /* sqlite3.c:141502:21: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pSrc uintptr // FROM clause for the UPDATE @@ -136667,7 +136712,7 @@ func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab // // The execSqlF() routine does the same thing, except it accepts // a format string as its third argument -func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { /* sqlite3.c:141588:12: */ +func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { /* sqlite3.c:141599:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -136707,7 +136752,7 @@ func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { return rc } -func execSqlF(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr, va uintptr) int32 { /* sqlite3.c:141618:12: */ +func execSqlF(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr, va uintptr) int32 { /* sqlite3.c:141629:12: */ var z uintptr var ap Va_list _ = ap @@ -136751,7 +136796,7 @@ func execSqlF(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr, va uint // And a power loss in between deleting the original and renaming the // transient would cause the database file to appear to be deleted // following reboot. -func Xsqlite3Vacuum(tls *libc.TLS, pParse uintptr, pNm uintptr, pInto uintptr) { /* sqlite3.c:141661:21: */ +func Xsqlite3Vacuum(tls *libc.TLS, pParse uintptr, pNm uintptr, pInto uintptr) { /* sqlite3.c:141672:21: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = pNm @@ -136808,7 +136853,7 @@ build_vacuum_end: } // This routine implements the OP_Vacuum opcode of the VDBE. -func Xsqlite3RunVacuum(tls *libc.TLS, pzErrMsg uintptr, db uintptr, iDb int32, pOut uintptr) int32 { /* sqlite3.c:141699:36: */ +func Xsqlite3RunVacuum(tls *libc.TLS, pzErrMsg uintptr, db uintptr, iDb int32, pOut uintptr) int32 { /* sqlite3.c:141710:36: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -137145,7 +137190,7 @@ var aCopy = [10]uint8{ uint8(BTREE_TEXT_ENCODING), uint8(0), // Preserve the text encoding uint8(BTREE_USER_VERSION), uint8(0), // Preserve the user version uint8(BTREE_APPLICATION_ID), uint8(0), // Preserve the application id -} /* sqlite3.c:141890:32 */ +} /* sqlite3.c:141901:32 */ // Construct and install a Module object for a virtual table. When this // routine is called, it is guaranteed that all appropriate locks are held @@ -137153,7 +137198,7 @@ var aCopy = [10]uint8{ // // If there already exists a module with zName, replace it with the new one. // If pModule==0, then delete the module zName if it exists. -func Xsqlite3VtabCreateModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) uintptr { /* sqlite3.c:142002:23: */ +func Xsqlite3VtabCreateModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) uintptr { /* sqlite3.c:142013:23: */ var pMod uintptr var pDel uintptr var zCopy uintptr @@ -137193,7 +137238,7 @@ func Xsqlite3VtabCreateModule(tls *libc.TLS, db uintptr, zName uintptr, pModule // The actual function that does the work of creating a new module. // This function implements the sqlite3_create_module() and // sqlite3_create_module_v2() interfaces. -func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142050:12: */ +func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142061:12: */ var rc int32 = SQLITE_OK Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -137207,18 +137252,18 @@ func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAu } // External API function used to create a new virtual-table module. -func Xsqlite3_create_module(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr) int32 { /* sqlite3.c:142071:16: */ +func Xsqlite3_create_module(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr) int32 { /* sqlite3.c:142082:16: */ return createModule(tls, db, zName, pModule, pAux, uintptr(0)) } // External API function used to create a new virtual-table module. -func Xsqlite3_create_module_v2(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142086:16: */ +func Xsqlite3_create_module_v2(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142097:16: */ return createModule(tls, db, zName, pModule, pAux, xDestroy) } // External API to drop all virtual-table modules, except those named // on the azNames list. -func Xsqlite3_drop_modules(tls *libc.TLS, db uintptr, azNames uintptr) int32 { /* sqlite3.c:142103:16: */ +func Xsqlite3_drop_modules(tls *libc.TLS, db uintptr, azNames uintptr) int32 { /* sqlite3.c:142114:16: */ var pThis uintptr var pNext uintptr for pThis = (*Hash)(unsafe.Pointer((db + 536 /* &.aModule */))).Ffirst; pThis != 0; pThis = pNext { @@ -137239,7 +137284,7 @@ func Xsqlite3_drop_modules(tls *libc.TLS, db uintptr, azNames uintptr) int32 { / // Decrement the reference count on a Module object. Destroy the // module when the reference count reaches zero. -func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:142125:21: */ +func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:142136:21: */ (*Module)(unsafe.Pointer(pMod)).FnRefModule-- if (*Module)(unsafe.Pointer(pMod)).FnRefModule == 0 { @@ -137257,14 +137302,14 @@ func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlit // // If a disconnect is attempted while a virtual table is locked, // the disconnect is deferred until all locks have been removed. -func Xsqlite3VtabLock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142145:21: */ +func Xsqlite3VtabLock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142156:21: */ (*VTable)(unsafe.Pointer(pVTab)).FnRef++ } // pTab is a pointer to a Table structure representing a virtual-table. // Return a pointer to the VTable object used by connection db to access // this virtual-table, if one has been created, or NULL otherwise. -func Xsqlite3GetVTable(tls *libc.TLS, db uintptr, pTab uintptr) uintptr { /* sqlite3.c:142155:23: */ +func Xsqlite3GetVTable(tls *libc.TLS, db uintptr, pTab uintptr) uintptr { /* sqlite3.c:142166:23: */ var pVtab uintptr for pVtab = (*Table)(unsafe.Pointer(pTab)).FpVTable; (pVtab != 0) && ((*VTable)(unsafe.Pointer(pVtab)).Fdb != db); pVtab = (*VTable)(unsafe.Pointer(pVtab)).FpNext { @@ -137274,7 +137319,7 @@ func Xsqlite3GetVTable(tls *libc.TLS, db uintptr, pTab uintptr) uintptr { /* sql // Decrement the ref-count on a virtual table object. When the ref-count // reaches zero, call the xDisconnect() method to delete the object. -func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142166:21: */ +func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142177:21: */ var db uintptr = (*VTable)(unsafe.Pointer(pVTab)).Fdb (*VTable)(unsafe.Pointer(pVTab)).FnRef-- @@ -137293,7 +137338,7 @@ func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142166:21: // database connections to be disconnected at the next opportunity. // Except, if argument db is not NULL, then the entry associated with // connection db is left in the p->pVTable list. -func vtabDisconnectAll(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:142191:15: */ +func vtabDisconnectAll(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:142202:15: */ var pRet uintptr = uintptr(0) var pVTable uintptr = (*Table)(unsafe.Pointer(p)).FpVTable (*Table)(unsafe.Pointer(p)).FpVTable = uintptr(0) @@ -137328,7 +137373,7 @@ func vtabDisconnectAll(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite // used when closing database connection db to free all of its VTable // objects without disturbing the rest of the Schema object (which may // be being used by other shared-cache connections). -func Xsqlite3VtabDisconnect(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142231:21: */ +func Xsqlite3VtabDisconnect(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142242:21: */ var ppVTab uintptr for ppVTab = (p + 96 /* &.pVTable */); *(*uintptr)(unsafe.Pointer(ppVTab)) != 0; ppVTab = (*(*uintptr)(unsafe.Pointer(ppVTab)) + 40 /* &.pNext */) { @@ -137359,7 +137404,7 @@ func Xsqlite3VtabDisconnect(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c // // As a result, a sqlite3.pDisconnect cannot be accessed simultaneously // by multiple threads. It is thread-safe. -func Xsqlite3VtabUnlockList(tls *libc.TLS, db uintptr) { /* sqlite3.c:142269:21: */ +func Xsqlite3VtabUnlockList(tls *libc.TLS, db uintptr) { /* sqlite3.c:142280:21: */ var p uintptr = (*Sqlite3)(unsafe.Pointer(db)).FpDisconnect if p != 0 { @@ -137385,7 +137430,7 @@ func Xsqlite3VtabUnlockList(tls *libc.TLS, db uintptr) { /* sqlite3.c:142269:21: // structure being xDisconnected and free). Any other VTable structures // in the list are moved to the sqlite3.pDisconnect list of the associated // database connection. -func Xsqlite3VtabClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142300:21: */ +func Xsqlite3VtabClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142311:21: */ if !(db != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FpnBytesFreed == uintptr(0)) { vtabDisconnectAll(tls, uintptr(0), p) } @@ -137404,7 +137449,7 @@ func Xsqlite3VtabClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:1423 // The string is not copied - the pointer is stored. The // string will be freed automatically when the table is // deleted. -func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintptr) { /* sqlite3.c:142317:13: */ +func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintptr) { /* sqlite3.c:142328:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -137428,7 +137473,7 @@ func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintp // The parser calls this routine when it first sees a CREATE VIRTUAL TABLE // statement. The module name has been parsed, but the optional list // of parameters that follow the module name are still pending. -func Xsqlite3VtabBeginParse(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pModuleName uintptr, ifNotExists int32) { /* sqlite3.c:142340:21: */ +func Xsqlite3VtabBeginParse(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pModuleName uintptr, ifNotExists int32) { /* sqlite3.c:142351:21: */ var pTable uintptr // The new virtual table var db uintptr // Database connection @@ -137461,7 +137506,7 @@ func Xsqlite3VtabBeginParse(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName // This routine takes the module argument that has been accumulating // in pParse->zArg[] and appends it to the list of arguments on the // virtual table currently under construction in pParse->pTable. -func addArgumentToVtab(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142388:13: */ +func addArgumentToVtab(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142399:13: */ if ((*Parse)(unsafe.Pointer(pParse)).FsArg.Fz != 0) && ((*Parse)(unsafe.Pointer(pParse)).FpNewTable != 0) { var z uintptr = (*Parse)(unsafe.Pointer(pParse)).FsArg.Fz var n int32 = int32((*Parse)(unsafe.Pointer(pParse)).FsArg.Fn) @@ -137472,7 +137517,7 @@ func addArgumentToVtab(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142388:13: // The parser calls this routine after the CREATE VIRTUAL TABLE statement // has been completely parsed. -func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* sqlite3.c:142401:21: */ +func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* sqlite3.c:142412:21: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -137552,7 +137597,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s // The parser calls this routine when it sees the first token // of an argument to the module name in a CREATE VIRTUAL TABLE statement. -func Xsqlite3VtabArgInit(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142487:21: */ +func Xsqlite3VtabArgInit(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142498:21: */ addArgumentToVtab(tls, pParse) (*Parse)(unsafe.Pointer(pParse)).FsArg.Fz = uintptr(0) (*Parse)(unsafe.Pointer(pParse)).FsArg.Fn = uint32(0) @@ -137560,7 +137605,7 @@ func Xsqlite3VtabArgInit(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142487:21 // The parser calls this routine for each token after the first token // in an argument to the module name in a CREATE VIRTUAL TABLE statement. -func Xsqlite3VtabArgExtend(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:142497:21: */ +func Xsqlite3VtabArgExtend(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:142508:21: */ var pArg uintptr = (pParse + 352 /* &.sArg */) if (*Token)(unsafe.Pointer(pArg)).Fz == uintptr(0) { (*Token)(unsafe.Pointer(pArg)).Fz = (*Token)(unsafe.Pointer(p)).Fz @@ -137574,7 +137619,7 @@ func Xsqlite3VtabArgExtend(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite // Invoke a virtual table constructor (either xCreate or xConnect). The // pointer to the function to invoke is passed as the fourth parameter // to this procedure. -func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, xConstruct uintptr, pzErr uintptr) int32 { /* sqlite3.c:142513:12: */ +func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, xConstruct uintptr, pzErr uintptr) int32 { /* sqlite3.c:142524:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -137706,7 +137751,7 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, // and an error left in pParse. // // This call is a no-op if table pTab is not a virtual table. -func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:142646:20: */ +func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:142657:20: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -137742,7 +137787,7 @@ func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 // Grow the db->aVTrans[] array so that there is room for at least one // more v-table. Return SQLITE_NOMEM if a malloc fails, or SQLITE_OK otherwise. -func growVTrans(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142681:12: */ +func growVTrans(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142692:12: */ var ARRAY_INCR int32 = 5 // Grow the sqlite3.aVTrans array if required @@ -137762,7 +137807,7 @@ func growVTrans(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142681:12: */ // Add the virtual table pVTab to the array sqlite3.aVTrans[]. Space should // have already been reserved using growVTrans(). -func addToVTrans(tls *libc.TLS, db uintptr, pVTab uintptr) { /* sqlite3.c:142704:13: */ +func addToVTrans(tls *libc.TLS, db uintptr, pVTab uintptr) { /* sqlite3.c:142715:13: */ // Add pVtab to the end of sqlite3.aVTrans *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaVTrans + uintptr(libc.PostIncInt32(&(*Sqlite3)(unsafe.Pointer(db)).FnVTrans, 1))*8)) = pVTab Xsqlite3VtabLock(tls, pVTab) @@ -137774,7 +137819,7 @@ func addToVTrans(tls *libc.TLS, db uintptr, pVTab uintptr) { /* sqlite3.c:142704 // If an error occurs, *pzErr is set to point to an English language // description of the error and an SQLITE_XXX error code is returned. // In this case the caller must call sqlite3DbFree(db, ) on *pzErr. -func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:142718:20: */ +func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:142729:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -137814,7 +137859,7 @@ func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, // This function is used to set the schema of a virtual table. It is only // valid to call this function from within the xCreate() or xConnect() of a // virtual table module. -func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int32 { /* sqlite3.c:142759:16: */ +func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int32 { /* sqlite3.c:142770:16: */ bp := tls.Alloc(424) defer tls.Free(424) @@ -137829,7 +137874,7 @@ func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int3 if !(pCtx != 0) || ((*VtabCtx)(unsafe.Pointer(pCtx)).FbDeclared != 0) { Xsqlite3Error(tls, db, SQLITE_MISUSE) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) - return Xsqlite3MisuseError(tls, 142776) + return Xsqlite3MisuseError(tls, 142787) } pTab = (*VtabCtx)(unsafe.Pointer(pCtx)).FpTab @@ -137895,7 +137940,7 @@ func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int3 // when a DROP TABLE is mentioned. // // This call is a no-op if zTab is not a virtual table. -func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) int32 { /* sqlite3.c:142844:20: */ +func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) int32 { /* sqlite3.c:142855:20: */ var rc int32 = SQLITE_OK var pTab uintptr @@ -137936,7 +137981,7 @@ func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) // the offset of the method to call in the sqlite3_module structure. // // The array is cleared after invoking the callbacks. -func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:142885:13: */ +func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:142896:13: */ var i int32 if (*Sqlite3)(unsafe.Pointer(db)).FaVTrans != 0 { var aVTrans uintptr = (*Sqlite3)(unsafe.Pointer(db)).FaVTrans @@ -137964,7 +138009,7 @@ func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:14288 // SQLITE_OK if all xSync operations are successful. // // If an error message is available, leave it in p->zErrMsg. -func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:142913:20: */ +func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:142924:20: */ var i int32 var rc int32 = SQLITE_OK var aVTrans uintptr = (*Sqlite3)(unsafe.Pointer(db)).FaVTrans @@ -137984,14 +138029,14 @@ func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c // Invoke the xRollback method of all virtual tables in the // sqlite3.aVTrans array. Then clear the array itself. -func Xsqlite3VtabRollback(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142935:20: */ +func Xsqlite3VtabRollback(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142946:20: */ callFinaliser(tls, db, int32((uintptr(0) + 136 /* &.xRollback */))) return SQLITE_OK } // Invoke the xCommit method of all virtual tables in the // sqlite3.aVTrans array. Then clear the array itself. -func Xsqlite3VtabCommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142944:20: */ +func Xsqlite3VtabCommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142955:20: */ callFinaliser(tls, db, int32((uintptr(0) + 128 /* &.xCommit */))) return SQLITE_OK } @@ -138002,7 +138047,7 @@ func Xsqlite3VtabCommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142944:2 // // If the xBegin call is successful, place the sqlite3_vtab pointer // in the sqlite3.aVTrans array. -func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqlite3.c:142957:20: */ +func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqlite3.c:142968:20: */ var rc int32 = SQLITE_OK var pModule uintptr @@ -138059,7 +138104,7 @@ func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqli // processing is abandoned and the error returned to the caller of this // function immediately. If all calls to virtual table methods are successful, // SQLITE_OK is returned. -func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32) int32 { /* sqlite3.c:143017:20: */ +func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32) int32 { /* sqlite3.c:143028:20: */ var rc int32 = SQLITE_OK if (*Sqlite3)(unsafe.Pointer(db)).FaVTrans != 0 { @@ -138105,7 +138150,7 @@ func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32 // Return either the pDef argument (indicating no change) or a // new FuncDef structure that is marked as ephemeral using the // SQLITE_FUNC_EPHEM flag. -func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg int32, pExpr uintptr) uintptr { /* sqlite3.c:143065:24: */ +func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg int32, pExpr uintptr) uintptr { /* sqlite3.c:143076:24: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -138169,7 +138214,7 @@ func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg // array so that an OP_VBegin will get generated for it. Add pTab to the // array if it is missing. If pTab is already in the array, this routine // is a no-op. -func Xsqlite3VtabMakeWritable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:143134:21: */ +func Xsqlite3VtabMakeWritable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:143145:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -138207,7 +138252,7 @@ func Xsqlite3VtabMakeWritable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* // // Any virtual table module for which xConnect and xCreate are the same // method can have an eponymous virtual table instance. -func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) int32 { /* sqlite3.c:143167:20: */ +func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) int32 { /* sqlite3.c:143178:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -138251,7 +138296,7 @@ func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) // Erase the eponymous virtual table instance associated with // virtual table module pMod, if it exists. -func Xsqlite3VtabEponymousTableClear(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:143204:21: */ +func Xsqlite3VtabEponymousTableClear(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:143215:21: */ var pTab uintptr = (*Module)(unsafe.Pointer(pMod)).FpEpoTab if pTab != uintptr(0) { // Mark the table as Ephemeral prior to deleting it, so that the @@ -138268,19 +138313,19 @@ func Xsqlite3VtabEponymousTableClear(tls *libc.TLS, db uintptr, pMod uintptr) { // // The results of this routine are undefined unless it is called from // within an xUpdate method. -func Xsqlite3_vtab_on_conflict(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:143223:16: */ +func Xsqlite3_vtab_on_conflict(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:143234:16: */ return int32(aMap1[(int32((*Sqlite3)(unsafe.Pointer(db)).FvtabOnConflict) - 1)]) } var aMap1 = [5]uint8{ uint8(SQLITE_ROLLBACK), uint8(SQLITE_ABORT), uint8(SQLITE_FAIL), uint8(SQLITE_IGNORE), uint8(SQLITE_REPLACE), -} /* sqlite3.c:143224:30 */ +} /* sqlite3.c:143235:30 */ // Call from within the xCreate() or xConnect() methods to provide // the SQLite core with additional information about the behavior // of the virtual table being implemented. -func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:143241:16: */ +func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:143252:16: */ var ap Va_list _ = ap var rc int32 = SQLITE_OK @@ -138289,7 +138334,7 @@ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) p = (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx if !(p != 0) { - rc = Xsqlite3MisuseError(tls, 143252) + rc = Xsqlite3MisuseError(tls, 143263) } else { ap = va @@ -138317,7 +138362,7 @@ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 fallthrough default: { - rc = Xsqlite3MisuseError(tls, 143270) + rc = Xsqlite3MisuseError(tls, 143281) break } @@ -138421,23 +138466,23 @@ type WhereClause1 = struct { // a separate source file for easier editing. // Forward references -type WhereClause = WhereClause1 /* sqlite3.c:143330:28 */ +type WhereClause = WhereClause1 /* sqlite3.c:143341:28 */ type WhereMaskSet1 = struct { FbVarSelect int32 Fn int32 Fix [64]int32 } /* sqlite3.c:14827:9 */ -type WhereMaskSet = WhereMaskSet1 /* sqlite3.c:143331:29 */ +type WhereMaskSet = WhereMaskSet1 /* sqlite3.c:143342:29 */ type WhereOrInfo1 = struct { Fwc WhereClause Findexable Bitmask -} /* sqlite3.c:143332:9 */ +} /* sqlite3.c:143343:9 */ -type WhereOrInfo = WhereOrInfo1 /* sqlite3.c:143332:28 */ -type WhereAndInfo1 = struct{ Fwc WhereClause } /* sqlite3.c:143333:9 */ +type WhereOrInfo = WhereOrInfo1 /* sqlite3.c:143343:28 */ +type WhereAndInfo1 = struct{ Fwc WhereClause } /* sqlite3.c:143344:9 */ -type WhereAndInfo = WhereAndInfo1 /* sqlite3.c:143333:29 */ +type WhereAndInfo = WhereAndInfo1 /* sqlite3.c:143344:29 */ type WhereLevel1 = struct { FiLeftJoin int32 FiTabCur int32 @@ -138467,7 +138512,7 @@ type WhereLevel1 = struct { FnotReady Bitmask } /* sqlite3.c:14827:9 */ -type WhereLevel = WhereLevel1 /* sqlite3.c:143334:27 */ +type WhereLevel = WhereLevel1 /* sqlite3.c:143345:27 */ type WhereLoop1 = struct { Fprereq Bitmask FmaskSelf Bitmask @@ -138495,7 +138540,7 @@ type WhereLoop1 = struct { FaLTermSpace [3]uintptr } /* sqlite3.c:14827:9 */ -type WhereLoop = WhereLoop1 /* sqlite3.c:143335:26 */ +type WhereLoop = WhereLoop1 /* sqlite3.c:143346:26 */ type WherePath1 = struct { FmaskLoop Bitmask FrevLoop Bitmask @@ -138505,9 +138550,9 @@ type WherePath1 = struct { FisOrdered I8 _ [1]byte FaLoop uintptr -} /* sqlite3.c:143336:9 */ +} /* sqlite3.c:143347:9 */ -type WherePath = WherePath1 /* sqlite3.c:143336:26 */ +type WherePath = WherePath1 /* sqlite3.c:143347:26 */ type WhereTerm1 = struct { FpExpr uintptr FpWC uintptr @@ -138529,7 +138574,7 @@ type WhereTerm1 = struct { FprereqAll Bitmask } /* sqlite3.c:14827:9 */ -type WhereTerm = WhereTerm1 /* sqlite3.c:143337:26 */ +type WhereTerm = WhereTerm1 /* sqlite3.c:143348:26 */ type WhereLoopBuilder1 = struct { FpWInfo uintptr FpWC uintptr @@ -138543,9 +138588,9 @@ type WhereLoopBuilder1 = struct { _ [2]byte FiPlanLimit uint32 _ [4]byte -} /* sqlite3.c:143338:9 */ +} /* sqlite3.c:143349:9 */ -type WhereLoopBuilder = WhereLoopBuilder1 /* sqlite3.c:143338:33 */ +type WhereLoopBuilder = WhereLoopBuilder1 /* sqlite3.c:143349:33 */ type WhereScan1 = struct { FpOrigWC uintptr FpWC uintptr @@ -138560,24 +138605,24 @@ type WhereScan1 = struct { FaiCur [11]int32 FaiColumn [11]I16 _ [2]byte -} /* sqlite3.c:143339:9 */ +} /* sqlite3.c:143350:9 */ -type WhereScan = WhereScan1 /* sqlite3.c:143339:26 */ +type WhereScan = WhereScan1 /* sqlite3.c:143350:26 */ type WhereOrCost1 = struct { Fprereq Bitmask FrRun LogEst FnOut LogEst _ [4]byte -} /* sqlite3.c:143338:9 */ +} /* sqlite3.c:143349:9 */ -type WhereOrCost = WhereOrCost1 /* sqlite3.c:143340:28 */ +type WhereOrCost = WhereOrCost1 /* sqlite3.c:143351:28 */ type WhereOrSet1 = struct { Fn U16 _ [6]byte Fa [3]WhereOrCost -} /* sqlite3.c:143338:9 */ +} /* sqlite3.c:143349:9 */ -type WhereOrSet = WhereOrSet1 /* sqlite3.c:143341:27 */ +type WhereOrSet = WhereOrSet1 /* sqlite3.c:143352:27 */ // This object contains information needed to implement a single nested // loop in WHERE clause. @@ -138599,7 +138644,7 @@ type InLoop = struct { FnPrefix int32 FeEndLoopOp U8 _ [3]byte -} /* sqlite3.c:143380:7 */ +} /* sqlite3.c:143391:7 */ // Allowed values for WhereLoopBuider.bldFlags @@ -138647,7 +138692,7 @@ type WhereExprMod1 = struct { // of an index rather than an expression or a virtual column. All // such transformations need to be undone at the end of WHERE clause // processing. -type WhereExprMod = WhereExprMod1 /* sqlite3.c:143744:29 */ +type WhereExprMod = WhereExprMod1 /* sqlite3.c:143755:29 */ // Bitmasks for the operators on WhereTerm objects. These are all // operators that are of interest to the query planner. An @@ -138669,7 +138714,7 @@ type WhereExprMod = WhereExprMod1 /* sqlite3.c:143744:29 */ //************* Continuing where we left off in wherecode.c ***************** // Return the name of the i-th column of the pIdx index. -func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* sqlite3.c:143924:19: */ +func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* sqlite3.c:143935:19: */ i = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) if i == (-2) { return ts + 19853 /* "" */ @@ -138686,7 +138731,7 @@ func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* s // at a time. This routine adds a new term to the end of the expression. // Terms are separated by AND so add the "AND" text for second and subsequent // terms only. -func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, iTerm int32, bAnd int32, zOp uintptr) { /* sqlite3.c:143939:13: */ +func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, iTerm int32, bAnd int32, zOp uintptr) { /* sqlite3.c:143950:13: */ var i int32 if bAnd != 0 { @@ -138734,7 +138779,7 @@ func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, i // string similar to: // // "a=? AND b>?" -func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3.c:143983:13: */ +func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3.c:143994:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -138779,7 +138824,7 @@ func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3. // // If an OP_Explain opcode is added to the VM, its address is returned. // Otherwise, if no OP_Explain is coded, zero is returned. -func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr, pLevel uintptr, wctrlFlags U16) int32 { /* sqlite3.c:144017:20: */ +func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr, pLevel uintptr, wctrlFlags U16) int32 { /* sqlite3.c:144028:20: */ bp := tls.Alloc(188) defer tls.Free(188) @@ -138918,7 +138963,7 @@ func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr // The TERM_LIKECOND marking indicates that the term should be coded inside // a conditional such that is only evaluated on the second pass of a // LIKE-optimization loop, when scanning BLOBs instead of strings. -func disableTerm(tls *libc.TLS, pLevel uintptr, pTerm uintptr) { /* sqlite3.c:144192:13: */ +func disableTerm(tls *libc.TLS, pLevel uintptr, pTerm uintptr) { /* sqlite3.c:144203:13: */ var nLoop int32 = 0 for (((int32((*WhereTerm)(unsafe.Pointer(pTerm)).FwtFlags) & TERM_CODED) == 0) && @@ -138951,7 +138996,7 @@ func disableTerm(tls *libc.TLS, pLevel uintptr, pTerm uintptr) { /* sqlite3.c:14 // // This routine makes its own copy of zAff so that the caller is free // to modify zAff after this routine returns. -func codeApplyAffinity(tls *libc.TLS, pParse uintptr, base int32, n int32, zAff uintptr) { /* sqlite3.c:144224:13: */ +func codeApplyAffinity(tls *libc.TLS, pParse uintptr, base int32, n int32, zAff uintptr) { /* sqlite3.c:144235:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe if zAff == uintptr(0) { @@ -138984,7 +139029,7 @@ func codeApplyAffinity(tls *libc.TLS, pParse uintptr, base int32, n int32, zAff // // * the comparison will be performed with no affinity, or // * the affinity change in zAff is guaranteed not to change the value. -func updateRangeAffinityStr(tls *libc.TLS, pRight uintptr, n int32, zAff uintptr) { /* sqlite3.c:144261:13: */ +func updateRangeAffinityStr(tls *libc.TLS, pRight uintptr, n int32, zAff uintptr) { /* sqlite3.c:144272:13: */ var i int32 for i = 0; i < n; i++ { var p uintptr = Xsqlite3VectorFieldSubexpr(tls, pRight, i) @@ -139022,7 +139067,7 @@ func updateRangeAffinityStr(tls *libc.TLS, pRight uintptr, n int32, zAff uintptr // The reduced pX is different from the original (obviously) and thus is // only used for indexing, to improve performance. The original unaltered // IN expression must also be run on each output row for correctness. -func removeUnindexableInClauseTerms(tls *libc.TLS, pParse uintptr, iEq int32, pLoop uintptr, pX uintptr) uintptr { /* sqlite3.c:144307:13: */ +func removeUnindexableInClauseTerms(tls *libc.TLS, pParse uintptr, iEq int32, pLoop uintptr, pX uintptr) uintptr { /* sqlite3.c:144318:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pNew uintptr pNew = Xsqlite3ExprDup(tls, db, pX, 0) @@ -139092,7 +139137,7 @@ func removeUnindexableInClauseTerms(tls *libc.TLS, pParse uintptr, iEq int32, pL // For a constraint of the form X=expr, the expression is evaluated in // straight-line code. For constraints of the form X IN (...) // this routine sets up a loop that will iterate over all values of X. -func codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintptr, iEq int32, bRev int32, iTarget int32) int32 { /* sqlite3.c:144389:12: */ +func codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintptr, iEq int32, bRev int32, iTarget int32) int32 { /* sqlite3.c:144400:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -139272,7 +139317,7 @@ func codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintp // no conversion should be attempted before using a t2.b value as part of // a key to search the index. Hence the first byte in the returned affinity // string in this example would be set to SQLITE_AFF_BLOB. -func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev int32, nExtraReg int32, pzAff uintptr) int32 { /* sqlite3.c:144570:12: */ +func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev int32, nExtraReg int32, pzAff uintptr) int32 { /* sqlite3.c:144581:12: */ var nEq U16 // The number of == or IN constraints to code var nSkip U16 // Number of left-most columns to skip var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // The vm under construction @@ -139387,7 +139432,7 @@ func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev in // on. For each table column, if the column is the i'th column of the // index, then the corresponding array entry is set to (i+1). If the column // does not appear in the index at all, the array entry is set to 0. -func codeDeferredSeek(tls *libc.TLS, pWInfo uintptr, pIdx uintptr, iCur int32, iIdxCur int32) { /* sqlite3.c:144942:13: */ +func codeDeferredSeek(tls *libc.TLS, pWInfo uintptr, pIdx uintptr, iCur int32, iIdxCur int32) { /* sqlite3.c:144953:13: */ var pParse uintptr = (*WhereInfo)(unsafe.Pointer(pWInfo)).FpParse // Parse context var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // Vdbe to generate code within @@ -139428,7 +139473,7 @@ func codeDeferredSeek(tls *libc.TLS, pWInfo uintptr, pIdx uintptr, iCur int32, i // If the expression is not a vector, then nReg must be passed 1. In // this case, generate code to evaluate the expression and leave the // result in register iReg. -func codeExprOrVector(tls *libc.TLS, pParse uintptr, p uintptr, iReg int32, nReg int32) { /* sqlite3.c:144986:13: */ +func codeExprOrVector(tls *libc.TLS, pParse uintptr, p uintptr, iReg int32, nReg int32) { /* sqlite3.c:144997:13: */ if (p != 0) && (Xsqlite3ExprIsVector(tls, p) != 0) { if ((*Expr)(unsafe.Pointer(p)).Fflags & U32(EP_xIsSelect)) != 0 { @@ -139454,10 +139499,10 @@ func codeExprOrVector(tls *libc.TLS, pParse uintptr, p uintptr, iReg int32, nReg // An instance of the IdxExprTrans object carries information about a // mapping from an expression on table columns into a column in an index // down through the Walker. -type IdxExprTrans = IdxExprTrans1 /* sqlite3.c:145024:3 */ +type IdxExprTrans = IdxExprTrans1 /* sqlite3.c:145035:3 */ // Preserve pExpr on the WhereETrans list of the WhereInfo. -func preserveExpr(tls *libc.TLS, pTrans uintptr, pExpr uintptr) { /* sqlite3.c:145029:13: */ +func preserveExpr(tls *libc.TLS, pTrans uintptr, pExpr uintptr) { /* sqlite3.c:145040:13: */ var pNew uintptr pNew = Xsqlite3DbMallocRaw(tls, (*IdxExprTrans)(unsafe.Pointer(pTrans)).Fdb, uint64(unsafe.Sizeof(WhereExprMod{}))) if pNew == uintptr(0) { @@ -139474,7 +139519,7 @@ func preserveExpr(tls *libc.TLS, pTrans uintptr, pExpr uintptr) { /* sqlite3.c:1 // // If pExpr matches, then transform it into a reference to the index column // that contains the value of pExpr. -func whereIndexExprTransNode(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145045:12: */ +func whereIndexExprTransNode(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145056:12: */ var pX uintptr = *(*uintptr)(unsafe.Pointer(p + 40 /* &.u */)) if Xsqlite3ExprCompare(tls, uintptr(0), pExpr, (*IdxExprTrans)(unsafe.Pointer(pX)).FpIdxExpr, (*IdxExprTrans)(unsafe.Pointer(pX)).FiTabCur) == 0 { preserveExpr(tls, pX, pExpr) @@ -139494,7 +139539,7 @@ func whereIndexExprTransNode(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* // A walker node callback that translates a column reference to a table // into a corresponding column reference of an index. -func whereIndexExprTransColumn(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145067:12: */ +func whereIndexExprTransColumn(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145078:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN { var pX uintptr = *(*uintptr)(unsafe.Pointer(p + 40 /* &.u */)) if ((*Expr)(unsafe.Pointer(pExpr)).FiTable == (*IdxExprTrans)(unsafe.Pointer(pX)).FiTabCur) && (int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) == (*IdxExprTrans)(unsafe.Pointer(pX)).FiTabCol) { @@ -139516,7 +139561,7 @@ func whereIndexExprTransColumn(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { // 2019-10-24: Updated to also translate references to a VIRTUAL column in // the table into references to the corresponding (stored) column of the // index. -func whereIndexExprTrans(tls *libc.TLS, pIdx uintptr, iTabCur int32, iIdxCur int32, pWInfo uintptr) { /* sqlite3.c:145092:13: */ +func whereIndexExprTrans(tls *libc.TLS, pIdx uintptr, iTabCur int32, iIdxCur int32, pWInfo uintptr) { /* sqlite3.c:145103:13: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -139580,7 +139625,7 @@ func whereIndexExprTrans(tls *libc.TLS, pIdx uintptr, iTabCur int32, iIdxCur int // WHERE clause terms on the query, and if any of those terms must be // true because pTruth is true, then mark those WHERE clause terms as // coded. -func whereApplyPartialIndexConstraints(tls *libc.TLS, pTruth uintptr, iTabCur int32, pWC uintptr) { /* sqlite3.c:145155:13: */ +func whereApplyPartialIndexConstraints(tls *libc.TLS, pTruth uintptr, iTabCur int32, pWC uintptr) { /* sqlite3.c:145166:13: */ var i int32 var pTerm uintptr for int32((*Expr)(unsafe.Pointer(pTruth)).Fop) == TK_AND { @@ -139615,7 +139660,7 @@ __3: // Generate code for the start of the iLevel-th loop in the WHERE clause // implementation described by pWInfo. -func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWInfo uintptr, iLevel int32, pLevel uintptr, notReady Bitmask) Bitmask { /* sqlite3.c:145180:24: */ +func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWInfo uintptr, iLevel int32, pLevel uintptr, notReady Bitmask) Bitmask { /* sqlite3.c:145191:24: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -140768,24 +140813,24 @@ var aStartOp = [8]U8{ U8(OP_SeekLT), // 5: (start_constraints && !startEq && bRev) U8(OP_SeekGE), // 6: (start_constraints && startEq && !bRev) U8(OP_SeekLE), // 7: (start_constraints && startEq && bRev) -} /* sqlite3.c:145527:21 */ +} /* sqlite3.c:145538:21 */ var aEndOp = [4]U8{ U8(OP_IdxGE), // 0: (end_constraints && !bRev && !endEq) U8(OP_IdxGT), // 1: (end_constraints && !bRev && endEq) U8(OP_IdxLE), // 2: (end_constraints && bRev && !endEq) U8(OP_IdxLT), // 3: (end_constraints && bRev && endEq) -} /* sqlite3.c:145537:21 */ -var aStep = [2]U8{U8(OP_Next), U8(OP_Prev)} /* sqlite3.c:146213:21 */ -var aStart = [2]U8{U8(OP_Rewind), U8(OP_Last)} /* sqlite3.c:146214:21 */ +} /* sqlite3.c:145548:21 */ +var aStep = [2]U8{U8(OP_Next), U8(OP_Prev)} /* sqlite3.c:146224:21 */ +var aStart = [2]U8{U8(OP_Rewind), U8(OP_Last)} /* sqlite3.c:146225:21 */ // Deallocate all memory associated with a WhereOrInfo object. -func whereOrInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146421:13: */ +func whereOrInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146432:13: */ Xsqlite3WhereClauseClear(tls, (p /* &.wc */)) Xsqlite3DbFree(tls, db, p) } // Deallocate all memory associated with a WhereAndInfo object. -func whereAndInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146429:13: */ +func whereAndInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146440:13: */ Xsqlite3WhereClauseClear(tls, (p /* &.wc */)) Xsqlite3DbFree(tls, db, p) } @@ -140807,7 +140852,7 @@ func whereAndInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146 // WhereTerms. All pointers to WhereTerms should be invalidated after // calling this routine. Such pointers may be reinitialized by referencing // the pWC->a[] array. -func whereClauseInsert(tls *libc.TLS, pWC uintptr, p uintptr, wtFlags U16) int32 { /* sqlite3.c:146453:12: */ +func whereClauseInsert(tls *libc.TLS, pWC uintptr, p uintptr, wtFlags U16) int32 { /* sqlite3.c:146464:12: */ var pTerm uintptr var idx int32 @@ -140845,14 +140890,14 @@ func whereClauseInsert(tls *libc.TLS, pWC uintptr, p uintptr, wtFlags U16) int32 // Return TRUE if the given operator is one of the operators that is // allowed for an indexable WHERE clause term. The allowed operators are // "=", "<", ">", "<=", ">=", "IN", "IS", and "IS NULL" -func allowedOp(tls *libc.TLS, op int32) int32 { /* sqlite3.c:146494:12: */ +func allowedOp(tls *libc.TLS, op int32) int32 { /* sqlite3.c:146505:12: */ return (libc.Bool32((((op == TK_IN) || ((op >= TK_EQ) && (op <= TK_GE))) || (op == TK_ISNULL)) || (op == TK_IS))) } // Commute a comparison operator. Expressions of the form "X op Y" // are converted into "Y op X". -func exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) U16 { /* sqlite3.c:146506:12: */ +func exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) U16 { /* sqlite3.c:146517:12: */ if ((int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(pExpr)).FpLeft)).Fop) == TK_VECTOR) || (int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(pExpr)).FpRight)).Fop) == TK_VECTOR)) || (Xsqlite3BinaryCompareCollSeq(tls, pParse, (*Expr)(unsafe.Pointer(pExpr)).FpLeft, (*Expr)(unsafe.Pointer(pExpr)).FpRight) != Xsqlite3BinaryCompareCollSeq(tls, pParse, (*Expr)(unsafe.Pointer(pExpr)).FpRight, (*Expr)(unsafe.Pointer(pExpr)).FpLeft)) { @@ -140872,7 +140917,7 @@ func exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) U16 { /* sqlite3. } // Translate from TK_xx operator to WO_xx bitmask. -func operatorMask(tls *libc.TLS, op int32) U16 { /* sqlite3.c:146529:12: */ +func operatorMask(tls *libc.TLS, op int32) U16 { /* sqlite3.c:146540:12: */ var c U16 if op == TK_IN { @@ -140899,7 +140944,7 @@ func operatorMask(tls *libc.TLS, op int32) U16 { /* sqlite3.c:146529:12: */ // that virtual tables cannot participate in the LIKE optimization.) The // collating sequence for the column on the LHS must be appropriate for // the operator. -func isLikeOrGlob(tls *libc.TLS, pParse uintptr, pExpr uintptr, ppPrefix uintptr, pisComplete uintptr, pnoCase uintptr) int32 { /* sqlite3.c:146567:12: */ +func isLikeOrGlob(tls *libc.TLS, pParse uintptr, pExpr uintptr, ppPrefix uintptr, pisComplete uintptr, pnoCase uintptr) int32 { /* sqlite3.c:146578:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -141064,7 +141109,7 @@ func isLikeOrGlob(tls *libc.TLS, pParse uintptr, pExpr uintptr, ppPrefix uintptr // of virtual table in forms (5) or (7) then return 2. // // If the expression matches none of the patterns above, return 0. -func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uintptr, ppLeft uintptr, ppRight uintptr) int32 { /* sqlite3.c:146739:12: */ +func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uintptr, ppLeft uintptr, ppRight uintptr) int32 { /* sqlite3.c:146750:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -141166,18 +141211,18 @@ type Op2 = struct { FzOp uintptr FeOp2 uint8 _ [7]byte -} /* sqlite3.c:146747:18 */ +} /* sqlite3.c:146758:18 */ var aOp = [4]Op2{ {FzOp: ts + 14596 /* "match" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_MATCH)}, {FzOp: ts + 14068 /* "glob" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_GLOB)}, {FzOp: ts + 13618 /* "like" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_LIKE)}, {FzOp: ts + 20128 /* "regexp" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP)}, -} /* sqlite3.c:146750:7 */ +} /* sqlite3.c:146761:7 */ // If the pBase expression originated in the ON or USING clause of // a join, then transfer the appropriate markings over to derived. -func transferJoinMarkings(tls *libc.TLS, pDerived uintptr, pBase uintptr) { /* sqlite3.c:146844:13: */ +func transferJoinMarkings(tls *libc.TLS, pDerived uintptr, pBase uintptr) { /* sqlite3.c:146855:13: */ if pDerived != 0 { *(*U32)(unsafe.Pointer(pDerived + 4 /* &.flags */)) |= ((*Expr)(unsafe.Pointer(pBase)).Fflags & U32(EP_FromJoin)) (*Expr)(unsafe.Pointer(pDerived)).FiRightJoinTable = (*Expr)(unsafe.Pointer(pBase)).FiRightJoinTable @@ -141185,7 +141230,7 @@ func transferJoinMarkings(tls *libc.TLS, pDerived uintptr, pBase uintptr) { /* s } // Mark term iChild as being a child of term iParent -func markTermAsChild(tls *libc.TLS, pWC uintptr, iChild int32, iParent int32) { /* sqlite3.c:146854:13: */ +func markTermAsChild(tls *libc.TLS, pWC uintptr, iChild int32, iParent int32) { /* sqlite3.c:146865:13: */ (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa + uintptr(iChild)*56)).FiParent = iParent (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa + uintptr(iChild)*56)).FtruthProb = (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa + uintptr(iParent)*56)).FtruthProb (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa+uintptr(iParent)*56)).FnChild++ @@ -141194,7 +141239,7 @@ func markTermAsChild(tls *libc.TLS, pWC uintptr, iChild int32, iParent int32) { // Return the N-th AND-connected subterm of pTerm. Or if pTerm is not // a conjunction, then return just pTerm when N==0. If N is exceeds // the number of available subterms, return NULL. -func whereNthSubterm(tls *libc.TLS, pTerm uintptr, N int32) uintptr { /* sqlite3.c:146865:18: */ +func whereNthSubterm(tls *libc.TLS, pTerm uintptr, N int32) uintptr { /* sqlite3.c:146876:18: */ if int32((*WhereTerm)(unsafe.Pointer(pTerm)).FeOperator) != WO_AND { if N == 0 { return pTerm @@ -141225,13 +141270,16 @@ func whereNthSubterm(tls *libc.TLS, pTerm uintptr, N int32) uintptr { /* sqlite3 // The following is NOT generated: // // xy --> x!=y -func whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintptr, pTwo uintptr) { /* sqlite3.c:146895:13: */ +func whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintptr, pTwo uintptr) { /* sqlite3.c:146906:13: */ var eOp U16 = (U16(int32((*WhereTerm)(unsafe.Pointer(pOne)).FeOperator) | int32((*WhereTerm)(unsafe.Pointer(pTwo)).FeOperator))) var db uintptr // Database connection (for malloc) var pNew uintptr // New virtual expression var op int32 // Operator for the combined expression var idxNew int32 // Index in pWC of the next virtual term + if ((int32((*WhereTerm)(unsafe.Pointer(pOne)).FwtFlags) | int32((*WhereTerm)(unsafe.Pointer(pTwo)).FwtFlags)) & TERM_VNULL) != 0 { + return + } if (int32((*WhereTerm)(unsafe.Pointer(pOne)).FeOperator) & ((((WO_EQ | (int32(WO_EQ) << (TK_LT - TK_EQ))) | (int32(WO_EQ) << (TK_LE - TK_EQ))) | (int32(WO_EQ) << (TK_GT - TK_EQ))) | (int32(WO_EQ) << (TK_GE - TK_EQ)))) == 0 { return } @@ -141355,7 +141403,7 @@ func whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintpt // // If none of cases 1, 2, or 3 apply, then leave the eOperator set to // zero. This term is not useful for search. -func exprAnalyzeOrTerm(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147021:13: */ +func exprAnalyzeOrTerm(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147033:13: */ var pWInfo uintptr = (*WhereClause)(unsafe.Pointer(pWC)).FpWInfo // WHERE clause processing context var pParse uintptr = (*WhereInfo)(unsafe.Pointer(pWInfo)).FpParse // Parser context var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // Database connection @@ -141673,7 +141721,7 @@ __3: // for the LHS anyplace else in the WHERE clause where the LHS column occurs. // This is an optimization. No harm comes from returning 0. But if 1 is // returned when it should not be, then incorrect answers might result. -func termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:147292:12: */ +func termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:147304:12: */ var aff1 int8 var aff2 int8 var pColl uintptr @@ -141702,7 +141750,7 @@ func termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* // Recursively walk the expressions of a SELECT statement and generate // a bitmask indicating which tables are used in that expression // tree. -func exprSelectUsage(tls *libc.TLS, pMaskSet uintptr, pS uintptr) Bitmask { /* sqlite3.c:147315:16: */ +func exprSelectUsage(tls *libc.TLS, pMaskSet uintptr, pS uintptr) Bitmask { /* sqlite3.c:147327:16: */ var mask Bitmask = uint64(0) for pS != 0 { var pSrc uintptr = (*Select)(unsafe.Pointer(pS)).FpSrc @@ -141737,7 +141785,7 @@ func exprSelectUsage(tls *libc.TLS, pMaskSet uintptr, pS uintptr) Bitmask { /* s // If pExpr is a TK_COLUMN column reference, then this routine always returns // true even if that particular column is not indexed, because the column // might be added to an automatic index later. -func exprMightBeIndexed2(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr) int32 { /* sqlite3.c:147352:28: */ +func exprMightBeIndexed2(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr) int32 { /* sqlite3.c:147364:28: */ var pIdx uintptr var i int32 var iCur int32 @@ -141775,7 +141823,7 @@ __3: return 0 } -func exprMightBeIndexed(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr, op int32) int32 { /* sqlite3.c:147376:12: */ +func exprMightBeIndexed(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr, op int32) int32 { /* sqlite3.c:147388:12: */ // If this expression is a vector to the left or right of a // inequality constraint (>, <, >= or <=), perform the processing // on the first element of the vector. @@ -141799,7 +141847,7 @@ func exprMightBeIndexed(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol } // Expression callback for exprUsesSrclist(). -func exprUsesSrclistCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:147406:12: */ +func exprUsesSrclistCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:147418:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN { var pSrc uintptr = *(*uintptr)(unsafe.Pointer(p + 40 /* &.u */)) var iCsr int32 = (*Expr)(unsafe.Pointer(pExpr)).FiTable @@ -141821,7 +141869,7 @@ func exprUsesSrclistCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlit } // Select callback for exprUsesSrclist(). -func exprUsesSrclistSelectCb(tls *libc.TLS, NotUsed1 uintptr, NotUsed2 uintptr) int32 { /* sqlite3.c:147424:12: */ +func exprUsesSrclistSelectCb(tls *libc.TLS, NotUsed1 uintptr, NotUsed2 uintptr) int32 { /* sqlite3.c:147436:12: */ _ = NotUsed1 _ = NotUsed2 return WRC_Abort @@ -141850,7 +141898,7 @@ func exprUsesSrclistSelectCb(tls *libc.TLS, NotUsed1 uintptr, NotUsed2 uintptr) // // bUses==0 false pExpr contains no sub-selects and all TK_COLUMN // nodes reference pSrc -func exprUsesSrclist(tls *libc.TLS, pSrc uintptr, pExpr uintptr, bUses int32) int32 { /* sqlite3.c:147455:12: */ +func exprUsesSrclist(tls *libc.TLS, pSrc uintptr, pExpr uintptr, bUses int32) int32 { /* sqlite3.c:147467:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -141876,7 +141924,7 @@ type ExistsToInCtx = struct { FpEq uintptr FppAnd uintptr FppParent uintptr -} /* sqlite3.c:147469:1 */ +} /* sqlite3.c:147481:1 */ // Iterate through all AND connected nodes in the expression tree // headed by (*ppExpr), populating the structure passed as the first @@ -141885,7 +141933,7 @@ type ExistsToInCtx = struct { // This function returns non-zero if the expression tree does not meet // the two conditions described by the header comment for // exprAnalyzeExistsFindEq(), or zero if it does. -func exprExistsToInIter(tls *libc.TLS, p uintptr, ppExpr uintptr) int32 { /* sqlite3.c:147486:12: */ +func exprExistsToInIter(tls *libc.TLS, p uintptr, ppExpr uintptr) int32 { /* sqlite3.c:147498:12: */ var pExpr uintptr = *(*uintptr)(unsafe.Pointer(ppExpr)) switch int32((*Expr)(unsafe.Pointer(pExpr)).Fop) { case TK_AND: @@ -141953,7 +142001,7 @@ func exprExistsToInIter(tls *libc.TLS, p uintptr, ppExpr uintptr) int32 { /* sql // the == node is not the root of the WHERE clause, then *pppAnd is set // to point to the pointer to the AND node that is the parent of the == // node within the WHERE expression tree. -func exprAnalyzeExistsFindEq(tls *libc.TLS, pSel uintptr, ppEq uintptr, pppAnd uintptr) uintptr { /* sqlite3.c:147541:13: */ +func exprAnalyzeExistsFindEq(tls *libc.TLS, pSel uintptr, ppEq uintptr, pppAnd uintptr) uintptr { /* sqlite3.c:147553:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -142000,7 +142048,7 @@ func exprAnalyzeExistsFindEq(tls *libc.TLS, pSel uintptr, ppEq uintptr, pppAnd u // In other words, once has been removed, the inner query // must not be correlated. // -func exprAnalyzeExists(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147586:13: */ +func exprAnalyzeExists(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147598:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -142110,7 +142158,7 @@ func exprAnalyzeExists(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) // needs to be freed with the WhereClause) and TERM_VIRTUAL (because it // is a commuted copy of a prior term.) The original term has nChild=1 // and the copy has idxParent set to the index of the original term. -func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147692:13: */ +func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147704:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -142465,7 +142513,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s *(*Bitmask)(unsafe.Pointer(pTerm + 40 /* &.prereqRight */)) |= (extraRight) } -var ops = [2]U8{U8(TK_GE), U8(TK_LE)} /* sqlite3.c:147835:21 */ +var ops = [2]U8{U8(TK_GE), U8(TK_LE)} /* sqlite3.c:147847:21 */ // ************************************************************************** // @@ -142488,7 +142536,7 @@ var ops = [2]U8{U8(TK_GE), U8(TK_LE)} /* sqlite3.c:147835:21 */ // In the previous sentence and in the diagram, "slot[]" refers to // the WhereClause.a[] array. The slot[] array grows as needed to contain // all terms of the WHERE clause. -func Xsqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op U8) { /* sqlite3.c:148131:21: */ +func Xsqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op U8) { /* sqlite3.c:148143:21: */ var pE2 uintptr = Xsqlite3ExprSkipCollateAndLikely(tls, pExpr) (*WhereClause)(unsafe.Pointer(pWC)).Fop = op @@ -142504,7 +142552,7 @@ func Xsqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op U8) { /* s } // Initialize a preallocated WhereClause structure. -func Xsqlite3WhereClauseInit(tls *libc.TLS, pWC uintptr, pWInfo uintptr) { /* sqlite3.c:148147:21: */ +func Xsqlite3WhereClauseInit(tls *libc.TLS, pWC uintptr, pWInfo uintptr) { /* sqlite3.c:148159:21: */ (*WhereClause)(unsafe.Pointer(pWC)).FpWInfo = pWInfo (*WhereClause)(unsafe.Pointer(pWC)).FhasOr = U8(0) (*WhereClause)(unsafe.Pointer(pWC)).FpOuter = uintptr(0) @@ -142516,7 +142564,7 @@ func Xsqlite3WhereClauseInit(tls *libc.TLS, pWC uintptr, pWInfo uintptr) { /* sq // Deallocate a WhereClause structure. The WhereClause structure // itself is not freed. This routine is the inverse of // sqlite3WhereClauseInit(). -func Xsqlite3WhereClauseClear(tls *libc.TLS, pWC uintptr) { /* sqlite3.c:148164:21: */ +func Xsqlite3WhereClauseClear(tls *libc.TLS, pWC uintptr) { /* sqlite3.c:148176:21: */ var i int32 var a uintptr var db uintptr = (*Parse)(unsafe.Pointer((*WhereInfo)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).FpWInfo)).FpParse)).Fdb @@ -142553,7 +142601,7 @@ __3: // These routines walk (recursively) an expression tree and generate // a bitmask indicating which tables are used in that expression // tree. -func Xsqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148189:24: */ +func Xsqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148201:24: */ var mask Bitmask if (int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_COLUMN) && !(((*Expr)(unsafe.Pointer((p))).Fflags & (U32(EP_FixedCol))) != U32(0)) { return Xsqlite3WhereGetMask(tls, pMaskSet, (*Expr)(unsafe.Pointer(p)).FiTable) @@ -142588,14 +142636,14 @@ func Xsqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmas return mask } -func Xsqlite3WhereExprUsage(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148217:24: */ +func Xsqlite3WhereExprUsage(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148229:24: */ if p != 0 { return Xsqlite3WhereExprUsageNN(tls, pMaskSet, p) } return uint64(0) } -func Xsqlite3WhereExprListUsage(tls *libc.TLS, pMaskSet uintptr, pList uintptr) Bitmask { /* sqlite3.c:148220:24: */ +func Xsqlite3WhereExprListUsage(tls *libc.TLS, pMaskSet uintptr, pList uintptr) Bitmask { /* sqlite3.c:148232:24: */ var i int32 var mask Bitmask = uint64(0) if pList != 0 { @@ -142612,7 +142660,7 @@ func Xsqlite3WhereExprListUsage(tls *libc.TLS, pMaskSet uintptr, pList uintptr) // end of the WHERE clause. We do not want to analyze these new // virtual terms, so start analyzing at the end and work forward // so that the added virtual terms are never processed. -func Xsqlite3WhereExprAnalyze(tls *libc.TLS, pTabList uintptr, pWC uintptr) { /* sqlite3.c:148240:21: */ +func Xsqlite3WhereExprAnalyze(tls *libc.TLS, pTabList uintptr, pWC uintptr) { /* sqlite3.c:148252:21: */ var i int32 for i = ((*WhereClause)(unsafe.Pointer(pWC)).FnTerm - 1); i >= 0; i-- { exprAnalyze(tls, pTabList, pWC, i) @@ -142624,7 +142672,7 @@ func Xsqlite3WhereExprAnalyze(tls *libc.TLS, pTabList uintptr, pWC uintptr) { /* // // Each function argument translates into an equality constraint against // a HIDDEN column in the table. -func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC uintptr) { /* sqlite3.c:148257:21: */ +func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC uintptr) { /* sqlite3.c:148269:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -142701,7 +142749,7 @@ func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC type HiddenIndexInfo1 = struct { FpWC uintptr FpParse uintptr -} /* sqlite3.c:148327:9 */ +} /* sqlite3.c:148339:9 */ //************* End of whereexpr.c ****************************************** //************* Begin file where.c ****************************************** @@ -142731,16 +142779,16 @@ type HiddenIndexInfo1 = struct { // This object is not an API and can be changed from one release to the // next. As long as allocateIndexInfo() and sqlite3_vtab_collation() // agree on the structure, all will be well. -type HiddenIndexInfo = HiddenIndexInfo1 /* sqlite3.c:148327:32 */ +type HiddenIndexInfo = HiddenIndexInfo1 /* sqlite3.c:148339:32 */ // Return the estimated number of output rows from a WHERE clause -func Xsqlite3WhereOutputRowCount(tls *libc.TLS, pWInfo uintptr) LogEst { /* sqlite3.c:148339:23: */ +func Xsqlite3WhereOutputRowCount(tls *libc.TLS, pWInfo uintptr) LogEst { /* sqlite3.c:148351:23: */ return (*WhereInfo)(unsafe.Pointer(pWInfo)).FnRowOut } // Return one of the WHERE_DISTINCT_xxxxx values to indicate how this // WHERE clause returns outputs for DISTINCT processing. -func Xsqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148347:20: */ +func Xsqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148359:20: */ return int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FeDistinct) } @@ -142750,7 +142798,7 @@ func Xsqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c // terms means that no sorting is needed at all. A return that // is positive but less than the number of ORDER BY terms means that // block sorting is required. -func Xsqlite3WhereIsOrdered(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148359:20: */ +func Xsqlite3WhereIsOrdered(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148371:20: */ return int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FnOBSat) } @@ -142775,7 +142823,7 @@ func Xsqlite3WhereIsOrdered(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c: // Returning the continuation the second inner loop is an optimization // that might make the code run a little faster, but should not change // the final answer. -func Xsqlite3WhereOrderByLimitOptLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148386:20: */ +func Xsqlite3WhereOrderByLimitOptLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148398:20: */ var pInner uintptr if !((int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.bOrderedInnerLoop */)) & 0x4 >> 2)) != 0) { // The ORDER BY LIMIT optimization does not apply. Jump to the @@ -142796,7 +142844,7 @@ func Xsqlite3WhereOrderByLimitOptLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* // Any extra OP_Goto that is coded here is an optimization. The // correct answer should be obtained regardless. This OP_Goto just // makes the answer appear faster. -func Xsqlite3WhereMinMaxOptEarlyOut(tls *libc.TLS, v uintptr, pWInfo uintptr) { /* sqlite3.c:148409:21: */ +func Xsqlite3WhereMinMaxOptEarlyOut(tls *libc.TLS, v uintptr, pWInfo uintptr) { /* sqlite3.c:148421:21: */ var pInner uintptr var i int32 if !((int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.bOrderedInnerLoop */)) & 0x4 >> 2)) != 0) { @@ -142817,14 +142865,14 @@ func Xsqlite3WhereMinMaxOptEarlyOut(tls *libc.TLS, v uintptr, pWInfo uintptr) { // Return the VDBE address or label to jump to in order to continue // immediately with the next row of a WHERE clause. -func Xsqlite3WhereContinueLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148428:20: */ +func Xsqlite3WhereContinueLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148440:20: */ return (*WhereInfo)(unsafe.Pointer(pWInfo)).FiContinue } // Return the VDBE address or label to jump to in order to break // out of a WHERE loop. -func Xsqlite3WhereBreakLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148437:20: */ +func Xsqlite3WhereBreakLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148449:20: */ return (*WhereInfo)(unsafe.Pointer(pWInfo)).FiBreak } @@ -142843,19 +142891,19 @@ func Xsqlite3WhereBreakLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c // // aiCur[0] and aiCur[1] both get -1 if the where-clause logic is // unable to use the ONEPASS optimization. -func Xsqlite3WhereOkOnePass(tls *libc.TLS, pWInfo uintptr, aiCur uintptr) int32 { /* sqlite3.c:148458:20: */ +func Xsqlite3WhereOkOnePass(tls *libc.TLS, pWInfo uintptr, aiCur uintptr) int32 { /* sqlite3.c:148470:20: */ libc.X__builtin___memcpy_chk(tls, aiCur, pWInfo+40 /* &.aiCurOnePass */, (uint64(unsafe.Sizeof(int32(0))) * uint64(2)), libc.X__builtin_object_size(tls, aiCur, 0)) return int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FeOnePass) } // Return TRUE if the WHERE loop uses the OP_DeferredSeek opcode to move // the data cursor to the row selected by the index cursor. -func Xsqlite3WhereUsesDeferredSeek(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148474:20: */ +func Xsqlite3WhereUsesDeferredSeek(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148486:20: */ return (int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.bDeferredSeek */)) & 0x1 >> 0)) } // Move the content of pSrc into pDest -func whereOrMove(tls *libc.TLS, pDest uintptr, pSrc uintptr) { /* sqlite3.c:148481:13: */ +func whereOrMove(tls *libc.TLS, pDest uintptr, pSrc uintptr) { /* sqlite3.c:148493:13: */ (*WhereOrSet)(unsafe.Pointer(pDest)).Fn = (*WhereOrSet)(unsafe.Pointer(pSrc)).Fn libc.X__builtin___memcpy_chk(tls, pDest+8 /* &.a */, pSrc+8 /* &.a */, (uint64((*WhereOrSet)(unsafe.Pointer(pDest)).Fn) * uint64(unsafe.Sizeof(WhereOrCost{}))), libc.X__builtin_object_size(tls, pDest+8 /* &.a */, 0)) } @@ -142865,7 +142913,7 @@ func whereOrMove(tls *libc.TLS, pDest uintptr, pSrc uintptr) { /* sqlite3.c:1484 // The new entry might overwrite an existing entry, or it might be // appended, or it might be discarded. Do whatever is the right thing // so that pSet keeps the N_OR_COST best entries seen so far. -func whereOrInsert(tls *libc.TLS, pSet uintptr, prereq Bitmask, rRun LogEst, nOut LogEst) int32 { /* sqlite3.c:148493:12: */ +func whereOrInsert(tls *libc.TLS, pSet uintptr, prereq Bitmask, rRun LogEst, nOut LogEst) int32 { /* sqlite3.c:148505:12: */ var i U16 var p uintptr i = (*WhereOrSet)(unsafe.Pointer(pSet)).Fn @@ -142942,7 +142990,7 @@ __13: // Return the bitmask for the given cursor number. Return 0 if // iCursor is not in the set. -func Xsqlite3WhereGetMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) Bitmask { /* sqlite3.c:148530:24: */ +func Xsqlite3WhereGetMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) Bitmask { /* sqlite3.c:148542:24: */ var i int32 for i = 0; i < (*WhereMaskSet)(unsafe.Pointer(pMaskSet)).Fn; i++ { @@ -142959,14 +143007,14 @@ func Xsqlite3WhereGetMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) Bitmas // tables in the FROM clause is limited by a test early in the // sqlite3WhereBegin() routine. So we know that the pMaskSet->ix[] // array will never overflow. -func createMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) { /* sqlite3.c:148549:13: */ +func createMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) { /* sqlite3.c:148561:13: */ *(*int32)(unsafe.Pointer((pMaskSet + 8 /* &.ix */) + uintptr(libc.PostIncInt32(&(*WhereMaskSet)(unsafe.Pointer(pMaskSet)).Fn, 1))*4)) = iCursor } // If the right-hand branch of the expression is a TK_COLUMN, then return // a pointer to the right-hand branch. Otherwise, return NULL. -func whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:148558:13: */ +func whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:148570:13: */ p = Xsqlite3ExprSkipCollateAndLikely(tls, (*Expr)(unsafe.Pointer(p)).FpRight) if (p != uintptr(0)) && (int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_COLUMN) { return p @@ -142977,7 +143025,7 @@ func whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c: // Advance to the next WhereTerm that matches according to the criteria // established when the pScan object was initialized by whereScanInit(). // Return NULL if there are no more matching WhereTerms. -func whereScanNext(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148569:18: */ +func whereScanNext(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148581:18: */ var iCur int32 // The cursor on the LHS of the term var iColumn I16 // The column on the LHS of the term. -1 for IPK var pX uintptr // An expression being tested @@ -143076,7 +143124,7 @@ func whereScanNext(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148569:1 // It is factored out into a separate tail-recursion subroutine so that // the normal whereScanInit() routine, which is a high-runner, does not // need to push registers onto the stack as part of its prologue. -func whereScanInitIndexExpr(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148656:34: */ +func whereScanInitIndexExpr(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148668:34: */ (*WhereScan)(unsafe.Pointer(pScan)).Fidxaff = Xsqlite3ExprAffinity(tls, (*WhereScan)(unsafe.Pointer(pScan)).FpIdxExpr) return whereScanNext(tls, pScan) } @@ -143098,7 +143146,7 @@ func whereScanInitIndexExpr(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c // // If X is not the INTEGER PRIMARY KEY then X must be compatible with // index pIdx. -func whereScanInit(tls *libc.TLS, pScan uintptr, pWC uintptr, iCur int32, iColumn int32, opMask U32, pIdx uintptr) uintptr { /* sqlite3.c:148680:18: */ +func whereScanInit(tls *libc.TLS, pScan uintptr, pWC uintptr, iCur int32, iColumn int32, opMask U32, pIdx uintptr) uintptr { /* sqlite3.c:148692:18: */ (*WhereScan)(unsafe.Pointer(pScan)).FpOrigWC = pWC (*WhereScan)(unsafe.Pointer(pScan)).FpWC = pWC (*WhereScan)(unsafe.Pointer(pScan)).FpIdxExpr = uintptr(0) @@ -143153,7 +143201,7 @@ func whereScanInit(tls *libc.TLS, pScan uintptr, pWC uintptr, iCur int32, iColum // the form "X Y" where Y is a column in another table if no terms of // the form "X " exist. If no terms with a constant RHS // exist, try to return a term that does not use WO_EQUIV. -func Xsqlite3WhereFindTerm(tls *libc.TLS, pWC uintptr, iCur int32, iColumn int32, notReady Bitmask, op U32, pIdx uintptr) uintptr { /* sqlite3.c:148744:26: */ +func Xsqlite3WhereFindTerm(tls *libc.TLS, pWC uintptr, iCur int32, iColumn int32, notReady Bitmask, op U32, pIdx uintptr) uintptr { /* sqlite3.c:148756:26: */ bp := tls.Alloc(112) defer tls.Free(112) @@ -143183,7 +143231,7 @@ func Xsqlite3WhereFindTerm(tls *libc.TLS, pWC uintptr, iCur int32, iColumn int32 // // If such an expression is found, its index in pList->a[] is returned. If // no expression is found, -1 is returned. -func findIndexCol(tls *libc.TLS, pParse uintptr, pList uintptr, iBase int32, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148778:12: */ +func findIndexCol(tls *libc.TLS, pParse uintptr, pList uintptr, iBase int32, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148790:12: */ var i int32 var zColl uintptr = *(*uintptr)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FazColl + uintptr(iCol)*8)) @@ -143204,7 +143252,7 @@ func findIndexCol(tls *libc.TLS, pParse uintptr, pList uintptr, iBase int32, pId } // Return TRUE if the iCol-th column of index pIdx is NOT NULL -func indexColumnNotNull(tls *libc.TLS, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148808:12: */ +func indexColumnNotNull(tls *libc.TLS, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148820:12: */ var j int32 j = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(iCol)*2))) @@ -143225,7 +143273,7 @@ func indexColumnNotNull(tls *libc.TLS, pIdx uintptr, iCol int32) int32 { /* sqli // // A DISTINCT list is redundant if any subset of the columns in the // DISTINCT list are collectively unique and individually non-null. -func isDistinctRedundant(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWC uintptr, pDistinct uintptr) int32 { /* sqlite3.c:148831:12: */ +func isDistinctRedundant(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWC uintptr, pDistinct uintptr) int32 { /* sqlite3.c:148843:12: */ var pTab uintptr var pIdx uintptr var i int32 @@ -143289,7 +143337,7 @@ func isDistinctRedundant(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWC ui } // Estimate the logarithm of the input value to base 2. -func estLog(tls *libc.TLS, N LogEst) LogEst { /* sqlite3.c:148893:15: */ +func estLog(tls *libc.TLS, N LogEst) LogEst { /* sqlite3.c:148905:15: */ if int32(N) <= 10 { return int16(0) } @@ -143306,7 +143354,7 @@ func estLog(tls *libc.TLS, N LogEst) LogEst { /* sqlite3.c:148893:15: */ // cursor iTabCur are transformed into OP_Sequence opcode for the // iAutoidxCur cursor, in order to generate unique rowids for the // automatic index being generated. -func translateColumnToCopy(tls *libc.TLS, pParse uintptr, iStart int32, iTabCur int32, iRegister int32, iAutoidxCur int32) { /* sqlite3.c:148909:13: */ +func translateColumnToCopy(tls *libc.TLS, pParse uintptr, iStart int32, iTabCur int32, iRegister int32, iAutoidxCur int32) { /* sqlite3.c:148921:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var pOp uintptr = Xsqlite3VdbeGetOp(tls, v, iStart) var iEnd int32 = Xsqlite3VdbeCurrentAddr(tls, v) @@ -143355,7 +143403,7 @@ __3: // Return TRUE if the WHERE clause term pTerm is of a form where it // could be used with an index to access pSrc, assuming an appropriate // index existed. -func termCanDriveIndex(tls *libc.TLS, pTerm uintptr, pSrc uintptr, notReady Bitmask) int32 { /* sqlite3.c:148991:12: */ +func termCanDriveIndex(tls *libc.TLS, pTerm uintptr, pSrc uintptr, notReady Bitmask) int32 { /* sqlite3.c:149003:12: */ var aff int8 if (*WhereTerm)(unsafe.Pointer(pTerm)).FleftCursor != (*SrcItem)(unsafe.Pointer(pSrc)).FiCursor { return 0 @@ -143388,7 +143436,7 @@ func termCanDriveIndex(tls *libc.TLS, pTerm uintptr, pSrc uintptr, notReady Bitm // Generate code to construct the Index object for an automatic index // and to set up the WhereLevel object pLevel so that the code generator // makes use of the automatic index. -func constructAutomaticIndex(tls *libc.TLS, pParse uintptr, pWC uintptr, pSrc uintptr, notReady Bitmask, pLevel uintptr) { /* sqlite3.c:149024:13: */ +func constructAutomaticIndex(tls *libc.TLS, pParse uintptr, pWC uintptr, pSrc uintptr, notReady Bitmask, pLevel uintptr) { /* sqlite3.c:149036:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -143713,7 +143761,7 @@ end_auto_index_create: // Allocate and populate an sqlite3_index_info structure. It is the // responsibility of the caller to eventually release the structure // by passing the pointer returned by this function to sqlite3_free(). -func allocateIndexInfo(tls *libc.TLS, pParse uintptr, pWC uintptr, mUnusable Bitmask, pSrc uintptr, pOrderBy uintptr, pmNoOmit uintptr) uintptr { /* sqlite3.c:149231:27: */ +func allocateIndexInfo(tls *libc.TLS, pParse uintptr, pWC uintptr, mUnusable Bitmask, pSrc uintptr, pOrderBy uintptr, pmNoOmit uintptr) uintptr { /* sqlite3.c:149243:27: */ var i int32 var j int32 var nTerm int32 @@ -143900,7 +143948,7 @@ __6: // Whether or not an error is returned, it is the responsibility of the // caller to eventually free p->idxStr if p->needToFreeIdxStr indicates // that this is required. -func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 { /* sqlite3.c:149386:12: */ +func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 { /* sqlite3.c:149398:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -143934,7 +143982,7 @@ func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 // into the aSample[] array - it is an index into a virtual set of samples // based on the contents of aSample[] and the number of fields in record // pRec. -func whereKeyStats(tls *libc.TLS, pParse uintptr, pIdx uintptr, pRec uintptr, roundUp int32, aStat uintptr) int32 { /* sqlite3.c:149423:12: */ +func whereKeyStats(tls *libc.TLS, pParse uintptr, pIdx uintptr, pRec uintptr, roundUp int32, aStat uintptr) int32 { /* sqlite3.c:149435:12: */ var aSample uintptr = (*Index)(unsafe.Pointer(pIdx)).FaSample var iCol int32 // Index of required stats in anEq[] etc. var i int32 // Index of first sample >= pRec @@ -144073,7 +144121,7 @@ func whereKeyStats(tls *libc.TLS, pParse uintptr, pIdx uintptr, pRec uintptr, ro // then the return value is the likelihood multiplied by the number of // input rows. Otherwise, this function assumes that an "IS NOT NULL" term // has a likelihood of 0.50, and any other term a likelihood of 0.25. -func whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew LogEst) LogEst { /* sqlite3.c:149615:15: */ +func whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew LogEst) LogEst { /* sqlite3.c:149627:15: */ var nRet LogEst = nNew if pTerm != 0 { if int32((*WhereTerm)(unsafe.Pointer(pTerm)).FtruthProb) <= 0 { @@ -144086,7 +144134,7 @@ func whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew LogEst) LogEst { /* sql } // Return the affinity for a single column of an index. -func Xsqlite3IndexColumnAffinity(tls *libc.TLS, db uintptr, pIdx uintptr, iCol int32) int8 { /* sqlite3.c:149632:21: */ +func Xsqlite3IndexColumnAffinity(tls *libc.TLS, db uintptr, pIdx uintptr, iCol int32) int8 { /* sqlite3.c:149644:21: */ if !(int32((*Index)(unsafe.Pointer(pIdx)).FzColAff) != 0) { if Xsqlite3IndexAffinityStr(tls, db, pIdx) == uintptr(0) { @@ -144130,7 +144178,7 @@ func Xsqlite3IndexColumnAffinity(tls *libc.TLS, db uintptr, pIdx uintptr, iCol i // // If an error occurs, an SQLite error code is returned. Otherwise, // SQLITE_OK. -func whereRangeSkipScanEst(tls *libc.TLS, pParse uintptr, pLower uintptr, pUpper uintptr, pLoop uintptr, pbDone uintptr) int32 { /* sqlite3.c:149679:12: */ +func whereRangeSkipScanEst(tls *libc.TLS, pParse uintptr, pLower uintptr, pUpper uintptr, pLoop uintptr, pbDone uintptr) int32 { /* sqlite3.c:149691:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -144245,7 +144293,7 @@ func whereRangeSkipScanEst(tls *libc.TLS, pParse uintptr, pLower uintptr, pUpper // used, a single range inequality reduces the search space by a factor of 4. // and a pair of constraints (x>? AND xaLTerm[] to be at least n. -func whereLoopResize(tls *libc.TLS, db uintptr, p uintptr, n int32) int32 { /* sqlite3.c:150218:12: */ +func whereLoopResize(tls *libc.TLS, db uintptr, p uintptr, n int32) int32 { /* sqlite3.c:150230:12: */ var paNew uintptr if int32((*WhereLoop)(unsafe.Pointer(p)).FnLSlot) >= n { return SQLITE_OK @@ -144582,7 +144630,7 @@ func whereLoopResize(tls *libc.TLS, db uintptr, p uintptr, n int32) int32 { /* s } // Transfer content from the second pLoop into the first. -func whereLoopXfer(tls *libc.TLS, db uintptr, pTo uintptr, pFrom uintptr) int32 { /* sqlite3.c:150234:12: */ +func whereLoopXfer(tls *libc.TLS, db uintptr, pTo uintptr, pFrom uintptr) int32 { /* sqlite3.c:150246:12: */ whereLoopClearUnion(tls, db, pTo) if whereLoopResize(tls, db, pTo, int32((*WhereLoop)(unsafe.Pointer(pFrom)).FnLTerm)) != 0 { libc.X__builtin___memset_chk(tls, (pTo + 24 /* &.u */), 0, uint64(unsafe.Sizeof(struct { @@ -144607,13 +144655,13 @@ func whereLoopXfer(tls *libc.TLS, db uintptr, pTo uintptr, pFrom uintptr) int32 } // Delete a WhereLoop object -func whereLoopDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:150253:13: */ +func whereLoopDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:150265:13: */ whereLoopClear(tls, db, p) Xsqlite3DbFreeNN(tls, db, p) } // Free a WhereInfo structure -func whereInfoFree(tls *libc.TLS, db uintptr, pWInfo uintptr) { /* sqlite3.c:150261:13: */ +func whereInfoFree(tls *libc.TLS, db uintptr, pWInfo uintptr) { /* sqlite3.c:150273:13: */ var i int32 for i = 0; i < int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FnLevel); i++ { @@ -144648,7 +144696,7 @@ func whereInfoFree(tls *libc.TLS, db uintptr, pWInfo uintptr) { /* sqlite3.c:150 // deserve a lower cost even if it is a proper subset of Y. Constraint (5) // was added because a covering index probably deserves to have a lower cost // than a non-covering index even if it is a proper subset. -func whereLoopCheaperProperSubset(tls *libc.TLS, pX uintptr, pY uintptr) int32 { /* sqlite3.c:150298:12: */ +func whereLoopCheaperProperSubset(tls *libc.TLS, pX uintptr, pY uintptr) int32 { /* sqlite3.c:150310:12: */ var i int32 var j int32 if (int32((*WhereLoop)(unsafe.Pointer(pX)).FnLTerm) - int32((*WhereLoop)(unsafe.Pointer(pX)).FnSkip)) >= (int32((*WhereLoop)(unsafe.Pointer(pY)).FnLTerm) - int32((*WhereLoop)(unsafe.Pointer(pY)).FnSkip)) { @@ -144697,7 +144745,7 @@ func whereLoopCheaperProperSubset(tls *libc.TLS, pX uintptr, pY uintptr) int32 { // To say "WhereLoop X is a proper subset of Y" means that X uses fewer // WHERE clause terms than Y and that every WHERE clause term used by X is // also used by Y. -func whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { /* sqlite3.c:150339:13: */ +func whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { /* sqlite3.c:150351:13: */ if ((*WhereLoop)(unsafe.Pointer(pTemplate)).FwsFlags & U32(WHERE_INDEXED)) == U32(0) { return } @@ -144736,7 +144784,7 @@ func whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { /* sqlit // If pTemplate cannot replace any existing element of the list but needs // to be added to the list as a new entry, then return a pointer to the // tail of the list. -func whereLoopFindLesser(tls *libc.TLS, ppPrev uintptr, pTemplate uintptr) uintptr { /* sqlite3.c:150376:18: */ +func whereLoopFindLesser(tls *libc.TLS, ppPrev uintptr, pTemplate uintptr) uintptr { /* sqlite3.c:150388:18: */ var p uintptr p = *(*uintptr)(unsafe.Pointer(ppPrev)) __1: @@ -144825,7 +144873,7 @@ __3: // (2) They have the same iSortIdx. // (3) The template has same or fewer dependencies than the current loop // (4) The template has the same or lower cost than the current loop -func whereLoopInsert(tls *libc.TLS, pBuilder uintptr, pTemplate uintptr) int32 { /* sqlite3.c:150464:12: */ +func whereLoopInsert(tls *libc.TLS, pBuilder uintptr, pTemplate uintptr) int32 { /* sqlite3.c:150476:12: */ var ppPrev uintptr var p uintptr var pWInfo uintptr = (*WhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpWInfo @@ -144932,7 +144980,7 @@ func whereLoopInsert(tls *libc.TLS, pBuilder uintptr, pTemplate uintptr) int32 { // "x" column is boolean or else -1 or 0 or 1 is a common default value // on the "x" column and so in that case only cap the output row estimate // at 1/2 instead of 1/4. -func whereLoopOutputAdjust(tls *libc.TLS, pWC uintptr, pLoop uintptr, nRow LogEst) { /* sqlite3.c:150601:13: */ +func whereLoopOutputAdjust(tls *libc.TLS, pWC uintptr, pLoop uintptr, nRow LogEst) { /* sqlite3.c:150613:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -145028,7 +145076,7 @@ __3: // // then this function would be invoked with nEq=1. The value returned in // this case is 3. -func whereRangeVectorLen(tls *libc.TLS, pParse uintptr, iCur int32, pIdx uintptr, nEq int32, pTerm uintptr) int32 { /* sqlite3.c:150671:12: */ +func whereRangeVectorLen(tls *libc.TLS, pParse uintptr, iCur int32, pIdx uintptr, nEq int32, pTerm uintptr) int32 { /* sqlite3.c:150683:12: */ var nCmp int32 = Xsqlite3ExprVectorSize(tls, (*Expr)(unsafe.Pointer((*WhereTerm)(unsafe.Pointer(pTerm)).FpExpr)).FpLeft) var i int32 @@ -145093,7 +145141,7 @@ func whereRangeVectorLen(tls *libc.TLS, pParse uintptr, iCur int32, pIdx uintptr // // If pProbe->idxType==SQLITE_IDXTYPE_IPK, that means pIndex is // a fake index used for the INTEGER PRIMARY KEY. -func whereLoopAddBtreeIndex(tls *libc.TLS, pBuilder uintptr, pSrc uintptr, pProbe uintptr, nInMul LogEst) int32 { /* sqlite3.c:150742:12: */ +func whereLoopAddBtreeIndex(tls *libc.TLS, pBuilder uintptr, pSrc uintptr, pProbe uintptr, nInMul LogEst) int32 { /* sqlite3.c:150754:12: */ bp := tls.Alloc(116) defer tls.Free(116) @@ -145447,7 +145495,7 @@ func whereLoopAddBtreeIndex(tls *libc.TLS, pBuilder uintptr, pSrc uintptr, pProb // Return False if pBuilder does not contain an ORDER BY clause or // if there is no way for pIndex to be useful in implementing that // ORDER BY clause. -func indexMightHelpWithOrderBy(tls *libc.TLS, pBuilder uintptr, pIndex uintptr, iCursor int32) int32 { /* sqlite3.c:151128:12: */ +func indexMightHelpWithOrderBy(tls *libc.TLS, pBuilder uintptr, pIndex uintptr, iCursor int32) int32 { /* sqlite3.c:151140:12: */ var pOB uintptr var aColExpr uintptr var ii int32 @@ -145489,7 +145537,7 @@ func indexMightHelpWithOrderBy(tls *libc.TLS, pBuilder uintptr, pIndex uintptr, // Check to see if a partial index with pPartIndexWhere can be used // in the current query. Return true if it can be and false if not. -func whereUsablePartialIndex(tls *libc.TLS, iTab int32, isLeft int32, pWC uintptr, pWhere uintptr) int32 { /* sqlite3.c:151162:12: */ +func whereUsablePartialIndex(tls *libc.TLS, iTab int32, isLeft int32, pWC uintptr, pWhere uintptr) int32 { /* sqlite3.c:151174:12: */ var i int32 var pTerm uintptr var pParse uintptr = (*WhereInfo)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).FpWInfo)).FpParse @@ -145563,7 +145611,7 @@ __3: // bias the scoring in favor of using an index, since the worst-case // performance of using an index is far better than the worst-case performance // of a full table scan. -func whereLoopAddBtree(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask) int32 { /* sqlite3.c:151225:12: */ +func whereLoopAddBtree(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask) int32 { /* sqlite3.c:151237:12: */ bp := tls.Alloc(158) defer tls.Free(158) @@ -145864,7 +145912,7 @@ __3: // // Output parameter *pbIn is set to true if the plan added to pBuilder // uses one or more WO_IN terms, or false otherwise. -func whereLoopAddVirtualOne(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUsable Bitmask, mExclude U16, pIdxInfo uintptr, mNoOmit U16, pbIn uintptr) int32 { /* sqlite3.c:151499:12: */ +func whereLoopAddVirtualOne(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUsable Bitmask, mExclude U16, pIdxInfo uintptr, mNoOmit U16, pbIn uintptr) int32 { /* sqlite3.c:151511:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -146043,7 +146091,7 @@ __6: // sequence associated with element iCons of the sqlite3_index_info.aConstraint // array. Or, if iCons is out of range or there is no active xBestIndex // call, return NULL. -func Xsqlite3_vtab_collation(tls *libc.TLS, pIdxInfo uintptr, iCons int32) uintptr { /* sqlite3.c:151659:23: */ +func Xsqlite3_vtab_collation(tls *libc.TLS, pIdxInfo uintptr, iCons int32) uintptr { /* sqlite3.c:151671:23: */ var pHidden uintptr = (pIdxInfo + 1*96) var zRet uintptr = uintptr(0) if (iCons >= 0) && (iCons < (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { @@ -146086,7 +146134,7 @@ func Xsqlite3_vtab_collation(tls *libc.TLS, pIdxInfo uintptr, iCons int32) uintp // Conversely, all tables in mUnusable must be scanned after the current // virtual table, so any terms for which the prerequisites overlap with // mUnusable should always be configured as "not-usable" for xBestIndex. -func whereLoopAddVirtual(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151699:12: */ +func whereLoopAddVirtual(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151711:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -146215,7 +146263,7 @@ func whereLoopAddVirtual(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnus // Add WhereLoop entries to handle OR terms. This works for either // btrees or virtual tables. -func whereLoopAddOr(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151822:12: */ +func whereLoopAddOr(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151834:12: */ bp := tls.Alloc(720) defer tls.Free(720) @@ -146339,7 +146387,7 @@ func whereLoopAddOr(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable } // Add all WhereLoop objects for all tables -func whereLoopAddAll(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:151946:12: */ +func whereLoopAddAll(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:151958:12: */ var pWInfo uintptr = (*WhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpWInfo var mPrereq Bitmask = uint64(0) var mPrior Bitmask = uint64(0) @@ -146427,7 +146475,7 @@ __3: // as equivalent rows are grouped together. Thus for GROUP BY and DISTINCT // the pOrderBy terms can be matched in any order. With ORDER BY, the // pOrderBy terms must be matched in strict left-to-right order. -func wherePathSatisfiesOrderBy(tls *libc.TLS, pWInfo uintptr, pOrderBy uintptr, pPath uintptr, wctrlFlags U16, nLoop U16, pLast uintptr, pRevMask uintptr) I8 { /* sqlite3.c:152024:11: */ +func wherePathSatisfiesOrderBy(tls *libc.TLS, pWInfo uintptr, pOrderBy uintptr, pPath uintptr, wctrlFlags U16, nLoop U16, pLast uintptr, pRevMask uintptr) I8 { /* sqlite3.c:152036:11: */ var revSet U8 // True if rev is known var rev U8 // Composite sort order var revIdx U8 // Index sort order @@ -146782,7 +146830,7 @@ func wherePathSatisfiesOrderBy(tls *libc.TLS, pWInfo uintptr, pOrderBy uintptr, // // SELECT * FROM t1 GROUP BY x,y ORDER BY x,y; -- IsSorted()==1 // SELECT * FROM t1 GROUP BY y,x ORDER BY y,x; -- IsSorted()==0 -func Xsqlite3WhereIsSorted(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:152361:20: */ +func Xsqlite3WhereIsSorted(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:152373:20: */ return (int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.sorted */)) & 0x8 >> 3)) } @@ -146790,7 +146838,7 @@ func Xsqlite3WhereIsSorted(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:1 // Return the cost of sorting nRow rows, assuming that the keys have // nOrderby columns and that the first nSorted columns are already in // order. -func whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow LogEst, nOrderBy int32, nSorted int32) LogEst { /* sqlite3.c:152384:15: */ +func whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow LogEst, nOrderBy int32, nSorted int32) LogEst { /* sqlite3.c:152396:15: */ // TUNING: Estimated cost of a full external sort, where N is // the number of rows to sort is: // @@ -146837,7 +146885,7 @@ func whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow LogEst, nOrderBy int32 // // Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation // error occurs. -func wherePathSolver(tls *libc.TLS, pWInfo uintptr, nRowEst LogEst) int32 { /* sqlite3.c:152437:12: */ +func wherePathSolver(tls *libc.TLS, pWInfo uintptr, nRowEst LogEst) int32 { /* sqlite3.c:152449:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -147244,7 +147292,7 @@ __3: // Return non-zero on success, if this query can be handled by this // no-frills query planner. Return zero if this query needs the // general-purpose query planner. -func whereShortCut(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:152829:12: */ +func whereShortCut(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:152841:12: */ var pWInfo uintptr var pItem uintptr var pWC uintptr @@ -147338,7 +147386,7 @@ func whereShortCut(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:152829: } // Helper function for exprIsDeterministic(). -func exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:152911:12: */ +func exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:152923:12: */ if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_FUNCTION) && ((libc.Bool32(((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_ConstFunc))) != U32(0))) == 0) { (*Walker)(unsafe.Pointer(pWalker)).FeCode = U16(0) return WRC_Abort @@ -147349,7 +147397,7 @@ func exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int3 // Return true if the expression contains no non-deterministic SQL // functions. Do not consider non-deterministic SQL functions that are // part of sub-select statements. -func exprIsDeterministic(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:152924:12: */ +func exprIsDeterministic(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:152936:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -147453,7 +147501,7 @@ func exprIsDeterministic(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:152924:1 // the first cursor in an array of cursors for all indices. iIdxCur should // be used to compute the appropriate cursor depending on which index is // used. -func Xsqlite3WhereBegin(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pResultSet uintptr, wctrlFlags U16, iAuxArg int32) uintptr { /* sqlite3.c:153044:26: */ +func Xsqlite3WhereBegin(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pResultSet uintptr, wctrlFlags U16, iAuxArg int32) uintptr { /* sqlite3.c:153056:26: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -148223,7 +148271,7 @@ __91: // Generate the end of the WHERE loop. See comments on // sqlite3WhereBegin() for additional information. -func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:153640:21: */ +func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:153652:21: */ var pParse uintptr = (*WhereInfo)(unsafe.Pointer(pWInfo)).FpParse var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 @@ -148614,7 +148662,7 @@ __6: // window frame has been coerced to: // // ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -func row_numberStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154072:13: */ +func row_numberStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154084:13: */ var p uintptr = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(I64(0)))) if p != 0 { (*(*I64)(unsafe.Pointer(p)))++ @@ -148623,7 +148671,7 @@ func row_numberStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) _ = apArg } -func row_numberValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154082:13: */ +func row_numberValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154094:13: */ var p uintptr = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(I64(0)))) Xsqlite3_result_int64(tls, pCtx, func() int64 { if p != 0 { @@ -148639,13 +148687,13 @@ type CallCount = struct { FnValue I64 FnStep I64 FnTotal I64 -} /* sqlite3.c:154091:1 */ +} /* sqlite3.c:154103:1 */ // Implementation of built-in window function dense_rank(). Assumes that // the window frame has been set to: // // RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -func dense_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154103:13: */ +func dense_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154115:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -148655,7 +148703,7 @@ func dense_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) _ = apArg } -func dense_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154114:13: */ +func dense_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154126:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -148673,9 +148721,9 @@ func dense_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154114:13: type NthValueCtx = struct { FnStep I64 FpValue uintptr -} /* sqlite3.c:154131:1 */ +} /* sqlite3.c:154143:1 */ -func nth_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154135:13: */ +func nth_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154147:13: */ var p uintptr var fVal float64 var iVal I64 @@ -148741,7 +148789,7 @@ error_out: pCtx, ts+20381 /* "second argument ..." */, -1) } -func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154176:13: */ +func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154188:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, 0) if (p != 0) && ((*NthValueCtx)(unsafe.Pointer(p)).FpValue != 0) { @@ -148751,7 +148799,7 @@ func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154176:13 } } -func first_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154188:13: */ +func first_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154200:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NthValueCtx{}))) if (p != 0) && ((*NthValueCtx)(unsafe.Pointer(p)).FpValue == uintptr(0)) { @@ -148764,7 +148812,7 @@ func first_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) _ = apArg } -func first_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154204:13: */ +func first_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154216:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NthValueCtx{}))) if (p != 0) && ((*NthValueCtx)(unsafe.Pointer(p)).FpValue != 0) { @@ -148778,7 +148826,7 @@ func first_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154204: // the window frame has been set to: // // RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -func rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154222:13: */ +func rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154234:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -148791,7 +148839,7 @@ func rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s _ = apArg } -func rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154238:13: */ +func rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154250:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -148804,7 +148852,7 @@ func rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154238:13: */ // the window frame has been set to: // // GROUPS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING -func percent_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154253:13: */ +func percent_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154265:13: */ var p uintptr _ = nArg _ = apArg @@ -148814,7 +148862,7 @@ func percent_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr } } -func percent_rankInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154266:13: */ +func percent_rankInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154278:13: */ var p uintptr _ = nArg _ = apArg @@ -148822,7 +148870,7 @@ func percent_rankInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) (*CallCount)(unsafe.Pointer(p)).FnStep++ } -func percent_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154277:13: */ +func percent_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154289:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -148840,7 +148888,7 @@ func percent_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154277:13 // the window frame has been set to: // // GROUPS BETWEEN 1 FOLLOWING AND UNBOUNDED FOLLOWING -func cume_distStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154298:13: */ +func cume_distStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154310:13: */ var p uintptr _ = nArg _ = apArg @@ -148850,7 +148898,7 @@ func cume_distStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { } } -func cume_distInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154311:13: */ +func cume_distInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154323:13: */ var p uintptr _ = nArg _ = apArg @@ -148858,7 +148906,7 @@ func cume_distInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { (*CallCount)(unsafe.Pointer(p)).FnStep++ } -func cume_distValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154322:13: */ +func cume_distValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154334:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, 0) if p != 0 { @@ -148872,13 +148920,13 @@ type NtileCtx = struct { FnTotal I64 FnParam I64 FiRow I64 -} /* sqlite3.c:154335:1 */ +} /* sqlite3.c:154347:1 */ // Implementation of ntile(). This assumes that the window frame has // been coerced to: // // ROWS CURRENT ROW AND UNBOUNDED FOLLOWING -func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154347:13: */ +func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154359:13: */ var p uintptr _ = nArg p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NtileCtx{}))) @@ -148894,7 +148942,7 @@ func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* } } -func ntileInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154367:13: */ +func ntileInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154379:13: */ var p uintptr _ = nArg _ = apArg @@ -148902,7 +148950,7 @@ func ntileInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s (*NtileCtx)(unsafe.Pointer(p)).FiRow++ } -func ntileValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154378:13: */ +func ntileValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154390:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NtileCtx{}))) if (p != 0) && ((*NtileCtx)(unsafe.Pointer(p)).FnParam > int64(0)) { @@ -148928,10 +148976,10 @@ type LastValueCtx = struct { FpVal uintptr FnVal int32 _ [4]byte -} /* sqlite3.c:154405:1 */ +} /* sqlite3.c:154417:1 */ // Implementation of last_value(). -func last_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154413:13: */ +func last_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154425:13: */ var p uintptr _ = nArg p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(LastValueCtx{}))) @@ -148946,7 +148994,7 @@ func last_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) } } -func last_valueInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154431:13: */ +func last_valueInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154443:13: */ var p uintptr _ = nArg _ = apArg @@ -148960,7 +149008,7 @@ func last_valueInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { } } -func last_valueValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154448:13: */ +func last_valueValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154460:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, 0) if (p != 0) && ((*LastValueCtx)(unsafe.Pointer(p)).FpVal != 0) { @@ -148968,7 +149016,7 @@ func last_valueValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154448:13: } } -func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154455:13: */ +func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154467:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(LastValueCtx{}))) if (p != 0) && ((*LastValueCtx)(unsafe.Pointer(p)).FpVal != 0) { @@ -148984,17 +149032,17 @@ func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154455:1 // comparison of the zName pointer. Example: // // if( pFuncDef->zName==row_valueName ){ ... } -var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 20482 /* "row_number" */)) /* sqlite3.c:154473:19 */ -var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 20493 /* "dense_rank" */)) /* sqlite3.c:154474:19 */ -var rankName = *(*[5]int8)(unsafe.Pointer(ts + 20504 /* "rank" */)) /* sqlite3.c:154475:19 */ -var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 20509 /* "percent_rank" */)) /* sqlite3.c:154476:19 */ -var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 20522 /* "cume_dist" */)) /* sqlite3.c:154477:19 */ -var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 20532 /* "ntile" */)) /* sqlite3.c:154478:19 */ -var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 20538 /* "last_value" */)) /* sqlite3.c:154479:19 */ -var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 20549 /* "nth_value" */)) /* sqlite3.c:154480:19 */ -var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 20559 /* "first_value" */)) /* sqlite3.c:154481:19 */ -var leadName = *(*[5]int8)(unsafe.Pointer(ts + 20571 /* "lead" */)) /* sqlite3.c:154482:19 */ -var lagName = *(*[4]int8)(unsafe.Pointer(ts + 20576 /* "lag" */)) /* sqlite3.c:154483:19 */ +var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 20482 /* "row_number" */)) /* sqlite3.c:154485:19 */ +var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 20493 /* "dense_rank" */)) /* sqlite3.c:154486:19 */ +var rankName = *(*[5]int8)(unsafe.Pointer(ts + 20504 /* "rank" */)) /* sqlite3.c:154487:19 */ +var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 20509 /* "percent_rank" */)) /* sqlite3.c:154488:19 */ +var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 20522 /* "cume_dist" */)) /* sqlite3.c:154489:19 */ +var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 20532 /* "ntile" */)) /* sqlite3.c:154490:19 */ +var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 20538 /* "last_value" */)) /* sqlite3.c:154491:19 */ +var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 20549 /* "nth_value" */)) /* sqlite3.c:154492:19 */ +var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 20559 /* "first_value" */)) /* sqlite3.c:154493:19 */ +var leadName = *(*[5]int8)(unsafe.Pointer(ts + 20571 /* "lead" */)) /* sqlite3.c:154494:19 */ +var lagName = *(*[4]int8)(unsafe.Pointer(ts + 20576 /* "lag" */)) /* sqlite3.c:154495:19 */ // No-op implementations of xStep() and xFinalize(). Used as place-holders // for built-in window functions that never call those interfaces. @@ -149003,7 +149051,7 @@ var lagName = *(*[4]int8)(unsafe.Pointer(ts + 20576 /* "lag" */)) // noopStepFunc() is never called, and so it is marked with NO_TEST to // let the test coverage routine know not to expect this function to be // invoked. -func noopStepFunc(tls *libc.TLS, p uintptr, n int32, a uintptr) { /* sqlite3.c:154494:13: */ //NO_TEST +func noopStepFunc(tls *libc.TLS, p uintptr, n int32, a uintptr) { /* sqlite3.c:154506:13: */ //NO_TEST _ = p //NO_TEST _ = n //NO_TEST _ = a //NO_TEST @@ -149011,7 +149059,7 @@ func noopStepFunc(tls *libc.TLS, p uintptr, n int32, a uintptr) { /* sqlite3.c:1 } //NO_TEST -func noopValueFunc(tls *libc.TLS, p uintptr) { /* sqlite3.c:154504:13: */ +func noopValueFunc(tls *libc.TLS, p uintptr) { /* sqlite3.c:154516:13: */ _ = p /*no-op*/ } @@ -149026,7 +149074,7 @@ func noopValueFunc(tls *libc.TLS, p uintptr) { /* sqlite3.c:154504:13: */ // xInverse. // Register those built-in window functions that are not also aggregates. -func Xsqlite3WindowFunctions(tls *libc.TLS) { /* sqlite3.c:154535:21: */ +func Xsqlite3WindowFunctions(tls *libc.TLS) { /* sqlite3.c:154547:21: */ Xsqlite3InsertBuiltinFuncs(tls, uintptr(unsafe.Pointer(&aWindowFuncs)), (int32(uint64(unsafe.Sizeof(aWindowFuncs)) / uint64(unsafe.Sizeof(FuncDef{}))))) } @@ -149045,9 +149093,9 @@ var aWindowFuncs = [15]FuncDef{ {FnArg: int8(3), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}, {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}, {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}} /* sqlite3.c:154536:18 */ + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}} /* sqlite3.c:154548:18 */ -func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uintptr { /* sqlite3.c:154556:15: */ +func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uintptr { /* sqlite3.c:154568:15: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -149078,7 +149126,7 @@ func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uin // * If the function is a built-in window function that requires the // window to be coerced (see "BUILT-IN WINDOW FUNCTIONS" at the top // of this file), pWin is updated here. -func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uintptr, pFunc uintptr) { /* sqlite3.c:154584:21: */ +func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uintptr, pFunc uintptr) { /* sqlite3.c:154596:21: */ bp := tls.Alloc(192) defer tls.Free(192) @@ -149146,16 +149194,16 @@ type WindowUpdate = struct { FeStart int32 FeEnd int32 _ [4]byte -} /* sqlite3.c:154619:7 */ +} /* sqlite3.c:154631:7 */ // Context object passed through sqlite3WalkExprList() to // selectWindowRewriteExprCb() by selectWindowRewriteEList(). -type WindowRewrite = WindowRewrite1 /* sqlite3.c:154659:30 */ +type WindowRewrite = WindowRewrite1 /* sqlite3.c:154671:30 */ // Callback function used by selectWindowRewriteEList(). If necessary, // this function appends to the output expression-list and updates // expression (*ppExpr) in place. -func selectWindowRewriteExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154673:12: */ +func selectWindowRewriteExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154685:12: */ var p uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) var pParse uintptr = (*Walker)(unsafe.Pointer(pWalker)).FpParse @@ -149251,7 +149299,7 @@ func selectWindowRewriteExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) in return WRC_Continue } -func selectWindowRewriteSelectCb(tls *libc.TLS, pWalker uintptr, pSelect uintptr) int32 { /* sqlite3.c:154754:12: */ +func selectWindowRewriteSelectCb(tls *libc.TLS, pWalker uintptr, pSelect uintptr) int32 { /* sqlite3.c:154766:12: */ var p uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) var pSave uintptr = (*WindowRewrite1)(unsafe.Pointer(p)).FpSubSelect if pSave == pSelect { @@ -149275,7 +149323,7 @@ func selectWindowRewriteSelectCb(tls *libc.TLS, pWalker uintptr, pSelect uintptr // with a TK_COLUMN that reads the (N-1)th element of table // pWin->iEphCsr, where N is the number of elements in (*ppSub) after // appending the new one. -func selectWindowRewriteEList(tls *libc.TLS, pParse uintptr, pWin uintptr, pSrc uintptr, pEList uintptr, pTab uintptr, ppSub uintptr) { /* sqlite3.c:154781:13: */ +func selectWindowRewriteEList(tls *libc.TLS, pParse uintptr, pWin uintptr, pSrc uintptr, pEList uintptr, pTab uintptr, ppSub uintptr) { /* sqlite3.c:154793:13: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -149307,7 +149355,7 @@ func selectWindowRewriteEList(tls *libc.TLS, pParse uintptr, pWin uintptr, pSrc // Append a copy of each expression in expression-list pAppend to // expression list pList. Return a pointer to the result list. -func exprListAppendList(tls *libc.TLS, pParse uintptr, pList uintptr, pAppend uintptr, bIntToNull int32) uintptr { /* sqlite3.c:154815:17: */ +func exprListAppendList(tls *libc.TLS, pParse uintptr, pList uintptr, pAppend uintptr, bIntToNull int32) uintptr { /* sqlite3.c:154827:17: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -149350,7 +149398,7 @@ func exprListAppendList(tls *libc.TLS, pParse uintptr, pList uintptr, pAppend ui // due to the extra subquery layer that was added. // // See also the incrAggDepth() routine in resolve.c -func sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154854:12: */ +func sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154866:12: */ if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_AGG_FUNCTION) && (int32((*Expr)(unsafe.Pointer(pExpr)).Fop2) >= (*Walker)(unsafe.Pointer(pWalker)).FwalkerDepth) { (*Expr)(unsafe.Pointer(pExpr)).Fop2++ @@ -149363,7 +149411,7 @@ func sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintpt // rewrites the SELECT statement so that window function xStep functions // are invoked in the correct order as described under "SELECT REWRITING" // at the top of this file. -func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:154870:20: */ +func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:154882:20: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -149532,7 +149580,7 @@ func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* // Unlink the Window object from the Select to which it is attached, // if it is attached. -func Xsqlite3WindowUnlinkFromSelect(tls *libc.TLS, p uintptr) { /* sqlite3.c:155020:21: */ +func Xsqlite3WindowUnlinkFromSelect(tls *libc.TLS, p uintptr) { /* sqlite3.c:155032:21: */ if (*Window)(unsafe.Pointer(p)).FppThis != 0 { *(*uintptr)(unsafe.Pointer((*Window)(unsafe.Pointer(p)).FppThis)) = (*Window)(unsafe.Pointer(p)).FpNextWin if (*Window)(unsafe.Pointer(p)).FpNextWin != 0 { @@ -149543,7 +149591,7 @@ func Xsqlite3WindowUnlinkFromSelect(tls *libc.TLS, p uintptr) { /* sqlite3.c:155 } // Free the Window object passed as the second argument. -func Xsqlite3WindowDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155031:21: */ +func Xsqlite3WindowDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155043:21: */ if p != 0 { Xsqlite3WindowUnlinkFromSelect(tls, p) Xsqlite3ExprDelete(tls, db, (*Window)(unsafe.Pointer(p)).FpFilter) @@ -149558,7 +149606,7 @@ func Xsqlite3WindowDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:1 } // Free the linked list of Window objects starting at the second argument. -func Xsqlite3WindowListDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155048:21: */ +func Xsqlite3WindowListDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155060:21: */ for p != 0 { var pNext uintptr = (*Window)(unsafe.Pointer(p)).FpNextWin Xsqlite3WindowDelete(tls, db, p) @@ -149571,7 +149619,7 @@ func Xsqlite3WindowListDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3 // constant, change it to NULL. The fact that it is then a non-negative // integer will be caught later. But it is important not to leave // variable values in the expression tree. -func sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) uintptr { /* sqlite3.c:155063:13: */ +func sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) uintptr { /* sqlite3.c:155075:13: */ if 0 == Xsqlite3ExprIsConstant(tls, pExpr) { if int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME { Xsqlite3RenameExprUnmap(tls, pParse, pExpr) @@ -149583,7 +149631,7 @@ func sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) uintp } // Allocate and return a new Window object describing a Window Definition. -func Xsqlite3WindowAlloc(tls *libc.TLS, pParse uintptr, eType int32, eStart int32, pStart uintptr, eEnd int32, pEnd uintptr, eExclude U8) uintptr { /* sqlite3.c:155075:23: */ +func Xsqlite3WindowAlloc(tls *libc.TLS, pParse uintptr, eType int32, eStart int32, pStart uintptr, eEnd int32, pEnd uintptr, eExclude U8) uintptr { /* sqlite3.c:155087:23: */ var pWin uintptr var bImplicitFrame int32 pWin = uintptr(0) @@ -149652,7 +149700,7 @@ windowAllocErr: // Attach PARTITION and ORDER BY clauses pPartition and pOrderBy to window // pWin. Also, if parameter pBase is not NULL, set pWin->zBase to the // equivalent nul-terminated string. -func Xsqlite3WindowAssemble(tls *libc.TLS, pParse uintptr, pWin uintptr, pPartition uintptr, pOrderBy uintptr, pBase uintptr) uintptr { /* sqlite3.c:155147:23: */ +func Xsqlite3WindowAssemble(tls *libc.TLS, pParse uintptr, pWin uintptr, pPartition uintptr, pOrderBy uintptr, pBase uintptr) uintptr { /* sqlite3.c:155159:23: */ if pWin != 0 { (*Window)(unsafe.Pointer(pWin)).FpPartition = pPartition (*Window)(unsafe.Pointer(pWin)).FpOrderBy = pOrderBy @@ -149671,7 +149719,7 @@ func Xsqlite3WindowAssemble(tls *libc.TLS, pParse uintptr, pWin uintptr, pPartit // stored in the linked list starting at pWin->pNextWin. This function // either updates *pWin according to the base specification, or else // leaves an error in pParse. -func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uintptr) { /* sqlite3.c:155174:21: */ +func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uintptr) { /* sqlite3.c:155186:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -149705,7 +149753,7 @@ func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uint } // Attach window object pWin to expression p. -func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr) { /* sqlite3.c:155208:21: */ +func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr) { /* sqlite3.c:155220:21: */ if p != 0 { *(*uintptr)(unsafe.Pointer(p + 64 /* &.y */)) = pWin @@ -149724,7 +149772,7 @@ func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr // to be processed as part of SELECT statement pSel). The window is linked // in if either (a) there are no other windows already linked to this // SELECT, or (b) the windows already linked use a compatible window frame. -func Xsqlite3WindowLink(tls *libc.TLS, pSel uintptr, pWin uintptr) { /* sqlite3.c:155231:21: */ +func Xsqlite3WindowLink(tls *libc.TLS, pSel uintptr, pWin uintptr) { /* sqlite3.c:155243:21: */ if pSel != 0 { if (uintptr(0) == (*Select)(unsafe.Pointer(pSel)).FpWin) || (0 == Xsqlite3WindowCompare(tls, uintptr(0), (*Select)(unsafe.Pointer(pSel)).FpWin, pWin, 0)) { (*Window)(unsafe.Pointer(pWin)).FpNextWin = (*Select)(unsafe.Pointer(pSel)).FpWin @@ -149744,7 +149792,7 @@ func Xsqlite3WindowLink(tls *libc.TLS, pSel uintptr, pWin uintptr) { /* sqlite3. // Return 0 if the two window objects are identical, 1 if they are // different, or 2 if it cannot be determined if the objects are identical // or not. Identical window objects can be processed in a single scan. -func Xsqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr, bFilter int32) int32 { /* sqlite3.c:155253:20: */ +func Xsqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr, bFilter int32) int32 { /* sqlite3.c:155265:20: */ var res int32 if (p1 == uintptr(0)) || (p2 == uintptr(0)) { return 1 @@ -149784,7 +149832,7 @@ func Xsqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr // This is called by code in select.c before it calls sqlite3WhereBegin() // to begin iterating through the sub-query results. It is used to allocate // and initialize registers and cursors used by sqlite3WindowCodeStep(). -func Xsqlite3WindowCodeInit(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:155282:21: */ +func Xsqlite3WindowCodeInit(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:155294:21: */ var nEphExpr int32 = (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(((*Select)(unsafe.Pointer(pSelect)).FpSrc + 8 /* &.a */))).FpSelect)).FpEList)).FnExpr var pMWin uintptr = (*Select)(unsafe.Pointer(pSelect)).FpWin var pWin uintptr @@ -149857,7 +149905,7 @@ func Xsqlite3WindowCodeInit(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* // evaluated and the result left in register reg. This function generates VM // code to check that the value is a non-negative integer and throws an // exception if it is not. -func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { /* sqlite3.c:155366:13: */ +func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { /* sqlite3.c:155378:13: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) var regZero int32 = Xsqlite3GetTempReg(tls, pParse) @@ -149891,12 +149939,12 @@ var azErr = [5]uintptr{ ts + 20381, /* "second argument ..." */ ts + 21002, /* "frame starting o..." */ ts + 21054, /* "frame ending off..." */ -} /* sqlite3.c:155367:21 */ -var aOp1 = [5]int32{OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge} /* sqlite3.c:155374:14 */ +} /* sqlite3.c:155379:21 */ +var aOp1 = [5]int32{OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge} /* sqlite3.c:155386:14 */ // Return the number of arguments passed to the window-function associated // with the object passed as the only argument to this function. -func windowArgCount(tls *libc.TLS, pWin uintptr) int32 { /* sqlite3.c:155413:12: */ +func windowArgCount(tls *libc.TLS, pWin uintptr) int32 { /* sqlite3.c:155425:12: */ var pList uintptr = *(*uintptr)(unsafe.Pointer((*Window)(unsafe.Pointer(pWin)).FpOwner + 32 /* &.x */)) return func() int32 { if pList != 0 { @@ -149917,19 +149965,19 @@ type WindowCodeArg1 = struct { Fstart WindowCsrAndReg Fcurrent WindowCsrAndReg Fend WindowCsrAndReg -} /* sqlite3.c:155418:9 */ +} /* sqlite3.c:155430:9 */ -type WindowCodeArg = WindowCodeArg1 /* sqlite3.c:155418:30 */ +type WindowCodeArg = WindowCodeArg1 /* sqlite3.c:155430:30 */ type WindowCsrAndReg1 = struct { Fcsr int32 Freg int32 -} /* sqlite3.c:155418:9 */ +} /* sqlite3.c:155430:9 */ -type WindowCsrAndReg = WindowCsrAndReg1 /* sqlite3.c:155419:32 */ +type WindowCsrAndReg = WindowCsrAndReg1 /* sqlite3.c:155431:32 */ // Generate VM code to read the window frames peer values from cursor csr into // an array of registers starting at reg. -func windowReadPeerValues(tls *libc.TLS, p uintptr, csr int32, reg int32) { /* sqlite3.c:155502:13: */ +func windowReadPeerValues(tls *libc.TLS, p uintptr, csr int32, reg int32) { /* sqlite3.c:155514:13: */ var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin var pOrderBy uintptr = (*Window)(unsafe.Pointer(pMWin)).FpOrderBy if pOrderBy != 0 { @@ -149965,7 +150013,7 @@ func windowReadPeerValues(tls *libc.TLS, p uintptr, csr int32, reg int32) { /* s // // If argument regPartSize is non-zero, then it is a register containing the // number of rows in the current partition. -func windowAggStep(tls *libc.TLS, p uintptr, pMWin uintptr, csr int32, bInverse int32, reg int32) { /* sqlite3.c:155539:13: */ +func windowAggStep(tls *libc.TLS, p uintptr, pMWin uintptr, csr int32, bInverse int32, reg int32) { /* sqlite3.c:155551:13: */ var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var v uintptr = Xsqlite3GetVdbe(tls, pParse) var pWin uintptr @@ -150073,7 +150121,7 @@ func windowAggStep(tls *libc.TLS, p uintptr, pMWin uintptr, csr int32, bInverse // (bFin==1) for each window function in the linked list starting at // pMWin. Or, for built-in window-functions that do not use the standard // API, generate the equivalent VM code. -func windowAggFinal(tls *libc.TLS, p uintptr, bFin int32) { /* sqlite3.c:155653:13: */ +func windowAggFinal(tls *libc.TLS, p uintptr, bFin int32) { /* sqlite3.c:155665:13: */ var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin var v uintptr = Xsqlite3GetVdbe(tls, pParse) @@ -150109,7 +150157,7 @@ func windowAggFinal(tls *libc.TLS, p uintptr, bFin int32) { /* sqlite3.c:155653: // p->pMWin list by doing a full scan of the current window frame. Store the // results in the Window.regResult registers, ready to return the upper // layer. -func windowFullScan(tls *libc.TLS, p uintptr) { /* sqlite3.c:155692:13: */ +func windowFullScan(tls *libc.TLS, p uintptr) { /* sqlite3.c:155704:13: */ var pWin uintptr var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin @@ -150216,7 +150264,7 @@ func windowFullScan(tls *libc.TLS, p uintptr) { /* sqlite3.c:155692:13: */ // first_value() // lag() // lead() -func windowReturnOneRow(tls *libc.TLS, p uintptr) { /* sqlite3.c:155798:13: */ +func windowReturnOneRow(tls *libc.TLS, p uintptr) { /* sqlite3.c:155810:13: */ var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin var v uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpVdbe @@ -150298,7 +150346,7 @@ func windowReturnOneRow(tls *libc.TLS, p uintptr) { /* sqlite3.c:155798:13: */ // in the linked list passed as the second argument to NULL. And perform // any equivalent initialization required by any built-in window functions // in the list. -func windowInitAccum(tls *libc.TLS, pParse uintptr, pMWin uintptr) int32 { /* sqlite3.c:155874:12: */ +func windowInitAccum(tls *libc.TLS, pParse uintptr, pMWin uintptr) int32 { /* sqlite3.c:155886:12: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) var regArg int32 var nArg int32 = 0 @@ -150333,7 +150381,7 @@ func windowInitAccum(tls *libc.TLS, pParse uintptr, pMWin uintptr) int32 { /* sq // Return true if the current frame should be cached in the ephemeral table, // even if there are no xInverse() calls required. -func windowCacheFrame(tls *libc.TLS, pMWin uintptr) int32 { /* sqlite3.c:155906:12: */ +func windowCacheFrame(tls *libc.TLS, pMWin uintptr) int32 { /* sqlite3.c:155918:12: */ var pWin uintptr if (*Window)(unsafe.Pointer(pMWin)).FregStartRowid != 0 { return 1 @@ -150358,7 +150406,7 @@ func windowCacheFrame(tls *libc.TLS, pMWin uintptr) int32 { /* sqlite3.c:155906: // If the two arrays are not equal, the contents of regNew is copied to // regOld and control falls through. Otherwise, if the contents of the arrays // are equal, an OP_Goto is executed. The address of the OP_Goto is returned. -func windowIfNewPeer(tls *libc.TLS, pParse uintptr, pOrderBy uintptr, regNew int32, regOld int32, addr int32) { /* sqlite3.c:155932:13: */ +func windowIfNewPeer(tls *libc.TLS, pParse uintptr, pOrderBy uintptr, regNew int32, regOld int32, addr int32) { /* sqlite3.c:155944:13: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) if pOrderBy != 0 { var nVal int32 = (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr @@ -150395,7 +150443,7 @@ func windowIfNewPeer(tls *libc.TLS, pParse uintptr, pOrderBy uintptr, regNew int // A special type of arithmetic is used such that if csr1.peerVal is not // a numeric type (real or integer), then the result of the addition addition // or subtraction is a a copy of csr1.peerVal. -func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal int32, csr2 int32, lbl int32) { /* sqlite3.c:155978:13: */ +func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal int32, csr2 int32, lbl int32) { /* sqlite3.c:155990:13: */ var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var v uintptr = Xsqlite3GetVdbe(tls, pParse) var pOrderBy uintptr = (*Window)(unsafe.Pointer((*WindowCodeArg)(unsafe.Pointer(p)).FpMWin)).FpOrderBy // ORDER BY clause for window @@ -150513,7 +150561,7 @@ func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal // generates VM code for a single RETURN_ROW, AGGSTEP or AGGINVERSE // operation. Refer to the header comment for sqlite3WindowCodeStep() for // details. -func windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOnEof int32) int32 { /* sqlite3.c:156106:12: */ +func windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOnEof int32) int32 { /* sqlite3.c:156118:12: */ var csr int32 var reg int32 var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse @@ -150653,7 +150701,7 @@ func windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOn // Allocate and return a duplicate of the Window object indicated by the // third argument. Set the Window.pOwner field of the new object to // pOwner. -func Xsqlite3WindowDup(tls *libc.TLS, db uintptr, pOwner uintptr, p uintptr) uintptr { /* sqlite3.c:156247:23: */ +func Xsqlite3WindowDup(tls *libc.TLS, db uintptr, pOwner uintptr, p uintptr) uintptr { /* sqlite3.c:156259:23: */ var pNew uintptr = uintptr(0) if p != 0 { pNew = Xsqlite3DbMallocZero(tls, db, uint64(unsafe.Sizeof(Window{}))) @@ -150684,7 +150732,7 @@ func Xsqlite3WindowDup(tls *libc.TLS, db uintptr, pOwner uintptr, p uintptr) uin // Return a copy of the linked list of Window objects passed as the // second argument. -func Xsqlite3WindowListDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:156280:23: */ +func Xsqlite3WindowListDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:156292:23: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -150709,7 +150757,7 @@ func Xsqlite3WindowListDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sq // // If an OOM error occurs, this function sets the Parse.db.mallocFailed // flag and returns zero. -func windowExprGtZero(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:156302:12: */ +func windowExprGtZero(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:156314:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -151057,7 +151105,7 @@ func windowExprGtZero(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* s // // The text above leaves out many details. Refer to the code and comments // below for a more complete picture. -func Xsqlite3WindowCodeStep(tls *libc.TLS, pParse uintptr, p uintptr, pWInfo uintptr, regGosub int32, addrGosub int32) { /* sqlite3.c:156649:21: */ +func Xsqlite3WindowCodeStep(tls *libc.TLS, pParse uintptr, p uintptr, pWInfo uintptr, regGosub int32, addrGosub int32) { /* sqlite3.c:156661:21: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -151454,17 +151502,17 @@ type TrigEvent = struct { Fa int32 _ [4]byte Fb uintptr -} /* sqlite3.c:157049:1 */ +} /* sqlite3.c:157061:1 */ type FrameBound = struct { FeType int32 _ [4]byte FpExpr uintptr -} /* sqlite3.c:157051:1 */ +} /* sqlite3.c:157063:1 */ // Disable lookaside memory allocation for objects that might be // shared across database connections. -func disableLookaside(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:157057:13: */ +func disableLookaside(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:157069:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb (*Parse)(unsafe.Pointer(pParse)).FdisableLookaside++ (*Sqlite3)(unsafe.Pointer(db)).Flookaside.FbDisable++ @@ -151474,7 +151522,7 @@ func disableLookaside(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:157057:13: * // For a compound SELECT statement, make sure p->pPrior->pNext==p for // all elements in the list. And make sure list length does not exceed // SQLITE_LIMIT_COMPOUND_SELECT. -func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:157090:15: */ +func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:157102:15: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -151513,7 +151561,7 @@ func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlit // Attach a With object describing the WITH clause to a Select // object describing the query for which the WITH clause is a prefix. -func attachWithToSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, pWith uintptr) uintptr { /* sqlite3.c:157121:17: */ +func attachWithToSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, pWith uintptr) uintptr { /* sqlite3.c:157133:17: */ if pSelect != 0 { (*Select)(unsafe.Pointer(pSelect)).FpWith = pWith parserDoubleLinkSelect(tls, pParse, pSelect) @@ -151527,7 +151575,7 @@ func attachWithToSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, pWith ui // Construct a new Expr object from a single identifier. Use the // new Expr to populate pOut. Set the span of pOut to be the identifier // that created the expression. -func tokenExpr(tls *libc.TLS, pParse uintptr, op int32, t Token) uintptr { /* sqlite3.c:157136:15: */ +func tokenExpr(tls *libc.TLS, pParse uintptr, op int32, t Token) uintptr { /* sqlite3.c:157148:15: */ bp := tls.Alloc(16) defer tls.Free(16) *(*Token)(unsafe.Pointer(bp)) = t @@ -151564,7 +151612,7 @@ func tokenExpr(tls *libc.TLS, pParse uintptr, op int32, t Token) uintptr { /* sq // A routine to convert a binary TK_IS or TK_ISNOT expression into a // unary TK_ISNULL or TK_NOTNULL expression. -func binaryToUnaryIfNull(tls *libc.TLS, pParse uintptr, pY uintptr, pA uintptr, op int32) { /* sqlite3.c:157171:15: */ +func binaryToUnaryIfNull(tls *libc.TLS, pParse uintptr, pY uintptr, pA uintptr, op int32) { /* sqlite3.c:157183:15: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (((pA != 0) && (pY != 0)) && (int32((*Expr)(unsafe.Pointer(pY)).Fop) == TK_NULL)) && !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME) { (*Expr)(unsafe.Pointer(pA)).Fop = U8(op) @@ -151578,7 +151626,7 @@ func binaryToUnaryIfNull(tls *libc.TLS, pParse uintptr, pY uintptr, pA uintptr, // list of identifiers. Report an error if the ID list contains // a COLLATE clause or an ASC or DESC keyword, except ignore the // error while parsing a legacy schema. -func parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdToken uintptr, hasCollate int32, sortOrder int32) uintptr { /* sqlite3.c:157185:19: */ +func parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdToken uintptr, hasCollate int32, sortOrder int32) uintptr { /* sqlite3.c:157197:19: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -151653,7 +151701,7 @@ type YYMINORTYPE = struct { _ [0]uint64 Fyyinit int32 _ [12]byte -} /* sqlite3.c:157474:3 */ +} /* sqlite3.c:157486:3 */ //************ End control #defines ****************************************** // Define the yytestcase() macro to be a no-op if is not already defined @@ -151917,7 +151965,7 @@ var yy_action = [2020]uint16{ /* 1990 */ uint16(1040), uint16(1044), uint16(1098), uint16(1045), uint16(1097), uint16(256), uint16(255), uint16(28), uint16(40), uint16(387), /* 2000 */ uint16(1010), uint16(851), uint16(109), uint16(29), uint16(1167), uint16(559), uint16(384), uint16(257), uint16(913), uint16(258), /* 2010 */ uint16(1166), uint16(1579), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1578), -} /* sqlite3.c:157568:27 */ +} /* sqlite3.c:157580:27 */ var yy_lookahead = [2203]uint16{ /* 0 */ uint16(191), uint16(220), uint16(191), uint16(222), uint16(191), uint16(191), uint16(271), uint16(272), uint16(273), uint16(216), /* 10 */ uint16(191), uint16(230), uint16(216), uint16(191), uint16(191), uint16(191), uint16(271), uint16(272), uint16(273), uint16(19), @@ -152140,7 +152188,7 @@ var yy_lookahead = [2203]uint16{ /* 2180 */ uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), /* 2190 */ uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), /* 2200 */ uint16(316), uint16(316), uint16(316), -} /* sqlite3.c:157772:25 */ +} /* sqlite3.c:157784:25 */ var yy_shift_ofst = [570]uint16{ /* 0 */ uint16(1423), uint16(1409), uint16(1454), uint16(1192), uint16(1192), uint16(36), uint16(1252), uint16(1410), uint16(1517), uint16(1684), /* 10 */ uint16(1684), uint16(1684), uint16(292), uint16(0), uint16(0), uint16(180), uint16(1015), uint16(1684), uint16(1684), uint16(1684), @@ -152199,7 +152247,7 @@ var yy_shift_ofst = [570]uint16{ /* 540 */ uint16(1961), uint16(1953), uint16(1960), uint16(1954), uint16(1964), uint16(1943), uint16(1966), uint16(1967), uint16(1968), uint16(1969), /* 550 */ uint16(1970), uint16(1971), uint16(1973), uint16(1982), uint16(1975), uint16(1976), uint16(1977), uint16(1978), uint16(1980), uint16(1981), /* 560 */ uint16(1979), uint16(1874), uint16(1867), uint16(1869), uint16(1871), uint16(1879), uint16(1983), uint16(1984), uint16(2003), uint16(2009), -} /* sqlite3.c:157998:33 */ +} /* sqlite3.c:158010:33 */ var yy_reduce_ofst = [406]int16{ /* 0 */ int16(111), int16(168), int16(386), int16(761), int16(-176), int16(-174), int16(-191), int16(-189), int16(-181), int16(-178), /* 10 */ int16(176), int16(263), int16(44), int16(-207), int16(-204), int16(-265), int16(-139), int16(-114), int16(158), int16(504), @@ -152242,7 +152290,7 @@ var yy_reduce_ofst = [406]int16{ /* 380 */ int16(1618), int16(1621), int16(1611), int16(1624), int16(1648), int16(1652), int16(1676), int16(1677), int16(1687), int16(1688), /* 390 */ int16(1689), int16(1613), int16(1614), int16(1615), int16(1668), int16(1663), int16(1665), int16(1666), int16(1670), int16(1678), /* 400 */ int16(1655), int16(1662), int16(1672), int16(1673), int16(1675), int16(1690), -} /* sqlite3.c:158060:20 */ +} /* sqlite3.c:158072:20 */ var yy_default = [570]uint16{ /* 0 */ uint16(1623), uint16(1623), uint16(1623), uint16(1453), uint16(1223), uint16(1332), uint16(1223), uint16(1223), uint16(1223), uint16(1453), /* 10 */ uint16(1453), uint16(1453), uint16(1223), uint16(1362), uint16(1362), uint16(1506), uint16(1254), uint16(1223), uint16(1223), uint16(1223), @@ -152301,7 +152349,7 @@ var yy_default = [570]uint16{ /* 540 */ uint16(1223), uint16(1556), uint16(1357), uint16(1223), uint16(1223), uint16(1602), uint16(1223), uint16(1223), uint16(1223), uint16(1223), /* 550 */ uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), /* 560 */ uint16(1596), uint16(1313), uint16(1404), uint16(1223), uint16(1403), uint16(1407), uint16(1223), uint16(1235), uint16(1223), uint16(1223), -} /* sqlite3.c:158103:27 */ +} /* sqlite3.c:158115:27 */ //********* End of lemon-generated parsing tables **************************** // The next table maps tokens (terminal symbols) into fallback tokens. @@ -152501,7 +152549,7 @@ var yyFallback = [183]uint16{ uint16(0), // SPAN => nothing uint16(0), // SPACE => nothing uint16(0), // ILLEGAL => nothing -} /* sqlite3.c:158179:25 */ +} /* sqlite3.c:158191:25 */ // The following structure represents a single element of the // parser's stack. Information stored includes: @@ -152523,9 +152571,9 @@ type yyStackEntry = struct { Fmajor uint16 _ [4]byte Fminor YYMINORTYPE -} /* sqlite3.c:158382:1 */ +} /* sqlite3.c:158394:1 */ -type YyStackEntry = yyStackEntry /* sqlite3.c:158389:29 */ +type YyStackEntry = yyStackEntry /* sqlite3.c:158401:29 */ // The state of the parser is completely contained in an instance of // the following structure @@ -152534,9 +152582,9 @@ type yyParser = struct { FpParse uintptr Fyystack [100]YyStackEntry FyystackEnd uintptr -} /* sqlite3.c:158393:1 */ +} /* sqlite3.c:158405:1 */ -type YyParser = yyParser /* sqlite3.c:158412:25 */ +type YyParser = yyParser /* sqlite3.c:158424:25 */ // Datatype of the argument to the memory allocated passed as the // second argument to sqlite3ParserAlloc() below. This can be changed by @@ -152544,7 +152592,7 @@ type YyParser = yyParser /* sqlite3.c:158412:25 */ // grammar. // Initialize a new parser that has already been allocated. -func Xsqlite3ParserInit(tls *libc.TLS, yypRawParser uintptr, pParse uintptr) { /* sqlite3.c:159220:21: */ +func Xsqlite3ParserInit(tls *libc.TLS, yypRawParser uintptr, pParse uintptr) { /* sqlite3.c:159232:21: */ var yypParser uintptr = yypRawParser (*YyParser)(unsafe.Pointer(yypParser)).FpParse = pParse (*YyParser)(unsafe.Pointer(yypParser)).Fyytos = yypParser + 16 /* &.yystack */ @@ -152559,7 +152607,7 @@ func Xsqlite3ParserInit(tls *libc.TLS, yypRawParser uintptr, pParse uintptr) { / // a pointer to the value to be deleted. The code used to do the // deletions is derived from the %destructor and/or %token_destructor // directives of the input grammar. -func yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor uintptr) { /* sqlite3.c:159278:13: */ +func yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor uintptr) { /* sqlite3.c:159290:13: */ var pParse uintptr = (*YyParser)(unsafe.Pointer(yypParser)).FpParse switch int32(yymajor) { @@ -152718,7 +152766,7 @@ func yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor ui // // If there is a destructor routine associated with the token which // is popped from the stack, then call it. -func yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:159403:13: */ +func yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:159415:13: */ var yytos uintptr yytos = libc.PostDecUintptr(&(*YyParser)(unsafe.Pointer(pParser)).Fyytos, 24) @@ -152726,7 +152774,7 @@ func yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:159403:1 } // Clear all secondary memory allocations from the parser -func Xsqlite3ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:159421:21: */ +func Xsqlite3ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:159433:21: */ var pParser uintptr = p for (*YyParser)(unsafe.Pointer(pParser)).Fyytos > pParser+16 /* &.yystack */ { yy_pop_parser_stack(tls, pParser) @@ -152749,7 +152797,7 @@ func Xsqlite3ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:159421:21: // Find the appropriate action for a parser given the terminal // look-ahead token iLookAhead. -func yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) uint16 { /* sqlite3.c:159501:21: */ +func yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) uint16 { /* sqlite3.c:159513:21: */ var i int32 if int32(stateno) > YY_MAX_SHIFT { @@ -152789,7 +152837,7 @@ func yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) uint // Find the appropriate action for a parser given the non-terminal // look-ahead token iLookAhead. -func yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) uint16 { /* sqlite3.c:159566:21: */ +func yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) uint16 { /* sqlite3.c:159578:21: */ var i int32 i = int32(yy_reduce_ofst[stateno]) @@ -152800,7 +152848,7 @@ func yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) uin } // The following routine is called if the stack overflows. -func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:159595:13: */ +func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:159607:13: */ var pParse uintptr = (*YyParser)(unsafe.Pointer(yypParser)).FpParse for (*YyParser)(unsafe.Pointer(yypParser)).Fyytos > yypParser+16 /* &.yystack */ { @@ -152819,7 +152867,7 @@ func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:159595:13: // Print tracing information for a SHIFT action // Perform a shift action. -func yy_shift(tls *libc.TLS, yypParser uintptr, yyNewState uint16, yyMajor uint16, yyMinor Token) { /* sqlite3.c:159638:13: */ +func yy_shift(tls *libc.TLS, yypParser uintptr, yyNewState uint16, yyMajor uint16, yyMinor Token) { /* sqlite3.c:159650:13: */ var yytos uintptr (*YyParser)(unsafe.Pointer(yypParser)).Fyytos += 24 if (*YyParser)(unsafe.Pointer(yypParser)).Fyytos > (*YyParser)(unsafe.Pointer(yypParser)).FyystackEnd { @@ -153238,7 +153286,7 @@ var yyRuleInfoLhs = [398]uint16{ uint16(300), // (395) anylist ::= anylist LP anylist RP uint16(300), // (396) anylist ::= anylist ANY uint16(263), // (397) with ::= -} /* sqlite3.c:159679:25 */ +} /* sqlite3.c:159691:25 */ // For rule J, yyRuleInfoNRhs[J] contains the negative of the number // of symbols on the right-hand side of that rule. @@ -153641,7 +153689,7 @@ var yyRuleInfoNRhs = [398]int8{ int8(-4), // (395) anylist ::= anylist LP anylist RP int8(-2), // (396) anylist ::= anylist ANY int8(0), // (397) with ::= -} /* sqlite3.c:160082:26 */ +} /* sqlite3.c:160094:26 */ // Forward Declaration @@ -153653,7 +153701,7 @@ var yyRuleInfoNRhs = [398]int8{ // if the lookahead token has already been consumed. As this procedure is // only called from one place, optimizing compilers will in-line it, which // means that the extra parameters have no performance impact. -func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead int32, yyLookaheadToken Token, pParse uintptr) uint16 { /* sqlite3.c:160495:21: */ +func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead int32, yyLookaheadToken Token, pParse uintptr) uint16 { /* sqlite3.c:160507:21: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -155608,7 +155656,7 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in // The following code executes when the parse fails // The following code executes when a syntax error first occurs. -func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162015:13: */ +func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162027:13: */ bp := tls.Alloc(24) defer tls.Free(24) *(*Token)(unsafe.Pointer(bp + 8)) = yyminor @@ -155628,7 +155676,7 @@ func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor To } // The following is executed when the parser accepts -func yy_accept(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:162039:13: */ +func yy_accept(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:162051:13: */ var pParse uintptr = (*YyParser)(unsafe.Pointer(yypParser)).FpParse @@ -155658,7 +155706,7 @@ func yy_accept(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:162039:13: */ // // Outputs: // None. -func Xsqlite3Parser(tls *libc.TLS, yyp uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162080:21: */ +func Xsqlite3Parser(tls *libc.TLS, yyp uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162092:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -155712,7 +155760,7 @@ func Xsqlite3Parser(tls *libc.TLS, yyp uintptr, yymajor int32, yyminor Token) { // Return the fallback token corresponding to canonical token iToken, or // 0 if iToken has no fallback. -func Xsqlite3ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:162298:20: */ +func Xsqlite3ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:162310:20: */ return int32(yyFallback[iToken]) } @@ -155763,7 +155811,7 @@ var aiClass = [256]uint8{ /* Dx */ uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), /* Ex */ uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), /* Fx */ uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), -} /* sqlite3.c:162369:28 */ +} /* sqlite3.c:162381:28 */ // The charMap() macro maps alphabetic characters (only) into their // lower-case ASCII equivalent. On ASCII machines, this is just @@ -155849,7 +155897,7 @@ var zKWText = [666]int8{ int8('W'), int8('S'), int8('U'), int8('N'), int8('B'), int8('O'), int8('U'), int8('N'), int8('D'), int8('E'), int8('D'), int8('U'), int8('N'), int8('I'), int8('O'), int8('N'), int8('U'), int8('S'), int8('I'), int8('N'), int8('G'), int8('V'), int8('A'), int8('C'), int8('U'), int8('U'), int8('M'), int8('V'), int8('I'), int8('E'), int8('W'), int8('I'), int8('N'), int8('D'), int8('O'), int8('W'), int8('B'), int8('Y'), int8('I'), int8('N'), int8('I'), int8('T'), int8('I'), int8('A'), int8('L'), int8('L'), int8('Y'), int8('P'), int8('R'), int8('I'), int8('M'), int8('A'), int8('R'), int8('Y'), -} /* sqlite3.c:162485:19 */ +} /* sqlite3.c:162497:19 */ // aKWHash[i] is the hash value for the i-th keyword var aKWHash = [127]uint8{ uint8(84), uint8(92), uint8(134), uint8(82), uint8(105), uint8(29), uint8(0), uint8(0), uint8(94), uint8(0), uint8(85), uint8(72), uint8(0), @@ -155862,7 +155910,7 @@ var aKWHash = [127]uint8{ uint8(50), uint8(124), uint8(0), uint8(100), uint8(0), uint8(18), uint8(121), uint8(144), uint8(56), uint8(130), uint8(139), uint8(88), uint8(83), uint8(37), uint8(30), uint8(126), uint8(0), uint8(0), uint8(108), uint8(51), uint8(131), uint8(128), uint8(0), uint8(34), uint8(0), uint8(0), uint8(132), uint8(0), uint8(98), uint8(38), uint8(39), uint8(0), uint8(20), uint8(45), uint8(117), uint8(93), -} /* sqlite3.c:162525:28 */ +} /* sqlite3.c:162537:28 */ // aKWNext[] forms the hash collision chain. If aKWHash[i]==0 // then the i-th keyword has no more hash collisions. Otherwise, // the next keyword with the same hash is aKWHash[i]-1. @@ -155879,7 +155927,7 @@ var aKWNext = [147]uint8{ uint8(112), uint8(21), uint8(7), uint8(67), uint8(0), uint8(79), uint8(96), uint8(118), uint8(0), uint8(0), uint8(68), uint8(0), uint8(0), uint8(99), uint8(44), uint8(0), uint8(55), uint8(0), uint8(76), uint8(0), uint8(95), uint8(32), uint8(33), uint8(57), uint8(25), uint8(0), uint8(102), uint8(0), uint8(0), uint8(87), -} /* sqlite3.c:162540:28 */ +} /* sqlite3.c:162552:28 */ // aKWLen[i] is the length (in bytes) of the i-th keyword var aKWLen = [147]uint8{ uint8(7), uint8(7), uint8(5), uint8(4), uint8(6), uint8(4), uint8(5), uint8(3), uint8(6), uint8(7), uint8(3), uint8(6), uint8(6), @@ -155894,7 +155942,7 @@ var aKWLen = [147]uint8{ uint8(4), uint8(4), uint8(6), uint8(7), uint8(5), uint8(9), uint8(4), uint8(4), uint8(5), uint8(2), uint8(5), uint8(8), uint8(6), uint8(4), uint8(9), uint8(5), uint8(8), uint8(4), uint8(3), uint8(9), uint8(5), uint8(5), uint8(6), uint8(4), uint8(6), uint8(2), uint8(2), uint8(9), uint8(3), uint8(7), -} /* sqlite3.c:162555:28 */ +} /* sqlite3.c:162567:28 */ // aKWOffset[i] is the index into zKWText[] of the start of // the text for the i-th keyword. var aKWOffset = [147]uint16{ @@ -155910,7 +155958,7 @@ var aKWOffset = [147]uint16{ uint16(520), uint16(523), uint16(527), uint16(532), uint16(539), uint16(544), uint16(553), uint16(557), uint16(560), uint16(565), uint16(567), uint16(571), uint16(579), uint16(585), uint16(588), uint16(597), uint16(602), uint16(610), uint16(610), uint16(614), uint16(623), uint16(628), uint16(633), uint16(639), uint16(642), uint16(645), uint16(648), uint16(650), uint16(655), uint16(659), -} /* sqlite3.c:162571:33 */ +} /* sqlite3.c:162583:33 */ // aKWCode[i] is the parser symbol code for the i-th keyword var aKWCode = [147]uint8{ uint8(TK_REINDEX), uint8(TK_INDEXED), uint8(TK_INDEX), uint8(TK_DESC), uint8(TK_ESCAPE), @@ -155943,7 +155991,7 @@ var aKWCode = [147]uint8{ uint8(TK_ROW), uint8(TK_UNBOUNDED), uint8(TK_UNION), uint8(TK_USING), uint8(TK_VACUUM), uint8(TK_VIEW), uint8(TK_WINDOW), uint8(TK_DO), uint8(TK_BY), uint8(TK_INITIALLY), uint8(TK_ALL), uint8(TK_PRIMARY), -} /* sqlite3.c:162586:28 */ +} /* sqlite3.c:162598:28 */ // Hash table decoded: // 0: INSERT @@ -156076,7 +156124,7 @@ var aKWCode = [147]uint8{ // Check to see if z[0..n-1] is a keyword. If it is, write the // parser symbol code for that keyword into *pType. Always // return the integer n (the length of the token). -func keywordCode(tls *libc.TLS, z uintptr, n int32, pType uintptr) int32 { /* sqlite3.c:162750:12: */ +func keywordCode(tls *libc.TLS, z uintptr, n int32, pType uintptr) int32 { /* sqlite3.c:162762:12: */ var i int32 var j int32 var zKW uintptr @@ -156254,7 +156302,7 @@ func keywordCode(tls *libc.TLS, z uintptr, n int32, pType uintptr) int32 { /* sq return n } -func Xsqlite3KeywordCode(tls *libc.TLS, z uintptr, n int32) int32 { /* sqlite3.c:162924:20: */ +func Xsqlite3KeywordCode(tls *libc.TLS, z uintptr, n int32) int32 { /* sqlite3.c:162936:20: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -156263,7 +156311,7 @@ func Xsqlite3KeywordCode(tls *libc.TLS, z uintptr, n int32) int32 { /* sqlite3.c return *(*int32)(unsafe.Pointer(bp /* id */)) } -func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintptr) int32 { /* sqlite3.c:162930:16: */ +func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintptr) int32 { /* sqlite3.c:162942:16: */ if (i < 0) || (i >= SQLITE_N_KEYWORD) { return SQLITE_ERROR } @@ -156272,11 +156320,11 @@ func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintpt return SQLITE_OK } -func Xsqlite3_keyword_count(tls *libc.TLS) int32 { /* sqlite3.c:162936:16: */ +func Xsqlite3_keyword_count(tls *libc.TLS) int32 { /* sqlite3.c:162948:16: */ return SQLITE_N_KEYWORD } -func Xsqlite3_keyword_check(tls *libc.TLS, zName uintptr, nName int32) int32 { /* sqlite3.c:162937:16: */ +func Xsqlite3_keyword_check(tls *libc.TLS, zName uintptr, nName int32) int32 { /* sqlite3.c:162949:16: */ return (libc.Bool32(TK_ID != Xsqlite3KeywordCode(tls, zName, nName))) } @@ -156299,13 +156347,13 @@ func Xsqlite3_keyword_check(tls *libc.TLS, zName uintptr, nName int32) int32 { / // But the feature is undocumented. // Make the IdChar function accessible from ctime.c and alter.c -func Xsqlite3IsIdChar(tls *libc.TLS, c U8) int32 { /* sqlite3.c:162984:20: */ +func Xsqlite3IsIdChar(tls *libc.TLS, c U8) int32 { /* sqlite3.c:162996:20: */ return (libc.Bool32((int32(Xsqlite3CtypeMap[c]) & 0x46) != 0)) } // Return the id of the next token in string (*pz). Before returning, set // (*pz) to point to the byte following the parsed token. -func getToken(tls *libc.TLS, pz uintptr) int32 { /* sqlite3.c:162991:12: */ +func getToken(tls *libc.TLS, pz uintptr) int32 { /* sqlite3.c:163003:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -156355,7 +156403,7 @@ func getToken(tls *libc.TLS, pz uintptr) int32 { /* sqlite3.c:162991:12: */ // // * the previous token was TK_RP, and // * the next token is TK_LP. -func analyzeWindowKeyword(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:163040:12: */ +func analyzeWindowKeyword(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:163052:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = z @@ -156372,7 +156420,7 @@ func analyzeWindowKeyword(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:163040: return TK_WINDOW } -func analyzeOverKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163048:12: */ +func analyzeOverKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163060:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = z @@ -156386,7 +156434,7 @@ func analyzeOverKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sq return TK_ID } -func analyzeFilterKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163055:12: */ +func analyzeFilterKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163067:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = z @@ -156399,7 +156447,7 @@ func analyzeFilterKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* // Return the length (in bytes) of the token that begins at z[0]. // Store the token type in *tokenType before returning. -func Xsqlite3GetToken(tls *libc.TLS, z uintptr, tokenType uintptr) int32 { /* sqlite3.c:163067:20: */ +func Xsqlite3GetToken(tls *libc.TLS, z uintptr, tokenType uintptr) int32 { /* sqlite3.c:163079:20: */ var i int32 var c int32 switch int32(aiClass[*(*uint8)(unsafe.Pointer(z))]) { // Switch on the character-class of the first byte @@ -156752,7 +156800,7 @@ func Xsqlite3GetToken(tls *libc.TLS, z uintptr, tokenType uintptr) int32 { /* sq // then an and attempt is made to write an error message into // memory obtained from sqlite3_malloc() and to make *pzErrMsg point to that // error message. -func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:163354:20: */ +func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:163366:20: */ bp := tls.Alloc(2468) defer tls.Free(2468) @@ -156951,7 +156999,7 @@ func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uin // If we compile with SQLITE_OMIT_TRIGGER, all of the computation needed // to recognize the end of a trigger can be omitted. All we have to do // is look for a semicolon that is not part of an string or comment. -func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163758:16: */ +func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163770:16: */ var state U8 = U8(0) // Current state, using numbers defined in header comment var token U8 @@ -157128,12 +157176,12 @@ var trans = [8][8]U8{ /* 5 TRIGGER: */ {U8(6), U8(5), U8(5), U8(5), U8(5), U8(5), U8(5), U8(5)}, /* 6 SEMI: */ {U8(6), U8(6), U8(5), U8(5), U8(5), U8(5), U8(5), U8(7)}, /* 7 END: */ {U8(1), U8(7), U8(5), U8(5), U8(5), U8(5), U8(5), U8(5)}, -} /* sqlite3.c:163766:19 */ +} /* sqlite3.c:163778:19 */ // This routine is the same as the sqlite3_complete() routine described // above, except that the parameter is required to be UTF-16 encoded, not // UTF-8. -func Xsqlite3_complete16(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163923:16: */ +func Xsqlite3_complete16(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163935:16: */ var pVal uintptr var zSql8 uintptr var rc int32 @@ -157160,7 +157208,7 @@ func Xsqlite3_complete16(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:16392 // This is an extension initializer that is a no-op and always // succeeds, except that it fails if the fault-simulation is set // to 500. -func sqlite3TestExtInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164075:12: */ +func sqlite3TestExtInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164087:12: */ _ = db return Xsqlite3FaultSim(tls, 500) } @@ -157172,11 +157220,11 @@ var sqlite3BuiltinExtensions = [4]uintptr{ 0, 0, 0, -} /* sqlite3.c:164105:12 */ +} /* sqlite3.c:164117:12 */ // IMPLEMENTATION-OF: R-53536-42575 The sqlite3_libversion() function returns // a pointer to the to the sqlite3_version[] string constant. -func Xsqlite3_libversion(tls *libc.TLS) uintptr { /* sqlite3.c:164152:23: */ +func Xsqlite3_libversion(tls *libc.TLS) uintptr { /* sqlite3.c:164164:23: */ return uintptr(unsafe.Pointer(&Xsqlite3_version)) } @@ -157189,14 +157237,14 @@ func Xsqlite3_libversion(tls *libc.TLS) uintptr { /* sqlite3.c:164152:23: */ // IMPLEMENTATION-OF: R-35210-63508 The sqlite3_libversion_number() function // returns an integer equal to SQLITE_VERSION_NUMBER. -func Xsqlite3_libversion_number(tls *libc.TLS) int32 { /* sqlite3.c:164165:16: */ +func Xsqlite3_libversion_number(tls *libc.TLS) int32 { /* sqlite3.c:164177:16: */ return SQLITE_VERSION_NUMBER } // IMPLEMENTATION-OF: R-20790-14025 The sqlite3_threadsafe() function returns // zero if and only if SQLite was compiled with mutexing code omitted due to // the SQLITE_THREADSAFE compile-time option being set to 0. -func Xsqlite3_threadsafe(tls *libc.TLS) int32 { /* sqlite3.c:164171:16: */ +func Xsqlite3_threadsafe(tls *libc.TLS) int32 { /* sqlite3.c:164183:16: */ return SQLITE_THREADSAFE } @@ -157209,14 +157257,14 @@ func Xsqlite3_threadsafe(tls *libc.TLS) int32 { /* sqlite3.c:164171:16: */ // temporary files. // // See also the "PRAGMA temp_store_directory" SQL command. -var Xsqlite3_temp_directory uintptr = uintptr(0) /* sqlite3.c:164202:17 */ +var Xsqlite3_temp_directory uintptr = uintptr(0) /* sqlite3.c:164214:17 */ // If the following global variable points to a string which is the // name of a directory, then that directory will be used to store // all database files specified with a relative pathname. // // See also the "PRAGMA data_store_directory" SQL command. -var Xsqlite3_data_directory uintptr = uintptr(0) /* sqlite3.c:164211:17 */ +var Xsqlite3_data_directory uintptr = uintptr(0) /* sqlite3.c:164223:17 */ // Initialize SQLite. // @@ -157247,7 +157295,7 @@ var Xsqlite3_data_directory uintptr = uintptr(0) /* sqlite3.c:164211:17 */ // // * Recursive calls to this routine from thread X return immediately // without blocking. -func Xsqlite3_initialize(tls *libc.TLS) int32 { /* sqlite3.c:164244:16: */ +func Xsqlite3_initialize(tls *libc.TLS) int32 { /* sqlite3.c:164256:16: */ var pMainMtx uintptr // The main static mutex var rc int32 // Result code @@ -157370,7 +157418,7 @@ func Xsqlite3_initialize(tls *libc.TLS) int32 { /* sqlite3.c:164244:16: */ // routine is not threadsafe. But it is safe to invoke this routine // on when SQLite is already shut down. If SQLite is already shut down // when this routine is invoked, then this routine is a harmless no-op. -func Xsqlite3_shutdown(tls *libc.TLS) int32 { /* sqlite3.c:164419:16: */ +func Xsqlite3_shutdown(tls *libc.TLS) int32 { /* sqlite3.c:164431:16: */ if Xsqlite3Config.FisInit != 0 { Xsqlite3_os_end(tls) @@ -157409,7 +157457,7 @@ func Xsqlite3_shutdown(tls *libc.TLS) int32 { /* sqlite3.c:164419:16: */ // database connections or memory allocations. This routine is not // threadsafe. Failure to heed these warnings can lead to unpredictable // behavior. -func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:164473:16: */ +func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:164485:16: */ var ap Va_list _ = ap var rc int32 = SQLITE_OK @@ -157417,7 +157465,7 @@ func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:1 // sqlite3_config() shall return SQLITE_MISUSE if it is invoked while // the SQLite library is in use. if Xsqlite3Config.FisInit != 0 { - return Xsqlite3MisuseError(tls, 164479) + return Xsqlite3MisuseError(tls, 164491) } ap = va @@ -157680,7 +157728,7 @@ func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:1 // space for the lookaside memory is obtained from sqlite3_malloc(). // If pStart is not NULL then it is sz*cnt bytes of memory to use for // the lookaside memory. -func setupLookaside(tls *libc.TLS, db uintptr, pBuf uintptr, sz int32, cnt int32) int32 { /* sqlite3.c:164791:12: */ +func setupLookaside(tls *libc.TLS, db uintptr, pBuf uintptr, sz int32, cnt int32) int32 { /* sqlite3.c:164803:12: */ var pStart uintptr var szAlloc Sqlite3_int64 = (Sqlite3_int64(sz) * Sqlite3_int64(cnt)) var nBig int32 // Number of full-size slots @@ -157778,13 +157826,13 @@ func setupLookaside(tls *libc.TLS, db uintptr, pBuf uintptr, sz int32, cnt int32 } // Return the mutex associated with a database connection. -func Xsqlite3_db_mutex(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:164891:26: */ +func Xsqlite3_db_mutex(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:164903:26: */ return (*Sqlite3)(unsafe.Pointer(db)).Fmutex } // Free up as much memory as we can from the given database // connection. -func Xsqlite3_db_release_memory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164905:16: */ +func Xsqlite3_db_release_memory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164917:16: */ var i int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -157803,7 +157851,7 @@ func Xsqlite3_db_release_memory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c: // Flush any dirty pages in the pager-cache for any attached database // to disk. -func Xsqlite3_db_cacheflush(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164929:16: */ +func Xsqlite3_db_cacheflush(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164941:16: */ var i int32 var rc int32 = SQLITE_OK var bSeenBusy int32 = 0 @@ -157832,7 +157880,7 @@ func Xsqlite3_db_cacheflush(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:1649 } // Configuration settings for an individual database connection -func Xsqlite3_db_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:164958:16: */ +func Xsqlite3_db_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:164970:16: */ var ap Va_list _ = ap var rc int32 @@ -157911,11 +157959,11 @@ var aFlagOp = [16]struct { {Fop: SQLITE_DBCONFIG_DQS_DML, Fmask: U32(SQLITE_DqsDML)}, {Fop: SQLITE_DBCONFIG_LEGACY_FILE_FORMAT, Fmask: U32(SQLITE_LegacyFileFmt)}, {Fop: SQLITE_DBCONFIG_TRUSTED_SCHEMA, Fmask: U32(SQLITE_TrustedSchema)}, -} /* sqlite3.c:164981:9 */ +} /* sqlite3.c:164993:9 */ // This is the default collating function named "BINARY" which is always // available. -func binCollFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165033:12: */ +func binCollFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165045:12: */ var rc int32 var n int32 _ = NotUsed @@ -157937,7 +157985,7 @@ func binCollFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKe // This is the collating function named "RTRIM" which is always // available. Ignore trailing spaces. -func rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165056:12: */ +func rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165068:12: */ var pK1 uintptr = pKey1 var pK2 uintptr = pKey2 for (nKey1 != 0) && (int32(*(*U8)(unsafe.Pointer(pK1 + uintptr((nKey1 - 1))))) == ' ') { @@ -157950,7 +157998,7 @@ func rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKe } // Return true if CollSeq is the default built-in BINARY. -func Xsqlite3IsBinary(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165071:20: */ +func Xsqlite3IsBinary(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165083:20: */ return (libc.Bool32((p == uintptr(0)) || ((*CollSeq)(unsafe.Pointer(p)).FxCmp == *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 @@ -157964,7 +158012,7 @@ func Xsqlite3IsBinary(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165071:20: // extends only to the 26 characters used in the English language. // // At the moment there is only a UTF-8 implementation. -func nocaseCollatingFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165085:12: */ +func nocaseCollatingFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165097:12: */ var r int32 = Xsqlite3_strnicmp(tls, pKey1, pKey2, func() int32 { if nKey1 < nKey2 { @@ -157980,31 +158028,31 @@ func nocaseCollatingFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uint } // Return the ROWID of the most recent insert -func Xsqlite3_last_insert_rowid(tls *libc.TLS, db uintptr) Sqlite_int64 { /* sqlite3.c:165102:25: */ +func Xsqlite3_last_insert_rowid(tls *libc.TLS, db uintptr) Sqlite_int64 { /* sqlite3.c:165114:25: */ return (*Sqlite3)(unsafe.Pointer(db)).FlastRowid } // Set the value returned by the sqlite3_last_insert_rowid() API function. -func Xsqlite3_set_last_insert_rowid(tls *libc.TLS, db uintptr, iRowid Sqlite3_int64) { /* sqlite3.c:165115:17: */ +func Xsqlite3_set_last_insert_rowid(tls *libc.TLS, db uintptr, iRowid Sqlite3_int64) { /* sqlite3.c:165127:17: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FlastRowid = iRowid Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) } // Return the number of changes in the most recent call to sqlite3_exec(). -func Xsqlite3_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165130:16: */ +func Xsqlite3_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165142:16: */ return (*Sqlite3)(unsafe.Pointer(db)).FnChange } // Return the number of changes since the database handle was opened. -func Xsqlite3_total_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165143:16: */ +func Xsqlite3_total_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165155:16: */ return (*Sqlite3)(unsafe.Pointer(db)).FnTotalChange } // Close all open savepoints. This function only manipulates fields of the // database handle object, it does not close any savepoints that may be open // at the b-tree/pager level. -func Xsqlite3CloseSavepoints(tls *libc.TLS, db uintptr) { /* sqlite3.c:165158:21: */ +func Xsqlite3CloseSavepoints(tls *libc.TLS, db uintptr) { /* sqlite3.c:165170:21: */ for (*Sqlite3)(unsafe.Pointer(db)).FpSavepoint != 0 { var pTmp uintptr = (*Sqlite3)(unsafe.Pointer(db)).FpSavepoint (*Sqlite3)(unsafe.Pointer(db)).FpSavepoint = (*Savepoint)(unsafe.Pointer(pTmp)).FpNext @@ -158019,7 +158067,7 @@ func Xsqlite3CloseSavepoints(tls *libc.TLS, db uintptr) { /* sqlite3.c:165158:21 // if this is not the last copy of the function, do not invoke it. Multiple // copies of a single function are created when create_function() is called // with SQLITE_ANY as the encoding. -func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:165175:13: */ +func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:165187:13: */ var pDestructor uintptr = *(*uintptr)(unsafe.Pointer(p + 64 /* &.u */)) if pDestructor != 0 { (*FuncDestructor)(unsafe.Pointer(pDestructor)).FnRef-- @@ -158032,7 +158080,7 @@ func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:165175 // Disconnect all sqlite3_vtab objects that belong to database connection // db. This is called when db is being closed. -func disconnectAllVtab(tls *libc.TLS, db uintptr) { /* sqlite3.c:165190:13: */ +func disconnectAllVtab(tls *libc.TLS, db uintptr) { /* sqlite3.c:165202:13: */ var i int32 var p uintptr Xsqlite3BtreeEnterAll(tls, db) @@ -158059,7 +158107,7 @@ func disconnectAllVtab(tls *libc.TLS, db uintptr) { /* sqlite3.c:165190:13: */ // Return TRUE if database connection db has unfinalized prepared // statements or unfinished sqlite3_backup objects. -func connectionIsBusy(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165221:12: */ +func connectionIsBusy(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165233:12: */ var j int32 if (*Sqlite3)(unsafe.Pointer(db)).FpVdbe != 0 { @@ -158075,14 +158123,14 @@ func connectionIsBusy(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165221:12: } // Close an existing SQLite database -func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlite3.c:165235:12: */ +func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlite3.c:165247:12: */ if !(db != 0) { // EVIDENCE-OF: R-63257-11740 Calling sqlite3_close() or // sqlite3_close_v2() with a NULL pointer argument is a harmless no-op. return SQLITE_OK } if !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3MisuseError(tls, 165242) + return Xsqlite3MisuseError(tls, 165254) } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if (int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_CLOSE) != 0 { @@ -158117,7 +158165,7 @@ func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlit // Return the transaction state for a single databse, or the maximum // transaction state over all attached databases if zSchema is null. -func Xsqlite3_txn_state(tls *libc.TLS, db uintptr, zSchema uintptr) int32 { /* sqlite3.c:165289:16: */ +func Xsqlite3_txn_state(tls *libc.TLS, db uintptr, zSchema uintptr) int32 { /* sqlite3.c:165301:16: */ var iDb int32 var nDb int32 var iTxn int32 = -1 @@ -158154,11 +158202,11 @@ func Xsqlite3_txn_state(tls *libc.TLS, db uintptr, zSchema uintptr) int32 { /* s // version forces the connection to become a zombie if there are // unclosed resources, and arranges for deallocation when the last // prepare statement or sqlite3_backup closes. -func Xsqlite3_close(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165324:16: */ +func Xsqlite3_close(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165336:16: */ return sqlite3Close(tls, db, 0) } -func Xsqlite3_close_v2(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165325:16: */ +func Xsqlite3_close_v2(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165337:16: */ return sqlite3Close(tls, db, 1) } @@ -158168,7 +158216,7 @@ func Xsqlite3_close_v2(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165325:16 // has been a prior call to sqlite3_close(db) or sqlite3_close_v2(db)) and // every sqlite3_stmt has now been finalized and every sqlite3_backup has // finished, then free all resources. -func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c:165336:21: */ +func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c:165348:21: */ var i uintptr // Hash table iterator var j int32 @@ -158275,7 +158323,7 @@ func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c: // breaker") and made to return tripCode if there are any further // attempts to use that cursor. Read cursors remain open and valid // but are "saved" in case the table pages are moved around. -func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3.c:165456:21: */ +func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3.c:165468:21: */ var i int32 var inTrans int32 = 0 var schemaChange int32 @@ -158325,7 +158373,7 @@ func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3 // Return a static string that describes the kind of error specified in the // argument. -func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:165617:27: */ +func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:165629:27: */ var zErr uintptr = ts + 21727 /* "unknown error" */ switch rc { case (SQLITE_ABORT | (int32(2) << 8)): @@ -158389,7 +158437,7 @@ var aMsg = [29]uintptr{ /* SQLITE_NOTADB */ ts + 22223, /* "file is not a da..." */ /* SQLITE_NOTICE */ ts + 22246, /* "notification mes..." */ /* SQLITE_WARNING */ ts + 22267, /* "warning message" */ -} /* sqlite3.c:165618:20 */ +} /* sqlite3.c:165630:20 */ // This routine implements a busy callback that sleeps and tries // again until a timeout value is reached. The timeout value is @@ -158398,7 +158446,7 @@ var aMsg = [29]uintptr{ // // Return non-zero to retry the lock. Return zero to stop trying // and cause SQLite to return SQLITE_BUSY. -func sqliteDefaultBusyCallback(tls *libc.TLS, ptr uintptr, count int32) int32 { /* sqlite3.c:165687:12: */ +func sqliteDefaultBusyCallback(tls *libc.TLS, ptr uintptr, count int32) int32 { /* sqlite3.c:165699:12: */ var db uintptr = ptr var tmout int32 = (*Sqlite3)(unsafe.Pointer(db)).FbusyTimeout var delay int32 @@ -158421,8 +158469,8 @@ func sqliteDefaultBusyCallback(tls *libc.TLS, ptr uintptr, count int32) int32 { return 1 } -var delays = [12]U8{U8(1), U8(2), U8(5), U8(10), U8(15), U8(20), U8(25), U8(25), U8(25), U8(50), U8(50), U8(100)} /* sqlite3.c:165694:19 */ -var totals = [12]U8{U8(0), U8(1), U8(3), U8(8), U8(18), U8(33), U8(53), U8(78), U8(103), U8(128), U8(178), U8(228)} /* sqlite3.c:165696:19 */ +var delays = [12]U8{U8(1), U8(2), U8(5), U8(10), U8(15), U8(20), U8(25), U8(25), U8(25), U8(50), U8(50), U8(100)} /* sqlite3.c:165706:19 */ +var totals = [12]U8{U8(0), U8(1), U8(3), U8(8), U8(18), U8(33), U8(53), U8(78), U8(103), U8(128), U8(178), U8(228)} /* sqlite3.c:165708:19 */ // Invoke the given busy handler. // @@ -158431,7 +158479,7 @@ var totals = [12]U8{U8(0), U8(1), U8(3), U8(8), U8(18), U8(33), U8(53), U8(78), // // If this routine returns non-zero, the lock is retried. If it // returns 0, the operation aborts with an SQLITE_BUSY error. -func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165739:20: */ +func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165751:20: */ var rc int32 if ((*BusyHandler)(unsafe.Pointer(p)).FxBusyHandler == uintptr(0)) || ((*BusyHandler)(unsafe.Pointer(p)).FnBusy < 0) { return 0 @@ -158447,7 +158495,7 @@ func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:16 // This routine sets the busy callback for an Sqlite database to the // given callback function with the given argument. -func Xsqlite3_busy_handler(tls *libc.TLS, db uintptr, xBusy uintptr, pArg uintptr) int32 { /* sqlite3.c:165755:16: */ +func Xsqlite3_busy_handler(tls *libc.TLS, db uintptr, xBusy uintptr, pArg uintptr) int32 { /* sqlite3.c:165767:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FbusyHandler.FxBusyHandler = xBusy (*Sqlite3)(unsafe.Pointer(db)).FbusyHandler.FpBusyArg = pArg @@ -158460,7 +158508,7 @@ func Xsqlite3_busy_handler(tls *libc.TLS, db uintptr, xBusy uintptr, pArg uintpt // This routine sets the progress callback for an Sqlite database to the // given callback function with the given argument. The progress callback will // be invoked every nOps opcodes. -func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, xProgress uintptr, pArg uintptr) { /* sqlite3.c:165778:17: */ +func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, xProgress uintptr, pArg uintptr) { /* sqlite3.c:165790:17: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if nOps > 0 { (*Sqlite3)(unsafe.Pointer(db)).FxProgress = xProgress @@ -158476,7 +158524,7 @@ func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, xProgress // This routine installs a default busy handler that waits for the // specified number of milliseconds before returning 0. -func Xsqlite3_busy_timeout(tls *libc.TLS, db uintptr, ms int32) int32 { /* sqlite3.c:165809:16: */ +func Xsqlite3_busy_timeout(tls *libc.TLS, db uintptr, ms int32) int32 { /* sqlite3.c:165821:16: */ if ms > 0 { Xsqlite3_busy_handler(tls, db, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32) int32 @@ -158490,7 +158538,7 @@ func Xsqlite3_busy_timeout(tls *libc.TLS, db uintptr, ms int32) int32 { /* sqlit } // Cause any pending operation to stop at its earliest opportunity. -func Xsqlite3_interrupt(tls *libc.TLS, db uintptr) { /* sqlite3.c:165826:17: */ +func Xsqlite3_interrupt(tls *libc.TLS, db uintptr) { /* sqlite3.c:165838:17: */ libc.AtomicStoreNInt32((db + 400 /* &.u1 */ /* &.isInterrupted */), int32(1), 0) } @@ -158498,7 +158546,7 @@ func Xsqlite3_interrupt(tls *libc.TLS, db uintptr) { /* sqlite3.c:165826:17: */ // that it is designed to be called by internal code. The difference is // that if a malloc() fails in sqlite3_create_function(), an error code // is returned and the mallocFailed flag cleared. -func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, enc int32, pUserData uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, pDestructor uintptr) int32 { /* sqlite3.c:165843:20: */ +func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, enc int32, pUserData uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, pDestructor uintptr) int32 { /* sqlite3.c:165855:20: */ var p uintptr var nName int32 _ = nName @@ -158510,7 +158558,7 @@ func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg i ((libc.Bool32(xValue == uintptr(0))) != (libc.Bool32(xInverse == uintptr(0))))) || // Both or neither of xValue, xInverse ((nArg < -1) || (nArg > SQLITE_MAX_FUNCTION_ARG))) || (255 < (libc.AssignInt32(&nName, Xsqlite3Strlen30(tls, zFunctionName)))) { - return Xsqlite3MisuseError(tls, 165869) + return Xsqlite3MisuseError(tls, 165881) } extraFlags = (enc & (((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS)) @@ -158596,7 +158644,7 @@ func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg i // sqlite3_create_function() // sqlite3_create_function_v2() // sqlite3_create_window_function() -func createFunctionApi(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:165963:12: */ +func createFunctionApi(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:165975:12: */ var rc int32 var pArg uintptr rc = SQLITE_ERROR @@ -158638,22 +158686,22 @@ out: } // Create new user functions. -func Xsqlite3_create_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166014:16: */ +func Xsqlite3_create_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166026:16: */ return createFunctionApi(tls, db, zFunc, nArg, enc, p, xSFunc, xStep, xFinal, uintptr(0), uintptr(0), uintptr(0)) } -func Xsqlite3_create_function_v2(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166027:16: */ +func Xsqlite3_create_function_v2(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166039:16: */ return createFunctionApi(tls, db, zFunc, nArg, enc, p, xSFunc, xStep, xFinal, uintptr(0), uintptr(0), xDestroy) } -func Xsqlite3_create_window_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166041:16: */ +func Xsqlite3_create_window_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166053:16: */ return createFunctionApi(tls, db, zFunc, nArg, enc, p, uintptr(0), xStep, xFinal, xValue, xInverse, xDestroy) } -func Xsqlite3_create_function16(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, eTextRep int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166058:16: */ +func Xsqlite3_create_function16(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, eTextRep int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166070:16: */ var rc int32 var zFunc8 uintptr @@ -158673,7 +158721,7 @@ func Xsqlite3_create_function16(tls *libc.TLS, db uintptr, zFunctionName uintptr // SQL function that use this routine so that the functions will exist // for name resolution but are actually overloaded by the xFindFunction // method of virtual tables. -func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:166094:13: */ +func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:166106:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -158697,7 +158745,7 @@ func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUs // should call this routine to make sure the global function exists. // A global function must exist in order for name resolution to work // properly. -func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg int32) int32 { /* sqlite3.c:166120:16: */ +func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg int32) int32 { /* sqlite3.c:166132:16: */ var rc int32 var zCopy uintptr @@ -158723,7 +158771,7 @@ func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg i // A NULL trace function means that no tracing is executes. A non-NULL // trace is a pointer to a function that is invoked at the start of each // SQL statement. -func Xsqlite3_trace(tls *libc.TLS, db uintptr, xTrace uintptr, pArg uintptr) uintptr { /* sqlite3.c:166153:17: */ +func Xsqlite3_trace(tls *libc.TLS, db uintptr, xTrace uintptr, pArg uintptr) uintptr { /* sqlite3.c:166165:17: */ var pOld uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -158741,7 +158789,7 @@ func Xsqlite3_trace(tls *libc.TLS, db uintptr, xTrace uintptr, pArg uintptr) uin } // Register a trace callback using the version-2 interface. -func Xsqlite3_trace_v2(tls *libc.TLS, db uintptr, mTrace uint32, xTrace uintptr, pArg uintptr) int32 { /* sqlite3.c:166174:16: */ +func Xsqlite3_trace_v2(tls *libc.TLS, db uintptr, mTrace uint32, xTrace uintptr, pArg uintptr) int32 { /* sqlite3.c:166186:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if mTrace == uint32(0) { xTrace = uintptr(0) @@ -158762,7 +158810,7 @@ func Xsqlite3_trace_v2(tls *libc.TLS, db uintptr, mTrace uint32, xTrace uintptr, // A NULL profile function means that no profiling is executes. A non-NULL // profile is a pointer to a function that is invoked at the conclusion of // each SQL statement that is run. -func Xsqlite3_profile(tls *libc.TLS, db uintptr, xProfile uintptr, pArg uintptr) uintptr { /* sqlite3.c:166204:17: */ +func Xsqlite3_profile(tls *libc.TLS, db uintptr, xProfile uintptr, pArg uintptr) uintptr { /* sqlite3.c:166216:17: */ var pOld uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -158780,7 +158828,7 @@ func Xsqlite3_profile(tls *libc.TLS, db uintptr, xProfile uintptr, pArg uintptr) // Register a function to be invoked when a transaction commits. // If the invoked function returns non-zero, then the commit becomes a // rollback. -func Xsqlite3_commit_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166234:17: */ +func Xsqlite3_commit_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166246:17: */ var pOld uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -158793,7 +158841,7 @@ func Xsqlite3_commit_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uin // Register a callback to be invoked each time a row is updated, // inserted or deleted using this database connection. -func Xsqlite3_update_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166259:17: */ +func Xsqlite3_update_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166271:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -158806,7 +158854,7 @@ func Xsqlite3_update_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uin // Register a callback to be invoked each time a transaction is rolled // back by this database connection. -func Xsqlite3_rollback_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166284:17: */ +func Xsqlite3_rollback_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166296:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -158819,7 +158867,7 @@ func Xsqlite3_rollback_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg u // Register a callback to be invoked each time a row is updated, // inserted or deleted using this database connection. -func Xsqlite3_preupdate_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166310:17: */ +func Xsqlite3_preupdate_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166322:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) pRet = (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdateArg @@ -158833,7 +158881,7 @@ func Xsqlite3_preupdate_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg // Invoke sqlite3_wal_checkpoint if the number of frames in the log file // is greater than sqlite3.pWalArg cast to an integer (the value configured by // wal_autocheckpoint()). -func Xsqlite3WalDefaultHook(tls *libc.TLS, pClientData uintptr, db uintptr, zDb uintptr, nFrame int32) int32 { /* sqlite3.c:166333:20: */ +func Xsqlite3WalDefaultHook(tls *libc.TLS, pClientData uintptr, db uintptr, zDb uintptr, nFrame int32) int32 { /* sqlite3.c:166345:20: */ if nFrame >= (int32(pClientData)) { Xsqlite3BeginBenignMalloc(tls) Xsqlite3_wal_checkpoint(tls, db, zDb) @@ -158851,7 +158899,7 @@ func Xsqlite3WalDefaultHook(tls *libc.TLS, pClientData uintptr, db uintptr, zDb // registered using sqlite3_wal_hook(). Likewise, registering a callback // using sqlite3_wal_hook() disables the automatic checkpoint mechanism // configured by this function. -func Xsqlite3_wal_autocheckpoint(tls *libc.TLS, db uintptr, nFrame int32) int32 { /* sqlite3.c:166359:16: */ +func Xsqlite3_wal_autocheckpoint(tls *libc.TLS, db uintptr, nFrame int32) int32 { /* sqlite3.c:166371:16: */ if nFrame > 0 { Xsqlite3_wal_hook(tls, db, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32) int32 @@ -158864,7 +158912,7 @@ func Xsqlite3_wal_autocheckpoint(tls *libc.TLS, db uintptr, nFrame int32) int32 // Register a callback to be invoked each time a transaction is written // into the write-ahead-log by this database connection. -func Xsqlite3_wal_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166380:17: */ +func Xsqlite3_wal_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166392:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) pRet = (*Sqlite3)(unsafe.Pointer(db)).FpWalArg @@ -158875,7 +158923,7 @@ func Xsqlite3_wal_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintpt } // Checkpoint database zDb. -func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166407:16: */ +func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166419:16: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -158925,7 +158973,7 @@ func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode in // Checkpoint database zDb. If zDb is NULL, or if the buffer zDb points // to contains a zero-length string, all attached databases are // checkpointed. -func Xsqlite3_wal_checkpoint(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:166471:16: */ +func Xsqlite3_wal_checkpoint(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:166483:16: */ // EVIDENCE-OF: R-41613-20553 The sqlite3_wal_checkpoint(D,X) is equivalent to // sqlite3_wal_checkpoint_v2(D,X,SQLITE_CHECKPOINT_PASSIVE,0,0). return Xsqlite3_wal_checkpoint_v2(tls, db, zDb, SQLITE_CHECKPOINT_PASSIVE, uintptr(0), uintptr(0)) @@ -158949,7 +158997,7 @@ func Xsqlite3_wal_checkpoint(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* // // Parameter eMode is one of SQLITE_CHECKPOINT_PASSIVE, FULL, RESTART // or TRUNCATE. -func Xsqlite3Checkpoint(tls *libc.TLS, db uintptr, iDb int32, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166498:20: */ +func Xsqlite3Checkpoint(tls *libc.TLS, db uintptr, iDb int32, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166510:20: */ var rc int32 = SQLITE_OK // Return code var i int32 // Used to iterate through attached dbs var bBusy int32 = 0 // True if SQLITE_BUSY has been encountered @@ -158991,19 +159039,19 @@ func Xsqlite3Checkpoint(tls *libc.TLS, db uintptr, iDb int32, eMode int32, pnLog // 2 2 memory (return 1) // 2 0 memory (return 1) // 3 any memory (return 1) -func Xsqlite3TempInMemory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166544:20: */ +func Xsqlite3TempInMemory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166556:20: */ return (libc.Bool32(int32((*Sqlite3)(unsafe.Pointer(db)).Ftemp_store) == 2)) } // Return UTF-8 encoded English language explanation of the most recent // error. -func Xsqlite3_errmsg(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166565:23: */ +func Xsqlite3_errmsg(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166577:23: */ var z uintptr if !(db != 0) { return Xsqlite3ErrStr(tls, SQLITE_NOMEM) } if !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3ErrStr(tls, Xsqlite3MisuseError(tls, 166571)) + return Xsqlite3ErrStr(tls, Xsqlite3MisuseError(tls, 166583)) } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if (*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0 { @@ -159026,7 +159074,7 @@ func Xsqlite3_errmsg(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166565:23 // Return UTF-16 encoded English language explanation of the most recent // error. -func Xsqlite3_errmsg16(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166593:23: */ +func Xsqlite3_errmsg16(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166605:23: */ var z uintptr if !(db != 0) { return uintptr(uintptr(unsafe.Pointer(&outOfMem))) @@ -159055,18 +159103,18 @@ func Xsqlite3_errmsg16(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166593: var outOfMem = [14]U16{ U16('o'), U16('u'), U16('t'), U16(' '), U16('o'), U16('f'), U16(' '), U16('m'), U16('e'), U16('m'), U16('o'), U16('r'), U16('y'), U16(0), -} /* sqlite3.c:166594:20 */ +} /* sqlite3.c:166606:20 */ var misuse = [34]U16{ U16('b'), U16('a'), U16('d'), U16(' '), U16('p'), U16('a'), U16('r'), U16('a'), U16('m'), U16('e'), U16('t'), U16('e'), U16('r'), U16(' '), U16('o'), U16('r'), U16(' '), U16('o'), U16('t'), U16('h'), U16('e'), U16('r'), U16(' '), U16('A'), U16('P'), U16('I'), U16(' '), U16('m'), U16('i'), U16('s'), U16('u'), U16('s'), U16('e'), U16(0), -} /* sqlite3.c:166597:20 */ +} /* sqlite3.c:166609:20 */ // Return the most recent error code generated by an SQLite routine. If NULL is // passed to this function, we assume a malloc() failed during sqlite3_open(). -func Xsqlite3_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166635:16: */ +func Xsqlite3_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166647:16: */ if (db != 0) && !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3MisuseError(tls, 166637) + return Xsqlite3MisuseError(tls, 166649) } if !(db != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { return SQLITE_NOMEM @@ -159074,9 +159122,9 @@ func Xsqlite3_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166635:16: return ((*Sqlite3)(unsafe.Pointer(db)).FerrCode & (*Sqlite3)(unsafe.Pointer(db)).FerrMask) } -func Xsqlite3_extended_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166644:16: */ +func Xsqlite3_extended_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166656:16: */ if (db != 0) && !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3MisuseError(tls, 166646) + return Xsqlite3MisuseError(tls, 166658) } if !(db != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { return SQLITE_NOMEM @@ -159084,7 +159132,7 @@ func Xsqlite3_extended_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:1 return (*Sqlite3)(unsafe.Pointer(db)).FerrCode } -func Xsqlite3_system_errno(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166653:16: */ +func Xsqlite3_system_errno(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166665:16: */ if db != 0 { return (*Sqlite3)(unsafe.Pointer(db)).FiSysErrno } @@ -159094,13 +159142,13 @@ func Xsqlite3_system_errno(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:16665 // Return a string that describes the kind of error specified in the // argument. For now, this simply calls the internal sqlite3ErrStr() // function. -func Xsqlite3_errstr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166662:23: */ +func Xsqlite3_errstr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166674:23: */ return Xsqlite3ErrStr(tls, rc) } // Create a new collating function for database "db". The name is zName // and the encoding is enc. -func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:166670:12: */ +func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:166682:12: */ var pColl uintptr var enc2 int32 @@ -159113,7 +159161,7 @@ func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uint enc2 = SQLITE_UTF16LE } if (enc2 < SQLITE_UTF8) || (enc2 > SQLITE_UTF16BE) { - return Xsqlite3MisuseError(tls, 166694) + return Xsqlite3MisuseError(tls, 166706) } // Check if this call is removing or replacing an existing collation @@ -159176,7 +159224,7 @@ var aHardLimit = [12]int32{ SQLITE_MAX_VARIABLE_NUMBER, // IMP: R-38091-32352 SQLITE_MAX_TRIGGER_DEPTH, SQLITE_MAX_WORKER_THREADS, -} /* sqlite3.c:166747:18 */ +} /* sqlite3.c:166759:18 */ // Make sure the hard limits are set to reasonable values @@ -159188,7 +159236,7 @@ var aHardLimit = [12]int32{ // A new lower limit does not shrink existing constructs. // It merely prevents new constructs that exceed the limit // from forming. -func Xsqlite3_limit(tls *libc.TLS, db uintptr, limitId int32, newLimit int32) int32 { /* sqlite3.c:166810:16: */ +func Xsqlite3_limit(tls *libc.TLS, db uintptr, limitId int32, newLimit int32) int32 { /* sqlite3.c:166822:16: */ var oldLimit int32 // EVIDENCE-OF: R-30189-54097 For each limit category SQLITE_LIMIT_NAME @@ -159233,7 +159281,7 @@ func Xsqlite3_limit(tls *libc.TLS, db uintptr, limitId int32, newLimit int32) in // may be set to point to a buffer containing an English language error // message. It is the responsibility of the caller to eventually release // this buffer by calling sqlite3_free(). -func Xsqlite3ParseUri(tls *libc.TLS, zDefaultVfs uintptr, zUri uintptr, pFlags uintptr, ppVfs uintptr, pzFile uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:166880:20: */ +func Xsqlite3ParseUri(tls *libc.TLS, zDefaultVfs uintptr, zUri uintptr, pFlags uintptr, ppVfs uintptr, pzFile uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:166892:20: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -159571,24 +159619,24 @@ type OpenMode = struct { Fz uintptr Fmode int32 _ [4]byte -} /* sqlite3.c:167022:9 */ +} /* sqlite3.c:167034:9 */ var aCacheMode = [3]OpenMode{ {Fz: ts + 22605 /* "shared" */, Fmode: SQLITE_OPEN_SHAREDCACHE}, {Fz: ts + 22612 /* "private" */, Fmode: SQLITE_OPEN_PRIVATECACHE}, {}, -} /* sqlite3.c:167031:34 */ +} /* sqlite3.c:167043:34 */ var aOpenMode = [5]OpenMode{ {Fz: ts + 22620 /* "ro" */, Fmode: SQLITE_OPEN_READONLY}, {Fz: ts + 22623 /* "rw" */, Fmode: SQLITE_OPEN_READWRITE}, {Fz: ts + 22626 /* "rwc" */, Fmode: (SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)}, {Fz: ts + 15834 /* "memory" */, Fmode: SQLITE_OPEN_MEMORY}, {}, -} /* sqlite3.c:167043:34 */ +} /* sqlite3.c:167055:34 */ // This routine does the core work of extracting URI parameters from a // database filename for the sqlite3_uri_parameter() interface. -func uriParameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:167117:19: */ +func uriParameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:167129:19: */ zFilename += (uintptr(Xsqlite3Strlen30(tls, zFilename) + 1)) for *(*int8)(unsafe.Pointer(zFilename)) != 0 { var x int32 = libc.Xstrcmp(tls, zFilename, zParam) @@ -159604,7 +159652,7 @@ func uriParameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* // This routine does the work of opening a database on behalf of // sqlite3_open() and sqlite3_open16(). The database filename "zFilename" // is UTF-8 encoded. -func openDatabase(tls *libc.TLS, zFilename uintptr, ppDb uintptr, flags uint32, zVfs uintptr) int32 { /* sqlite3.c:167135:12: */ +func openDatabase(tls *libc.TLS, zFilename uintptr, ppDb uintptr, flags uint32, zVfs uintptr) int32 { /* sqlite3.c:167147:12: */ bp := tls.Alloc(32) defer tls.Free(32) *(*uint32)(unsafe.Pointer(bp + 8)) = flags @@ -159796,7 +159844,7 @@ __15: if !(((int32(1) << (*(*uint32)(unsafe.Pointer(bp + 8 /* flags */)) & uint32(7))) & 0x46) == 0) { goto __16 } - rc = Xsqlite3MisuseError(tls, 167340) // IMP: R-18321-05872 + rc = Xsqlite3MisuseError(tls, 167352) // IMP: R-18321-05872 goto __17 __16: rc = Xsqlite3ParseUri(tls, zVfs, zFilename, bp+8 /* &flags */, (db /* &.pVfs */), bp+16 /* &zOpen */, bp+24 /* &zErrMsg */) @@ -159950,17 +159998,17 @@ __32: } // Open a new database handle. -func Xsqlite3_open(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167462:16: */ +func Xsqlite3_open(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167474:16: */ return openDatabase(tls, zFilename, ppDb, (uint32(SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)), uintptr(0)) } -func Xsqlite3_open_v2(tls *libc.TLS, filename uintptr, ppDb uintptr, flags int32, zVfs uintptr) int32 { /* sqlite3.c:167469:16: */ +func Xsqlite3_open_v2(tls *libc.TLS, filename uintptr, ppDb uintptr, flags int32, zVfs uintptr) int32 { /* sqlite3.c:167481:16: */ return openDatabase(tls, filename, ppDb, uint32(flags), zVfs) } // Open a new database handle. -func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167482:16: */ +func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167494:16: */ var zFilename8 uintptr // zFilename encoded in UTF-8 instead of UTF-16 var pVal uintptr var rc int32 @@ -159992,12 +160040,12 @@ func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* } // Register a new collation sequence with the database handle db. -func Xsqlite3_create_collation(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167521:16: */ +func Xsqlite3_create_collation(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167533:16: */ return Xsqlite3_create_collation_v2(tls, db, zName, enc, pCtx, xCompare, uintptr(0)) } // Register a new collation sequence with the database handle db. -func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:167534:16: */ +func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:167546:16: */ var rc int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160009,7 +160057,7 @@ func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc } // Register a new collation sequence with the database handle db. -func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167559:16: */ +func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167571:16: */ var rc int32 = SQLITE_OK var zName8 uintptr @@ -160027,7 +160075,7 @@ func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc i // Register a collation sequence factory callback with the database handle // db. Replace any previously installed collation sequence factory. -func Xsqlite3_collation_needed(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded uintptr) int32 { /* sqlite3.c:167589:16: */ +func Xsqlite3_collation_needed(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded uintptr) int32 { /* sqlite3.c:167601:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded = xCollNeeded (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16 = uintptr(0) @@ -160038,7 +160086,7 @@ func Xsqlite3_collation_needed(tls *libc.TLS, db uintptr, pCollNeededArg uintptr // Register a collation sequence factory callback with the database handle // db. Replace any previously installed collation sequence factory. -func Xsqlite3_collation_needed16(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded16 uintptr) int32 { /* sqlite3.c:167610:16: */ +func Xsqlite3_collation_needed16(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded16 uintptr) int32 { /* sqlite3.c:167622:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded = uintptr(0) (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16 = xCollNeeded16 @@ -160049,7 +160097,7 @@ func Xsqlite3_collation_needed16(tls *libc.TLS, db uintptr, pCollNeededArg uintp // This function is now an anachronism. It used to be used to recover from a // malloc() failure, but SQLite now does this automatically. -func Xsqlite3_global_recover(tls *libc.TLS) int32 { /* sqlite3.c:167632:16: */ +func Xsqlite3_global_recover(tls *libc.TLS) int32 { /* sqlite3.c:167644:16: */ return SQLITE_OK } @@ -160057,7 +160105,7 @@ func Xsqlite3_global_recover(tls *libc.TLS) int32 { /* sqlite3.c:167632:16: */ // mode. Return TRUE if it is and FALSE if not. Autocommit mode is on // by default. Autocommit is disabled by a BEGIN statement and reenabled // by the next COMMIT or ROLLBACK. -func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:167643:16: */ +func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:167655:16: */ return int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) } @@ -160070,7 +160118,7 @@ func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:167 // // 2. Invoke sqlite3_log() to provide the source code location where // a low-level error is first detected. -func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) int32 { /* sqlite3.c:167664:20: */ +func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) int32 { /* sqlite3.c:167676:20: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -160079,17 +160127,17 @@ func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) return iErr } -func Xsqlite3CorruptError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167669:20: */ +func Xsqlite3CorruptError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167681:20: */ return Xsqlite3ReportError(tls, SQLITE_CORRUPT, lineno, ts+22664 /* "database corrupt..." */) } -func Xsqlite3MisuseError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167673:20: */ +func Xsqlite3MisuseError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167685:20: */ return Xsqlite3ReportError(tls, SQLITE_MISUSE, lineno, ts+22684 /* "misuse" */) } -func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167677:20: */ +func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167689:20: */ return Xsqlite3ReportError(tls, SQLITE_CANTOPEN, lineno, ts+22691 /* "cannot open file" */) } @@ -160099,12 +160147,12 @@ func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167 // // SQLite no longer uses thread-specific data so this routine is now a // no-op. It is retained for historical compatibility. -func Xsqlite3_thread_cleanup(tls *libc.TLS) { /* sqlite3.c:167708:17: */ +func Xsqlite3_thread_cleanup(tls *libc.TLS) { /* sqlite3.c:167720:17: */ } // Return meta information about a specific column of a database table. // See comment in sqlite3.h (sqlite.h.in) for details. -func Xsqlite3_table_column_metadata(tls *libc.TLS, db uintptr, zDbName uintptr, zTableName uintptr, zColumnName uintptr, pzDataType uintptr, pzCollSeq uintptr, pNotNull uintptr, pPrimaryKey uintptr, pAutoinc uintptr) int32 { /* sqlite3.c:167716:16: */ +func Xsqlite3_table_column_metadata(tls *libc.TLS, db uintptr, zDbName uintptr, zTableName uintptr, zColumnName uintptr, pzDataType uintptr, pzCollSeq uintptr, pNotNull uintptr, pPrimaryKey uintptr, pAutoinc uintptr) int32 { /* sqlite3.c:167728:16: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -160288,7 +160336,7 @@ __20: } // Sleep for a little while. Return the amount of time slept. -func Xsqlite3_sleep(tls *libc.TLS, ms int32) int32 { /* sqlite3.c:167834:16: */ +func Xsqlite3_sleep(tls *libc.TLS, ms int32) int32 { /* sqlite3.c:167846:16: */ var pVfs uintptr var rc int32 pVfs = Xsqlite3_vfs_find(tls, uintptr(0)) @@ -160303,7 +160351,7 @@ func Xsqlite3_sleep(tls *libc.TLS, ms int32) int32 { /* sqlite3.c:167834:16: */ } // Enable or disable the extended result codes. -func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:167850:16: */ +func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:167862:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FerrMask = func() int32 { if onoff != 0 { @@ -160316,7 +160364,7 @@ func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) int3 } // Invoke the xFileControl method on a particular database. -func Xsqlite3_file_control(tls *libc.TLS, db uintptr, zDbName uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:167863:16: */ +func Xsqlite3_file_control(tls *libc.TLS, db uintptr, zDbName uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:167875:16: */ var rc int32 = SQLITE_ERROR var pBtree uintptr @@ -160361,7 +160409,7 @@ func Xsqlite3_file_control(tls *libc.TLS, db uintptr, zDbName uintptr, op int32, } // Interface to the testing logic. -func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:167913:16: */ +func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:167925:16: */ var rc int32 = 0 var ap Va_list _ = ap @@ -160782,7 +160830,7 @@ func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlit // backwards for the first byte following four consecutive zero bytes. // // This only works if the filename passed in was obtained from the Pager. -func databaseName(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:168337:19: */ +func databaseName(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:168349:19: */ for (((int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-1)))) != 0) || (int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-2)))) != 0)) || (int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-3)))) != 0)) || (int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-4)))) != 0) { zName-- } @@ -160791,7 +160839,7 @@ func databaseName(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:168337:19 // Append text z[] to the end of p[]. Return a pointer to the first // character after then zero terminator on the new text in p[]. -func appendText(tls *libc.TLS, p uintptr, z uintptr) uintptr { /* sqlite3.c:168348:13: */ +func appendText(tls *libc.TLS, p uintptr, z uintptr) uintptr { /* sqlite3.c:168360:13: */ var n Size_t = libc.Xstrlen(tls, z) libc.X__builtin___memcpy_chk(tls, p, z, (n + uint64(1)), libc.X__builtin_object_size(tls, p, 0)) return ((p + uintptr(n)) + uintptr(1)) @@ -160804,7 +160852,7 @@ func appendText(tls *libc.TLS, p uintptr, z uintptr) uintptr { /* sqlite3.c:1683 // // Memory layout must be compatible with that generated by the pager // and expected by sqlite3_uri_parameter() and databaseName(). -func Xsqlite3_create_filename(tls *libc.TLS, zDatabase uintptr, zJournal uintptr, zWal uintptr, nParam int32, azParam uintptr) uintptr { /* sqlite3.c:168363:17: */ +func Xsqlite3_create_filename(tls *libc.TLS, zDatabase uintptr, zJournal uintptr, zWal uintptr, nParam int32, azParam uintptr) uintptr { /* sqlite3.c:168375:17: */ var nByte Sqlite3_int64 var i int32 var pResult uintptr @@ -160835,7 +160883,7 @@ func Xsqlite3_create_filename(tls *libc.TLS, zDatabase uintptr, zJournal uintptr // Free memory obtained from sqlite3_create_filename(). It is a severe // error to call this routine with any parameter other than a pointer // previously obtained from sqlite3_create_filename() or a NULL pointer. -func Xsqlite3_free_filename(tls *libc.TLS, p uintptr) { /* sqlite3.c:168399:17: */ +func Xsqlite3_free_filename(tls *libc.TLS, p uintptr) { /* sqlite3.c:168411:17: */ if p == uintptr(0) { return } @@ -160852,7 +160900,7 @@ func Xsqlite3_free_filename(tls *libc.TLS, p uintptr) { /* sqlite3.c:168399:17: // query parameter we seek. This routine returns the value of the zParam // parameter if it exists. If the parameter does not exist, this routine // returns a NULL pointer. -func Xsqlite3_uri_parameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:168417:23: */ +func Xsqlite3_uri_parameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:168429:23: */ if (zFilename == uintptr(0)) || (zParam == uintptr(0)) { return uintptr(0) } @@ -160861,7 +160909,7 @@ func Xsqlite3_uri_parameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) ui } // Return a pointer to the name of Nth query parameter of the filename. -func Xsqlite3_uri_key(tls *libc.TLS, zFilename uintptr, N int32) uintptr { /* sqlite3.c:168426:23: */ +func Xsqlite3_uri_key(tls *libc.TLS, zFilename uintptr, N int32) uintptr { /* sqlite3.c:168438:23: */ if (zFilename == uintptr(0)) || (N < 0) { return uintptr(0) } @@ -160878,7 +160926,7 @@ func Xsqlite3_uri_key(tls *libc.TLS, zFilename uintptr, N int32) uintptr { /* sq } // Return a boolean value for a query parameter. -func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt int32) int32 { /* sqlite3.c:168440:16: */ +func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt int32) int32 { /* sqlite3.c:168452:16: */ var z uintptr = Xsqlite3_uri_parameter(tls, zFilename, zParam) bDflt = (libc.Bool32(bDflt != 0)) if z != 0 { @@ -160888,7 +160936,7 @@ func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDfl } // Return a 64-bit integer value for a query parameter. -func Xsqlite3_uri_int64(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:168449:26: */ +func Xsqlite3_uri_int64(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:168461:26: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -160909,11 +160957,11 @@ func Xsqlite3_uri_int64(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt // passing free() a pointer that was not obtained from malloc() - it is // an error that we cannot easily detect but that will likely cause memory // corruption. -func Xsqlite3_filename_database(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168472:23: */ +func Xsqlite3_filename_database(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168484:23: */ return databaseName(tls, zFilename) } -func Xsqlite3_filename_journal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168475:23: */ +func Xsqlite3_filename_journal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168487:23: */ zFilename = databaseName(tls, zFilename) zFilename += (uintptr(Xsqlite3Strlen30(tls, zFilename) + 1)) for *(*int8)(unsafe.Pointer(zFilename)) != 0 { @@ -160923,14 +160971,14 @@ func Xsqlite3_filename_journal(tls *libc.TLS, zFilename uintptr) uintptr { /* sq return (zFilename + uintptr(1)) } -func Xsqlite3_filename_wal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168484:23: */ +func Xsqlite3_filename_wal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168496:23: */ zFilename = Xsqlite3_filename_journal(tls, zFilename) zFilename += (uintptr(Xsqlite3Strlen30(tls, zFilename) + 1)) return zFilename } // Return the Btree pointer identified by zDbName. Return NULL if not found. -func Xsqlite3DbNameToBtree(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168497:22: */ +func Xsqlite3DbNameToBtree(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168509:22: */ var iDb int32 if zDbName != 0 { iDb = Xsqlite3FindDbName(tls, db, zDbName) @@ -160945,7 +160993,7 @@ func Xsqlite3DbNameToBtree(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { // Return the filename of the database associated with a database // connection. -func Xsqlite3_db_filename(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168506:23: */ +func Xsqlite3_db_filename(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168518:23: */ var pBt uintptr pBt = Xsqlite3DbNameToBtree(tls, db, zDbName) if pBt != 0 { @@ -160956,7 +161004,7 @@ func Xsqlite3_db_filename(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { // Return 1 if database is read-only or 0 if read/write. Return -1 if // no such database exists. -func Xsqlite3_db_readonly(tls *libc.TLS, db uintptr, zDbName uintptr) int32 { /* sqlite3.c:168522:16: */ +func Xsqlite3_db_readonly(tls *libc.TLS, db uintptr, zDbName uintptr) int32 { /* sqlite3.c:168534:16: */ var pBt uintptr pBt = Xsqlite3DbNameToBtree(tls, db, zDbName) if pBt != 0 { @@ -160967,7 +161015,7 @@ func Xsqlite3_db_readonly(tls *libc.TLS, db uintptr, zDbName uintptr) int32 { /* // Obtain a snapshot handle for the snapshot of database zDb currently // being read by handle db. -func Xsqlite3_snapshot_get(tls *libc.TLS, db uintptr, zDb uintptr, ppSnapshot uintptr) int32 { /* sqlite3.c:168539:16: */ +func Xsqlite3_snapshot_get(tls *libc.TLS, db uintptr, zDb uintptr, ppSnapshot uintptr) int32 { /* sqlite3.c:168551:16: */ var rc int32 = SQLITE_ERROR Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160990,7 +161038,7 @@ func Xsqlite3_snapshot_get(tls *libc.TLS, db uintptr, zDb uintptr, ppSnapshot ui } // Open a read-transaction on the snapshot idendified by pSnapshot. -func Xsqlite3_snapshot_open(tls *libc.TLS, db uintptr, zDb uintptr, pSnapshot uintptr) int32 { /* sqlite3.c:168575:16: */ +func Xsqlite3_snapshot_open(tls *libc.TLS, db uintptr, zDb uintptr, pSnapshot uintptr) int32 { /* sqlite3.c:168587:16: */ var rc int32 = SQLITE_ERROR Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -161033,7 +161081,7 @@ func Xsqlite3_snapshot_open(tls *libc.TLS, db uintptr, zDb uintptr, pSnapshot ui // Recover as many snapshots as possible from the wal file associated with // schema zDb of database db. -func Xsqlite3_snapshot_recover(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:168631:16: */ +func Xsqlite3_snapshot_recover(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:168643:16: */ var rc int32 = SQLITE_ERROR var iDb int32 @@ -161054,7 +161102,7 @@ func Xsqlite3_snapshot_recover(tls *libc.TLS, db uintptr, zDb uintptr) int32 { / } // Free a snapshot handle obtained from sqlite3_snapshot_get(). -func Xsqlite3_snapshot_free(tls *libc.TLS, pSnapshot uintptr) { /* sqlite3.c:168662:17: */ +func Xsqlite3_snapshot_free(tls *libc.TLS, pSnapshot uintptr) { /* sqlite3.c:168674:17: */ Xsqlite3_free(tls, pSnapshot) } @@ -161063,7 +161111,7 @@ func Xsqlite3_snapshot_free(tls *libc.TLS, pSnapshot uintptr) { /* sqlite3.c:168 // // The name can optionally begin with "SQLITE_" but the "SQLITE_" prefix // is not required for a match. -func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sqlite3.c:168675:16: */ +func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sqlite3.c:168687:16: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -161093,7 +161141,7 @@ func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sql // Return the N-th compile-time option string. If N is out of range, // return a NULL pointer. -func Xsqlite3_compileoption_get(tls *libc.TLS, N int32) uintptr { /* sqlite3.c:168708:23: */ +func Xsqlite3_compileoption_get(tls *libc.TLS, N int32) uintptr { /* sqlite3.c:168720:23: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -161138,11 +161186,11 @@ func Xsqlite3_compileoption_get(tls *libc.TLS, N int32) uintptr { /* sqlite3.c:1 // for which either sqlite3.pBlockingConnection or sqlite3.pUnlockConnection // is not NULL. This variable may only accessed while the STATIC_MAIN // mutex is held. -var sqlite3BlockedList uintptr = uintptr(0) /* sqlite3.c:168760:16 */ +var sqlite3BlockedList uintptr = uintptr(0) /* sqlite3.c:168772:16 */ // Remove connection db from the blocked connections list. If connection // db is not currently a part of the list, this function is a no-op. -func removeFromBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168803:13: */ +func removeFromBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168815:13: */ var pp uintptr for pp = uintptr(unsafe.Pointer(&sqlite3BlockedList)); *(*uintptr)(unsafe.Pointer(pp)) != 0; pp = (*(*uintptr)(unsafe.Pointer(pp)) + 800 /* &.pNextBlocked */) { @@ -161155,7 +161203,7 @@ func removeFromBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168803:13: // Add connection db to the blocked connections list. It is assumed // that it is not already a part of the list. -func addToBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168818:13: */ +func addToBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168830:13: */ var pp uintptr for pp = uintptr(unsafe.Pointer(&sqlite3BlockedList)); (*(*uintptr)(unsafe.Pointer(pp)) != 0) && ((*Sqlite3)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pp))))).FxUnlockNotify != (*Sqlite3)(unsafe.Pointer(db)).FxUnlockNotify); pp = (*(*uintptr)(unsafe.Pointer(pp)) + 800 /* &.pNextBlocked */) { @@ -161165,13 +161213,13 @@ func addToBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168818:13: */ } // Obtain the STATIC_MAIN mutex. -func enterMutex(tls *libc.TLS) { /* sqlite3.c:168833:13: */ +func enterMutex(tls *libc.TLS) { /* sqlite3.c:168845:13: */ Xsqlite3_mutex_enter(tls, Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN)) } // Release the STATIC_MAIN mutex. -func leaveMutex(tls *libc.TLS) { /* sqlite3.c:168841:13: */ +func leaveMutex(tls *libc.TLS) { /* sqlite3.c:168853:13: */ Xsqlite3_mutex_leave(tls, Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN)) } @@ -161195,7 +161243,7 @@ func leaveMutex(tls *libc.TLS) { /* sqlite3.c:168841:13: */ // Each call to this routine overrides any prior callbacks registered // on the same "db". If xNotify==0 then any prior callbacks are immediately // cancelled. -func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uintptr) int32 { /* sqlite3.c:168868:16: */ +func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uintptr) int32 { /* sqlite3.c:168880:16: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = pArg @@ -161248,7 +161296,7 @@ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uin // associated with connection db. The operation will return SQLITE_LOCKED // to the user because it requires a lock that will not be available // until connection pBlocker concludes its current transaction. -func Xsqlite3ConnectionBlocked(tls *libc.TLS, db uintptr, pBlocker uintptr) { /* sqlite3.c:168918:21: */ +func Xsqlite3ConnectionBlocked(tls *libc.TLS, db uintptr, pBlocker uintptr) { /* sqlite3.c:168930:21: */ enterMutex(tls) if ((*Sqlite3)(unsafe.Pointer(db)).FpBlockingConnection == uintptr(0)) && ((*Sqlite3)(unsafe.Pointer(db)).FpUnlockConnection == uintptr(0)) { addToBlockedList(tls, db) @@ -161274,7 +161322,7 @@ func Xsqlite3ConnectionBlocked(tls *libc.TLS, db uintptr, pBlocker uintptr) { /* // 3) If the two steps above mean that pBlockingConnection==0 and // pUnlockConnection==0, remove the entry from the blocked connections // list. -func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:168946:21: */ +func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:168958:21: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -161372,7 +161420,7 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:168946 // This is called when the database connection passed as an argument is // being closed. The connection is removed from the blocked list. -func Xsqlite3ConnectionClosed(tls *libc.TLS, db uintptr) { /* sqlite3.c:169045:21: */ +func Xsqlite3ConnectionClosed(tls *libc.TLS, db uintptr) { /* sqlite3.c:169057:21: */ Xsqlite3ConnectionUnlocked(tls, db) enterMutex(tls) removeFromBlockedList(tls, db) @@ -161989,7 +162037,7 @@ var jsonIsSpace = [256]int8{ int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), -} /* sqlite3.c:188622:19 */ +} /* sqlite3.c:188634:19 */ // Objects type JsonString1 = struct { @@ -162001,19 +162049,19 @@ type JsonString1 = struct { FbErr U8 FzSpace [100]int8 _ [2]byte -} /* sqlite3.c:188652:9 */ +} /* sqlite3.c:188664:9 */ // Objects -type JsonString = JsonString1 /* sqlite3.c:188652:27 */ +type JsonString = JsonString1 /* sqlite3.c:188664:27 */ type JsonNode1 = struct { FeType U8 FjnFlags U8 _ [2]byte Fn U32 Fu struct{ FzJContent uintptr } -} /* sqlite3.c:188653:9 */ +} /* sqlite3.c:188665:9 */ -type JsonNode = JsonNode1 /* sqlite3.c:188653:25 */ +type JsonNode = JsonNode1 /* sqlite3.c:188665:25 */ type JsonParse1 = struct { FnNode U32 FnAlloc U32 @@ -162026,9 +162074,9 @@ type JsonParse1 = struct { FnJson int32 FiHold U32 _ [4]byte -} /* sqlite3.c:188654:9 */ +} /* sqlite3.c:188666:9 */ -type JsonParse = JsonParse1 /* sqlite3.c:188654:26 */ +type JsonParse = JsonParse1 /* sqlite3.c:188666:26 */ // JSON type values @@ -162037,7 +162085,7 @@ type JsonParse = JsonParse1 /* sqlite3.c:188654:26 */ // Names of the various JSON types: var jsonType = [8]uintptr{ ts + 5547 /* "null" */, ts + 6059 /* "true" */, ts + 6064 /* "false" */, ts + 5557 /* "integer" */, ts + 5552 /* "real" */, ts + 13490 /* "text" */, ts + 22767 /* "array" */, ts + 22773, /* "object" */ -} /* sqlite3.c:188687:19 */ +} /* sqlite3.c:188699:19 */ // Maximum nesting depth of JSON for this implementation. // @@ -162051,7 +162099,7 @@ var jsonType = [8]uintptr{ // // Set the JsonString object to an empty string -func jsonZero(tls *libc.TLS, p uintptr) { /* sqlite3.c:188747:13: */ +func jsonZero(tls *libc.TLS, p uintptr) { /* sqlite3.c:188759:13: */ (*JsonString)(unsafe.Pointer(p)).FzBuf = p + 34 /* &.zSpace */ (*JsonString)(unsafe.Pointer(p)).FnAlloc = U64(unsafe.Sizeof([100]int8{})) (*JsonString)(unsafe.Pointer(p)).FnUsed = uint64(0) @@ -162059,7 +162107,7 @@ func jsonZero(tls *libc.TLS, p uintptr) { /* sqlite3.c:188747:13: */ } // Initialize the JsonString object -func jsonInit(tls *libc.TLS, p uintptr, pCtx uintptr) { /* sqlite3.c:188756:13: */ +func jsonInit(tls *libc.TLS, p uintptr, pCtx uintptr) { /* sqlite3.c:188768:13: */ (*JsonString)(unsafe.Pointer(p)).FpCtx = pCtx (*JsonString)(unsafe.Pointer(p)).FbErr = U8(0) jsonZero(tls, p) @@ -162067,7 +162115,7 @@ func jsonInit(tls *libc.TLS, p uintptr, pCtx uintptr) { /* sqlite3.c:188756:13: // Free all allocated memory and reset the JsonString object back to its // initial state. -func jsonReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:188766:13: */ +func jsonReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:188778:13: */ if !(int32((*JsonString)(unsafe.Pointer(p)).FbStatic) != 0) { Xsqlite3_free(tls, (*JsonString)(unsafe.Pointer(p)).FzBuf) } @@ -162075,7 +162123,7 @@ func jsonReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:188766:13: */ } // Report an out-of-memory (OOM) condition -func jsonOom(tls *libc.TLS, p uintptr) { /* sqlite3.c:188774:13: */ +func jsonOom(tls *libc.TLS, p uintptr) { /* sqlite3.c:188786:13: */ (*JsonString)(unsafe.Pointer(p)).FbErr = U8(1) Xsqlite3_result_error_nomem(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx) jsonReset(tls, p) @@ -162083,7 +162131,7 @@ func jsonOom(tls *libc.TLS, p uintptr) { /* sqlite3.c:188774:13: */ // Enlarge pJson->zBuf so that it can hold at least N more bytes. // Return zero on success. Return non-zero on an OOM error -func jsonGrow(tls *libc.TLS, p uintptr, N U32) int32 { /* sqlite3.c:188783:12: */ +func jsonGrow(tls *libc.TLS, p uintptr, N U32) int32 { /* sqlite3.c:188795:12: */ var nTotal U64 if U64(N) < (*JsonString)(unsafe.Pointer(p)).FnAlloc { nTotal = ((*JsonString)(unsafe.Pointer(p)).FnAlloc * uint64(2)) @@ -162116,7 +162164,7 @@ func jsonGrow(tls *libc.TLS, p uintptr, N U32) int32 { /* sqlite3.c:188783:12: * } // Append N bytes from zIn onto the end of the JsonString string. -func jsonAppendRaw(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188810:13: */ +func jsonAppendRaw(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188822:13: */ if N == U32(0) { return } @@ -162128,7 +162176,7 @@ func jsonAppendRaw(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c: } // Append formatted text (not to exceed N bytes) to the JsonString. -func jsonPrintf(tls *libc.TLS, N int32, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:188819:13: */ +func jsonPrintf(tls *libc.TLS, N int32, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:188831:13: */ var ap Va_list _ = ap if (((*JsonString)(unsafe.Pointer(p)).FnUsed + U64(N)) >= (*JsonString)(unsafe.Pointer(p)).FnAlloc) && (jsonGrow(tls, p, uint32(N)) != 0) { @@ -162141,7 +162189,7 @@ func jsonPrintf(tls *libc.TLS, N int32, p uintptr, zFormat uintptr, va uintptr) } // Append a single character -func jsonAppendChar(tls *libc.TLS, p uintptr, c int8) { /* sqlite3.c:188830:13: */ +func jsonAppendChar(tls *libc.TLS, p uintptr, c int8) { /* sqlite3.c:188842:13: */ if ((*JsonString)(unsafe.Pointer(p)).FnUsed >= (*JsonString)(unsafe.Pointer(p)).FnAlloc) && (jsonGrow(tls, p, uint32(1)) != 0) { return } @@ -162150,7 +162198,7 @@ func jsonAppendChar(tls *libc.TLS, p uintptr, c int8) { /* sqlite3.c:188830:13: // Append a comma separator to the output buffer, if the previous // character is not '[' or '{'. -func jsonAppendSeparator(tls *libc.TLS, p uintptr) { /* sqlite3.c:188838:13: */ +func jsonAppendSeparator(tls *libc.TLS, p uintptr) { /* sqlite3.c:188850:13: */ var c int8 if (*JsonString)(unsafe.Pointer(p)).FnUsed == uint64(0) { return @@ -162165,7 +162213,7 @@ func jsonAppendSeparator(tls *libc.TLS, p uintptr) { /* sqlite3.c:188838:13: */ // under construction. Enclose the string in "..." and escape // any double-quotes or backslash characters contained within the // string. -func jsonAppendString(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188850:13: */ +func jsonAppendString(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188862:13: */ var i U32 var c uint8 if !((((U64(N) + (*JsonString)(unsafe.Pointer(p)).FnUsed) + uint64(2)) >= (*JsonString)(unsafe.Pointer(p)).FnAlloc) && (jsonGrow(tls, p, (N+U32(2))) != 0)) { @@ -162236,11 +162284,11 @@ __4: var aSpecial = [32]int8{ int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8('b'), int8('t'), int8('n'), int8(0), int8('f'), int8('r'), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), -} /* sqlite3.c:188861:25 */ +} /* sqlite3.c:188873:25 */ // Append a function parameter value to the JSON string under // construction. -func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:188893:13: */ +func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:188905:13: */ switch Xsqlite3_value_type(tls, pValue) { case SQLITE_NULL: { @@ -162284,7 +162332,7 @@ func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:18 } // Make the JSON in p the result of the SQL function. -func jsonResult(tls *libc.TLS, p uintptr) { /* sqlite3.c:188933:13: */ +func jsonResult(tls *libc.TLS, p uintptr) { /* sqlite3.c:188945:13: */ if int32((*JsonString)(unsafe.Pointer(p)).FbErr) == 0 { Xsqlite3_result_text64(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx, (*JsonString)(unsafe.Pointer(p)).FzBuf, (*JsonString)(unsafe.Pointer(p)).FnUsed, func() uintptr { @@ -162311,7 +162359,7 @@ func jsonResult(tls *libc.TLS, p uintptr) { /* sqlite3.c:188933:13: */ // Appended elements are not counted. The value returned is the number // by which the JsonNode counter should increment in order to go to the // next peer value. -func jsonNodeSize(tls *libc.TLS, pNode uintptr) U32 { /* sqlite3.c:188956:12: */ +func jsonNodeSize(tls *libc.TLS, pNode uintptr) U32 { /* sqlite3.c:188968:12: */ if int32((*JsonNode)(unsafe.Pointer(pNode)).FeType) >= JSON_ARRAY { return ((*JsonNode)(unsafe.Pointer(pNode)).Fn + U32(1)) } @@ -162320,7 +162368,7 @@ func jsonNodeSize(tls *libc.TLS, pNode uintptr) U32 { /* sqlite3.c:188956:12: */ // Reclaim all memory allocated by a JsonParse object. But do not // delete the JsonParse object itself. -func jsonParseReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188964:13: */ +func jsonParseReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188976:13: */ Xsqlite3_free(tls, (*JsonParse)(unsafe.Pointer(pParse)).FaNode) (*JsonParse)(unsafe.Pointer(pParse)).FaNode = uintptr(0) (*JsonParse)(unsafe.Pointer(pParse)).FnNode = U32(0) @@ -162330,7 +162378,7 @@ func jsonParseReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188964:13: */ } // Free a JsonParse object that was obtained from sqlite3_malloc(). -func jsonParseFree(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188976:13: */ +func jsonParseFree(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188988:13: */ jsonParseReset(tls, pParse) Xsqlite3_free(tls, pParse) } @@ -162338,7 +162386,7 @@ func jsonParseFree(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188976:13: */ // Convert the JsonNode pNode into a pure JSON string and // append to pOut. Subsubstructure is also included. Return // the number of JsonNode objects that are encoded. -func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr) { /* sqlite3.c:188986:13: */ +func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr) { /* sqlite3.c:188998:13: */ if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & (JNODE_REPLACE | JNODE_PATCH)) != 0 { if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & JNODE_REPLACE) != 0 { jsonAppendValue(tls, pOut, *(*uintptr)(unsafe.Pointer(aReplace + uintptr(*(*U32)(unsafe.Pointer(pNode + 8 /* &.u */)))*8))) @@ -162433,7 +162481,7 @@ func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr } // Return a JsonNode and all its descendents as a JSON string. -func jsonReturnJson(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189068:13: */ +func jsonReturnJson(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189080:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -162448,14 +162496,14 @@ func jsonReturnJson(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr // Translate a single byte of Hex into an integer. // This routine only works if h really is a valid hexadecimal // character: 0..9a..fA..F -func jsonHexToInt(tls *libc.TLS, h int32) U8 { /* sqlite3.c:189085:11: */ +func jsonHexToInt(tls *libc.TLS, h int32) U8 { /* sqlite3.c:189097:11: */ h = h + (9 * (1 & (h >> 6))) return (U8(h & 0xf)) } // Convert a 4-byte hex string into an integer -func jsonHexToInt4(tls *libc.TLS, z uintptr) U32 { /* sqlite3.c:189098:12: */ +func jsonHexToInt4(tls *libc.TLS, z uintptr) U32 { /* sqlite3.c:189110:12: */ var v U32 v = (U32((((int32(jsonHexToInt(tls, int32(*(*int8)(unsafe.Pointer(z))))) << 12) + @@ -162466,7 +162514,7 @@ func jsonHexToInt4(tls *libc.TLS, z uintptr) U32 { /* sqlite3.c:189098:12: */ } // Make the JsonNode the return value of the function. -func jsonReturn(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189114:13: */ +func jsonReturn(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189126:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -162743,7 +162791,7 @@ __1: // A macro to hint to the compiler that a function should not be // inlined. -func jsonParseAddNodeExpand(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189278:26: */ +func jsonParseAddNodeExpand(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189290:26: */ var nNew U32 var pNew uintptr @@ -162765,7 +162813,7 @@ func jsonParseAddNodeExpand(tls *libc.TLS, pParse uintptr, eType U32, n U32, zCo // Create a new JsonNode instance based on the arguments and append that // instance to the JsonParse. Return the index in pParse->aNode[] of the // new node, or -1 if a memory allocation fails. -func jsonParseAddNode(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189305:12: */ +func jsonParseAddNode(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189317:12: */ var p uintptr if (*JsonParse)(unsafe.Pointer(pParse)).FnNode >= (*JsonParse)(unsafe.Pointer(pParse)).FnAlloc { return jsonParseAddNodeExpand(tls, pParse, eType, n, zContent) @@ -162779,7 +162827,7 @@ func jsonParseAddNode(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent } // Return true if z[] begins with 4 (or more) hexadecimal digits -func jsonIs4Hex(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:189326:12: */ +func jsonIs4Hex(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:189338:12: */ var i int32 for i = 0; i < 4; i++ { if !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr(i))))]) & 0x08) != 0) { @@ -162795,7 +162843,7 @@ func jsonIs4Hex(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:189326:12: */ // Return negative for a syntax error. Special cases: return -2 if the // first non-whitespace character is '}' and return -3 if the first // non-whitespace character is ']'. -func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:189340:12: */ +func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:189352:12: */ var c int8 var j U32 var iThis int32 @@ -163021,7 +163069,7 @@ func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:1 // pParse. // // pParse is uninitialized when this routine is called. -func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 { /* sqlite3.c:189500:12: */ +func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 { /* sqlite3.c:189512:12: */ var i int32 libc.X__builtin___memset_chk(tls, pParse, 0, uint64(unsafe.Sizeof(JsonParse{})), libc.X__builtin_object_size(tls, pParse, 0)) if zJson == uintptr(0) { @@ -163057,7 +163105,7 @@ func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 // Mark node i of pParse as being a child of iParent. Call recursively // to fill in all the descendants of node i. -func jsonParseFillInParentage(tls *libc.TLS, pParse uintptr, i U32, iParent U32) { /* sqlite3.c:189533:13: */ +func jsonParseFillInParentage(tls *libc.TLS, pParse uintptr, i U32, iParent U32) { /* sqlite3.c:189545:13: */ var pNode uintptr = ((*JsonParse)(unsafe.Pointer(pParse)).FaNode + uintptr(i)*16) var j U32 *(*U32)(unsafe.Pointer((*JsonParse)(unsafe.Pointer(pParse)).FaUp + uintptr(i)*4)) = iParent @@ -163088,7 +163136,7 @@ func jsonParseFillInParentage(tls *libc.TLS, pParse uintptr, i U32, iParent U32) } // Compute the parentage of all nodes in a completed parse. -func jsonParseFindParents(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:189560:12: */ +func jsonParseFindParents(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:189572:12: */ var aUp uintptr aUp = libc.AssignPtrUintptr(pParse+24 /* &.aUp */, Xsqlite3_malloc64(tls, (uint64(uint64(unsafe.Sizeof(U32(0)))*uint64((*JsonParse)(unsafe.Pointer(pParse)).FnNode))))) @@ -163108,7 +163156,7 @@ func jsonParseFindParents(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:18 // is no longer valid, parse the JSON again and return the new parse, // and also register the new parse so that it will be available for // future sqlite3_get_auxdata() calls. -func jsonParseCached(tls *libc.TLS, pCtx uintptr, argv uintptr, pErrCtx uintptr) uintptr { /* sqlite3.c:189586:18: */ +func jsonParseCached(tls *libc.TLS, pCtx uintptr, argv uintptr, pErrCtx uintptr) uintptr { /* sqlite3.c:189598:18: */ var zJson uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv))) var nJson int32 = Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv))) var p uintptr @@ -163165,7 +163213,7 @@ func jsonParseCached(tls *libc.TLS, pCtx uintptr, argv uintptr, pErrCtx uintptr) // Compare the OBJECT label at pNode against zKey,nKey. Return true on // a match. -func jsonLabelCompare(tls *libc.TLS, pNode uintptr, zKey uintptr, nKey U32) int32 { /* sqlite3.c:189648:12: */ +func jsonLabelCompare(tls *libc.TLS, pNode uintptr, zKey uintptr, nKey U32) int32 { /* sqlite3.c:189660:12: */ if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & JNODE_RAW) != 0 { if (*JsonNode)(unsafe.Pointer(pNode)).Fn != nKey { return 0 @@ -163187,7 +163235,7 @@ func jsonLabelCompare(tls *libc.TLS, pNode uintptr, zKey uintptr, nKey U32) int3 // If pApnd!=0, then try to append new nodes to complete zPath if it is // possible to do so and if no existing node corresponds to zPath. If // new nodes are appended *pApnd is set to 1. -func jsonLookupStep(tls *libc.TLS, pParse uintptr, iRoot U32, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189670:17: */ +func jsonLookupStep(tls *libc.TLS, pParse uintptr, iRoot U32, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189682:17: */ var i U32 var j U32 var nKey U32 @@ -163355,7 +163403,7 @@ func jsonLookupStep(tls *libc.TLS, pParse uintptr, iRoot U32, zPath uintptr, pAp // Append content to pParse that will complete zPath. Return a pointer // to the inserted node, or return NULL if the append fails. -func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189815:17: */ +func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189827:17: */ *(*int32)(unsafe.Pointer(pApnd)) = 1 if int32(*(*int8)(unsafe.Pointer(zPath))) == 0 { jsonParseAddNode(tls, pParse, uint32(JSON_NULL), uint32(0), uintptr(0)) @@ -163379,7 +163427,7 @@ func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintpt // Return the text of a syntax error message on a JSON path. Space is // obtained from sqlite3_malloc(). -func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:189841:13: */ +func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:189853:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -163394,7 +163442,7 @@ func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:189 // // If pApnd!=NULL then try to append missing nodes and set *pApnd = 1 if // nodes are appended. -func jsonLookup(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pCtx uintptr) uintptr { /* sqlite3.c:189855:17: */ +func jsonLookup(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pCtx uintptr) uintptr { /* sqlite3.c:189867:17: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -163446,7 +163494,7 @@ __5: // Report the wrong number of arguments for json_insert(), json_replace() // or json_set(). -func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlite3.c:189892:13: */ +func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlite3.c:189904:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -163457,7 +163505,7 @@ func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlit } // Mark all NULL entries in the Object passed in as JNODE_REMOVE. -func jsonRemoveAllNulls(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:189905:13: */ +func jsonRemoveAllNulls(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:189917:13: */ var i int32 var n int32 @@ -163488,7 +163536,7 @@ func jsonRemoveAllNulls(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:189905:13: // corresponding to the SQL value input. Mostly this means putting // double-quotes around strings and returning the unquoted string "null" // when given a NULL input. -func jsonQuoteFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:189990:13: */ +func jsonQuoteFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190002:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -163505,7 +163553,7 @@ func jsonQuoteFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // Implementation of the json_array(VALUE,...) function. Return a JSON // array that contains all values given in arguments. Or if any argument // is a BLOB, throw an error. -func jsonArrayFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190009:13: */ +func jsonArrayFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190021:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -163528,7 +163576,7 @@ func jsonArrayFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // // Return the number of elements in the top-level JSON array. // Return 0 if the input is not a well-formed JSON array. -func jsonArrayLengthFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190036:13: */ +func jsonArrayLengthFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190048:13: */ var p uintptr // The parse var n Sqlite3_int64 = int64(0) var i U32 @@ -163563,7 +163611,7 @@ func jsonArrayLengthFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { // PATH element. If there are multiple PATHs, then return a JSON array // with the result from each path. Throw an error if the JSON or any PATH // is malformed. -func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190075:13: */ +func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190087:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -163609,7 +163657,7 @@ func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* } // This is the RFC 7396 MergePatch algorithm. -func jsonMergePatch(tls *libc.TLS, pParse uintptr, iTarget U32, pPatch uintptr) uintptr { /* sqlite3.c:190116:17: */ +func jsonMergePatch(tls *libc.TLS, pParse uintptr, iTarget U32, pPatch uintptr) uintptr { /* sqlite3.c:190128:17: */ var i U32 var j U32 var iRoot U32 @@ -163678,7 +163726,7 @@ func jsonMergePatch(tls *libc.TLS, pParse uintptr, iTarget U32, pPatch uintptr) // Implementation of the json_mergepatch(JSON1,JSON2) function. Return a JSON // object that is the result of running the RFC 7396 MergePatch() algorithm // on the two arguments. -func jsonPatchFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190186:13: */ +func jsonPatchFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190198:13: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -163710,7 +163758,7 @@ func jsonPatchFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // Implementation of the json_object(NAME,VALUE,...) function. Return a JSON // object that contains all name/value given in arguments. Or if any name // is not a string or if any value is a BLOB, throw an error. -func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190218:13: */ +func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190230:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -163749,7 +163797,7 @@ func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* s // // Remove the named elements from JSON and return the result. malformed // JSON or PATH arguments result in an error. -func jsonRemoveFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190260:13: */ +func jsonRemoveFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190272:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -163818,7 +163866,7 @@ remove_done: // // Replace the value at PATH with VALUE. If PATH does not already exist, // this routine is a no-op. If JSON or PATH is malformed, throw an error. -func jsonReplaceFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190293:13: */ +func jsonReplaceFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190305:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -163898,7 +163946,7 @@ replace_err: // // Create PATH and initialize it to VALUE. If PATH already exists, this // routine is a no-op. If JSON or PATH is malformed, throw an error. -func jsonSetFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190340:13: */ +func jsonSetFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190352:13: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -163994,7 +164042,7 @@ jsonSetDone: // // Return the top-level "type" of a JSON string. Throw an error if // either the JSON or PATH inputs are not well-formed. -func jsonTypeFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190389:13: */ +func jsonTypeFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190401:13: */ var p uintptr // The parse var zPath uintptr var pNode uintptr @@ -164018,7 +164066,7 @@ func jsonTypeFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sql // // Return 1 if JSON is a well-formed JSON string according to RFC-7159. // Return 0 otherwise. -func jsonValidFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190417:13: */ +func jsonValidFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190429:13: */ var p uintptr // The parse _ = argc p = jsonParseCached(tls, ctx, argv, uintptr(0)) @@ -164032,7 +164080,7 @@ func jsonValidFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // json_group_array(VALUE) // // Return a JSON array composed of all values in the aggregate. -func jsonArrayStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190437:13: */ +func jsonArrayStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190449:13: */ var pStr uintptr _ = argc pStr = Xsqlite3_aggregate_context(tls, ctx, int32(unsafe.Sizeof(JsonString{}))) @@ -164048,7 +164096,7 @@ func jsonArrayStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq } } -func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190456:13: */ +func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190468:13: */ var pStr uintptr pStr = Xsqlite3_aggregate_context(tls, ctx, 0) if pStr != 0 { @@ -164078,11 +164126,11 @@ func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c: Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } -func jsonArrayValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190478:13: */ +func jsonArrayValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190490:13: */ jsonArrayCompute(tls, ctx, 0) } -func jsonArrayFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190481:13: */ +func jsonArrayFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190493:13: */ jsonArrayCompute(tls, ctx, 1) } @@ -164090,7 +164138,7 @@ func jsonArrayFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190481:13: */ // It works by removing the first element of the group by searching forward // to the first comma (",") that is not within a string and deleting all // text through that comma. -func jsonGroupInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190492:13: */ +func jsonGroupInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190504:13: */ var i uint32 var inStr int32 = 0 var nNest int32 = 0 @@ -164131,7 +164179,7 @@ func jsonGroupInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* // json_group_obj(NAME,VALUE) // // Return a JSON object composed of all names and values in the aggregate. -func jsonObjectStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190539:13: */ +func jsonObjectStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190551:13: */ var pStr uintptr var z uintptr var n U32 @@ -164153,7 +164201,7 @@ func jsonObjectStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* s } } -func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190564:13: */ +func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190576:13: */ var pStr uintptr pStr = Xsqlite3_aggregate_context(tls, ctx, 0) if pStr != 0 { @@ -164182,11 +164230,11 @@ func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } -func jsonObjectValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190585:13: */ +func jsonObjectValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190597:13: */ jsonObjectCompute(tls, ctx, 0) } -func jsonObjectFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190588:13: */ +func jsonObjectFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190600:13: */ jsonObjectCompute(tls, ctx, 1) } @@ -164206,16 +164254,16 @@ type JsonEachCursor1 = struct { FzJson uintptr FzRoot uintptr FsParse JsonParse -} /* sqlite3.c:190598:9 */ +} /* sqlite3.c:190610:9 */ // *************************************************************************** // // The json_each virtual table // -type JsonEachCursor = JsonEachCursor1 /* sqlite3.c:190598:31 */ +type JsonEachCursor = JsonEachCursor1 /* sqlite3.c:190610:31 */ // Constructor for the json_each virtual table -func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:190613:12: */ +func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:190625:12: */ var pNew uintptr var rc int32 @@ -164243,13 +164291,13 @@ func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv u } // destructor for json_each virtual table -func jsonEachDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:190655:12: */ +func jsonEachDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:190667:12: */ Xsqlite3_free(tls, pVtab) return SQLITE_OK } // constructor for a JsonEachCursor object for json_each(). -func jsonEachOpenEach(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190661:12: */ +func jsonEachOpenEach(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190673:12: */ var pCur uintptr _ = p @@ -164263,7 +164311,7 @@ func jsonEachOpenEach(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sql } // constructor for a JsonEachCursor object for json_tree(). -func jsonEachOpenTree(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190673:12: */ +func jsonEachOpenTree(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190685:12: */ var rc int32 = jsonEachOpenEach(tls, p, ppCursor) if rc == SQLITE_OK { var pCur uintptr = *(*uintptr)(unsafe.Pointer(ppCursor)) @@ -164274,7 +164322,7 @@ func jsonEachOpenTree(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sql // Reset a JsonEachCursor back to its original state. Free any memory // held. -func jsonEachCursorReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:190684:13: */ +func jsonEachCursorReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:190696:13: */ Xsqlite3_free(tls, (*JsonEachCursor)(unsafe.Pointer(p)).FzJson) Xsqlite3_free(tls, (*JsonEachCursor)(unsafe.Pointer(p)).FzRoot) jsonParseReset(tls, (p + 48 /* &.sParse */)) @@ -164287,7 +164335,7 @@ func jsonEachCursorReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:190684:13: */ } // Destructor for a jsonEachCursor object -func jsonEachClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190697:12: */ +func jsonEachClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190709:12: */ var p uintptr = cur jsonEachCursorReset(tls, p) Xsqlite3_free(tls, cur) @@ -164296,13 +164344,13 @@ func jsonEachClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190697:12: * // Return TRUE if the jsonEachCursor object has been advanced off the end // of the JSON object -func jsonEachEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190706:12: */ +func jsonEachEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190718:12: */ var p uintptr = cur return (libc.Bool32((*JsonEachCursor)(unsafe.Pointer(p)).Fi >= (*JsonEachCursor)(unsafe.Pointer(p)).FiEnd)) } // Advance the cursor to the next element for json_tree() -func jsonEachNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190712:12: */ +func jsonEachNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190724:12: */ var p uintptr = cur if (*JsonEachCursor)(unsafe.Pointer(p)).FbRecursive != 0 { if (int32((*JsonNode)(unsafe.Pointer((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.FaNode+uintptr((*JsonEachCursor)(unsafe.Pointer(p)).Fi)*16)).FjnFlags) & JNODE_LABEL) != 0 { @@ -164352,7 +164400,7 @@ func jsonEachNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190712:12: */ } // Append the name of the path for element i to pStr -func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sqlite3.c:190753:13: */ +func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sqlite3.c:190765:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -164380,7 +164428,7 @@ func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sql } // Return the value of a column -func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:190780:12: */ +func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:190792:12: */ bp := tls.Alloc(296) defer tls.Free(296) @@ -164512,7 +164560,7 @@ func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* } // Return the current rowid value -func jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c:190879:12: */ +func jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c:190891:12: */ var p uintptr = cur *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = Sqlite_int64((*JsonEachCursor)(unsafe.Pointer(p)).FiRowid) return SQLITE_OK @@ -164522,7 +164570,7 @@ func jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite // column. Without such a constraint, the table cannot operate. idxNum is // 1 if the constraint is found, 3 if the constraint and zRoot are found, // and 0 otherwise. -func jsonEachBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:190890:12: */ +func jsonEachBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:190902:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -164597,7 +164645,7 @@ __3: } // Start a search on a new JSON string -func jsonEachFilter(tls *libc.TLS, cur uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:190948:12: */ +func jsonEachFilter(tls *libc.TLS, cur uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:190960:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -164701,7 +164749,7 @@ var jsonEachModule = Sqlite3_module{ // xCreate FxEof: 0, // xEof - check for end of scan FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:191027:23 */ +} /* sqlite3.c:191039:23 */ // The methods of the json_tree virtual table. var jsonTreeModule = Sqlite3_module{ // xCreate @@ -164715,7 +164763,7 @@ var jsonTreeModule = Sqlite3_module{ // xCreate FxEof: 0, // xEof - check for end of scan FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:191055:23 */ +} /* sqlite3.c:191067:23 */ // *************************************************************************** // @@ -164724,7 +164772,7 @@ var jsonTreeModule = Sqlite3_module{ // xCreate // functions and the virtual table implemented by this file. // -func Xsqlite3Json1Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:191089:20: */ +func Xsqlite3Json1Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:191101:20: */ var rc int32 = SQLITE_OK var i uint32 for i = uint32(0); (uint64(i) < (uint64(unsafe.Sizeof(aFunc)) / uint64(unsafe.Sizeof(struct { @@ -164782,7 +164830,7 @@ var aFunc = [15]struct { {FzName: ts + 23239 /* "json_type" */, FnArg: 1, FxFunc: 0}, {FzName: ts + 23239 /* "json_type" */, FnArg: 2, FxFunc: 0}, {FzName: ts + 23249 /* "json_valid" */, FnArg: 1, FxFunc: 0}, -} /* sqlite3.c:191097:5 */ +} /* sqlite3.c:191109:5 */ var aAgg = [2]struct { FzName uintptr FnArg int32 @@ -164795,15 +164843,15 @@ var aAgg = [2]struct { FxStep: 0, FxFinal: 0, FxValue: 0}, {FzName: ts + 23277 /* "json_group_objec..." */, FnArg: 2, FxStep: 0, FxFinal: 0, FxValue: 0}, -} /* sqlite3.c:191126:5 */ +} /* sqlite3.c:191138:5 */ var aMod = [2]struct { FzName uintptr FpModule uintptr }{ {FzName: ts + 23295 /* "json_each" */, FpModule: 0}, {FzName: ts + 23305 /* "json_tree" */, FpModule: 0}, -} /* sqlite3.c:191136:5 */ -var enc int32 = ((SQLITE_UTF8 | SQLITE_DETERMINISTIC) | SQLITE_INNOCUOUS) /* sqlite3.c:191141:20 */ // In the SQLite core +} /* sqlite3.c:191148:5 */ +var enc int32 = ((SQLITE_UTF8 | SQLITE_DETERMINISTIC) | SQLITE_INNOCUOUS) /* sqlite3.c:191153:20 */ // In the SQLite core // #include // #include @@ -164847,7 +164895,7 @@ type Rtree1 = struct { FpDeleteParent uintptr FpWriteAux uintptr FaHash [97]uintptr -} /* sqlite3.c:191277:9 */ +} /* sqlite3.c:191289:9 */ // In the SQLite core @@ -164858,7 +164906,7 @@ type Rtree1 = struct { // The following macro is used to suppress compiler warnings. -type Rtree = Rtree1 /* sqlite3.c:191277:22 */ +type Rtree = Rtree1 /* sqlite3.c:191289:22 */ type RtreeCursor1 = struct { Fbase Sqlite3_vtab_cursor FatEOF U8 @@ -164879,9 +164927,9 @@ type RtreeCursor1 = struct { FaNode [5]uintptr FanQueue [41]U32 _ [4]byte -} /* sqlite3.c:191278:9 */ +} /* sqlite3.c:191290:9 */ -type RtreeCursor = RtreeCursor1 /* sqlite3.c:191278:28 */ +type RtreeCursor = RtreeCursor1 /* sqlite3.c:191290:28 */ type RtreeNode1 = struct { FpParent uintptr FiNode I64 @@ -164889,23 +164937,23 @@ type RtreeNode1 = struct { FisDirty int32 FzData uintptr FpNext uintptr -} /* sqlite3.c:191277:9 */ +} /* sqlite3.c:191289:9 */ -type RtreeNode = RtreeNode1 /* sqlite3.c:191279:26 */ +type RtreeNode = RtreeNode1 /* sqlite3.c:191291:26 */ type RtreeCell1 = struct { FiRowid I64 FaCoord [10]RtreeCoord -} /* sqlite3.c:191280:9 */ +} /* sqlite3.c:191292:9 */ -type RtreeCell = RtreeCell1 /* sqlite3.c:191280:26 */ +type RtreeCell = RtreeCell1 /* sqlite3.c:191292:26 */ type RtreeConstraint1 = struct { FiCoord int32 Fop int32 Fu struct{ FrValue RtreeDValue } FpInfo uintptr -} /* sqlite3.c:191278:9 */ +} /* sqlite3.c:191290:9 */ -type RtreeConstraint = RtreeConstraint1 /* sqlite3.c:191281:32 */ +type RtreeConstraint = RtreeConstraint1 /* sqlite3.c:191293:32 */ type RtreeMatchArg1 = struct { FiSize U32 _ [4]byte @@ -164914,20 +164962,20 @@ type RtreeMatchArg1 = struct { _ [4]byte FapSqlParam uintptr FaParam [1]RtreeDValue -} /* sqlite3.c:191282:9 */ +} /* sqlite3.c:191294:9 */ -type RtreeMatchArg = RtreeMatchArg1 /* sqlite3.c:191282:30 */ +type RtreeMatchArg = RtreeMatchArg1 /* sqlite3.c:191294:30 */ type RtreeGeomCallback1 = struct { FxGeom uintptr FxQueryFunc uintptr FxDestructor uintptr FpContext uintptr -} /* sqlite3.c:191282:9 */ +} /* sqlite3.c:191294:9 */ -type RtreeGeomCallback = RtreeGeomCallback1 /* sqlite3.c:191283:34 */ -type RtreeCoord1 = struct{ Ff RtreeValue } /* sqlite3.c:191280:9 */ +type RtreeGeomCallback = RtreeGeomCallback1 /* sqlite3.c:191295:34 */ +type RtreeCoord1 = struct{ Ff RtreeValue } /* sqlite3.c:191292:9 */ -type RtreeCoord = RtreeCoord1 /* sqlite3.c:191284:26 */ +type RtreeCoord = RtreeCoord1 /* sqlite3.c:191296:26 */ type RtreeSearchPoint1 = struct { FrScore RtreeDValue Fid Sqlite3_int64 @@ -164935,17 +164983,17 @@ type RtreeSearchPoint1 = struct { FeWithin U8 FiCell U8 _ [5]byte -} /* sqlite3.c:191278:9 */ +} /* sqlite3.c:191290:9 */ -type RtreeSearchPoint = RtreeSearchPoint1 /* sqlite3.c:191285:33 */ +type RtreeSearchPoint = RtreeSearchPoint1 /* sqlite3.c:191297:33 */ // Possible values for Rtree.eCoordType: // If SQLITE_RTREE_INT_ONLY is defined, then this virtual table will // only deal with integer coordinates. No floating point operations // will be done. -type RtreeDValue = float64 /* sqlite3.c:191380:18 */ // High accuracy coordinate -type RtreeValue = float32 /* sqlite3.c:191381:17 */ +type RtreeDValue = float64 /* sqlite3.c:191392:18 */ // High accuracy coordinate +type RtreeValue = float32 /* sqlite3.c:191393:17 */ // What version of GCC is being used. 0 means GCC is not being used . // Note that the GCC_VERSION macro will also be set correctly when using @@ -164971,16 +165019,16 @@ type RtreeValue = float32 /* sqlite3.c:191381:17 */ // Functions to deserialize a 16 bit integer, 32 bit real number and // 64 bit integer. The deserialized value is returned. -func readInt16(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:191660:12: */ +func readInt16(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:191672:12: */ return ((int32(*(*U8)(unsafe.Pointer(p))) << 8) + int32(*(*U8)(unsafe.Pointer(p + 1)))) } -func readCoord(tls *libc.TLS, p uintptr, pCoord uintptr) { /* sqlite3.c:191663:13: */ +func readCoord(tls *libc.TLS, p uintptr, pCoord uintptr) { /* sqlite3.c:191675:13: */ // p is always 4-byte aligned (*(*U32)(unsafe.Pointer(pCoord /* .Fu */))) = libc.X__builtin_bswap32(tls, *(*U32)(unsafe.Pointer(p))) } -func readInt64(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:191680:12: */ +func readInt64(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:191692:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -164993,12 +165041,12 @@ func readInt64(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:191680:12: */ // Functions to serialize a 16 bit integer, 32 bit real number and // 64 bit integer. The value returned is the number of bytes written // to the argument buffer (always 2, 4 and 8 respectively). -func writeInt16(tls *libc.TLS, p uintptr, i int32) { /* sqlite3.c:191712:13: */ +func writeInt16(tls *libc.TLS, p uintptr, i int32) { /* sqlite3.c:191724:13: */ *(*U8)(unsafe.Pointer(p)) = (U8((i >> 8) & 0xFF)) *(*U8)(unsafe.Pointer(p + 1)) = (U8((i >> 0) & 0xFF)) } -func writeCoord(tls *libc.TLS, p uintptr, pCoord uintptr) int32 { /* sqlite3.c:191716:12: */ +func writeCoord(tls *libc.TLS, p uintptr, pCoord uintptr) int32 { /* sqlite3.c:191728:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -165011,7 +165059,7 @@ func writeCoord(tls *libc.TLS, p uintptr, pCoord uintptr) int32 { /* sqlite3.c:1 return 4 } -func writeInt64(tls *libc.TLS, p uintptr, i I64) int32 { /* sqlite3.c:191739:12: */ +func writeInt64(tls *libc.TLS, p uintptr, i I64) int32 { /* sqlite3.c:191751:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*I64)(unsafe.Pointer(bp)) = i @@ -165022,7 +165070,7 @@ func writeInt64(tls *libc.TLS, p uintptr, i I64) int32 { /* sqlite3.c:191739:12: } // Increment the reference count of node p. -func nodeReference(tls *libc.TLS, p uintptr) { /* sqlite3.c:191764:13: */ +func nodeReference(tls *libc.TLS, p uintptr) { /* sqlite3.c:191776:13: */ if p != 0 { (*RtreeNode)(unsafe.Pointer(p)).FnRef++ @@ -165030,20 +165078,20 @@ func nodeReference(tls *libc.TLS, p uintptr) { /* sqlite3.c:191764:13: */ } // Clear the content of node p (set all bytes to 0x00). -func nodeZero(tls *libc.TLS, pRtree uintptr, p uintptr) { /* sqlite3.c:191774:13: */ +func nodeZero(tls *libc.TLS, pRtree uintptr, p uintptr) { /* sqlite3.c:191786:13: */ libc.X__builtin___memset_chk(tls, ((*RtreeNode)(unsafe.Pointer(p)).FzData + 2), 0, (uint64((*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize - 2)), libc.X__builtin_object_size(tls, ((*RtreeNode)(unsafe.Pointer(p)).FzData+2), 0)) (*RtreeNode)(unsafe.Pointer(p)).FisDirty = 1 } // Given a node number iNode, return the corresponding key to use // in the Rtree.aHash table. -func nodeHash(tls *libc.TLS, iNode I64) uint32 { /* sqlite3.c:191783:21: */ +func nodeHash(tls *libc.TLS, iNode I64) uint32 { /* sqlite3.c:191795:21: */ return ((uint32(iNode)) % uint32(HASHSIZE)) } // Search the node hash table for node iNode. If found, return a pointer // to it. Otherwise, return 0. -func nodeHashLookup(tls *libc.TLS, pRtree uintptr, iNode I64) uintptr { /* sqlite3.c:191791:18: */ +func nodeHashLookup(tls *libc.TLS, pRtree uintptr, iNode I64) uintptr { /* sqlite3.c:191803:18: */ var p uintptr for p = *(*uintptr)(unsafe.Pointer((pRtree + 192 /* &.aHash */) + uintptr(nodeHash(tls, iNode))*8)); (p != 0) && ((*RtreeNode)(unsafe.Pointer(p)).FiNode != iNode); p = (*RtreeNode)(unsafe.Pointer(p)).FpNext { } @@ -165051,7 +165099,7 @@ func nodeHashLookup(tls *libc.TLS, pRtree uintptr, iNode I64) uintptr { /* sqlit } // Add node pNode to the node hash table. -func nodeHashInsert(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191800:13: */ +func nodeHashInsert(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191812:13: */ var iHash int32 iHash = int32(nodeHash(tls, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode)) @@ -165060,7 +165108,7 @@ func nodeHashInsert(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c } // Remove node pNode from the node hash table. -func nodeHashDelete(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191811:13: */ +func nodeHashDelete(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191823:13: */ var pp uintptr if (*RtreeNode)(unsafe.Pointer(pNode)).FiNode != int64(0) { pp = ((pRtree + 192 /* &.aHash */) + uintptr(nodeHash(tls, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode))*8) @@ -165075,7 +165123,7 @@ func nodeHashDelete(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c // indicating that node has not yet been assigned a node number. It is // assigned a node number when nodeWrite() is called to write the // node contents out to the database. -func nodeNew(tls *libc.TLS, pRtree uintptr, pParent uintptr) uintptr { /* sqlite3.c:191827:18: */ +func nodeNew(tls *libc.TLS, pRtree uintptr, pParent uintptr) uintptr { /* sqlite3.c:191839:18: */ var pNode uintptr pNode = Xsqlite3_malloc64(tls, (uint64(uint64(unsafe.Sizeof(RtreeNode{})) + uint64((*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize)))) if pNode != 0 { @@ -165091,7 +165139,7 @@ func nodeNew(tls *libc.TLS, pRtree uintptr, pParent uintptr) uintptr { /* sqlite } // Clear the Rtree.pNodeBlob object -func nodeBlobReset(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:191845:13: */ +func nodeBlobReset(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:191857:13: */ if (((*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob != 0) && (int32((*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans) == 0)) && ((*Rtree)(unsafe.Pointer(pRtree)).FnCursor == U32(0)) { var pBlob uintptr = (*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob (*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob = uintptr(0) @@ -165101,7 +165149,7 @@ func nodeBlobReset(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:191845:13: */ // Check to see if pNode is the same as pParent or any of the parents // of pParent. -func nodeInParentChain(tls *libc.TLS, pNode uintptr, pParent uintptr) int32 { /* sqlite3.c:191857:12: */ +func nodeInParentChain(tls *libc.TLS, pNode uintptr, pParent uintptr) int32 { /* sqlite3.c:191869:12: */ for ok := true; ok; ok = pParent != 0 { if pNode == pParent { return 1 @@ -165112,7 +165160,7 @@ func nodeInParentChain(tls *libc.TLS, pNode uintptr, pParent uintptr) int32 { /* } // Obtain a reference to an r-tree node. -func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNode uintptr) int32 { /* sqlite3.c:191868:12: */ +func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNode uintptr) int32 { /* sqlite3.c:191880:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -165229,7 +165277,7 @@ func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNo } // Overwrite cell iCell of node pNode with the contents of pCell. -func nodeOverwriteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iCell int32) { /* sqlite3.c:191988:13: */ +func nodeOverwriteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iCell int32) { /* sqlite3.c:192000:13: */ var ii int32 var p uintptr = ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr((4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell)))) p += uintptr(writeInt64(tls, p, (*RtreeCell)(unsafe.Pointer(pCell)).FiRowid)) @@ -165240,7 +165288,7 @@ func nodeOverwriteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintp } // Remove the cell with index iCell from node pNode. -func nodeDeleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) { /* sqlite3.c:192006:13: */ +func nodeDeleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) { /* sqlite3.c:192018:13: */ var pDst uintptr = ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr((4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell)))) var pSrc uintptr = (pDst + uintptr((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell)) var nByte int32 = (((readInt16(tls, ((*RtreeNode)(unsafe.Pointer((pNode))).FzData+2)) - iCell) - 1) * int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell)) @@ -165253,7 +165301,7 @@ func nodeDeleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) { // is successful, return SQLITE_OK. // // If there is not enough free space in pNode, return SQLITE_FULL. -func nodeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:192021:12: */ +func nodeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:192033:12: */ var nCell int32 // Current number of cells in pNode var nMaxCell int32 // Maximum number of cells for pNode @@ -165270,7 +165318,7 @@ func nodeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) } // If the node is dirty, write it out to the database. -func nodeWrite(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192045:12: */ +func nodeWrite(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192057:12: */ var rc int32 = SQLITE_OK if (*RtreeNode)(unsafe.Pointer(pNode)).FisDirty != 0 { var p uintptr = (*Rtree)(unsafe.Pointer(pRtree)).FpWriteNode @@ -165294,7 +165342,7 @@ func nodeWrite(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3. // Release a reference to a node. If the node is dirty and the reference // count drops to zero, the node data is written to the database. -func nodeRelease(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192071:12: */ +func nodeRelease(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192083:12: */ var rc int32 = SQLITE_OK if pNode != 0 { @@ -165320,19 +165368,19 @@ func nodeRelease(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite // Return the 64-bit integer value associated with cell iCell of // node pNode. If pNode is a leaf node, this is a rowid. If it is // an internal node, then the 64-bit integer is a child page number. -func nodeGetRowid(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) I64 { /* sqlite3.c:192100:12: */ +func nodeGetRowid(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) I64 { /* sqlite3.c:192112:12: */ return readInt64(tls, ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr((4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell))))) } // Return coordinate iCoord from cell iCell in node pNode. -func nodeGetCoord(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iCoord int32, pCoord uintptr) { /* sqlite3.c:192112:13: */ +func nodeGetCoord(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iCoord int32, pCoord uintptr) { /* sqlite3.c:192124:13: */ readCoord(tls, ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr(((12 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell)) + (4 * iCoord)))), pCoord) } // Deserialize cell iCell of node pNode. Populate the structure pointed // to by pCell with the results. -func nodeGetCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, pCell uintptr) { /* sqlite3.c:192126:13: */ +func nodeGetCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, pCell uintptr) { /* sqlite3.c:192138:13: */ var pData uintptr var pCoord uintptr var ii int32 = 0 @@ -165348,23 +165396,23 @@ func nodeGetCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, pCel } // Rtree virtual table module xCreate method. -func rtreeCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192157:12: */ +func rtreeCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192169:12: */ return rtreeInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 1) } // Rtree virtual table module xConnect method. -func rtreeConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192170:12: */ +func rtreeConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192182:12: */ return rtreeInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 0) } // Increment the r-tree reference count. -func rtreeReference(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192183:13: */ +func rtreeReference(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192195:13: */ (*Rtree)(unsafe.Pointer(pRtree)).FnBusy++ } // Decrement the r-tree reference count. When the reference count reaches // zero the structure is deleted. -func rtreeRelease(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192191:13: */ +func rtreeRelease(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192203:13: */ (*Rtree)(unsafe.Pointer(pRtree)).FnBusy-- if (*Rtree)(unsafe.Pointer(pRtree)).FnBusy == U32(0) { (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans = U8(0) @@ -165386,13 +165434,13 @@ func rtreeRelease(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192191:13: */ } // Rtree virtual table module xDisconnect method. -func rtreeDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192215:12: */ +func rtreeDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192227:12: */ rtreeRelease(tls, pVtab) return SQLITE_OK } // Rtree virtual table module xDestroy method. -func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192223:12: */ +func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192235:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -165419,7 +165467,7 @@ func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192223:12: } // Rtree virtual table module xOpen method. -func rtreeOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:192251:12: */ +func rtreeOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:192263:12: */ var rc int32 = SQLITE_NOMEM var pRtree uintptr = pVTab var pCsr uintptr @@ -165437,7 +165485,7 @@ func rtreeOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite } // Reset a cursor back to its initial state. -func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:192272:13: */ +func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:192284:13: */ var pRtree uintptr = (*RtreeCursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab var ii int32 var pStmt uintptr @@ -165467,7 +165515,7 @@ func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:192272:13: */ } // Rtree virtual table module xClose method. -func rtreeClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192300:12: */ +func rtreeClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192312:12: */ var pRtree uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab var pCsr uintptr = cur @@ -165483,7 +165531,7 @@ func rtreeClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192300:12: */ // // Return non-zero if the cursor does not currently point to a valid // record (i.e if the scan has finished), or zero otherwise. -func rtreeEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192318:12: */ +func rtreeEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192330:12: */ var pCsr uintptr = cur return int32((*RtreeCursor)(unsafe.Pointer(pCsr)).FatEOF) } @@ -165500,7 +165548,7 @@ func rtreeEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192318:12: */ // Check the RTree node or entry given by pCellData and p against the MATCH // constraint pConstraint. -func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCellData uintptr, pSearch uintptr, prScore uintptr, peWithin uintptr) int32 { /* sqlite3.c:192373:12: */ +func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCellData uintptr, pSearch uintptr, prScore uintptr, peWithin uintptr) int32 { /* sqlite3.c:192385:12: */ bp := tls.Alloc(92) defer tls.Free(92) @@ -165608,7 +165656,7 @@ func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCe // Check the internal RTree node given by pCellData against constraint p. // If this constraint cannot be satisfied by any child within the node, // set *peWithin to NOT_WITHIN. -func rtreeNonleafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192449:13: */ +func rtreeNonleafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192461:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -165679,7 +165727,7 @@ func rtreeNonleafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uint // // The op is given by p->op. The xN is p->iCoord-th coordinate in // pCellData. $val is given by p->u.rValue. -func rtreeLeafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192497:13: */ +func rtreeLeafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192509:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -165734,7 +165782,7 @@ func rtreeLeafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr // One of the cells in node pNode is guaranteed to have a 64-bit // integer value equal to iRowid. Return the index of this cell. -func nodeRowidIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, iRowid I64, piIndex uintptr) int32 { /* sqlite3.c:192527:12: */ +func nodeRowidIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, iRowid I64, piIndex uintptr) int32 { /* sqlite3.c:192539:12: */ var ii int32 var nCell int32 = readInt16(tls, ((*RtreeNode)(unsafe.Pointer((pNode))).FzData + 2)) @@ -165750,7 +165798,7 @@ func nodeRowidIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, iRowid I64, pi // Return the index of the cell containing a pointer to node pNode // in its parent. If pNode is the root node, return -1. -func nodeParentIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, piIndex uintptr) int32 { /* sqlite3.c:192550:12: */ +func nodeParentIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, piIndex uintptr) int32 { /* sqlite3.c:192562:12: */ var pParent uintptr = (*RtreeNode)(unsafe.Pointer(pNode)).FpParent if pParent != 0 { return nodeRowidIndex(tls, pRtree, pParent, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode, piIndex) @@ -165767,7 +165815,7 @@ func nodeParentIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, piIndex uintp // iLevel values coming first. In this way, if rScore is the same for all // SearchPoints, then iLevel becomes the deciding factor and the result // is a depth-first search, which is the desired default behavior. -func rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) int32 { /* sqlite3.c:192569:12: */ +func rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) int32 { /* sqlite3.c:192581:12: */ if (*RtreeSearchPoint)(unsafe.Pointer(pA)).FrScore < (*RtreeSearchPoint)(unsafe.Pointer(pB)).FrScore { return -1 } @@ -165784,7 +165832,7 @@ func rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) int32 { /* s } // Interchange two search points in a cursor. -func rtreeSearchPointSwap(tls *libc.TLS, p uintptr, i int32, j int32) { /* sqlite3.c:192583:13: */ +func rtreeSearchPointSwap(tls *libc.TLS, p uintptr, i int32, j int32) { /* sqlite3.c:192595:13: */ var t = *(*RtreeSearchPoint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(p)).FaPoint + uintptr(i)*24)) *(*RtreeSearchPoint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(p)).FaPoint + uintptr(i)*24)) = *(*RtreeSearchPoint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(p)).FaPoint + uintptr(j)*24)) @@ -165804,7 +165852,7 @@ func rtreeSearchPointSwap(tls *libc.TLS, p uintptr, i int32, j int32) { /* sqlit } // Return the search point with the lowest current score. -func rtreeSearchPointFirst(tls *libc.TLS, pCur uintptr) uintptr { /* sqlite3.c:192604:25: */ +func rtreeSearchPointFirst(tls *libc.TLS, pCur uintptr) uintptr { /* sqlite3.c:192616:25: */ if (*RtreeCursor)(unsafe.Pointer(pCur)).FbPoint != 0 { return (pCur + 64 /* &.sPoint */) } @@ -165815,7 +165863,7 @@ func rtreeSearchPointFirst(tls *libc.TLS, pCur uintptr) uintptr { /* sqlite3.c:1 } // Get the RtreeNode for the search point with the lowest score. -func rtreeNodeOfFirstSearchPoint(tls *libc.TLS, pCur uintptr, pRC uintptr) uintptr { /* sqlite3.c:192611:18: */ +func rtreeNodeOfFirstSearchPoint(tls *libc.TLS, pCur uintptr, pRC uintptr) uintptr { /* sqlite3.c:192623:18: */ var id Sqlite3_int64 var ii int32 = (1 - int32((*RtreeCursor)(unsafe.Pointer(pCur)).FbPoint)) @@ -165832,7 +165880,7 @@ func rtreeNodeOfFirstSearchPoint(tls *libc.TLS, pCur uintptr, pRC uintptr) uintp } // Push a new element onto the priority queue -func rtreeEnqueue(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192627:25: */ +func rtreeEnqueue(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192639:25: */ var i int32 var j int32 var pNew uintptr @@ -165866,7 +165914,7 @@ func rtreeEnqueue(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) ui // Allocate a new RtreeSearchPoint and return a pointer to it. Return // NULL if malloc fails. -func rtreeSearchPointNew(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192662:25: */ +func rtreeSearchPointNew(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192674:25: */ var pNew uintptr var pFirst uintptr pFirst = rtreeSearchPointFirst(tls, pCur) @@ -165901,7 +165949,7 @@ func rtreeSearchPointNew(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel } // Remove the search point with the lowest current score. -func rtreeSearchPointPop(tls *libc.TLS, p uintptr) { /* sqlite3.c:192729:13: */ +func rtreeSearchPointPop(tls *libc.TLS, p uintptr) { /* sqlite3.c:192741:13: */ var i int32 var j int32 var k int32 @@ -165949,7 +165997,7 @@ func rtreeSearchPointPop(tls *libc.TLS, p uintptr) { /* sqlite3.c:192729:13: */ // contains an entry suitable for returning as a result-set row, // or until the RtreeSearchPoint queue is empty, indicating that the // query has completed. -func rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) int32 { /* sqlite3.c:192777:12: */ +func rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) int32 { /* sqlite3.c:192789:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -166042,7 +166090,7 @@ func rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) int32 { /* sqlite3.c:192777:12 } // Rtree virtual table module xNext method. -func rtreeNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:192858:12: */ +func rtreeNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:192870:12: */ var pCsr uintptr = pVtabCursor var rc int32 = SQLITE_OK @@ -166058,7 +166106,7 @@ func rtreeNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:192858:1 } // Rtree virtual table module xRowid method. -func rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:192876:12: */ +func rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:192888:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -166073,7 +166121,7 @@ func rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) int32 { /* s } // Rtree virtual table module xColumn method. -func rtreeColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:192890:12: */ +func rtreeColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:192902:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -166134,7 +166182,7 @@ func rtreeColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sq // return SQLITE_OK. If there is no such record in the table, set // *ppLeaf to 0 and return SQLITE_OK. If an error occurs, set *ppLeaf // to zero and return an SQLite error code. -func findLeafNode(tls *libc.TLS, pRtree uintptr, iRowid I64, ppLeaf uintptr, piNode uintptr) int32 { /* sqlite3.c:192944:12: */ +func findLeafNode(tls *libc.TLS, pRtree uintptr, iRowid I64, ppLeaf uintptr, piNode uintptr) int32 { /* sqlite3.c:192956:12: */ var rc int32 *(*uintptr)(unsafe.Pointer(ppLeaf)) = uintptr(0) Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpReadRowid, 1, iRowid) @@ -166155,7 +166203,7 @@ func findLeafNode(tls *libc.TLS, pRtree uintptr, iRowid I64, ppLeaf uintptr, piN // as the second argument for a MATCH constraint. The value passed as the // first argument to this function is the right-hand operand to the MATCH // operator. -func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { /* sqlite3.c:192970:12: */ +func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { /* sqlite3.c:192982:12: */ var pBlob uintptr var pSrc uintptr // BLOB returned by geometry function var pInfo uintptr // Callback information @@ -166187,7 +166235,7 @@ func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { / } // Rtree virtual table module xFilter method. -func rtreeFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:193000:12: */ +func rtreeFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:193012:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -166329,7 +166377,7 @@ func rtreeFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintpt // The second of each pair of bytes identifies the coordinate column // to which the constraint applies. The leftmost coordinate column // is 'a', the second from the left 'b' etc. -func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:193150:12: */ +func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:193162:12: */ bp := tls.Alloc(49) defer tls.Free(49) @@ -166436,7 +166484,7 @@ func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sql } // Return the N-dimensional volumn of the cell stored in *p. -func cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193239:20: */ +func cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193251:20: */ var area RtreeDValue = RtreeDValue(1) if int32((*Rtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { @@ -166479,7 +166527,7 @@ func cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3 // Return the margin length of cell p. The margin length is the sum // of the objects size in each dimension. -func cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193269:20: */ +func cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193281:20: */ var margin RtreeDValue = RtreeDValue(0) var ii int32 = (int32((*Rtree)(unsafe.Pointer(pRtree)).FnDim2) - 2) for ok := true; ok; ok = (ii >= 0) { @@ -166500,7 +166548,7 @@ func cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlit } // Store the union of cells p1 and p2 in p1. -func cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { /* sqlite3.c:193282:13: */ +func cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { /* sqlite3.c:193294:13: */ var ii int32 = 0 if int32((*Rtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { for ok := true; ok; ok = (ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnDim2)) { @@ -166539,7 +166587,7 @@ func cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { /* sqlit // Return true if the area covered by p2 is a subset of the area covered // by p1. False otherwise. -func cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:193303:12: */ +func cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:193315:12: */ var ii int32 var isInt int32 = (libc.Bool32(int32((*Rtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_INT32)) for ii = 0; ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnDim2); ii = ii + (2) { @@ -166554,7 +166602,7 @@ func cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) int32 { } // Return the amount cell p would grow by if it were unioned with pCell. -func cellGrowth(tls *libc.TLS, pRtree uintptr, p uintptr, pCell uintptr) RtreeDValue { /* sqlite3.c:193321:20: */ +func cellGrowth(tls *libc.TLS, pRtree uintptr, p uintptr, pCell uintptr) RtreeDValue { /* sqlite3.c:193333:20: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -166567,7 +166615,7 @@ func cellGrowth(tls *libc.TLS, pRtree uintptr, p uintptr, pCell uintptr) RtreeDV return (cellArea(tls, pRtree, bp /* &cell */) - area) } -func cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell int32) RtreeDValue { /* sqlite3.c:193330:20: */ +func cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell int32) RtreeDValue { /* sqlite3.c:193342:20: */ var ii int32 var overlap RtreeDValue = 0.0 for ii = 0; ii < nCell; ii++ { @@ -166642,7 +166690,7 @@ func cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell // This function implements the ChooseLeaf algorithm from Gutman[84]. // ChooseSubTree in r*tree terminology. -func sChooseLeaf(tls *libc.TLS, pRtree uintptr, pCell uintptr, iHeight int32, ppLeaf uintptr) int32 { /* sqlite3.c:193362:12: */ +func sChooseLeaf(tls *libc.TLS, pRtree uintptr, pCell uintptr, iHeight int32, ppLeaf uintptr) int32 { /* sqlite3.c:193374:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -166698,7 +166746,7 @@ func sChooseLeaf(tls *libc.TLS, pRtree uintptr, pCell uintptr, iHeight int32, pp // A cell with the same content as pCell has just been inserted into // the node pNode. This function updates the bounding box cells in // all ancestor elements. -func sAdjustTree(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:193422:12: */ +func sAdjustTree(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:193434:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -166727,7 +166775,7 @@ func sAdjustTree(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) in } // Write mapping (iRowid->iNode) to the _rowid table. -func rowidWrite(tls *libc.TLS, pRtree uintptr, iRowid Sqlite3_int64, iNode Sqlite3_int64) int32 { /* sqlite3.c:193453:12: */ +func rowidWrite(tls *libc.TLS, pRtree uintptr, iRowid Sqlite3_int64, iNode Sqlite3_int64) int32 { /* sqlite3.c:193465:12: */ Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 1, iRowid) Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 2, iNode) Xsqlite3_step(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid) @@ -166735,7 +166783,7 @@ func rowidWrite(tls *libc.TLS, pRtree uintptr, iRowid Sqlite3_int64, iNode Sqlit } // Write mapping (iNode->iPar) to the _parent table. -func parentWrite(tls *libc.TLS, pRtree uintptr, iNode Sqlite3_int64, iPar Sqlite3_int64) int32 { /* sqlite3.c:193463:12: */ +func parentWrite(tls *libc.TLS, pRtree uintptr, iNode Sqlite3_int64, iPar Sqlite3_int64) int32 { /* sqlite3.c:193475:12: */ Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteParent, 1, iNode) Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteParent, 2, iPar) Xsqlite3_step(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteParent) @@ -166757,7 +166805,7 @@ func parentWrite(tls *libc.TLS, pRtree uintptr, iNode Sqlite3_int64, iPar Sqlite // // The aSpare array is used as temporary working space by the // sorting algorithm. -func sSortByDistance(tls *libc.TLS, aIdx uintptr, nIdx int32, aDistance uintptr, aSpare uintptr) { /* sqlite3.c:193490:13: */ +func sSortByDistance(tls *libc.TLS, aIdx uintptr, nIdx int32, aDistance uintptr, aSpare uintptr) { /* sqlite3.c:193502:13: */ if nIdx > 1 { var iLeft int32 = 0 var iRight int32 = 0 @@ -166805,7 +166853,7 @@ func sSortByDistance(tls *libc.TLS, aIdx uintptr, nIdx int32, aDistance uintptr, // // The aSpare array is used as temporary working space by the // sorting algorithm. -func sSortByDimension(tls *libc.TLS, pRtree uintptr, aIdx uintptr, nIdx int32, iDim int32, aCell uintptr, aSpare uintptr) { /* sqlite3.c:193556:13: */ +func sSortByDimension(tls *libc.TLS, pRtree uintptr, aIdx uintptr, nIdx int32, iDim int32, aCell uintptr, aSpare uintptr) { /* sqlite3.c:193568:13: */ if nIdx > 1 { var iLeft int32 = 0 @@ -166861,7 +166909,7 @@ func sSortByDimension(tls *libc.TLS, pRtree uintptr, aIdx uintptr, nIdx int32, i } // Implementation of the R*-tree variant of SplitNode from Beckman[1990]. -func splitNodeStartree(tls *libc.TLS, pRtree uintptr, aCell uintptr, nCell int32, pLeft uintptr, pRight uintptr, pBboxLeft uintptr, pBboxRight uintptr) int32 { /* sqlite3.c:193615:12: */ +func splitNodeStartree(tls *libc.TLS, pRtree uintptr, aCell uintptr, nCell int32, pLeft uintptr, pRight uintptr, pBboxLeft uintptr, pBboxRight uintptr) int32 { /* sqlite3.c:193627:12: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -166960,7 +167008,7 @@ func splitNodeStartree(tls *libc.TLS, pRtree uintptr, aCell uintptr, nCell int32 return SQLITE_OK } -func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193713:12: */ +func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193725:12: */ var xSetMapping uintptr xSetMapping = func() uintptr { if iHeight == 0 { @@ -166983,7 +167031,7 @@ func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHe return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, Sqlite3_int64) int32)(unsafe.Pointer(&xSetMapping)))(tls, pRtree, iRowid, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode) } -func sSplitNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:193732:12: */ +func sSplitNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:193744:12: */ bp := tls.Alloc(100) defer tls.Free(100) @@ -167217,7 +167265,7 @@ splitnode_out: // rowid of the row to delete, which can be used to find the leaf on which // the entry resides (argument pLeaf). Once the leaf is located, this // function is called to determine its ancestry. -func fixLeafParent(tls *libc.TLS, pRtree uintptr, pLeaf uintptr) int32 { /* sqlite3.c:193879:12: */ +func fixLeafParent(tls *libc.TLS, pRtree uintptr, pLeaf uintptr) int32 { /* sqlite3.c:193891:12: */ var rc int32 = SQLITE_OK var pChild uintptr = pLeaf for ((rc == SQLITE_OK) && ((*RtreeNode)(unsafe.Pointer(pChild)).FiNode != int64(1))) && ((*RtreeNode)(unsafe.Pointer(pChild)).FpParent == uintptr(0)) { @@ -167252,7 +167300,7 @@ func fixLeafParent(tls *libc.TLS, pRtree uintptr, pLeaf uintptr) int32 { /* sqli return rc } -func removeNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193914:12: */ +func removeNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193926:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -167301,7 +167349,7 @@ func removeNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, iHeight int32) int return SQLITE_OK } -func fixBoundingBox(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:193963:12: */ +func fixBoundingBox(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:193975:12: */ bp := tls.Alloc(100) defer tls.Free(100) @@ -167332,7 +167380,7 @@ func fixBoundingBox(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sql // Delete the cell at index iCell of node pNode. After removing the // cell, adjust the r-tree data structure if required. -func deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeight int32) int32 { /* sqlite3.c:193990:12: */ +func deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeight int32) int32 { /* sqlite3.c:194002:12: */ var pParent uintptr var rc int32 @@ -167361,7 +167409,7 @@ func deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeig return rc } -func sReinsert(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194021:12: */ +func sReinsert(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194033:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -167476,7 +167524,7 @@ func sReinsert(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHei // Insert cell pCell into node pNode. Node pNode is the head of a // subtree iHeight high (leaf nodes have iHeight==0). -func rtreeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194126:12: */ +func rtreeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194138:12: */ var rc int32 = SQLITE_OK if iHeight > 0 { var pChild uintptr = nodeHashLookup(tls, pRtree, (*RtreeCell)(unsafe.Pointer(pCell)).FiRowid) @@ -167506,7 +167554,7 @@ func rtreeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr return rc } -func reinsertNodeContent(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:194161:12: */ +func reinsertNodeContent(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:194173:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -167537,7 +167585,7 @@ func reinsertNodeContent(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { / } // Select a currently unused rowid for a new r-tree record. -func rtreeNewRowid(tls *libc.TLS, pRtree uintptr, piRowid uintptr) int32 { /* sqlite3.c:194190:12: */ +func rtreeNewRowid(tls *libc.TLS, pRtree uintptr, piRowid uintptr) int32 { /* sqlite3.c:194202:12: */ var rc int32 Xsqlite3_bind_null(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 1) Xsqlite3_bind_null(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 2) @@ -167548,7 +167596,7 @@ func rtreeNewRowid(tls *libc.TLS, pRtree uintptr, piRowid uintptr) int32 { /* sq } // Remove the entry with rowid=iDelete from the r-tree structure. -func rtreeDeleteRowid(tls *libc.TLS, pRtree uintptr, iDelete Sqlite3_int64) int32 { /* sqlite3.c:194203:12: */ +func rtreeDeleteRowid(tls *libc.TLS, pRtree uintptr, iDelete Sqlite3_int64) int32 { /* sqlite3.c:194215:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -167637,7 +167685,7 @@ func rtreeDeleteRowid(tls *libc.TLS, pRtree uintptr, iDelete Sqlite3_int64) int3 // Convert an sqlite3_value into an RtreeValue (presumably a float) // while taking care to round toward negative or positive, respectively. -func rtreeValueDown(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194300:19: */ +func rtreeValueDown(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194312:19: */ var d float64 = Xsqlite3_value_double(tls, v) var f float32 = float32(d) if float64(f) > d { @@ -167651,7 +167699,7 @@ func rtreeValueDown(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194300:1 return f } -func rtreeValueUp(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194308:19: */ +func rtreeValueUp(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194320:19: */ var d float64 = Xsqlite3_value_double(tls, v) var f float32 = float32(d) if float64(f) < d { @@ -167676,7 +167724,7 @@ func rtreeValueUp(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194308:19: // (c1<=c2) constraint on columns iCol and iCol+1 that has failed. // // If an OOM occurs, SQLITE_NOMEM is returned instead of SQLITE_CONSTRAINT. -func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* sqlite3.c:194331:12: */ +func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* sqlite3.c:194343:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -167715,7 +167763,7 @@ func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* } // The xUpdate method for rtree module virtual tables. -func rtreeUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:194369:12: */ +func rtreeUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:194381:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -167944,7 +167992,7 @@ constraint: } // Called when a transaction starts. -func rtreeBeginTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194517:12: */ +func rtreeBeginTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194529:12: */ var pRtree uintptr = pVtab (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans++ @@ -167953,7 +168001,7 @@ func rtreeBeginTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:19 // Called when a transaction completes (either by COMMIT or ROLLBACK). // The sqlite3_blob object should be released at this point. -func rtreeEndTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194528:12: */ +func rtreeEndTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194540:12: */ var pRtree uintptr = pVtab (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans = U8(0) nodeBlobReset(tls, pRtree) @@ -167961,7 +168009,7 @@ func rtreeEndTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:1945 } // The xRename method for rtree module virtual tables. -func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqlite3.c:194538:12: */ +func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqlite3.c:194550:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -167990,7 +168038,7 @@ func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqli // INSERT INTO rtree... // DROP TABLE ; -- Would fail with SQLITE_LOCKED // COMMIT; -func rtreeSavepoint(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:194571:12: */ +func rtreeSavepoint(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:194583:12: */ var pRtree uintptr = pVtab var iwt U8 = (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans _ = iSavepoint @@ -168003,7 +168051,7 @@ func rtreeSavepoint(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* s // This function populates the pRtree->nRowEst variable with an estimate // of the number of rows in the virtual table. If possible, this is based // on sqlite_stat1 data. Otherwise, use RTREE_DEFAULT_ROWEST. -func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlite3.c:194586:12: */ +func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlite3.c:194598:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -168057,7 +168105,7 @@ func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlit // Return true if zName is the extension on one of the shadow tables used // by this module. -func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:194630:12: */ +func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:194642:12: */ var i uint32 for i = uint32(0); uint64(i) < (uint64(unsafe.Sizeof(azName1)) / uint64(unsafe.Sizeof(uintptr(0)))); i++ { if Xsqlite3_stricmp(tls, zName, azName1[i]) == 0 { @@ -168069,7 +168117,7 @@ func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:194630:1 var azName1 = [3]uintptr{ ts + 23714 /* "node" */, ts + 4463 /* "parent" */, ts + 14725, /* "rowid" */ -} /* sqlite3.c:194631:21 */ +} /* sqlite3.c:194643:21 */ var rtreeModule = Sqlite3_module{ FiVersion: 3, // iVersion @@ -168093,9 +168141,9 @@ var rtreeModule = Sqlite3_module{ FxRename: 0, // xRename - rename the table FxSavepoint: 0, // xRollbackTo FxShadowName: 0, // xShadowName -} /* sqlite3.c:194641:23 */ +} /* sqlite3.c:194653:23 */ -func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefix uintptr, isCreate int32) int32 { /* sqlite3.c:194668:12: */ +func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefix uintptr, isCreate int32) int32 { /* sqlite3.c:194680:12: */ bp := tls.Alloc(232) defer tls.Free(232) @@ -168214,14 +168262,14 @@ var azSql = [8]uintptr{ ts + 24444, /* "SELECT parentnod..." */ ts + 24502, /* "INSERT OR REPLAC..." */ ts + 24557, /* "DELETE FROM '%q'..." */ -} /* sqlite3.c:194678:21 */ +} /* sqlite3.c:194690:21 */ // The second argument to this function contains the text of an SQL statement // that returns a single integer value. The statement is compiled and executed // using database connection db. If successful, the integer value returned // is written to *piVal and SQLITE_OK returned. Otherwise, an SQLite error // code is returned and the value of *piVal after returning is not defined. -func getIntFromStmt(tls *libc.TLS, db uintptr, zSql uintptr, piVal uintptr) int32 { /* sqlite3.c:194798:12: */ +func getIntFromStmt(tls *libc.TLS, db uintptr, zSql uintptr, piVal uintptr) int32 { /* sqlite3.c:194810:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -168252,7 +168300,7 @@ func getIntFromStmt(tls *libc.TLS, db uintptr, zSql uintptr, piVal uintptr) int3 // This ensures that each node is stored on a single database page. If the // database page-size is so large that more than RTREE_MAXCELLS entries // would fit in a single node, use a smaller node-size. -func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzErr uintptr) int32 { /* sqlite3.c:194828:12: */ +func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzErr uintptr) int32 { /* sqlite3.c:194840:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -168290,7 +168338,7 @@ func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzEr } // Return the length of a token -func rtreeTokenLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:194871:12: */ +func rtreeTokenLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:194883:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -168305,7 +168353,7 @@ func rtreeTokenLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:194871:12: // argv[1] -> database name // argv[2] -> table name // argv[...] -> column names... -func rtreeInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:194885:12: */ +func rtreeInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:194897:12: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -168505,7 +168553,7 @@ __25: return rc } -var azFormat = [2]uintptr{ts + 24900 /* ",%.*s REAL" */, ts + 24911 /* ",%.*s INT" */} /* sqlite3.c:194951:25 */ +var azFormat = [2]uintptr{ts + 24900 /* ",%.*s REAL" */, ts + 24911 /* ",%.*s INT" */} /* sqlite3.c:194963:25 */ // Implementation of a scalar function that decodes r-tree nodes to // human readable strings. This can be used for debugging and analysis. @@ -168521,7 +168569,7 @@ var azFormat = [2]uintptr{ts + 24900 /* ",%.*s REAL" */, ts + 24911 /* ",%.*s IN // entry for each cell in the r-tree node. Each entry is itself a // list, containing the 8-byte rowid/pageno followed by the // *2 coordinates. -func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195022:13: */ +func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195034:13: */ bp := tls.Alloc(1072) defer tls.Free(1072) @@ -168581,7 +168629,7 @@ func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlit // The depth value is 0 for all nodes other than the root node, and the root // node always has nodeno=1, so the example above is the primary use for this // routine. This routine is intended for testing and analysis only. -func rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195073:13: */ +func rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195085:13: */ _ = nArg if (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(apArg))) != SQLITE_BLOB) || (Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(apArg))) < 2) { @@ -168609,15 +168657,15 @@ type RtreeCheck1 = struct { FzReport uintptr FnErr int32 _ [4]byte -} /* sqlite3.c:195089:9 */ +} /* sqlite3.c:195101:9 */ // Context object passed between the various routines that make up the // implementation of integrity-check function rtreecheck(). -type RtreeCheck = RtreeCheck1 /* sqlite3.c:195089:27 */ +type RtreeCheck = RtreeCheck1 /* sqlite3.c:195101:27 */ // Reset SQL statement pStmt. If the sqlite3_reset() call returns an error, // and RtreeCheck.rc==SQLITE_OK, set RtreeCheck.rc to the error code. -func rtreeCheckReset(tls *libc.TLS, pCheck uintptr, pStmt uintptr) { /* sqlite3.c:195111:13: */ +func rtreeCheckReset(tls *libc.TLS, pCheck uintptr, pStmt uintptr) { /* sqlite3.c:195123:13: */ var rc int32 = Xsqlite3_reset(tls, pStmt) if (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK { (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = rc @@ -168630,7 +168678,7 @@ func rtreeCheckReset(tls *libc.TLS, pCheck uintptr, pStmt uintptr) { /* sqlite3. // // If successful, a pointer to the new SQL statement is returned. Otherwise, // NULL is returned and an error code left in RtreeCheck.rc. -func rtreeCheckPrepare(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:195124:21: */ +func rtreeCheckPrepare(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:195136:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -168658,7 +168706,7 @@ func rtreeCheckPrepare(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) // The second and subsequent arguments to this function are a printf() // style format string and arguments. This function formats the string and // appends it to the report being accumuated in pCheck. -func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:195153:13: */ +func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:195165:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -168698,7 +168746,7 @@ func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr // Or, if an error does occur, NULL is returned and an error code left // in the RtreeCheck object. The final value of *pnNode is undefined in // this case. -func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) uintptr { /* sqlite3.c:195187:11: */ +func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) uintptr { /* sqlite3.c:195199:11: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -168742,7 +168790,7 @@ func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) // In both cases, this function checks that there exists an entry with // IPK value iKey and the second column set to iVal. // -func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVal I64) { /* sqlite3.c:195231:13: */ +func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVal I64) { /* sqlite3.c:195243:13: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -168798,7 +168846,7 @@ func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVa // containing pCell. In this case it is also verified that the two // sets of coordinates are mutually consistent and an error message added // to the RtreeCheck object if they are not. -func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, pCell uintptr, pParent uintptr) { /* sqlite3.c:195283:13: */ +func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, pCell uintptr, pParent uintptr) { /* sqlite3.c:195295:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -168856,7 +168904,7 @@ func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, // // If any problems are discovered, an error message is appended to the // report accumulated in the RtreeCheck object. -func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr, iNode I64) { /* sqlite3.c:195329:13: */ +func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr, iNode I64) { /* sqlite3.c:195341:13: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -168910,7 +168958,7 @@ func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr // %_rowid or %_parent table is exactly nExpect. If not, it adds // an error message to the report in the RtreeCheck object indicated // by the first argument. -func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { /* sqlite3.c:195392:13: */ +func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { /* sqlite3.c:195404:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -168933,7 +168981,7 @@ func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { // This function does the bulk of the work for the rtree integrity-check. // It is called by rtreecheck(), which is the SQL function implementation. -func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzReport uintptr) int32 { /* sqlite3.c:195416:12: */ +func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzReport uintptr) int32 { /* sqlite3.c:195428:12: */ bp := tls.Alloc(120) defer tls.Free(120) @@ -169039,7 +169087,7 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep // as there are non-leaf cells in the r-tree structure, and that // there is a non-leaf cell that corresponds to each entry in the // %_parent table. -func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195521:13: */ +func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195533:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -169098,7 +169146,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli // Compiler and version // Datatype for coordinates -type GeoCoord = float32 /* sqlite3.c:195645:15 */ +type GeoCoord = float32 /* sqlite3.c:195657:15 */ // Internal representation of a polygon. // @@ -169124,7 +169172,7 @@ type GeoPoly1 = struct { FnVertex int32 Fhdr [4]uint8 Fa [8]GeoCoord -} /* sqlite3.c:195669:9 */ +} /* sqlite3.c:195681:9 */ // Internal representation of a polygon. // @@ -169146,7 +169194,7 @@ type GeoPoly1 = struct { // warnings coming from some compiler (notably, clang). In reality, the size // of each GeoPoly memory allocate is adjusted as necessary so that the // GeoPoly.a[] array at the end is the appropriate size. -type GeoPoly = GeoPoly1 /* sqlite3.c:195669:24 */ +type GeoPoly = GeoPoly1 /* sqlite3.c:195681:24 */ // The size of a memory allocation needed for a GeoPoly object sufficient // to hold N coordinate pairs. @@ -169163,7 +169211,7 @@ type GeoParse1 = struct { FnErr int32 _ [4]byte Fa uintptr -} /* sqlite3.c:195692:9 */ +} /* sqlite3.c:195704:9 */ // The size of a memory allocation needed for a GeoPoly object sufficient // to hold N coordinate pairs. @@ -169173,10 +169221,10 @@ type GeoParse1 = struct { // to silence (incorrect) UBSAN warnings if the array index is too large. // State of a parse of a GeoJSON input. -type GeoParse = GeoParse1 /* sqlite3.c:195692:25 */ +type GeoParse = GeoParse1 /* sqlite3.c:195704:25 */ // Do a 4-byte byte swap -func geopolySwab32(tls *libc.TLS, a uintptr) { /* sqlite3.c:195702:13: */ +func geopolySwab32(tls *libc.TLS, a uintptr) { /* sqlite3.c:195714:13: */ var t uint8 = *(*uint8)(unsafe.Pointer(a)) *(*uint8)(unsafe.Pointer(a)) = *(*uint8)(unsafe.Pointer(a + 3)) *(*uint8)(unsafe.Pointer(a + 3)) = t @@ -169186,7 +169234,7 @@ func geopolySwab32(tls *libc.TLS, a uintptr) { /* sqlite3.c:195702:13: */ } // Skip whitespace. Return the next non-whitespace character. -func geopolySkipSpace(tls *libc.TLS, p uintptr) int8 { /* sqlite3.c:195712:13: */ +func geopolySkipSpace(tls *libc.TLS, p uintptr) int8 { /* sqlite3.c:195724:13: */ for jsonIsSpace[*(*uint8)(unsafe.Pointer((*GeoParse)(unsafe.Pointer(p)).Fz))] != 0 { (*GeoParse)(unsafe.Pointer(p)).Fz++ } @@ -169195,7 +169243,7 @@ func geopolySkipSpace(tls *libc.TLS, p uintptr) int8 { /* sqlite3.c:195712:13: * // Parse out a number. Write the value into *pVal if pVal!=0. // return non-zero on success and zero if the next token is not a number. -func geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) int32 { /* sqlite3.c:195720:12: */ +func geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) int32 { /* sqlite3.c:195732:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -169267,7 +169315,7 @@ func geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) int32 { /* sqlit // that object. // // If any error occurs, return NULL. -func geopolyParseJson(tls *libc.TLS, z uintptr, pRc uintptr) uintptr { /* sqlite3.c:195778:16: */ +func geopolyParseJson(tls *libc.TLS, z uintptr, pRc uintptr) uintptr { /* sqlite3.c:195790:16: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -169412,7 +169460,7 @@ __16: // in the binary format or JSON text. Compute a GeoPoly object and // return a pointer to that object. Or if the input is not a well-formed // polygon, put an error message in sqlite3_context and return NULL. -func geopolyFuncParam(tls *libc.TLS, pCtx uintptr, pVal uintptr, pRc uintptr) uintptr { /* sqlite3.c:195855:16: */ +func geopolyFuncParam(tls *libc.TLS, pCtx uintptr, pVal uintptr, pRc uintptr) uintptr { /* sqlite3.c:195867:16: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -169474,7 +169522,7 @@ func geopolyFuncParam(tls *libc.TLS, pCtx uintptr, pVal uintptr, pRc uintptr) ui // If the input is a well-formed Geopoly BLOB or JSON string // then return the BLOB representation of the polygon. Otherwise // return NULL. -func geopolyBlobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195911:13: */ +func geopolyBlobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195923:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) if p != 0 { Xsqlite3_result_blob(tls, context, p+4, /* &.hdr */ @@ -169487,7 +169535,7 @@ func geopolyBlobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // // Interpret X as a polygon and render it as a JSON array // of coordinates. Or, if X is not a valid polygon, return NULL. -func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195930:13: */ +func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195942:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -169510,7 +169558,7 @@ func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // // Interpret X as a polygon and render it as a SVG . // Additional arguments are added as attributes to the . -func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195956:13: */ +func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195968:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -169556,7 +169604,7 @@ func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // Rotate by R around the point (0,0): // // geopoly_xform(poly, cos(R), sin(R), -sin(R), cos(R), 0, 0) -func geopolyXformFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196003:13: */ +func geopolyXformFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196015:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var A float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 1*8))) var B float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 2*8))) @@ -169589,7 +169637,7 @@ func geopolyXformFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) // This routine can also be used to detect polygons that rotate in // the wrong direction. Polygons are suppose to be counter-clockwise (CCW). // This routine returns a negative value for clockwise (CW) polygons. -func geopolyArea(tls *libc.TLS, p uintptr) float64 { /* sqlite3.c:196039:15: */ +func geopolyArea(tls *libc.TLS, p uintptr) float64 { /* sqlite3.c:196051:15: */ var rArea float64 = 0.0 var ii int32 for ii = 0; ii < ((*GeoPoly)(unsafe.Pointer(p)).FnVertex - 1); ii++ { @@ -169609,7 +169657,7 @@ func geopolyArea(tls *libc.TLS, p uintptr) float64 { /* sqlite3.c:196039:15: */ // enclosed by the polygon. If the polygon circulates clockwise instead // of counterclockwise (as it should) then return the negative of the // enclosed area. Otherwise return NULL. -func geopolyAreaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196061:13: */ +func geopolyAreaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196073:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) if p != 0 { Xsqlite3_result_double(tls, context, geopolyArea(tls, p)) @@ -169628,7 +169676,7 @@ func geopolyAreaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // // Use this routine to sanitize historical inputs that that sometimes // contain polygons that wind in the wrong direction. -func geopolyCcwFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196086:13: */ +func geopolyCcwFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196098:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) if p != 0 { if geopolyArea(tls, p) < 0.0 { @@ -169664,7 +169712,7 @@ func geopolyCcwFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { } // Fast approximation for sine(X) for X between -0.5*pi and 2*pi -func geopolySine(tls *libc.TLS, r float64) float64 { /* sqlite3.c:196114:15: */ +func geopolySine(tls *libc.TLS, r float64) float64 { /* sqlite3.c:196126:15: */ if r >= (float64(1.5) * 3.1415926535897932385) { r = r - (float64(2.0) * 3.1415926535897932385) @@ -169684,7 +169732,7 @@ func geopolySine(tls *libc.TLS, r float64) float64 { /* sqlite3.c:196114:15: */ // // Construct a simple, convex, regular polygon centered at X, Y // with circumradius R and with N sides. -func geopolyRegularFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196135:13: */ +func geopolyRegularFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196147:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -169729,7 +169777,7 @@ func geopolyRegularFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr // // If pPoly is NULL but aCoord is not NULL, then compute a new GeoPoly from // the bounding box in aCoord and return a pointer to that GeoPoly. -func geopolyBBox(tls *libc.TLS, context uintptr, pPoly uintptr, aCoord uintptr, pRc uintptr) uintptr { /* sqlite3.c:196178:16: */ +func geopolyBBox(tls *libc.TLS, context uintptr, pPoly uintptr, aCoord uintptr, pRc uintptr) uintptr { /* sqlite3.c:196190:16: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -169865,7 +169913,7 @@ __4: } // Implementation of the geopoly_bbox(X) SQL function. -func geopolyBBoxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196249:13: */ +func geopolyBBoxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196261:13: */ var p uintptr = geopolyBBox(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0), uintptr(0)) if p != 0 { Xsqlite3_result_blob(tls, context, p+4, /* &.hdr */ @@ -169878,13 +169926,13 @@ func geopolyBBoxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { type GeoBBox1 = struct { FisInit int32 Fa [4]RtreeCoord -} /* sqlite3.c:196265:9 */ +} /* sqlite3.c:196277:9 */ // State vector for the geopoly_group_bbox() aggregate function. -type GeoBBox = GeoBBox1 /* sqlite3.c:196265:24 */ +type GeoBBox = GeoBBox1 /* sqlite3.c:196277:24 */ // Implementation of the geopoly_group_bbox(X) aggregate SQL function. -func geopolyBBoxStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196275:13: */ +func geopolyBBoxStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196287:13: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -169918,7 +169966,7 @@ func geopolyBBoxStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { } } -func geopolyBBoxFinal(tls *libc.TLS, context uintptr) { /* sqlite3.c:196298:13: */ +func geopolyBBoxFinal(tls *libc.TLS, context uintptr) { /* sqlite3.c:196310:13: */ var p uintptr var pBBox uintptr pBBox = Xsqlite3_aggregate_context(tls, context, 0) @@ -169945,7 +169993,7 @@ func geopolyBBoxFinal(tls *libc.TLS, context uintptr) { /* sqlite3.c:196298:13: // // The left-most coordinate min(x1,x2) is not considered to be part of // the line segment for the purposes of this analysis. -func pointBeneathLine(tls *libc.TLS, x0 float64, y0 float64, x1 float64, y1 float64, x2 float64, y2 float64) int32 { /* sqlite3.c:196328:12: */ +func pointBeneathLine(tls *libc.TLS, x0 float64, y0 float64, x1 float64, y1 float64, x2 float64, y2 float64) int32 { /* sqlite3.c:196340:12: */ var y float64 if (x0 == x1) && (y0 == y1) { return 2 @@ -169986,7 +170034,7 @@ func pointBeneathLine(tls *libc.TLS, x0 float64, y0 float64, x1 float64, y1 floa // Return +2 if point X,Y is within polygon P. // Return +1 if point X,Y is on the polygon boundary. // Return 0 if point X,Y is outside the polygon -func geopolyContainsPointFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196359:13: */ +func geopolyContainsPointFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196371:13: */ var p1 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var x0 float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 1*8))) var y0 float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 2*8))) @@ -170024,7 +170072,7 @@ func geopolyContainsPointFunc(tls *libc.TLS, context uintptr, argc int32, argv u // Return +1 if P2 is contained within P1 // Return 0 if any part of P2 is on the outside of P1 // -func geopolyWithinFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196402:13: */ +func geopolyWithinFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196414:13: */ var p1 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var p2 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv + 1*8)), uintptr(0)) if (p1 != 0) && (p2 != 0) { @@ -170056,10 +170104,10 @@ type GeoEvent1 = struct { _ [4]byte FpSeg uintptr FpNext uintptr -} /* sqlite3.c:196422:9 */ +} /* sqlite3.c:196434:9 */ // Objects used by the overlap algorihm. -type GeoEvent = GeoEvent1 /* sqlite3.c:196422:25 */ +type GeoEvent = GeoEvent1 /* sqlite3.c:196434:25 */ type GeoSegment1 = struct { FC float64 FB float64 @@ -170070,20 +170118,20 @@ type GeoSegment1 = struct { Fidx uint32 _ [4]byte FpNext uintptr -} /* sqlite3.c:196422:9 */ +} /* sqlite3.c:196434:9 */ -type GeoSegment = GeoSegment1 /* sqlite3.c:196423:27 */ +type GeoSegment = GeoSegment1 /* sqlite3.c:196435:27 */ type GeoOverlap1 = struct { FaEvent uintptr FaSegment uintptr FnEvent int32 FnSegment int32 -} /* sqlite3.c:196424:9 */ +} /* sqlite3.c:196436:9 */ -type GeoOverlap = GeoOverlap1 /* sqlite3.c:196424:27 */ +type GeoOverlap = GeoOverlap1 /* sqlite3.c:196436:27 */ // Add a single segment and its associated events. -func geopolyAddOneSegment(tls *libc.TLS, p uintptr, x0 GeoCoord, y0 GeoCoord, x1 GeoCoord, y1 GeoCoord, side uint8, idx uint32) { /* sqlite3.c:196449:13: */ +func geopolyAddOneSegment(tls *libc.TLS, p uintptr, x0 GeoCoord, y0 GeoCoord, x1 GeoCoord, y1 GeoCoord, side uint8, idx uint32) { /* sqlite3.c:196461:13: */ var pSeg uintptr var pEvent uintptr if x0 == x1 { @@ -170117,7 +170165,7 @@ func geopolyAddOneSegment(tls *libc.TLS, p uintptr, x0 GeoCoord, y0 GeoCoord, x1 } // Insert all segments and events for polygon pPoly. -func geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { /* sqlite3.c:196493:13: */ +func geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { /* sqlite3.c:196505:13: */ var i uint32 var x uintptr for i = uint32(0); i < (uint32((*GeoPoly)(unsafe.Pointer(pPoly)).FnVertex) - uint32(1)); i++ { @@ -170129,7 +170177,7 @@ func geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { / } // Merge two lists of sorted events by X coordinate -func geopolyEventMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196511:17: */ +func geopolyEventMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196523:17: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -170159,7 +170207,7 @@ func geopolyEventMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { / } // Sort an array of nEvent event objects into a list. -func geopolySortEventsByX(tls *libc.TLS, aEvent uintptr, nEvent int32) uintptr { /* sqlite3.c:196533:17: */ +func geopolySortEventsByX(tls *libc.TLS, aEvent uintptr, nEvent int32) uintptr { /* sqlite3.c:196545:17: */ bp := tls.Alloc(400) defer tls.Free(400) @@ -170189,7 +170237,7 @@ func geopolySortEventsByX(tls *libc.TLS, aEvent uintptr, nEvent int32) uintptr { } // Merge two lists of sorted segments by Y, and then by C. -func geopolySegmentMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196558:19: */ +func geopolySegmentMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196570:19: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -170224,7 +170272,7 @@ func geopolySegmentMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { // Sort a list of GeoSegments in order of increasing Y and in the event of // a tie, increasing C (slope). -func geopolySortSegmentsByYAndC(tls *libc.TLS, pList uintptr) uintptr { /* sqlite3.c:196583:19: */ +func geopolySortSegmentsByYAndC(tls *libc.TLS, pList uintptr) uintptr { /* sqlite3.c:196595:19: */ bp := tls.Alloc(400) defer tls.Free(400) @@ -170254,7 +170302,7 @@ func geopolySortSegmentsByYAndC(tls *libc.TLS, pList uintptr) uintptr { /* sqlit } // Determine the overlap between two polygons -func geopolyOverlap(tls *libc.TLS, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:196609:12: */ +func geopolyOverlap(tls *libc.TLS, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:196621:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -170481,7 +170529,7 @@ geopolyOverlapDone: // 3 P2 is completely contained within P1 // 4 P1 and P2 are the same polygon // NULL Either P1 or P2 or both are not valid polygons -func geopolyOverlapFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196732:13: */ +func geopolyOverlapFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196744:13: */ var p1 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var p2 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv + 1*8)), uintptr(0)) if (p1 != 0) && (p2 != 0) { @@ -170497,7 +170545,7 @@ func geopolyOverlapFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr } // Enable or disable debugging output -func geopolyDebugFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196754:13: */ +func geopolyDebugFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196766:13: */ } // This function is the implementation of both the xConnect and xCreate @@ -170507,7 +170555,7 @@ func geopolyDebugFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) // argv[1] -> database name // argv[2] -> table name // argv[...] -> column names... -func geopolyInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:196773:12: */ +func geopolyInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:196785:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -170622,12 +170670,12 @@ __11: } // GEOPOLY virtual table module xCreate method. -func geopolyCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196857:12: */ +func geopolyCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196869:12: */ return geopolyInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 1) } // GEOPOLY virtual table module xConnect method. -func geopolyConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196870:12: */ +func geopolyConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196882:12: */ return geopolyInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 0) } @@ -170641,7 +170689,7 @@ func geopolyConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv ui // 3 search for objects overlapping the same bounding box // that contains polygon argv[0] // 4 full table scan -func geopolyFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:196893:12: */ +func geopolyFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:196905:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -170808,7 +170856,7 @@ geopoly_filter_end: // 3 "rtree" R-tree within query using geopoly_within() // 4 "fullscan" full-table scan. // ------------------------------------------------ -func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:197024:12: */ +func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:197036:12: */ var ii int32 var iRowidTerm int32 = -1 var iFuncTerm int32 = -1 @@ -170859,7 +170907,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s } // GEOPOLY virtual table module xColumn method. -func geopolyColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:197076:12: */ +func geopolyColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:197088:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -170924,7 +170972,7 @@ func geopolyColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* // argv[1] = rowid after the change. Never NULL // argv[2] = new value for _shape // argv[3] = new value for first application-defined column.... -func geopolyUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:197131:12: */ +func geopolyUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:197143:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -171134,7 +171182,7 @@ geopoly_update_end: // Report that geopoly_overlap() is an overloaded function suitable // for use in xBestIndex. -func geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:197267:12: */ +func geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:197279:12: */ if Xsqlite3_stricmp(tls, zName, ts+25889 /* "geopoly_overlap" */) == 0 { *(*uintptr)(unsafe.Pointer(pxFunc)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) @@ -171175,9 +171223,9 @@ var geopolyModule = Sqlite3_module{ FxRename: 0, // xRename - rename the table FxSavepoint: 0, // xRollbackTo FxShadowName: 0, // xShadowName -} /* sqlite3.c:197288:23 */ +} /* sqlite3.c:197300:23 */ -func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197315:12: */ +func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197327:12: */ var rc int32 = SQLITE_OK var i int32 for i = 0; (uint64(i) < (uint64(unsafe.Sizeof(aFunc1)) / uint64(unsafe.Sizeof(struct { @@ -171231,14 +171279,14 @@ var aFunc1 = [12]struct { {FxFunc: 0, FnArg: int8(7), FbPure: uint8(1), FzName: ts + 26029 /* "geopoly_xform" */}, {FxFunc: 0, FnArg: int8(4), FbPure: uint8(1), FzName: ts + 26043 /* "geopoly_regular" */}, {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 26059 /* "geopoly_ccw" */}, -} /* sqlite3.c:197322:5 */ +} /* sqlite3.c:197334:5 */ var aAgg1 = [1]struct { FxStep uintptr FxFinal uintptr FzName uintptr }{ {FxStep: 0, FxFinal: 0, FzName: ts + 26071 /* "geopoly_group_bb..." */}, -} /* sqlite3.c:197340:5 */ +} /* sqlite3.c:197352:5 */ //************* End of geopoly.c ******************************************** //************* Continuing where we left off in rtree.c ********************* @@ -171246,7 +171294,7 @@ var aAgg1 = [1]struct { // Register the r-tree module with database handle db. This creates the // virtual table module "rtree" and the debugging/analysis scalar // function "rtreenode". -func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197375:20: */ +func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197387:20: */ var utf8 int32 = SQLITE_UTF8 var rc int32 @@ -171283,7 +171331,7 @@ func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197375:20 // or sqlite3_rtree_query_callback(). In other words, this routine is the // destructor for an RtreeGeomCallback objecct. This routine is called when // the corresponding SQL function is deleted. -func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:197414:13: */ +func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:197426:13: */ var pInfo uintptr = p if (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FxDestructor != 0 { (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pInfo + 16 /* &.xDestructor */))))(tls, (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FpContext) @@ -171292,7 +171340,7 @@ func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:197414:13: */ } // This routine frees the BLOB that is returned by geomCallback(). -func rtreeMatchArgFree(tls *libc.TLS, pArg uintptr) { /* sqlite3.c:197423:13: */ +func rtreeMatchArgFree(tls *libc.TLS, pArg uintptr) { /* sqlite3.c:197435:13: */ var i int32 var p uintptr = pArg for i = 0; i < (*RtreeMatchArg)(unsafe.Pointer(p)).FnParam; i++ { @@ -171313,7 +171361,7 @@ func rtreeMatchArgFree(tls *libc.TLS, pArg uintptr) { /* sqlite3.c:197423:13: */ // The R-Tree MATCH operator will read the returned BLOB, deserialize // the RtreeMatchArg object, and use the RtreeMatchArg object to figure // out which elements of the R-Tree should be returned by the query. -func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sqlite3.c:197446:13: */ +func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sqlite3.c:197458:13: */ var pGeomCtx uintptr = Xsqlite3_user_data(tls, ctx) var pBlob uintptr var nBlob Sqlite3_int64 @@ -171347,7 +171395,7 @@ func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sql } // Register a new geometry function for use with the r-tree MATCH operator. -func Xsqlite3_rtree_geometry_callback(tls *libc.TLS, db uintptr, zGeom uintptr, xGeom uintptr, pContext uintptr) int32 { /* sqlite3.c:197484:16: */ +func Xsqlite3_rtree_geometry_callback(tls *libc.TLS, db uintptr, zGeom uintptr, xGeom uintptr, pContext uintptr) int32 { /* sqlite3.c:197496:16: */ var pGeomCtx uintptr // Context object for new user-function // Allocate and populate the context object. @@ -171367,7 +171415,7 @@ func Xsqlite3_rtree_geometry_callback(tls *libc.TLS, db uintptr, zGeom uintptr, // Register a new 2nd-generation geometry function for use with the // r-tree MATCH operator. -func Xsqlite3_rtree_query_callback(tls *libc.TLS, db uintptr, zQueryFunc uintptr, xQueryFunc uintptr, pContext uintptr, xDestructor uintptr) int32 { /* sqlite3.c:197508:16: */ +func Xsqlite3_rtree_query_callback(tls *libc.TLS, db uintptr, zQueryFunc uintptr, xQueryFunc uintptr, pContext uintptr, xDestructor uintptr) int32 { /* sqlite3.c:197520:16: */ var pGeomCtx uintptr // Context object for new user-function // Allocate and populate the context object. @@ -171820,7 +171868,7 @@ type sqlite3rbu = struct { FnRbu int32 _ [4]byte FpRbuFd uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ //************* End of rtree.c ********************************************** //************* Begin file icu.c ******************************************** @@ -172221,7 +172269,7 @@ type sqlite3rbu = struct { // #include "sqlite3.h" ** Required for error code definitions ** -type Sqlite3rbu = sqlite3rbu /* sqlite3.c:198735:27 */ +type Sqlite3rbu = sqlite3rbu /* sqlite3.c:198747:27 */ //************* End of sqlite3rbu.h ***************************************** //************* Continuing where we left off in sqlite3rbu.c **************** @@ -172283,7 +172331,7 @@ type Sqlite3rbu = sqlite3rbu /* sqlite3.c:198735:27 */ type RbuFrame1 = struct { FiDbPage U32 FiWalFrame U32 -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ //************* End of sqlite3rbu.h ***************************************** //************* Continuing where we left off in sqlite3rbu.c **************** @@ -172342,7 +172390,7 @@ type RbuFrame1 = struct { // Only valid if STAGE==1. The RBU database name of the table // currently being read. -type RbuFrame = RbuFrame1 /* sqlite3.c:199159:25 */ +type RbuFrame = RbuFrame1 /* sqlite3.c:199171:25 */ type RbuObjIter1 = struct { FpTblIter uintptr FpIdxIter uintptr @@ -172374,9 +172422,9 @@ type RbuObjIter1 = struct { FaIdxCol uintptr FzIdxSql uintptr FpRbuUpdate uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type RbuObjIter = RbuObjIter1 /* sqlite3.c:199160:27 */ +type RbuObjIter = RbuObjIter1 /* sqlite3.c:199172:27 */ type RbuState1 = struct { FeStage int32 _ [4]byte @@ -172391,16 +172439,16 @@ type RbuState1 = struct { _ [4]byte FiOalSz I64 FnPhaseOneStep I64 -} /* sqlite3.c:199161:9 */ +} /* sqlite3.c:199173:9 */ -type RbuState = RbuState1 /* sqlite3.c:199161:25 */ +type RbuState = RbuState1 /* sqlite3.c:199173:25 */ type RbuSpan1 = struct { FzSpan uintptr FnSpan int32 _ [4]byte -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type RbuSpan = RbuSpan1 /* sqlite3.c:199162:24 */ +type RbuSpan = RbuSpan1 /* sqlite3.c:199174:24 */ type rbu_vfs = struct { Fbase Sqlite3_vfs FpRealVfs uintptr @@ -172408,9 +172456,9 @@ type rbu_vfs = struct { FpRbu uintptr FpMain uintptr FpMainRbu uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type Rbu_vfs = rbu_vfs /* sqlite3.c:199163:24 */ +type Rbu_vfs = rbu_vfs /* sqlite3.c:199175:24 */ type rbu_file = struct { Fbase Sqlite3_file FpReal uintptr @@ -172429,16 +172477,16 @@ type rbu_file = struct { FpWalFd uintptr FpMainNext uintptr FpMainRbuNext uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type Rbu_file = rbu_file /* sqlite3.c:199164:25 */ +type Rbu_file = rbu_file /* sqlite3.c:199176:25 */ type RbuUpdateStmt1 = struct { FzMask uintptr FpUpdate uintptr FpNext uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type RbuUpdateStmt = RbuUpdateStmt1 /* sqlite3.c:199165:30 */ +type RbuUpdateStmt = RbuUpdateStmt1 /* sqlite3.c:199177:30 */ // True for an RBU vacuum handle, or false otherwise. @@ -172457,7 +172505,7 @@ type RbuUpdateStmt = RbuUpdateStmt1 /* sqlite3.c:199165:30 */ // finished, leave *pz pointing to the first character past the end of // the integer. The *pLen parameter holds the length of the string // in *pz and is decremented once for each character in the integer. -func rbuDeltaGetInt(tls *libc.TLS, pz uintptr, pLen uintptr) uint32 { /* sqlite3.c:199455:21: */ +func rbuDeltaGetInt(tls *libc.TLS, pz uintptr, pLen uintptr) uint32 { /* sqlite3.c:199467:21: */ var v uint32 = uint32(0) var c int32 var z uintptr = *(*uintptr)(unsafe.Pointer(pz)) @@ -172480,7 +172528,7 @@ var zValue = [128]int8{ int8(25), int8(26), int8(27), int8(28), int8(29), int8(30), int8(31), int8(32), int8(33), int8(34), int8(35), int8(-1), int8(-1), int8(-1), int8(-1), int8(36), int8(-1), int8(37), int8(38), int8(39), int8(40), int8(41), int8(42), int8(43), int8(44), int8(45), int8(46), int8(47), int8(48), int8(49), int8(50), int8(51), int8(52), int8(53), int8(54), int8(55), int8(56), int8(57), int8(58), int8(59), int8(60), int8(61), int8(62), int8(-1), int8(-1), int8(-1), int8(63), int8(-1), -} /* sqlite3.c:199456:28 */ +} /* sqlite3.c:199468:28 */ // Apply a delta. // @@ -172500,7 +172548,7 @@ var zValue = [128]int8{ // // Refer to the delta_create() documentation above for a description // of the delta file format. -func rbuDeltaApply(tls *libc.TLS, zSrc uintptr, lenSrc int32, zDelta uintptr, lenDelta int32, zOut uintptr) int32 { /* sqlite3.c:199536:12: */ +func rbuDeltaApply(tls *libc.TLS, zSrc uintptr, lenSrc int32, zDelta uintptr, lenDelta int32, zOut uintptr) int32 { /* sqlite3.c:199548:12: */ bp := tls.Alloc(12) defer tls.Free(12) *(*uintptr)(unsafe.Pointer(bp)) = zDelta @@ -172590,7 +172638,7 @@ func rbuDeltaApply(tls *libc.TLS, zSrc uintptr, lenSrc int32, zDelta uintptr, le return -1 } -func rbuDeltaOutputSize(tls *libc.TLS, zDelta uintptr, lenDelta int32) int32 { /* sqlite3.c:199622:12: */ +func rbuDeltaOutputSize(tls *libc.TLS, zDelta uintptr, lenDelta int32) int32 { /* sqlite3.c:199634:12: */ bp := tls.Alloc(12) defer tls.Free(12) *(*uintptr)(unsafe.Pointer(bp)) = zDelta @@ -172615,7 +172663,7 @@ func rbuDeltaOutputSize(tls *libc.TLS, zDelta uintptr, lenDelta int32) int32 { / // arguments must be passed to this function. The first is the blob to // patch and the second the patch to apply. If no error occurs, this // function returns the patched blob. -func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:199644:13: */ +func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:199656:13: */ var aDelta uintptr var nDelta int32 var aOrig uintptr @@ -172658,7 +172706,7 @@ func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr // an SQLite error code. Additionally, set output variable *pzErrmsg to // point to a buffer containing an error message. It is the responsibility // of the caller to (eventually) free this buffer using sqlite3_free(). -func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199697:12: */ +func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199709:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -172676,7 +172724,7 @@ func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg // If an error has occurred, then set *pzErrmsg to point to a buffer // containing an error message. It is the responsibility of the caller // to eventually free this buffer using sqlite3_free(). -func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:199719:12: */ +func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:199731:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -172700,7 +172748,7 @@ func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 // // If argument zSql is NULL, this function assumes that an OOM has occurred. // In this case SQLITE_NOMEM is returned and *ppStmt set to NULL. -func prepareFreeAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199742:12: */ +func prepareFreeAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199754:12: */ var rc int32 if zSql == uintptr(0) { @@ -172715,7 +172763,7 @@ func prepareFreeAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErr // Free the RbuObjIter.azTblCol[] and RbuObjIter.abTblPk[] arrays allocated // by an earlier call to rbuObjIterCacheTableInfo(). -func rbuObjIterFreeCols(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199764:13: */ +func rbuObjIterFreeCols(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199776:13: */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*8))) @@ -172733,7 +172781,7 @@ func rbuObjIterFreeCols(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199764:13: // Finalize all statements and free all allocations that are specific to // the current object (table/index pair). -func rbuObjIterClearStatements(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199784:13: */ +func rbuObjIterClearStatements(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199796:13: */ var pUp uintptr Xsqlite3_finalize(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpSelect) @@ -172763,7 +172811,7 @@ func rbuObjIterClearStatements(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:1997 // Clean up any resources allocated as part of the iterator object passed // as the only argument. -func rbuObjIterFinalize(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199816:13: */ +func rbuObjIterFinalize(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199828:13: */ rbuObjIterClearStatements(tls, pIter) Xsqlite3_finalize(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpTblIter) Xsqlite3_finalize(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpIdxIter) @@ -172777,7 +172825,7 @@ func rbuObjIterFinalize(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199816:13: // pointing to the next entry. Otherwise, an error code and message is // left in the RBU handle passed as the first argument. A copy of the // error code is returned. -func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199832:12: */ +func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199844:12: */ var rc int32 = (*Sqlite3rbu)(unsafe.Pointer(p)).Frc if rc == SQLITE_OK { @@ -172858,7 +172906,7 @@ func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3. // // For an rbu vacuum handle, a copy of the first argument is returned if // the second argument is either missing or 0 (not a view). -func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { /* sqlite3.c:199912:13: */ +func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { /* sqlite3.c:199924:13: */ var p uintptr = Xsqlite3_user_data(tls, pCtx) var zIn uintptr @@ -172888,7 +172936,7 @@ func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { // pointing to the first entry. Otherwise, an error code and message is // left in the RBU handle passed as the first argument. A copy of the // error code is returned. -func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199948:12: */ +func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199960:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -172923,7 +172971,7 @@ func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3 // than SQLITE_OK), then this function returns NULL without modifying the // stored error code. In this case it still calls sqlite3_free() on any // printf() parameters associated with %z conversions. -func rbuMPrintf(tls *libc.TLS, p uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:199983:13: */ +func rbuMPrintf(tls *libc.TLS, p uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:199995:13: */ var zSql uintptr = uintptr(0) var ap Va_list _ = ap @@ -172949,7 +172997,7 @@ func rbuMPrintf(tls *libc.TLS, p uintptr, zFmt uintptr, va uintptr) uintptr { /* // If an error occurs, an error code and error message is stored in the // RBU handle. If an error has already occurred when this function is // called, it is a no-op. -func rbuMPrintfExec(tls *libc.TLS, p uintptr, db uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:200008:12: */ +func rbuMPrintfExec(tls *libc.TLS, p uintptr, db uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:200020:12: */ var ap Va_list _ = ap var zSql uintptr @@ -172975,7 +173023,7 @@ func rbuMPrintfExec(tls *libc.TLS, p uintptr, db uintptr, zFmt uintptr, va uintp // error has already occurred when this function is called, return NULL // immediately without attempting the allocation or modifying the stored // error code. -func rbuMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:200035:13: */ +func rbuMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:200047:13: */ var pRet uintptr = uintptr(0) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -172992,7 +173040,7 @@ func rbuMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlit // Allocate and zero the pIter->azTblCol[] and abTblPk[] arrays so that // there is room for at least nCol elements. If an OOM occurs, store an // error code in the RBU handle passed as the first argument. -func rbuAllocateIterArrays(tls *libc.TLS, p uintptr, pIter uintptr, nCol int32) { /* sqlite3.c:200055:13: */ +func rbuAllocateIterArrays(tls *libc.TLS, p uintptr, pIter uintptr, nCol int32) { /* sqlite3.c:200067:13: */ var nByte Sqlite3_int64 = (Sqlite3_int64((((uint64(2) * uint64(unsafe.Sizeof(uintptr(0)))) + uint64(unsafe.Sizeof(int32(0)))) + (uint64(3) * uint64(unsafe.Sizeof(U8(0))))) * uint64(nCol))) var azNew uintptr @@ -173015,7 +173063,7 @@ func rbuAllocateIterArrays(tls *libc.TLS, p uintptr, pIter uintptr, nCol int32) // If an OOM condition is encountered when attempting to allocate memory, // output variable (*pRc) is set to SQLITE_NOMEM before returning. Otherwise, // if the allocation succeeds, (*pRc) is left unchanged. -func rbuStrndup(tls *libc.TLS, zStr uintptr, pRc uintptr) uintptr { /* sqlite3.c:200080:13: */ +func rbuStrndup(tls *libc.TLS, zStr uintptr, pRc uintptr) uintptr { /* sqlite3.c:200092:13: */ var zRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { @@ -173038,7 +173086,7 @@ func rbuStrndup(tls *libc.TLS, zStr uintptr, pRc uintptr) uintptr { /* sqlite3.c // If the sqlite3_finalize() call indicates that an error occurs, and the // rbu handle error code is not already set, set the error code and error // message accordingly. -func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:200105:13: */ +func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:200117:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -173088,7 +173136,7 @@ func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:200105: // }else{ // return RBU_PK_NONE // } -func rbuTableType(tls *libc.TLS, p uintptr, zTab uintptr, peType uintptr, piTnum uintptr, piPk uintptr) { /* sqlite3.c:200153:13: */ +func rbuTableType(tls *libc.TLS, p uintptr, zTab uintptr, peType uintptr, piTnum uintptr, piPk uintptr) { /* sqlite3.c:200165:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -173204,11 +173252,12 @@ __15: goto __14 goto __16 __16: + } // This is a helper function for rbuObjIterCacheTableInfo(). It populates // the pIter->abIndexed[] array. -func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:200237:13: */ +func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:200249:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -173266,7 +173315,7 @@ func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq // Return SQLITE_OK if successful, or an SQLite error code otherwise. If // an error does occur, an error code and error message are also left in // the RBU handle. -func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:200291:12: */ +func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:200303:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -173388,7 +173437,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / // This function constructs and returns a pointer to a nul-terminated // string containing some SQL clause or list based on one or more of the // column names currently stored in the pIter->azTblCol[] array. -func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200401:13: */ +func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200413:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -173407,7 +173456,7 @@ func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* // in order, for the current table. Before each column name, add the text // zPre. After each column name, add the zPost text. Use zSeparator as // the separator text (usually ", "). -func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, zSeparator uintptr, zPost uintptr) uintptr { /* sqlite3.c:200422:13: */ +func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, zSeparator uintptr, zPost uintptr) uintptr { /* sqlite3.c:200434:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -173449,7 +173498,7 @@ func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, // // Instead of "?" placeholders, the actual WHERE clauses created by // this function contain literal SQL values. -func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, zWrite uintptr) uintptr { /* sqlite3.c:200467:13: */ +func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, zWrite uintptr) uintptr { /* sqlite3.c:200479:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -173508,7 +173557,7 @@ func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, // If the expression cannot be created, NULL is returned. In this case, // the caller has to use an OFFSET clause to extract only the required // rows from the sourct table, just as it does for an RBU update operation. -func XrbuVacuumIndexStart(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200534:6: */ +func XrbuVacuumIndexStart(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200546:6: */ bp := tls.Alloc(192) defer tls.Free(192) @@ -173681,7 +173730,7 @@ index_start_out: // pzImposterCols: ... // pzImposterPk: ... // pzWhere: ... -func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterCols uintptr, pzImposterPk uintptr, pzWhere uintptr, pnBind uintptr) uintptr { /* sqlite3.c:200647:13: */ +func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterCols uintptr, pzImposterPk uintptr, pzWhere uintptr, pnBind uintptr) uintptr { /* sqlite3.c:200659:13: */ bp := tls.Alloc(208) defer tls.Free(208) @@ -173792,7 +173841,7 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC // // For tables with implicit rowids - RBU_PK_EXTERNAL and RBU_PK_NONE, append // the text ", old._rowid_" to the returned value. -func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) uintptr { /* sqlite3.c:200759:13: */ +func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) uintptr { /* sqlite3.c:200771:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -173830,7 +173879,7 @@ func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) // Return the string: // // "b = ?1 AND c = ?2" -func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200800:13: */ +func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200812:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -173868,7 +173917,7 @@ func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sq // is something wrong with the rbu_control value in the rbu_control value // stored in the (p->nCol+1)'th column. Set the error code and error message // of the RBU handle to something reflecting this. -func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:200841:13: */ +func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:200853:13: */ (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+27569 /* "invalid rbu_cont..." */, 0) } @@ -173888,7 +173937,7 @@ func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:200841:13: */ // argument and NULL is returned. Or, if an error has already occurred // when this function is called, NULL is returned immediately, without // attempting the allocation or modifying the stored error code. -func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr) uintptr { /* sqlite3.c:200864:13: */ +func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr) uintptr { /* sqlite3.c:200876:13: */ bp := tls.Alloc(112) defer tls.Free(112) @@ -173934,7 +173983,7 @@ func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr // argument and NULL is returned. Or, if an error has already occurred // when this function is called, NULL is returned immediately, without // attempting the allocation or modifying the stored error code. -func rbuObjIterGetBindlist(tls *libc.TLS, p uintptr, nBind int32) uintptr { /* sqlite3.c:200918:13: */ +func rbuObjIterGetBindlist(tls *libc.TLS, p uintptr, nBind int32) uintptr { /* sqlite3.c:200930:13: */ var zRet uintptr = uintptr(0) var nByte Sqlite3_int64 = ((int64(2) * Sqlite3_int64(nBind)) + int64(1)) @@ -173964,7 +174013,7 @@ func rbuObjIterGetBindlist(tls *libc.TLS, p uintptr, nBind int32) uintptr { /* s // this function returns: // // PRIMARY KEY("b", "a" DESC) -func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200945:13: */ +func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200957:13: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -174027,7 +174076,7 @@ func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sql // // CREATE TABLE rbu_imposter2(c1 TEXT, c2 REAL, id INTEGER) WITHOUT ROWID; // -func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201004:13: */ +func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201016:13: */ bp := tls.Alloc(184) defer tls.Free(184) @@ -174103,7 +174152,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit // More precisely, the "same schema" means the same columns, types, // collation sequences. For tables that do not have an external PRIMARY // KEY, it also means the same PRIMARY KEY declaration. -func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201078:13: */ +func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201090:13: */ bp := tls.Alloc(200) defer tls.Free(200) @@ -174167,7 +174216,7 @@ func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite // the target table, plus one (for the rbu_control column), plus one more // (for the rbu_rowid column) if the target table is an implicit IPK or // virtual table. -func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollist uintptr, zRbuRowid uintptr) { /* sqlite3.c:201134:13: */ +func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollist uintptr, zRbuRowid uintptr) { /* sqlite3.c:201146:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -174182,7 +174231,7 @@ func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollis } } -func rbuTmpInsertFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:201152:13: */ +func rbuTmpInsertFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:201164:13: */ var p uintptr = Xsqlite3_user_data(tls, pCtx) var rc int32 = SQLITE_OK var i int32 @@ -174204,7 +174253,7 @@ func rbuTmpInsertFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { } } -func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:201182:13: */ +func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:201194:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -174312,7 +174361,7 @@ func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { // Ensure that the SQLite statement handles required to update the // target database object currently indicated by the iterator passed // as the second argument are available. -func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32) int32 { /* sqlite3.c:201282:12: */ +func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32) int32 { /* sqlite3.c:201294:12: */ bp := tls.Alloc(628) defer tls.Free(628) @@ -174587,7 +174636,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 // // If the zMask string does not specify any columns to update, then this // is not an error. Output variable *ppStmt is set to NULL in this case. -func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, ppStmt uintptr) int32 { /* sqlite3.c:201549:12: */ +func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, ppStmt uintptr) int32 { /* sqlite3.c:201561:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -174653,7 +174702,7 @@ func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, pp return (*Sqlite3rbu)(unsafe.Pointer(p)).Frc } -func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uintptr { /* sqlite3.c:201617:16: */ +func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uintptr { /* sqlite3.c:201629:16: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -174676,7 +174725,7 @@ func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uin } // Free an RbuState object allocated by rbuLoadState(). -func rbuFreeState(tls *libc.TLS, p uintptr) { /* sqlite3.c:201638:13: */ +func rbuFreeState(tls *libc.TLS, p uintptr) { /* sqlite3.c:201650:13: */ if p != 0 { Xsqlite3_free(tls, (*RbuState)(unsafe.Pointer(p)).FzTbl) Xsqlite3_free(tls, (*RbuState)(unsafe.Pointer(p)).FzDataTbl) @@ -174692,7 +174741,7 @@ func rbuFreeState(tls *libc.TLS, p uintptr) { /* sqlite3.c:201638:13: */ // // If an error occurs, leave an error code and message in the rbu handle // and return NULL. -func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:201656:17: */ +func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:201668:17: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -174772,7 +174821,7 @@ func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:201656:17: */ // Open the database handle and attach the RBU database as "rbu". If an // error occurs, leave an error code and message in the RBU handle. -func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:201733:13: */ +func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:201745:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -174933,7 +174982,7 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 // test.db-wal => test.wal // test.db-shm => test.shm // test.db-mj7f3319fa => test.9fa -func rbuFileSuffix3(tls *libc.TLS, zBase uintptr, z uintptr) { /* sqlite3.c:201912:13: */ +func rbuFileSuffix3(tls *libc.TLS, zBase uintptr, z uintptr) { /* sqlite3.c:201924:13: */ } // Return the current wal-index header checksum for the target database @@ -174941,7 +174990,7 @@ func rbuFileSuffix3(tls *libc.TLS, zBase uintptr, z uintptr) { /* sqlite3.c:2019 // // The checksum is store in the first page of xShmMap memory as an 8-byte // blob starting at byte offset 40. -func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:201933:12: */ +func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:201945:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -174972,7 +175021,7 @@ func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:201933:12: */ // object, then the rbu handle is set to DONE state. This occurs if some // other client appends a transaction to the wal file in the middle of // an incremental checkpoint. -func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:201962:13: */ +func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:201974:13: */ // If pState is NULL, then the wal file may not have been opened and // recovered. Running a read-statement here to ensure that doing so @@ -175060,7 +175109,7 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c // Called when iAmt bytes are read from offset iOff of the wal file while // the rbu object is in capture mode. Record the frame number of the frame // being read in the aFrame[] array. -func rbuCaptureWalRead(tls *libc.TLS, pRbu uintptr, iOff I64, iAmt int32) int32 { /* sqlite3.c:202046:12: */ +func rbuCaptureWalRead(tls *libc.TLS, pRbu uintptr, iOff I64, iAmt int32) int32 { /* sqlite3.c:202058:12: */ var mReq U32 = (U32(((int32(1) << WAL_LOCK_WRITE) | (int32(1) << WAL_LOCK_CKPT)) | (int32(1) << WAL_LOCK_READ0))) var iFrame U32 @@ -175099,7 +175148,7 @@ func rbuCaptureWalRead(tls *libc.TLS, pRbu uintptr, iOff I64, iAmt int32) int32 // Called when a page of data is written to offset iOff of the database // file while the rbu handle is in capture mode. Record the page number // of the page being written in the aFrame[] array. -func rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff I64) int32 { /* sqlite3.c:202078:12: */ +func rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff I64) int32 { /* sqlite3.c:202090:12: */ (*RbuFrame)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(pRbu)).FaFrame + uintptr(((*Sqlite3rbu)(unsafe.Pointer(pRbu)).FnFrame-1))*8)).FiDbPage = ((U32(iOff / I64((*Sqlite3rbu)(unsafe.Pointer(pRbu)).Fpgsz))) + U32(1)) return SQLITE_OK } @@ -175107,7 +175156,7 @@ func rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff I64) int32 { /* sqlite3 // This is called as part of an incremental checkpoint operation. Copy // a single frame of data from the wal file into the database file, as // indicated by the RbuFrame object. -func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c:202088:13: */ +func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c:202100:13: */ var pWal uintptr = (*Rbu_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd)).FpReal var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal var iOff I64 @@ -175123,7 +175172,7 @@ func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c } // Take an EXCLUSIVE lock on the database file. -func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:202106:13: */ +func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:202118:13: */ var pReal uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 56 /* &.xLock */))))(tls, pReal, SQLITE_LOCK_SHARED) @@ -175137,7 +175186,7 @@ func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:202106:13: */ // then reopens the database file (this time in vanilla, non-oal, WAL mode). // If an error occurs, leave an error code and error message in the rbu // handle. -func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202146:13: */ +func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202158:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -175206,7 +175255,7 @@ func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202146:13: */ // // If the rbu_control field contains an invalid value, an error code and // message are left in the RBU handle and zero returned. -func rbuStepType(tls *libc.TLS, p uintptr, pzMask uintptr) int32 { /* sqlite3.c:202237:12: */ +func rbuStepType(tls *libc.TLS, p uintptr, pzMask uintptr) int32 { /* sqlite3.c:202249:12: */ var iCol int32 = (*Sqlite3rbu)(unsafe.Pointer(p)).Fobjiter.FnCol // Index of rbu_control column var res int32 = 0 // Return value @@ -175262,7 +175311,7 @@ func rbuStepType(tls *libc.TLS, p uintptr, pzMask uintptr) int32 { /* sqlite3.c: // Argument eType must be one of RBU_INSERT, RBU_DELETE, RBU_IDX_INSERT or // RBU_IDX_DELETE. This function performs the work of a single // sqlite3rbu_step() call for the type of operation specified by eType. -func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:202293:13: */ +func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:202305:13: */ var pIter uintptr = (p + 80 /* &.objiter */) var pVal uintptr var pWriter uintptr @@ -175334,7 +175383,7 @@ func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:202293:1 // If no error occurs, SQLITE_OK is returned. Otherwise, an error code // and message is left in the RBU handle and a copy of the error code // returned. -func rbuStep(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202376:12: */ +func rbuStep(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202388:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -175393,7 +175442,7 @@ func rbuStep(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202376:12: */ // Or, if this is an RBU vacuum, set the schema cookie of the main db // opened by p->dbMain to one more than the schema cookie of the main // db opened by p->dbRbu. -func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:202441:13: */ +func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:202453:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -175429,7 +175478,7 @@ func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:202441:13: */ // Update the contents of the rbu_state table within the rbu database. The // value stored in the RBU_STATE_STAGE column is eStage. All other values // are determined by inspecting the rbu handle passed as the first argument. -func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:202472:13: */ +func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:202484:13: */ bp := tls.Alloc(176) defer tls.Free(176) @@ -175484,7 +175533,7 @@ func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:202472: // // In short, it copies the value of the specified PRAGMA setting from // dbRbu to dbMain. -func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:202533:13: */ +func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:202545:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -175503,7 +175552,7 @@ func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:202 // The RBU handle passed as the only argument has just been opened and // the state database is empty. If this RBU handle was opened for an // RBU vacuum operation, create the schema in the target db. -func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:202553:13: */ +func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:202565:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -175553,7 +175602,7 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:202553:13: * } // Step the RBU object. -func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202605:16: */ +func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202617:16: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -175692,7 +175741,7 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202605:16: // Compare strings z1 and z2, returning 0 if they are identical, or non-zero // otherwise. Either or both argument may be NULL. Two NULL values are // considered equal, and NULL is considered distinct from all other values. -func rbuStrCompare(tls *libc.TLS, z1 uintptr, z2 uintptr) int32 { /* sqlite3.c:202734:12: */ +func rbuStrCompare(tls *libc.TLS, z1 uintptr, z2 uintptr) int32 { /* sqlite3.c:202746:12: */ if (z1 == uintptr(0)) && (z2 == uintptr(0)) { return 0 } @@ -175710,7 +175759,7 @@ func rbuStrCompare(tls *libc.TLS, z1 uintptr, z2 uintptr) int32 { /* sqlite3.c:2 // // If an error occurs, an error code and error message are left in the // rbu handle passed as the first argument. -func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:202750:13: */ +func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:202762:13: */ if (*RbuState)(unsafe.Pointer(pState)).FzTbl != 0 { var pIter uintptr = (p + 80 /* &.objiter */) @@ -175740,7 +175789,7 @@ func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:202750 // If there is a "*-oal" file in the file-system corresponding to the // target database in the file-system, delete it. If an error occurs, // leave an error code and error message in the rbu handle. -func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202783:13: */ +func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202795:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -175757,7 +175806,7 @@ func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202783:13: */ // argument. This VFS will be used unless the call to sqlite3rbu_open() // specified a URI with a vfs=? option in place of a target database // file name. -func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202799:13: */ +func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202811:13: */ bp := tls.Alloc(76) defer tls.Free(76) @@ -175778,7 +175827,7 @@ func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202799:13: */ // Destroy the private VFS created for the rbu handle passed as the only // argument by an earlier call to rbuCreateVfs(). -func rbuDeleteVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202819:13: */ +func rbuDeleteVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202831:13: */ if (*Sqlite3rbu)(unsafe.Pointer(p)).FzVfsName != 0 { Xsqlite3rbu_destroy_vfs(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzVfsName) (*Sqlite3rbu)(unsafe.Pointer(p)).FzVfsName = uintptr(0) @@ -175788,7 +175837,7 @@ func rbuDeleteVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202819:13: */ // This user-defined SQL function is invoked with a single argument - the // name of a table expected to appear in the target database. It returns // the number of auxilliary indexes on the table. -func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:202831:13: */ +func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:202843:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -175837,7 +175886,7 @@ func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { / // sqlite3rbu.nPhaseOneStep is initialized to the sum of (1 + nIndex) * cnt // for all rows in the rbu_count table, where nIndex is the number of // indexes on the corresponding target database table. -func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:202881:13: */ +func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:202893:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -175879,7 +175928,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:202881:13: */ } } -func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:202922:19: */ +func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:202934:19: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -176044,7 +176093,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) // Allocate and return an RBU handle with all fields zeroed except for the // error code, which is set to SQLITE_MISUSE. -func rbuMisuseError(tls *libc.TLS) uintptr { /* sqlite3.c:203078:19: */ +func rbuMisuseError(tls *libc.TLS) uintptr { /* sqlite3.c:203090:19: */ var pRet uintptr pRet = Xsqlite3_malloc64(tls, uint64(unsafe.Sizeof(Sqlite3rbu{}))) if pRet != 0 { @@ -176055,7 +176104,7 @@ func rbuMisuseError(tls *libc.TLS) uintptr { /* sqlite3.c:203078:19: */ } // Open and return a new RBU handle. -func Xsqlite3rbu_open(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:203091:23: */ +func Xsqlite3rbu_open(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:203103:23: */ if (zTarget == uintptr(0)) || (zRbu == uintptr(0)) { return rbuMisuseError(tls) } @@ -176064,7 +176113,7 @@ func Xsqlite3rbu_open(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintp } // Open a handle to begin or resume an RBU VACUUM operation. -func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr { /* sqlite3.c:203104:23: */ +func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr { /* sqlite3.c:203116:23: */ if zTarget == uintptr(0) { return rbuMisuseError(tls) } @@ -176079,7 +176128,7 @@ func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr } // Return the database handle used by pRbu. -func Xsqlite3rbu_db(tls *libc.TLS, pRbu uintptr, bRbu int32) uintptr { /* sqlite3.c:203122:20: */ +func Xsqlite3rbu_db(tls *libc.TLS, pRbu uintptr, bRbu int32) uintptr { /* sqlite3.c:203134:20: */ var db uintptr = uintptr(0) if pRbu != 0 { db = func() uintptr { @@ -176095,7 +176144,7 @@ func Xsqlite3rbu_db(tls *libc.TLS, pRbu uintptr, bRbu int32) uintptr { /* sqlite // If the error code currently stored in the RBU handle is SQLITE_CONSTRAINT, // then edit any error message string so as to remove all occurrences of // the pattern "rbu_imp_[0-9]*". -func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:203136:13: */ +func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:203148:13: */ if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_CONSTRAINT) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg != 0) { var i uint32 var nErrmsg Size_t = libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg) @@ -176113,7 +176162,7 @@ func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:203136:13: */ } // Close the RBU handle. -func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:203154:16: */ +func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:203166:16: */ var rc int32 if p != 0 { @@ -176176,13 +176225,13 @@ func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sq // Return the total number of key-value operations (inserts, deletes or // updates) that have been performed on the target database since the // current RBU update was started. -func Xsqlite3rbu_progress(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:203217:26: */ +func Xsqlite3rbu_progress(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:203229:26: */ return Sqlite3_int64((*Sqlite3rbu)(unsafe.Pointer(pRbu)).FnProgress) } // Return permyriadage progress indications for the two main stages of // an RBU update. -func Xsqlite3rbu_bp_progress(tls *libc.TLS, p uintptr, pnOne uintptr, pnTwo uintptr) { /* sqlite3.c:203225:17: */ +func Xsqlite3rbu_bp_progress(tls *libc.TLS, p uintptr, pnOne uintptr, pnTwo uintptr) { /* sqlite3.c:203237:17: */ var MAX_PROGRESS int32 = 10000 switch (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage { case RBU_STAGE_OAL: @@ -176215,7 +176264,7 @@ func Xsqlite3rbu_bp_progress(tls *libc.TLS, p uintptr, pnOne uintptr, pnTwo uint } // Return the current state of the RBU vacuum or update operation. -func Xsqlite3rbu_state(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203260:16: */ +func Xsqlite3rbu_state(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203272:16: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -176233,7 +176282,7 @@ func Xsqlite3rbu_state(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203260:16: return int32(0) } -func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203288:16: */ +func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203300:16: */ var rc int32 = (*Sqlite3rbu)(unsafe.Pointer(p)).Frc if rc == SQLITE_DONE { return SQLITE_OK @@ -176338,7 +176387,7 @@ func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203288 // relinquished). Finally, calls to xSync() on the target database // file fail with SQLITE_INTERNAL errors. -func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:203381:13: */ +func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:203393:13: */ if (*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0 { var xShmLock uintptr = (*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmLock @@ -176353,7 +176402,7 @@ func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:203381:13: */ } // -func rbuUpdateTempSize(tls *libc.TLS, pFd uintptr, nNew Sqlite3_int64) int32 { /* sqlite3.c:203397:12: */ +func rbuUpdateTempSize(tls *libc.TLS, pFd uintptr, nNew Sqlite3_int64) int32 { /* sqlite3.c:203409:12: */ var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(pFd)).FpRbu var nDiff I64 = (nNew - (*Rbu_file)(unsafe.Pointer(pFd)).Fsz) *(*I64)(unsafe.Pointer(pRbu + 360 /* &.szTemp */)) += (nDiff) @@ -176371,7 +176420,7 @@ func rbuUpdateTempSize(tls *libc.TLS, pFd uintptr, nNew Sqlite3_int64) int32 { / // for all file descriptors with rbu_file.pDb!=0. If the argument has // rbu_file.pDb!=0, then it is assumed to already be present on the // main list and is only added to the pDb!=0 list. -func rbuMainlistAdd(tls *libc.TLS, p uintptr) { /* sqlite3.c:203415:13: */ +func rbuMainlistAdd(tls *libc.TLS, p uintptr) { /* sqlite3.c:203427:13: */ var pRbuVfs uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs var pIter uintptr @@ -176393,7 +176442,7 @@ func rbuMainlistAdd(tls *libc.TLS, p uintptr) { /* sqlite3.c:203415:13: */ } // Remove an item from the main-db lists. -func rbuMainlistRemove(tls *libc.TLS, p uintptr) { /* sqlite3.c:203437:13: */ +func rbuMainlistRemove(tls *libc.TLS, p uintptr) { /* sqlite3.c:203449:13: */ var pp uintptr Xsqlite3_mutex_enter(tls, (*Rbu_vfs)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs)).Fmutex) for pp = ((*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs + 192 /* &.pMain */); (*(*uintptr)(unsafe.Pointer(pp)) != 0) && (*(*uintptr)(unsafe.Pointer(pp)) != p); pp = (*(*uintptr)(unsafe.Pointer(pp)) + 88 /* &.pMainNext */) { @@ -176418,7 +176467,7 @@ func rbuMainlistRemove(tls *libc.TLS, p uintptr) { /* sqlite3.c:203437:13: */ // // If parameter bRbu is true, only search for file-descriptors with // rbu_file.pDb!=0. -func rbuFindMaindb(tls *libc.TLS, pRbuVfs uintptr, zWal uintptr, bRbu int32) uintptr { /* sqlite3.c:203458:17: */ +func rbuFindMaindb(tls *libc.TLS, pRbuVfs uintptr, zWal uintptr, bRbu int32) uintptr { /* sqlite3.c:203470:17: */ var pDb uintptr Xsqlite3_mutex_enter(tls, (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).Fmutex) if bRbu != 0 { @@ -176433,7 +176482,7 @@ func rbuFindMaindb(tls *libc.TLS, pRbuVfs uintptr, zWal uintptr, bRbu int32) uin } // Close an rbu file. -func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203473:12: */ +func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203485:12: */ var p uintptr = pFile var rc int32 var i int32 @@ -176461,7 +176510,7 @@ func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203473:12: * // Read and return an unsigned 32-bit big-endian integer from the buffer // passed as the only argument. -func rbuGetU32(tls *libc.TLS, aBuf uintptr) U32 { /* sqlite3.c:203506:12: */ +func rbuGetU32(tls *libc.TLS, aBuf uintptr) U32 { /* sqlite3.c:203518:12: */ return ((((U32(*(*U8)(unsafe.Pointer(aBuf))) << 24) + (U32(*(*U8)(unsafe.Pointer(aBuf + 1))) << 16)) + (U32(*(*U8)(unsafe.Pointer(aBuf + 2))) << 8)) + @@ -176470,20 +176519,20 @@ func rbuGetU32(tls *libc.TLS, aBuf uintptr) U32 { /* sqlite3.c:203506:12: */ // Write an unsigned 32-bit value in big-endian format to the supplied // buffer. -func rbuPutU32(tls *libc.TLS, aBuf uintptr, iVal U32) { /* sqlite3.c:203517:13: */ +func rbuPutU32(tls *libc.TLS, aBuf uintptr, iVal U32) { /* sqlite3.c:203529:13: */ *(*U8)(unsafe.Pointer(aBuf)) = (U8((iVal >> 24) & U32(0xFF))) *(*U8)(unsafe.Pointer(aBuf + 1)) = (U8((iVal >> 16) & U32(0xFF))) *(*U8)(unsafe.Pointer(aBuf + 2)) = (U8((iVal >> 8) & U32(0xFF))) *(*U8)(unsafe.Pointer(aBuf + 3)) = (U8((iVal >> 0) & U32(0xFF))) } -func rbuPutU16(tls *libc.TLS, aBuf uintptr, iVal U16) { /* sqlite3.c:203524:13: */ +func rbuPutU16(tls *libc.TLS, aBuf uintptr, iVal U16) { /* sqlite3.c:203536:13: */ *(*U8)(unsafe.Pointer(aBuf)) = (U8((int32(iVal) >> 8) & 0xFF)) *(*U8)(unsafe.Pointer(aBuf + 1)) = (U8((int32(iVal) >> 0) & 0xFF)) } // Read data from an rbuVfs-file. -func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203532:12: */ +func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203544:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 @@ -176543,7 +176592,7 @@ func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sq } // Write data to an rbuVfs-file. -func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203598:12: */ +func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203610:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 @@ -176580,7 +176629,7 @@ func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst S } // Truncate an rbuVfs-file. -func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* sqlite3.c:203641:12: */ +func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* sqlite3.c:203653:12: */ var p uintptr = pFile if (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_DELETEONCLOSE) != 0) && ((*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0) { var rc int32 = rbuUpdateTempSize(tls, p, size) @@ -176592,7 +176641,7 @@ func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* } // Sync an rbuVfs-file. -func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c:203653:12: */ +func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c:203665:12: */ var p uintptr = pFile if ((*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0) && ((*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbu)).FeStage == RBU_STAGE_CAPTURE) { if ((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0 { @@ -176604,7 +176653,7 @@ func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c: } // Return the current file-size of an rbuVfs-file. -func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqlite3.c:203667:12: */ +func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqlite3.c:203679:12: */ var p uintptr = pFile var rc int32 rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 48 /* &.xFileSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pSize) @@ -176622,7 +176671,7 @@ func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqli } // Lock an rbuVfs-file. -func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203688:12: */ +func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203700:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 = SQLITE_OK @@ -176640,19 +176689,19 @@ func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c: } // Unlock an rbuVfs-file. -func rbuVfsUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203710:12: */ +func rbuVfsUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203722:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xUnlock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) } // Check if another file-handle holds a RESERVED lock on an rbuVfs-file. -func rbuVfsCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* sqlite3.c:203718:12: */ +func rbuVfsCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* sqlite3.c:203730:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 72 /* &.xCheckReservedLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pResOut) } // File control method. For custom operations on an rbuVfs-file. -func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:203726:12: */ +func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:203738:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -176709,19 +176758,19 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int } // Return the sector-size in bytes for an rbuVfs-file. -func rbuVfsSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203782:12: */ +func rbuVfsSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203794:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 88 /* &.xSectorSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Return the device characteristic flags supported by an rbuVfs-file. -func rbuVfsDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203790:12: */ +func rbuVfsDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203802:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 96 /* &.xDeviceCharacteristics */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Take or release a shared-memory lock. -func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) int32 { /* sqlite3.c:203798:12: */ +func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) int32 { /* sqlite3.c:203810:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 = SQLITE_OK @@ -176752,7 +176801,7 @@ func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int3 } // Obtain a pointer to a mapping of a single 32KiB page of the *-shm file. -func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, isWrite int32, pp uintptr) int32 { /* sqlite3.c:203836:12: */ +func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, isWrite int32, pp uintptr) int32 { /* sqlite3.c:203848:12: */ var p uintptr = pFile var rc int32 = SQLITE_OK var eStage int32 = func() int32 { @@ -176807,13 +176856,13 @@ func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i } // Memory barrier. -func rbuVfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:203894:13: */ +func rbuVfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:203906:13: */ var p uintptr = pFile (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 120 /* &.xShmBarrier */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // The xShmUnmap method. -func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqlite3.c:203902:12: */ +func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqlite3.c:203914:12: */ var p uintptr = pFile var rc int32 = SQLITE_OK var eStage int32 = func() int32 { @@ -176834,7 +176883,7 @@ func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqli } // Open an rbu file handle. -func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags int32, pOutFlags uintptr) int32 { /* sqlite3.c:203921:12: */ +func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags int32, pOutFlags uintptr) int32 { /* sqlite3.c:203933:12: */ var pRbuVfs uintptr = pVfs var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).FpRealVfs var pFd uintptr = pFile @@ -176932,17 +176981,17 @@ var rbuvfs_io_methods = Sqlite3_io_methods{ FxShmLock: 0, // xShmLock FxShmBarrier: 0, // xShmBarrier FxShmUnmap: 0, // xFetch, xUnfetch -} /* sqlite3.c:203928:29 */ +} /* sqlite3.c:203940:29 */ // Delete the file located at zPath. -func rbuVfsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:204033:12: */ +func rbuVfsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:204045:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 48 /* &.xDelete */))))(tls, pRealVfs, zPath, dirSync) } // Test for access permissions. Return true if the requested permission // is available, or false otherwise. -func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* sqlite3.c:204042:12: */ +func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* sqlite3.c:204054:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -176985,13 +177034,13 @@ func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO // Populate buffer zOut with the full canonical pathname corresponding // to the pathname in zPath. zOut is guaranteed to point to a buffer // of at least (DEVSYM_MAX_PATHNAME+1) bytes. -func rbuVfsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* sqlite3.c:204090:12: */ +func rbuVfsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* sqlite3.c:204102:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 64 /* &.xFullPathname */))))(tls, pRealVfs, zPath, nOut, zOut) } // Open the dynamic library located at zPath and return a handle. -func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:204104:13: */ +func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:204116:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 72 /* &.xDlOpen */))))(tls, pRealVfs, zPath) } @@ -176999,51 +177048,51 @@ func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlit // Populate the buffer zErrMsg (size nByte bytes) with a human readable // utf-8 string describing the most recent error encountered associated // with dynamic libraries. -func rbuVfsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:204114:13: */ +func rbuVfsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:204126:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pRealVfs + 80 /* &.xDlError */))))(tls, pRealVfs, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. -func rbuVfsDlSym(tls *libc.TLS, pVfs uintptr, pArg uintptr, zSym uintptr) uintptr { /* sqlite3.c:204122:13: */ +func rbuVfsDlSym(tls *libc.TLS, pVfs uintptr, pArg uintptr, zSym uintptr) uintptr { /* sqlite3.c:204134:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 88 /* &.xDlSym */))))(tls, pRealVfs, pArg, zSym) } // Close the dynamic library handle pHandle. -func rbuVfsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:204134:13: */ +func rbuVfsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:204146:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pRealVfs + 96 /* &.xDlClose */))))(tls, pRealVfs, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. -func rbuVfsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:204144:12: */ +func rbuVfsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:204156:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 104 /* &.xRandomness */))))(tls, pRealVfs, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. -func rbuVfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:204153:12: */ +func rbuVfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:204165:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 112 /* &.xSleep */))))(tls, pRealVfs, nMicro) } // Return the current time as a Julian Day number in *pTimeOut. -func rbuVfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* sqlite3.c:204161:12: */ +func rbuVfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* sqlite3.c:204173:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pRealVfs + 120 /* &.xCurrentTime */))))(tls, pRealVfs, pTimeOut) } // No-op. -func rbuVfsGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* sqlite3.c:204169:12: */ +func rbuVfsGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* sqlite3.c:204181:12: */ return 0 } // Deregister and destroy an RBU vfs created by an earlier call to // sqlite3rbu_create_vfs(). -func Xsqlite3rbu_destroy_vfs(tls *libc.TLS, zName uintptr) { /* sqlite3.c:204177:17: */ +func Xsqlite3rbu_destroy_vfs(tls *libc.TLS, zName uintptr) { /* sqlite3.c:204189:17: */ var pVfs uintptr = Xsqlite3_vfs_find(tls, zName) if (pVfs != 0) && ((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxOpen == *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 @@ -177057,7 +177106,7 @@ func Xsqlite3rbu_destroy_vfs(tls *libc.TLS, zName uintptr) { /* sqlite3.c:204177 // Create an RBU VFS named zName that accesses the underlying file-system // via existing VFS zParent. The new object is registered as a non-default // VFS with SQLite before returning. -func Xsqlite3rbu_create_vfs(tls *libc.TLS, zName uintptr, zParent uintptr) int32 { /* sqlite3.c:204191:16: */ +func Xsqlite3rbu_create_vfs(tls *libc.TLS, zName uintptr, zParent uintptr) int32 { /* sqlite3.c:204203:16: */ var pNew uintptr = uintptr(0) // Newly allocated VFS var rc int32 = SQLITE_OK @@ -177118,17 +177167,17 @@ var vfs_template = Sqlite3_vfs{ FxSleep: 0, // xSleep FxCurrentTime: 0, // xCurrentTime FxGetLastError: 0, // Unimplemented version 3 methods -} /* sqlite3.c:204194:22 */ +} /* sqlite3.c:204206:22 */ // Configure the aggregate temp file size limit for this RBU handle. -func Xsqlite3rbu_temp_size_limit(tls *libc.TLS, pRbu uintptr, n Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:204269:26: */ +func Xsqlite3rbu_temp_size_limit(tls *libc.TLS, pRbu uintptr, n Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:204281:26: */ if n >= int64(0) { (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FszTempLimit = n } return (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FszTempLimit } -func Xsqlite3rbu_temp_size(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:204276:26: */ +func Xsqlite3rbu_temp_size(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:204288:26: */ return (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FszTemp } @@ -177265,7 +177314,7 @@ type Fts5Global1 = struct { FpTok uintptr FpDfltTok uintptr FpCsr uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ //************************************************************************ @@ -177392,13 +177441,13 @@ type Fts5Global1 = struct { // Mark a function parameter as unused, to suppress nuisance compiler // warnings. -type Fts5Global = Fts5Global1 /* sqlite3.c:211872:27 */ +type Fts5Global = Fts5Global1 /* sqlite3.c:211884:27 */ type Fts5Colset1 = struct { FnCol int32 FaiCol [1]int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Colset = Fts5Colset1 /* sqlite3.c:211873:27 */ +type Fts5Colset = Fts5Colset1 /* sqlite3.c:211885:27 */ // ************************************************************************* // @@ -177436,14 +177485,14 @@ type Fts5Config1 = struct { FzRank uintptr FzRankArgs uintptr FpzErrmsg uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // ************************************************************************* // // Interface to code in fts5_config.c. fts5_config.c contains contains code // to parse the arguments passed to the CREATE VIRTUAL TABLE statement. -type Fts5Config = Fts5Config1 /* sqlite3.c:211893:27 */ +type Fts5Config = Fts5Config1 /* sqlite3.c:211905:27 */ // // End of interface to code in fts5_config.c. @@ -177458,7 +177507,7 @@ type Fts5Buffer1 = struct { Fp uintptr Fn int32 FnSpace int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5_config.c. @@ -177469,7 +177518,7 @@ type Fts5Buffer1 = struct { // Interface to code in fts5_buffer.c. // Buffer object for the incremental building of string data. -type Fts5Buffer = Fts5Buffer1 /* sqlite3.c:212019:27 */ +type Fts5Buffer = Fts5Buffer1 /* sqlite3.c:212031:27 */ type Fts5PoslistReader1 = struct { Fa uintptr @@ -177479,19 +177528,19 @@ type Fts5PoslistReader1 = struct { FbEof U8 _ [6]byte FiPos I64 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5PoslistReader = Fts5PoslistReader1 /* sqlite3.c:212055:34 */ +type Fts5PoslistReader = Fts5PoslistReader1 /* sqlite3.c:212067:34 */ -type Fts5PoslistWriter1 = struct{ FiPrev I64 } /* sqlite3.c:212074:9 */ +type Fts5PoslistWriter1 = struct{ FiPrev I64 } /* sqlite3.c:212086:9 */ -type Fts5PoslistWriter = Fts5PoslistWriter1 /* sqlite3.c:212074:34 */ +type Fts5PoslistWriter = Fts5PoslistWriter1 /* sqlite3.c:212086:34 */ // Bucket of terms object used by the integrity-check in offsets=0 mode. -type Fts5Termset1 = struct{ FapHash [512]uintptr } /* sqlite3.c:212096:9 */ +type Fts5Termset1 = struct{ FapHash [512]uintptr } /* sqlite3.c:212108:9 */ // Bucket of terms object used by the integrity-check in offsets=0 mode. -type Fts5Termset = Fts5Termset1 /* sqlite3.c:212096:28 */ +type Fts5Termset = Fts5Termset1 /* sqlite3.c:212108:28 */ // // End of interface to code in fts5_buffer.c. @@ -177524,7 +177573,7 @@ type Fts5Index1 = struct { FpDataVersion uintptr FiStructVersion I64 FpStruct uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5_buffer.c. @@ -177535,16 +177584,16 @@ type Fts5Index1 = struct { // Interface to code in fts5_index.c. fts5_index.c contains contains code // to access the data stored in the %_data table. -type Fts5Index = Fts5Index1 /* sqlite3.c:212110:26 */ +type Fts5Index = Fts5Index1 /* sqlite3.c:212122:26 */ type Fts5IndexIter1 = struct { FiRowid I64 FpData uintptr FnData int32 FbEof U8 _ [3]byte -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5IndexIter = Fts5IndexIter1 /* sqlite3.c:212111:30 */ +type Fts5IndexIter = Fts5IndexIter1 /* sqlite3.c:212123:30 */ // // End of interface to code in fts5_varint.c. @@ -177559,7 +177608,7 @@ type Fts5Table1 = struct { Fbase Sqlite3_vtab FpConfig uintptr FpIndex uintptr -} /* sqlite3.c:212310:9 */ +} /* sqlite3.c:212322:9 */ // // End of interface to code in fts5_varint.c. @@ -177570,7 +177619,7 @@ type Fts5Table1 = struct { // Interface to code in fts5_main.c. // Virtual-table object. -type Fts5Table = Fts5Table1 /* sqlite3.c:212310:26 */ +type Fts5Table = Fts5Table1 /* sqlite3.c:212322:26 */ // // End of interface to code in fts5.c. @@ -177587,7 +177636,7 @@ type Fts5Hash1 = struct { FnSlot int32 FpScan uintptr FaSlot uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5.c. @@ -177596,7 +177645,7 @@ type Fts5Hash1 = struct { // ************************************************************************* // // Interface to code in fts5_hash.c. -type Fts5Hash = Fts5Hash1 /* sqlite3.c:212336:25 */ +type Fts5Hash = Fts5Hash1 /* sqlite3.c:212348:25 */ // // End of interface to code in fts5_hash.c. @@ -177615,7 +177664,7 @@ type Fts5Storage1 = struct { FnTotalRow I64 FaTotalSize uintptr FaStmt [11]uintptr -} /* sqlite3.c:212392:9 */ +} /* sqlite3.c:212404:9 */ // // End of interface to code in fts5_hash.c. @@ -177626,7 +177675,7 @@ type Fts5Storage1 = struct { // Interface to code in fts5_storage.c. fts5_storage.c contains contains // code to access the data stored in the %_content and %_docsize tables. -type Fts5Storage = Fts5Storage1 /* sqlite3.c:212392:28 */ +type Fts5Storage = Fts5Storage1 /* sqlite3.c:212404:28 */ // // End of interface to code in fts5_storage.c. @@ -177642,7 +177691,7 @@ type Fts5Expr1 = struct { FbDesc int32 FnPhrase int32 FapExprPhrase uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5_storage.c. @@ -177651,7 +177700,7 @@ type Fts5Expr1 = struct { // ************************************************************************* // // Interface to code in fts5_expr.c. -type Fts5Expr = Fts5Expr1 /* sqlite3.c:212435:25 */ +type Fts5Expr = Fts5Expr1 /* sqlite3.c:212447:25 */ type Fts5ExprNode1 = struct { FeType int32 FbEof int32 @@ -177663,9 +177712,9 @@ type Fts5ExprNode1 = struct { FnChild int32 _ [4]byte FapChild [1]uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5ExprNode = Fts5ExprNode1 /* sqlite3.c:212436:29 */ +type Fts5ExprNode = Fts5ExprNode1 /* sqlite3.c:212448:29 */ type Fts5Parse1 = struct { FpConfig uintptr FzErr uintptr @@ -177675,25 +177724,25 @@ type Fts5Parse1 = struct { FpExpr uintptr FbPhraseToAnd int32 _ [4]byte -} /* sqlite3.c:212437:9 */ +} /* sqlite3.c:212449:9 */ -type Fts5Parse = Fts5Parse1 /* sqlite3.c:212437:26 */ +type Fts5Parse = Fts5Parse1 /* sqlite3.c:212449:26 */ type Fts5Token1 = struct { Fp uintptr Fn int32 _ [4]byte -} /* sqlite3.c:212438:9 */ +} /* sqlite3.c:212450:9 */ -type Fts5Token = Fts5Token1 /* sqlite3.c:212438:26 */ +type Fts5Token = Fts5Token1 /* sqlite3.c:212450:26 */ type Fts5ExprPhrase1 = struct { FpNode uintptr Fposlist Fts5Buffer FnTerm int32 _ [4]byte FaTerm [1]Fts5ExprTerm -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5ExprPhrase = Fts5ExprPhrase1 /* sqlite3.c:212439:31 */ +type Fts5ExprPhrase = Fts5ExprPhrase1 /* sqlite3.c:212451:31 */ type Fts5ExprNearset1 = struct { FnNear int32 _ [4]byte @@ -177701,17 +177750,17 @@ type Fts5ExprNearset1 = struct { FnPhrase int32 _ [4]byte FapPhrase [1]uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5ExprNearset = Fts5ExprNearset1 /* sqlite3.c:212440:32 */ +type Fts5ExprNearset = Fts5ExprNearset1 /* sqlite3.c:212452:32 */ type Fts5PoslistPopulator1 = struct { Fwriter Fts5PoslistWriter FbOk int32 FbMiss int32 -} /* sqlite3.c:212488:9 */ +} /* sqlite3.c:212500:9 */ -type Fts5PoslistPopulator = Fts5PoslistPopulator1 /* sqlite3.c:212488:37 */ +type Fts5PoslistPopulator = Fts5PoslistPopulator1 /* sqlite3.c:212500:37 */ // // End of interface to code in fts5_unicode2.c. // @@ -177816,7 +177865,7 @@ type Fts5YYMINORTYPE = struct { _ [0]uint64 Ffts5yyinit int32 _ [12]byte -} /* sqlite3.c:212764:3 */ +} /* sqlite3.c:212776:3 */ //************ End control #defines ****************************************** // Define the fts5yytestcase() macro to be a no-op if is not already defined @@ -177889,7 +177938,7 @@ var fts5yy_action = [105]uint8{ /* 80 */ uint8(5), uint8(3), uint8(63), uint8(5), uint8(3), uint8(62), uint8(12), uint8(2), uint8(86), uint8(13), /* 90 */ uint8(9), uint8(30), uint8(10), uint8(10), uint8(54), uint8(57), uint8(75), uint8(78), uint8(78), uint8(53), /* 100 */ uint8(57), uint8(15), uint8(82), uint8(82), uint8(71), -} /* sqlite3.c:212857:31 */ +} /* sqlite3.c:212869:31 */ var fts5yy_lookahead = [121]uint8{ /* 0 */ uint8(16), uint8(17), uint8(18), uint8(19), uint8(20), uint8(22), uint8(22), uint8(24), uint8(24), uint8(17), /* 10 */ uint8(18), uint8(19), uint8(20), uint8(7), uint8(22), uint8(9), uint8(24), uint8(17), uint8(18), uint8(19), @@ -177904,23 +177953,23 @@ var fts5yy_lookahead = [121]uint8{ /* 100 */ uint8(9), uint8(9), uint8(27), uint8(27), uint8(11), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), /* 110 */ uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), /* 120 */ uint8(27), -} /* sqlite3.c:212870:29 */ +} /* sqlite3.c:212882:29 */ var fts5yy_shift_ofst = [35]uint8{ /* 0 */ uint8(44), uint8(44), uint8(44), uint8(44), uint8(44), uint8(44), uint8(51), uint8(77), uint8(43), uint8(12), /* 10 */ uint8(14), uint8(83), uint8(82), uint8(14), uint8(23), uint8(23), uint8(31), uint8(31), uint8(71), uint8(74), /* 20 */ uint8(78), uint8(81), uint8(86), uint8(91), uint8(6), uint8(53), uint8(53), uint8(60), uint8(64), uint8(68), /* 30 */ uint8(53), uint8(87), uint8(92), uint8(53), uint8(93), -} /* sqlite3.c:212888:28 */ +} /* sqlite3.c:212900:28 */ var fts5yy_reduce_ofst = [18]int8{ /* 0 */ int8(-16), int8(-8), int8(0), int8(9), int8(17), int8(25), int8(46), int8(-17), int8(-17), int8(37), /* 10 */ int8(67), int8(4), int8(4), int8(8), int8(4), int8(20), int8(27), int8(38), -} /* sqlite3.c:212897:26 */ +} /* sqlite3.c:212909:26 */ var fts5yy_default = [35]uint8{ /* 0 */ uint8(80), uint8(80), uint8(80), uint8(80), uint8(80), uint8(80), uint8(95), uint8(80), uint8(80), uint8(105), /* 10 */ uint8(80), uint8(110), uint8(110), uint8(80), uint8(110), uint8(110), uint8(80), uint8(80), uint8(80), uint8(80), /* 20 */ uint8(80), uint8(91), uint8(80), uint8(80), uint8(80), uint8(101), uint8(100), uint8(80), uint8(80), uint8(90), /* 30 */ uint8(103), uint8(80), uint8(80), uint8(104), uint8(80), -} /* sqlite3.c:212901:31 */ +} /* sqlite3.c:212913:31 */ //********* End of lemon-generated parsing tables **************************** // The next table maps tokens (terminal symbols) into fallback tokens. @@ -177957,9 +178006,9 @@ type fts5yyStackEntry = struct { Fmajor uint8 _ [6]byte Fminor Fts5YYMINORTYPE -} /* sqlite3.c:212944:1 */ +} /* sqlite3.c:212956:1 */ -type Fts5yyStackEntry = fts5yyStackEntry /* sqlite3.c:212951:33 */ +type Fts5yyStackEntry = fts5yyStackEntry /* sqlite3.c:212963:33 */ // The state of the parser is completely contained in an instance of // the following structure @@ -177968,9 +178017,9 @@ type fts5yyParser = struct { FpParse uintptr Ffts5yystack [100]Fts5yyStackEntry Ffts5yystackEnd uintptr -} /* sqlite3.c:212955:1 */ +} /* sqlite3.c:212967:1 */ -type Fts5yyParser = fts5yyParser /* sqlite3.c:212974:29 */ +type Fts5yyParser = fts5yyParser /* sqlite3.c:212986:29 */ // Datatype of the argument to the memory allocated passed as the // second argument to sqlite3Fts5ParserAlloc() below. This can be changed by @@ -177978,7 +178027,7 @@ type Fts5yyParser = fts5yyParser /* sqlite3.c:212974:29 */ // grammar. // Initialize a new parser that has already been allocated. -func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3.c:213123:13: */ +func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3.c:213135:13: */ var fts5yypParser uintptr = fts5yypRawParser (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos = fts5yypParser + 16 /* &.fts5yystack */ @@ -177997,7 +178046,7 @@ func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3 // Outputs: // A pointer to a parser. This pointer is used in subsequent calls // to sqlite3Fts5Parser and sqlite3Fts5ParserFree. -func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqlite3.c:213162:13: */ +func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqlite3.c:213174:13: */ var fts5yypParser uintptr fts5yypParser = (*(*func(*libc.TLS, U64) uintptr)(unsafe.Pointer(&mallocProc)))(tls, U64(unsafe.Sizeof(Fts5yyParser{}))) if fts5yypParser != 0 { @@ -178013,7 +178062,7 @@ func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqli // a pointer to the value to be deleted. The code used to do the // deletions is derived from the %destructor and/or %token_destructor // directives of the input grammar. -func fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, fts5yypminor uintptr) { /* sqlite3.c:213181:13: */ +func fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, fts5yypminor uintptr) { /* sqlite3.c:213193:13: */ var pParse uintptr = (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse _ = pParse @@ -178071,7 +178120,7 @@ func fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, // // If there is a destructor routine associated with the token which // is popped from the stack, then call it. -func fts5yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:213240:13: */ +func fts5yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:213252:13: */ var fts5yytos uintptr fts5yytos = libc.PostDecUintptr(&(*Fts5yyParser)(unsafe.Pointer(pParser)).Ffts5yytos, 24) @@ -178079,7 +178128,7 @@ func fts5yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:2132 } // Clear all secondary memory allocations from the parser -func sqlite3Fts5ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:213258:13: */ +func sqlite3Fts5ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:213270:13: */ var pParser uintptr = p for (*Fts5yyParser)(unsafe.Pointer(pParser)).Ffts5yytos > pParser+16 /* &.fts5yystack */ { fts5yy_pop_parser_stack(tls, pParser) @@ -178092,7 +178141,7 @@ func sqlite3Fts5ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:213258:1 // If the fts5YYPARSEFREENEVERNULL macro exists (for example because it // is defined in a %include section of the input grammar) then it is // assumed that the input pointer is never NULL. -func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqlite3.c:213275:13: */ +func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqlite3.c:213287:13: */ if p == uintptr(0) { return } @@ -178116,7 +178165,7 @@ func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqli // Find the appropriate action for a parser given the terminal // look-ahead token iLookAhead. -func fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) uint8 { /* sqlite3.c:213338:25: */ +func fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) uint8 { /* sqlite3.c:213350:25: */ var i int32 if int32(stateno) > Fts5YY_MAX_SHIFT { @@ -178140,7 +178189,7 @@ func fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) ui // Find the appropriate action for a parser given the non-terminal // look-ahead token iLookAhead. -func fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) uint8 { /* sqlite3.c:213403:25: */ +func fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) uint8 { /* sqlite3.c:213415:25: */ var i int32 i = int32(fts5yy_reduce_ofst[stateno]) @@ -178151,7 +178200,7 @@ func fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) u } // The following routine is called if the stack overflows. -func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213432:13: */ +func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213444:13: */ var pParse uintptr = (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse for (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos > fts5yypParser+16 /* &.fts5yystack */ { @@ -178170,7 +178219,7 @@ func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:21 // Print tracing information for a SHIFT action // Perform a shift action. -func fts5yy_shift(tls *libc.TLS, fts5yypParser uintptr, fts5yyNewState uint8, fts5yyMajor uint8, fts5yyMinor Fts5Token) { /* sqlite3.c:213475:13: */ +func fts5yy_shift(tls *libc.TLS, fts5yypParser uintptr, fts5yyNewState uint8, fts5yyMajor uint8, fts5yyMinor Fts5Token) { /* sqlite3.c:213487:13: */ var fts5yytos uintptr (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos += 24 if (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos > (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yystackEnd { @@ -178219,7 +178268,7 @@ var fts5yyRuleInfoLhs = [28]uint8{ uint8(24), // (25) phrase ::= STRING star_opt uint8(26), // (26) star_opt ::= STAR uint8(26), // (27) star_opt ::= -} /* sqlite3.c:213516:29 */ +} /* sqlite3.c:213528:29 */ // For rule J, fts5yyRuleInfoNRhs[J] contains the negative of the number // of symbols on the right-hand side of that rule. @@ -178252,7 +178301,7 @@ var fts5yyRuleInfoNRhs = [28]int8{ int8(-2), // (25) phrase ::= STRING star_opt int8(-1), // (26) star_opt ::= STAR int8(0), // (27) star_opt ::= -} /* sqlite3.c:213549:26 */ +} /* sqlite3.c:213561:26 */ // Forward Declaration @@ -178264,7 +178313,7 @@ var fts5yyRuleInfoNRhs = [28]int8{ // if the lookahead token has already been consumed. As this procedure is // only called from one place, optimizing compilers will in-line it, which // means that the extra parameters have no performance impact. -func fts5yy_reduce(tls *libc.TLS, fts5yypParser uintptr, fts5yyruleno uint32, fts5yyLookahead int32, fts5yyLookaheadToken Fts5Token) uint8 { /* sqlite3.c:213592:25: */ +func fts5yy_reduce(tls *libc.TLS, fts5yypParser uintptr, fts5yyruleno uint32, fts5yyLookahead int32, fts5yyLookaheadToken Fts5Token) uint8 { /* sqlite3.c:213604:25: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -178474,7 +178523,7 @@ func fts5yy_reduce(tls *libc.TLS, fts5yypParser uintptr, fts5yyruleno uint32, ft // The following code executes when the parse fails // The following code executes when a syntax error first occurs. -func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32, fts5yyminor Fts5Token) { /* sqlite3.c:213810:13: */ +func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32, fts5yyminor Fts5Token) { /* sqlite3.c:213822:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -178491,7 +178540,7 @@ func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32 } // The following is executed when the parser accepts -func fts5yy_accept(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213832:13: */ +func fts5yy_accept(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213844:13: */ var pParse uintptr = (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse // Here code is inserted which will be executed whenever the @@ -178520,7 +178569,7 @@ func fts5yy_accept(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213832:1 // // Outputs: // None. -func sqlite3Fts5Parser(tls *libc.TLS, fts5yyp uintptr, fts5yymajor int32, fts5yyminor Fts5Token, pParse uintptr) { /* sqlite3.c:213873:13: */ +func sqlite3Fts5Parser(tls *libc.TLS, fts5yyp uintptr, fts5yymajor int32, fts5yyminor Fts5Token, pParse uintptr) { /* sqlite3.c:213885:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -178575,7 +178624,7 @@ func sqlite3Fts5Parser(tls *libc.TLS, fts5yyp uintptr, fts5yymajor int32, fts5yy // Return the fallback token corresponding to canonical token iToken, or // 0 if iToken has no fallback. -func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:214091:12: */ +func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:214103:12: */ _ = iToken return 0 } @@ -178627,7 +178676,7 @@ type CInstIter1 = struct { FiStart int32 FiEnd int32 _ [4]byte -} /* sqlite3.c:214137:9 */ +} /* sqlite3.c:214149:9 */ // 2014 May 31 // @@ -178667,11 +178716,11 @@ type CInstIter1 = struct { // printf("instance starts at %d, ends at %d\n", iter.iStart, iter.iEnd); // } // -type CInstIter = CInstIter1 /* sqlite3.c:214137:26 */ +type CInstIter = CInstIter1 /* sqlite3.c:214149:26 */ // Advance the iterator to the next coalesced phrase instance. Return // an SQLite error code if an error occurs, or SQLITE_OK otherwise. -func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:214154:12: */ +func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:214166:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -178710,7 +178759,7 @@ func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:214154 // Initialize the iterator object indicated by the final parameter to // iterate through coalesced phrase instances in column iCol. -func fts5CInstIterInit(tls *libc.TLS, pApi uintptr, pFts uintptr, iCol int32, pIter uintptr) int32 { /* sqlite3.c:214185:12: */ +func fts5CInstIterInit(tls *libc.TLS, pApi uintptr, pFts uintptr, iCol int32, pIter uintptr) int32 { /* sqlite3.c:214197:12: */ var rc int32 libc.X__builtin___memset_chk(tls, pIter, 0, uint64(unsafe.Sizeof(CInstIter{})), libc.X__builtin_object_size(tls, pIter, 0)) @@ -178741,12 +178790,12 @@ type HighlightContext1 = struct { FnIn int32 FiOff int32 FzOut uintptr -} /* sqlite3.c:214211:9 */ +} /* sqlite3.c:214223:9 */ // ************************************************************************ // // Start of highlight() implementation. -type HighlightContext = HighlightContext1 /* sqlite3.c:214211:33 */ +type HighlightContext = HighlightContext1 /* sqlite3.c:214223:33 */ // Append text to the HighlightContext output string - p->zOut. Argument // z points to a buffer containing n bytes of text to append. If n is @@ -178755,7 +178804,7 @@ type HighlightContext = HighlightContext1 /* sqlite3.c:214211:33 */ // If *pRc is set to any value other than SQLITE_OK when this function is // called, it is a no-op. If an error (i.e. an OOM condition) is encountered, // *pRc is set to an error code before returning. -func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int32) { /* sqlite3.c:214234:13: */ +func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int32) { /* sqlite3.c:214246:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -178771,7 +178820,7 @@ func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int } // Tokenizer callback used by implementation of highlight() function. -func fts5HighlightCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214249:12: */ +func fts5HighlightCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214261:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -178826,7 +178875,7 @@ func fts5HighlightCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintp } // Implementation of highlight() function. -func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214303:13: */ +func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214315:13: */ bp := tls.Alloc(100) defer tls.Free(100) @@ -178882,19 +178931,19 @@ type Fts5SFinder1 = struct { _ [4]byte FaFirst uintptr FzDoc uintptr -} /* sqlite3.c:214352:9 */ +} /* sqlite3.c:214364:9 */ // // End of highlight() implementation. // // Context object passed to the fts5SentenceFinderCb() function. -type Fts5SFinder = Fts5SFinder1 /* sqlite3.c:214352:28 */ +type Fts5SFinder = Fts5SFinder1 /* sqlite3.c:214364:28 */ // Add an entry to the Fts5SFinder.aFirst[] array. Grow the array if // necessary. Return SQLITE_OK if successful, or SQLITE_NOMEM if an // error occurs. -func fts5SentenceFinderAdd(tls *libc.TLS, p uintptr, iAdd int32) int32 { /* sqlite3.c:214366:12: */ +func fts5SentenceFinderAdd(tls *libc.TLS, p uintptr, iAdd int32) int32 { /* sqlite3.c:214378:12: */ if (*Fts5SFinder)(unsafe.Pointer(p)).FnFirstAlloc == (*Fts5SFinder)(unsafe.Pointer(p)).FnFirst { var nNew int32 if (*Fts5SFinder)(unsafe.Pointer(p)).FnFirstAlloc != 0 { @@ -178918,7 +178967,7 @@ func fts5SentenceFinderAdd(tls *libc.TLS, p uintptr, iAdd int32) int32 { /* sqli // This function is an xTokenize() callback used by the auxiliary snippet() // function. Its job is to identify tokens that are the first in a sentence. // For each such token, an entry is added to the SFinder.aFirst[] array. -func fts5SentenceFinderCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214385:12: */ +func fts5SentenceFinderCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214397:12: */ var rc int32 = SQLITE_OK _ = pToken @@ -178947,7 +178996,7 @@ func fts5SentenceFinderCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken return rc } -func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, aSeen uintptr, iCol int32, iPos int32, nToken int32, pnScore uintptr, piPos uintptr) int32 { /* sqlite3.c:214418:12: */ +func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, aSeen uintptr, iCol int32, iPos int32, nToken int32, pnScore uintptr, piPos uintptr) int32 { /* sqlite3.c:214430:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -178999,7 +179048,7 @@ func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, // Return the value in pVal interpreted as utf-8 text. Except, if pVal // contains a NULL value, return a pointer to a static string zero // bytes in length instead of a NULL pointer. -func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:214467:19: */ +func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:214479:19: */ var zRet uintptr = Xsqlite3_value_text(tls, pVal) if zRet != 0 { return zRet @@ -179008,7 +179057,7 @@ func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:214467: } // Implementation of snippet() function. -func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214475:13: */ +func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214487:13: */ bp := tls.Alloc(172) defer tls.Free(172) @@ -179203,17 +179252,17 @@ type Fts5Bm25Data1 = struct { Favgdl float64 FaIDF uintptr FaFreq uintptr -} /* sqlite3.c:214633:9 */ +} /* sqlite3.c:214645:9 */ //********************************************************************** // The first time the bm25() function is called for a query, an instance // of the following structure is allocated and populated. -type Fts5Bm25Data = Fts5Bm25Data1 /* sqlite3.c:214633:29 */ +type Fts5Bm25Data = Fts5Bm25Data1 /* sqlite3.c:214645:29 */ // Callback used by fts5Bm25GetData() to count the number of rows in the // table matched by each individual phrase within the query. -func fts5CountCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintptr) int32 { /* sqlite3.c:214645:12: */ +func fts5CountCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintptr) int32 { /* sqlite3.c:214657:12: */ var pn uintptr = pUserData _ = pApi _ = pFts @@ -179224,7 +179273,7 @@ func fts5CountCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintptr) i // Set *ppData to point to the Fts5Bm25Data object for the current query. // If the object has not already been allocated, allocate and populate it // now. -func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) int32 { /* sqlite3.c:214661:12: */ +func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) int32 { /* sqlite3.c:214673:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -179306,7 +179355,7 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) } // Implementation of bm25() function. -func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214734:13: */ +func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214746:13: */ bp := tls.Alloc(28) defer tls.Free(28) @@ -179368,7 +179417,7 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n } } -func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:214790:12: */ +func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:214802:12: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -179402,7 +179451,7 @@ type Builtin = struct { FpUserData uintptr FxFunc Fts5_extension_function FxDestroy uintptr -} /* sqlite3.c:214791:3 */ +} /* sqlite3.c:214803:3 */ // 2014 May 31 // @@ -179417,7 +179466,7 @@ type Builtin = struct { // #include "fts5Int.h" -func sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte U32) int32 { /* sqlite3.c:214833:12: */ +func sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte U32) int32 { /* sqlite3.c:214845:12: */ if U32((*Fts5Buffer)(unsafe.Pointer(pBuf)).FnSpace) < nByte { var nNew U64 if (*Fts5Buffer)(unsafe.Pointer(pBuf)).FnSpace != 0 { @@ -179443,7 +179492,7 @@ func sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte U32) // Encode value iVal as an SQLite varint and append it to the buffer object // pBuf. If an OOM error occurs, set the error code in p. -func sqlite3Fts5BufferAppendVarint(tls *libc.TLS, pRc uintptr, pBuf uintptr, iVal I64) { /* sqlite3.c:214857:13: */ +func sqlite3Fts5BufferAppendVarint(tls *libc.TLS, pRc uintptr, pBuf uintptr, iVal I64) { /* sqlite3.c:214869:13: */ if func() int32 { if ((U32((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn)) + (U32(9))) <= (U32((*Fts5Buffer)(unsafe.Pointer(pBuf)).FnSpace)) { return 0 @@ -179455,21 +179504,21 @@ func sqlite3Fts5BufferAppendVarint(tls *libc.TLS, pRc uintptr, pBuf uintptr, iVa *(*int32)(unsafe.Pointer(pBuf + 8 /* &.n */)) += (sqlite3Fts5PutVarint(tls, ((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp + uintptr((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn)), uint64(iVal))) } -func sqlite3Fts5Put32(tls *libc.TLS, aBuf uintptr, iVal int32) { /* sqlite3.c:214862:13: */ +func sqlite3Fts5Put32(tls *libc.TLS, aBuf uintptr, iVal int32) { /* sqlite3.c:214874:13: */ *(*U8)(unsafe.Pointer(aBuf)) = (U8((iVal >> 24) & 0x00FF)) *(*U8)(unsafe.Pointer(aBuf + 1)) = (U8((iVal >> 16) & 0x00FF)) *(*U8)(unsafe.Pointer(aBuf + 2)) = (U8((iVal >> 8) & 0x00FF)) *(*U8)(unsafe.Pointer(aBuf + 3)) = (U8((iVal >> 0) & 0x00FF)) } -func sqlite3Fts5Get32(tls *libc.TLS, aBuf uintptr) int32 { /* sqlite3.c:214869:12: */ +func sqlite3Fts5Get32(tls *libc.TLS, aBuf uintptr) int32 { /* sqlite3.c:214881:12: */ return (int32(((((U32(*(*U8)(unsafe.Pointer(aBuf)))) << 24) + (U32(int32(*(*U8)(unsafe.Pointer(aBuf + 1))) << 16))) + (U32(int32(*(*U8)(unsafe.Pointer(aBuf + 2))) << 8))) + U32(*(*U8)(unsafe.Pointer(aBuf + 3))))) } // Append buffer nData/pData to buffer pBuf. If an OOM error occurs, set // the error code in p. If an error has already occurred when this function // is called, it is a no-op. -func sqlite3Fts5BufferAppendBlob(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData U32, pData uintptr) { /* sqlite3.c:214878:13: */ +func sqlite3Fts5BufferAppendBlob(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData U32, pData uintptr) { /* sqlite3.c:214890:13: */ if nData != 0 { if func() int32 { @@ -179488,7 +179537,7 @@ func sqlite3Fts5BufferAppendBlob(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData // Append the nul-terminated string zStr to the buffer pBuf. This function // ensures that the byte following the buffer data is set to 0x00, even // though this byte is not included in the pBuf->n count. -func sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zStr uintptr) { /* sqlite3.c:214897:13: */ +func sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zStr uintptr) { /* sqlite3.c:214909:13: */ var nStr int32 = int32(libc.Xstrlen(tls, zStr)) sqlite3Fts5BufferAppendBlob(tls, pRc, pBuf, (uint32(nStr + 1)), zStr) (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn-- @@ -179500,7 +179549,7 @@ func sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zSt // Like sqlite3Fts5BufferAppendString(), this function ensures that the byte // following the buffer data is set to 0x00, even though this byte is not // included in the pBuf->n count. -func sqlite3Fts5BufferAppendPrintf(tls *libc.TLS, pRc uintptr, pBuf uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:214915:13: */ +func sqlite3Fts5BufferAppendPrintf(tls *libc.TLS, pRc uintptr, pBuf uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:214927:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var zTmp uintptr var ap Va_list @@ -179518,7 +179567,7 @@ func sqlite3Fts5BufferAppendPrintf(tls *libc.TLS, pRc uintptr, pBuf uintptr, zFm } } -func sqlite3Fts5Mprintf(tls *libc.TLS, pRc uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:214936:13: */ +func sqlite3Fts5Mprintf(tls *libc.TLS, pRc uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:214948:13: */ var zRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var ap Va_list @@ -179534,26 +179583,26 @@ func sqlite3Fts5Mprintf(tls *libc.TLS, pRc uintptr, zFmt uintptr, va uintptr) ui } // Free any buffer allocated by pBuf. Zero the structure before returning. -func sqlite3Fts5BufferFree(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214954:13: */ +func sqlite3Fts5BufferFree(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214966:13: */ Xsqlite3_free(tls, (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp) libc.X__builtin___memset_chk(tls, pBuf, 0, uint64(unsafe.Sizeof(Fts5Buffer{})), libc.X__builtin_object_size(tls, pBuf, 0)) } // Zero the contents of the buffer object. But do not free the associated // memory allocation. -func sqlite3Fts5BufferZero(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214963:13: */ +func sqlite3Fts5BufferZero(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214975:13: */ (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn = 0 } // Set the buffer to contain nData/pData. If an OOM error occurs, leave an // the error code in p. If an error has already occurred when this function // is called, it is a no-op. -func sqlite3Fts5BufferSet(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData int32, pData uintptr) { /* sqlite3.c:214972:13: */ +func sqlite3Fts5BufferSet(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData int32, pData uintptr) { /* sqlite3.c:214984:13: */ (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn = 0 sqlite3Fts5BufferAppendBlob(tls, pRc, pBuf, uint32(nData), pData) } -func sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piOff uintptr) int32 { /* sqlite3.c:214982:12: */ +func sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piOff uintptr) int32 { /* sqlite3.c:214994:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -179611,14 +179660,14 @@ func sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piO // Advance the iterator object passed as the only argument. Return true // if the iterator reaches EOF, or false otherwise. -func sqlite3Fts5PoslistReaderNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:215021:12: */ +func sqlite3Fts5PoslistReaderNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:215033:12: */ if sqlite3Fts5PoslistNext64(tls, (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fa, (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fn, (pIter+12 /* &.i */), (pIter+24 /* &.iPos */)) != 0 { (*Fts5PoslistReader)(unsafe.Pointer(pIter)).FbEof = U8(1) } return int32((*Fts5PoslistReader)(unsafe.Pointer(pIter)).FbEof) } -func sqlite3Fts5PoslistReaderInit(tls *libc.TLS, a uintptr, n int32, pIter uintptr) int32 { /* sqlite3.c:215028:12: */ +func sqlite3Fts5PoslistReaderInit(tls *libc.TLS, a uintptr, n int32, pIter uintptr) int32 { /* sqlite3.c:215040:12: */ libc.X__builtin___memset_chk(tls, pIter, 0, uint64(unsafe.Sizeof(Fts5PoslistReader{})), libc.X__builtin_object_size(tls, pIter, 0)) (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fa = a (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fn = n @@ -179630,7 +179679,7 @@ func sqlite3Fts5PoslistReaderInit(tls *libc.TLS, a uintptr, n int32, pIter uintp // pBuf, which must be already be large enough to hold the new data. // The previous position written to this list is *piPrev. *piPrev is set // to iPos before returning. -func sqlite3Fts5PoslistSafeAppend(tls *libc.TLS, pBuf uintptr, piPrev uintptr, iPos I64) { /* sqlite3.c:215045:13: */ +func sqlite3Fts5PoslistSafeAppend(tls *libc.TLS, pBuf uintptr, piPrev uintptr, iPos I64) { /* sqlite3.c:215057:13: */ if (iPos & colmask) != (*(*I64)(unsafe.Pointer(piPrev)) & colmask) { *(*U8)(unsafe.Pointer((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp + uintptr(libc.PostIncInt32(&(*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn, 1)))) = U8(1) *(*int32)(unsafe.Pointer(pBuf + 8 /* &.n */)) += (sqlite3Fts5PutVarint(tls, ((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp + uintptr((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn)), (uint64(iPos >> 32)))) @@ -179640,9 +179689,9 @@ func sqlite3Fts5PoslistSafeAppend(tls *libc.TLS, pBuf uintptr, piPrev uintptr, i *(*I64)(unsafe.Pointer(piPrev)) = iPos } -var colmask I64 = (I64((int64(0x7FFFFFFF))) << 32) /* sqlite3.c:215050:20 */ +var colmask I64 = (I64((int64(0x7FFFFFFF))) << 32) /* sqlite3.c:215062:20 */ -func sqlite3Fts5PoslistWriterAppend(tls *libc.TLS, pBuf uintptr, pWriter uintptr, iPos I64) int32 { /* sqlite3.c:215060:12: */ +func sqlite3Fts5PoslistWriterAppend(tls *libc.TLS, pBuf uintptr, pWriter uintptr, iPos I64) int32 { /* sqlite3.c:215072:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -179659,7 +179708,7 @@ func sqlite3Fts5PoslistWriterAppend(tls *libc.TLS, pBuf uintptr, pWriter uintptr return SQLITE_OK } -func sqlite3Fts5MallocZero(tls *libc.TLS, pRc uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:215071:13: */ +func sqlite3Fts5MallocZero(tls *libc.TLS, pRc uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:215083:13: */ var pRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { pRet = Xsqlite3_malloc64(tls, uint64(nByte)) @@ -179680,7 +179729,7 @@ func sqlite3Fts5MallocZero(tls *libc.TLS, pRc uintptr, nByte Sqlite3_int64) uint // // It is the responsibility of the caller to eventually free the returned // buffer using sqlite3_free(). If an OOM error occurs, NULL is returned. -func sqlite3Fts5Strndup(tls *libc.TLS, pRc uintptr, pIn uintptr, nIn int32) uintptr { /* sqlite3.c:215092:13: */ +func sqlite3Fts5Strndup(tls *libc.TLS, pRc uintptr, pIn uintptr, nIn int32) uintptr { /* sqlite3.c:215104:13: */ var zRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { if nIn < 0 { @@ -179705,7 +179754,7 @@ func sqlite3Fts5Strndup(tls *libc.TLS, pRc uintptr, pIn uintptr, nIn int32) uint // * The 10 integer ASCII characters. // * The underscore character "_" (0x5F). // * The unicode "subsitute" character (0x1A). -func sqlite3Fts5IsBareword(tls *libc.TLS, t int8) int32 { /* sqlite3.c:215120:12: */ +func sqlite3Fts5IsBareword(tls *libc.TLS, t int8) int32 { /* sqlite3.c:215132:12: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -179730,13 +179779,13 @@ type Fts5TermsetEntry1 = struct { FnTerm int32 FiIdx int32 FpNext uintptr -} /* sqlite3.c:212096:9 */ +} /* sqlite3.c:212108:9 */ // ************************************************************************ // -type Fts5TermsetEntry = Fts5TermsetEntry1 /* sqlite3.c:215138:33 */ +type Fts5TermsetEntry = Fts5TermsetEntry1 /* sqlite3.c:215150:33 */ -func sqlite3Fts5TermsetNew(tls *libc.TLS, pp uintptr) int32 { /* sqlite3.c:215150:12: */ +func sqlite3Fts5TermsetNew(tls *libc.TLS, pp uintptr) int32 { /* sqlite3.c:215162:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -179745,7 +179794,7 @@ func sqlite3Fts5TermsetNew(tls *libc.TLS, pp uintptr) int32 { /* sqlite3.c:21515 return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func sqlite3Fts5TermsetAdd(tls *libc.TLS, p uintptr, iIdx int32, pTerm uintptr, nTerm int32, pbPresent uintptr) int32 { /* sqlite3.c:215156:12: */ +func sqlite3Fts5TermsetAdd(tls *libc.TLS, p uintptr, iIdx int32, pTerm uintptr, nTerm int32, pbPresent uintptr) int32 { /* sqlite3.c:215168:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -179791,7 +179840,7 @@ func sqlite3Fts5TermsetAdd(tls *libc.TLS, p uintptr, iIdx int32, pTerm uintptr, return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func sqlite3Fts5TermsetFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:215205:13: */ +func sqlite3Fts5TermsetFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:215217:13: */ if p != 0 { var i U32 for i = U32(0); i < (U32((int32(uint64(unsafe.Sizeof([512]uintptr{})) / uint64(unsafe.Sizeof(uintptr(0))))))); i++ { @@ -179823,18 +179872,18 @@ func sqlite3Fts5TermsetFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:215205:13: // Maximum allowed page size -func fts5_iswhitespace(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215247:12: */ +func fts5_iswhitespace(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215259:12: */ return (libc.Bool32(int32(x) == ' ')) } -func fts5_isopenquote(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215251:12: */ +func fts5_isopenquote(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215263:12: */ return (libc.Bool32((((int32(x) == '"') || (int32(x) == '\'')) || (int32(x) == '[')) || (int32(x) == '`'))) } // Argument pIn points to a character that is part of a nul-terminated // string. Return a pointer to the first character following *pIn in // the string that is not a white-space character. -func fts5ConfigSkipWhitespace(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215260:19: */ +func fts5ConfigSkipWhitespace(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215272:19: */ var p uintptr = pIn if p != 0 { for fts5_iswhitespace(tls, *(*int8)(unsafe.Pointer(p))) != 0 { @@ -179847,7 +179896,7 @@ func fts5ConfigSkipWhitespace(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c // Argument pIn points to a character that is part of a nul-terminated // string. Return a pointer to the first character following *pIn in // the string that is not a "bareword" character. -func fts5ConfigSkipBareword(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215273:19: */ +func fts5ConfigSkipBareword(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215285:19: */ var p uintptr = pIn for sqlite3Fts5IsBareword(tls, *(*int8)(unsafe.Pointer(p))) != 0 { p++ @@ -179858,11 +179907,11 @@ func fts5ConfigSkipBareword(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:2 return p } -func fts5_isdigit(tls *libc.TLS, a int8) int32 { /* sqlite3.c:215280:12: */ +func fts5_isdigit(tls *libc.TLS, a int8) int32 { /* sqlite3.c:215292:12: */ return (libc.Bool32((int32(a) >= '0') && (int32(a) <= '9'))) } -func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215286:19: */ +func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215298:19: */ var p uintptr = pIn switch int32(*(*int8)(unsafe.Pointer(p))) { case 'n': @@ -179951,7 +180000,7 @@ func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:21 // the character immediately following it. Or, if the close-quote is not // found, -1 is returned. If -1 is returned, the buffer is left in an // undefined state. -func fts5Dequote(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:215362:12: */ +func fts5Dequote(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:215374:12: */ var q int8 var iIn int32 = 1 var iOut int32 = 0 @@ -179996,7 +180045,7 @@ func fts5Dequote(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:215362:12: */ // 'xyz' becomes xyz // [pqr] becomes pqr // `mno` becomes mno -func sqlite3Fts5Dequote(tls *libc.TLS, z uintptr) { /* sqlite3.c:215407:13: */ +func sqlite3Fts5Dequote(tls *libc.TLS, z uintptr) { /* sqlite3.c:215419:13: */ var quote int8 // Quote character (if any ) quote = *(*int8)(unsafe.Pointer(z)) @@ -180009,11 +180058,11 @@ type Fts5Enum1 = struct { FzName uintptr FeVal int32 _ [4]byte -} /* sqlite3.c:215418:1 */ +} /* sqlite3.c:215430:1 */ -type Fts5Enum = Fts5Enum1 /* sqlite3.c:215422:25 */ +type Fts5Enum = Fts5Enum1 /* sqlite3.c:215434:25 */ -func fts5ConfigSetEnum(tls *libc.TLS, aEnum uintptr, zEnum uintptr, peVal uintptr) int32 { /* sqlite3.c:215424:12: */ +func fts5ConfigSetEnum(tls *libc.TLS, aEnum uintptr, zEnum uintptr, peVal uintptr) int32 { /* sqlite3.c:215436:12: */ var nEnum int32 = int32(libc.Xstrlen(tls, zEnum)) var i int32 var iVal int32 = -1 @@ -180041,7 +180090,7 @@ func fts5ConfigSetEnum(tls *libc.TLS, aEnum uintptr, zEnum uintptr, peVal uintpt // an error occurs, an SQLite error code is returned and an error message // may be left in *pzErr. It is the responsibility of the caller to // eventually free any such error message using sqlite3_free(). -func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCmd uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215453:12: */ +func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCmd uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215465:12: */ bp := tls.Alloc(112) defer tls.Free(112) @@ -180204,7 +180253,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm // Allocate an instance of the default tokenizer ("simple") at // Fts5Config.pTokenizer. Return SQLITE_OK if successful, or an SQLite error // code if an error occurs. -func fts5ConfigDefaultTokenizer(tls *libc.TLS, pGlobal uintptr, pConfig uintptr) int32 { /* sqlite3.c:215617:12: */ +func fts5ConfigDefaultTokenizer(tls *libc.TLS, pGlobal uintptr, pConfig uintptr) int32 { /* sqlite3.c:215629:12: */ return sqlite3Fts5GetTokenizer(tls, pGlobal, uintptr(0), 0, pConfig, uintptr(0)) } @@ -180222,7 +180271,7 @@ func fts5ConfigDefaultTokenizer(tls *libc.TLS, pGlobal uintptr, pConfig uintptr) // a no-op (NULL is returned). Otherwise, if an OOM occurs within this // function, *pRc is set to SQLITE_NOMEM before returning. *pRc is *not* // set if a parse error (failed to find close quote) occurs. -func fts5ConfigGobbleWord(tls *libc.TLS, pRc uintptr, zIn uintptr, pzOut uintptr, pbQuoted uintptr) uintptr { /* sqlite3.c:215637:19: */ +func fts5ConfigGobbleWord(tls *libc.TLS, pRc uintptr, zIn uintptr, pzOut uintptr, pbQuoted uintptr) uintptr { /* sqlite3.c:215649:19: */ var zRet uintptr = uintptr(0) var nIn Sqlite3_int64 = Sqlite3_int64(libc.Xstrlen(tls, zIn)) @@ -180256,7 +180305,7 @@ func fts5ConfigGobbleWord(tls *libc.TLS, pRc uintptr, zIn uintptr, pzOut uintptr return zRet } -func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215677:12: */ +func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215689:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -180279,7 +180328,7 @@ func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, } // Populate the Fts5Config.zContentExprlist string. -func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:215705:12: */ +func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:215717:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -180312,7 +180361,7 @@ func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:21570 // returned, *ppOut is set to NULL and an error message may be left in // *pzErr. It is the responsibility of the caller to eventually free any // such error message using sqlite3_free(). -func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int32, azArg uintptr, ppOut uintptr, pzErr uintptr) int32 { /* sqlite3.c:215738:12: */ +func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int32, azArg uintptr, ppOut uintptr, pzErr uintptr) int32 { /* sqlite3.c:215750:12: */ bp := tls.Alloc(76) defer tls.Free(76) @@ -180431,7 +180480,7 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int } // Free the configuration object passed as the only argument. -func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:215857:13: */ +func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:215869:13: */ if pConfig != 0 { var i int32 if (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok != 0 { @@ -180456,7 +180505,7 @@ func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:215857 // Call sqlite3_declare_vtab() based on the contents of the configuration // object passed as the only argument. Return SQLITE_OK if successful, or // an SQLite error code if an error occurs. -func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:215884:12: */ +func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:215896:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -180506,7 +180555,7 @@ func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sql // still returns SQLITE_OK. Or, if the tokenization was abandoned early // because the callback returned another non-zero value, it is assumed // to be an SQLite error code and returned to the caller. -func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uintptr, nText int32, pCtx uintptr, xToken uintptr) int32 { /* sqlite3.c:215930:12: */ +func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uintptr, nText int32, pCtx uintptr, xToken uintptr) int32 { /* sqlite3.c:215942:12: */ if pText == uintptr(0) { return SQLITE_OK } @@ -180518,7 +180567,7 @@ func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uint // a comma-separated list of SQL literals followed by a ')' character. // If it actually is this, return a pointer to the ')'. Otherwise, return // NULL to indicate a parse error. -func fts5ConfigSkipArgs(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215949:19: */ +func fts5ConfigSkipArgs(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215961:19: */ var p uintptr = pIn for 1 != 0 { @@ -180545,7 +180594,7 @@ func fts5ConfigSkipArgs(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:21594 // + Open parenthesis - "(" // + Zero or more SQL literals in a comma separated list // + Close parenthesis - ")" -func sqlite3Fts5ConfigParseRank(tls *libc.TLS, zIn uintptr, pzRank uintptr, pzRankArgs uintptr) int32 { /* sqlite3.c:215976:12: */ +func sqlite3Fts5ConfigParseRank(tls *libc.TLS, zIn uintptr, pzRank uintptr, pzRankArgs uintptr) int32 { /* sqlite3.c:215988:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -180609,7 +180658,7 @@ func sqlite3Fts5ConfigParseRank(tls *libc.TLS, zIn uintptr, pzRank uintptr, pzRa return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVal uintptr, pbBadkey uintptr) int32 { /* sqlite3.c:216035:12: */ +func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVal uintptr, pbBadkey uintptr) int32 { /* sqlite3.c:216047:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -180697,7 +180746,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } // Load the contents of the %_config table into memory. -func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 { /* sqlite3.c:216129:12: */ +func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 { /* sqlite3.c:216141:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -180774,7 +180823,7 @@ type Fts5ExprTerm1 = struct { FzTerm uintptr FpIter uintptr FpSynonym uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // 2014 May 31 // @@ -180793,9 +180842,9 @@ type Fts5ExprTerm1 = struct { // All token types in the generated fts5parse.h file are greater than 0. -type Fts5ExprTerm = Fts5ExprTerm1 /* sqlite3.c:216207:29 */ +type Fts5ExprTerm = Fts5ExprTerm1 /* sqlite3.c:216219:29 */ -func sqlite3Fts5ParseError(tls *libc.TLS, pParse uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:216314:13: */ +func sqlite3Fts5ParseError(tls *libc.TLS, pParse uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:216326:13: */ var ap Va_list _ = ap ap = va @@ -180806,12 +180855,12 @@ func sqlite3Fts5ParseError(tls *libc.TLS, pParse uintptr, zFmt uintptr, va uintp _ = ap } -func fts5ExprIsspace(tls *libc.TLS, t int8) int32 { /* sqlite3.c:216324:12: */ +func fts5ExprIsspace(tls *libc.TLS, t int8) int32 { /* sqlite3.c:216336:12: */ return (libc.Bool32((((int32(t) == ' ') || (int32(t) == '\t')) || (int32(t) == '\n')) || (int32(t) == '\r'))) } // Read the first token from the nul-terminated string at *pz. -func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) int32 { /* sqlite3.c:216331:12: */ +func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) int32 { /* sqlite3.c:216343:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -180911,15 +180960,15 @@ func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) return tok } -func fts5ParseAlloc(tls *libc.TLS, t U64) uintptr { /* sqlite3.c:216395:13: */ +func fts5ParseAlloc(tls *libc.TLS, t U64) uintptr { /* sqlite3.c:216407:13: */ return Xsqlite3_malloc64(tls, uint64(Sqlite3_int64(t))) } -func fts5ParseFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216396:13: */ +func fts5ParseFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216408:13: */ Xsqlite3_free(tls, p) } -func sqlite3Fts5ExprNew(tls *libc.TLS, pConfig uintptr, bPhraseToAnd int32, iCol int32, zExpr uintptr, ppNew uintptr, pzErr uintptr) int32 { /* sqlite3.c:216398:12: */ +func sqlite3Fts5ExprNew(tls *libc.TLS, pConfig uintptr, bPhraseToAnd int32, iCol int32, zExpr uintptr, ppNew uintptr, pzErr uintptr) int32 { /* sqlite3.c:216410:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -180997,7 +181046,7 @@ func sqlite3Fts5ExprNew(tls *libc.TLS, pConfig uintptr, bPhraseToAnd int32, iCol // expression that will match a superset of the rows matched by the LIKE or // GLOB. If successful, SQLITE_OK is returned. Otherwise, an SQLite error // code. -func sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol int32, zText uintptr, pp uintptr) int32 { /* sqlite3.c:216479:12: */ +func sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol int32, zText uintptr, pp uintptr) int32 { /* sqlite3.c:216491:12: */ bp := tls.Alloc(3) defer tls.Free(3) @@ -181072,7 +181121,7 @@ func sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol in } // Free the expression node object passed as the only argument. -func sqlite3Fts5ParseNodeFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216549:13: */ +func sqlite3Fts5ParseNodeFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216561:13: */ if p != 0 { var i int32 for i = 0; i < (*Fts5ExprNode)(unsafe.Pointer(p)).FnChild; i++ { @@ -181084,7 +181133,7 @@ func sqlite3Fts5ParseNodeFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216549:13 } // Free the expression object passed as the only argument. -func sqlite3Fts5ExprFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216563:13: */ +func sqlite3Fts5ExprFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216575:13: */ if p != 0 { sqlite3Fts5ParseNodeFree(tls, (*Fts5Expr)(unsafe.Pointer(p)).FpRoot) Xsqlite3_free(tls, (*Fts5Expr)(unsafe.Pointer(p)).FapExprPhrase) @@ -181092,7 +181141,7 @@ func sqlite3Fts5ExprFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216563:13: */ } } -func sqlite3Fts5ExprAnd(tls *libc.TLS, pp1 uintptr, p2 uintptr) int32 { /* sqlite3.c:216571:12: */ +func sqlite3Fts5ExprAnd(tls *libc.TLS, pp1 uintptr, p2 uintptr) int32 { /* sqlite3.c:216583:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -181133,7 +181182,7 @@ func sqlite3Fts5ExprAnd(tls *libc.TLS, pp1 uintptr, p2 uintptr) int32 { /* sqlit // Argument pTerm must be a synonym iterator. Return the current rowid // that it points to. -func fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintptr) I64 { /* sqlite3.c:216611:12: */ +func fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintptr) I64 { /* sqlite3.c:216623:12: */ var iRet I64 = int64(0) var bRetValid int32 = 0 var p uintptr @@ -181155,7 +181204,7 @@ func fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintp } // Argument pTerm must be a synonym iterator. -func fts5ExprSynonymList(tls *libc.TLS, pTerm uintptr, iRowid I64, pBuf uintptr, pa uintptr, pn uintptr) int32 { /* sqlite3.c:216635:12: */ +func fts5ExprSynonymList(tls *libc.TLS, pTerm uintptr, iRowid I64, pBuf uintptr, pa uintptr, pn uintptr) int32 { /* sqlite3.c:216647:12: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -181319,7 +181368,7 @@ __22: // SQLITE_OK is returned if an error occurs, or an SQLite error code // otherwise. It is not considered an error code if the current rowid is // not a match. -func fts5ExprPhraseIsMatch(tls *libc.TLS, pNode uintptr, pPhrase uintptr, pbMatch uintptr) int32 { /* sqlite3.c:216718:12: */ +func fts5ExprPhraseIsMatch(tls *libc.TLS, pNode uintptr, pPhrase uintptr, pbMatch uintptr) int32 { /* sqlite3.c:216730:12: */ bp := tls.Alloc(168) defer tls.Free(168) @@ -181544,11 +181593,11 @@ type Fts5LookaheadReader1 = struct { Fi int32 FiPos I64 FiLookahead I64 -} /* sqlite3.c:216802:9 */ +} /* sqlite3.c:216814:9 */ -type Fts5LookaheadReader = Fts5LookaheadReader1 /* sqlite3.c:216802:36 */ +type Fts5LookaheadReader = Fts5LookaheadReader1 /* sqlite3.c:216814:36 */ -func fts5LookaheadReaderNext(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:216813:12: */ +func fts5LookaheadReaderNext(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:216825:12: */ (*Fts5LookaheadReader)(unsafe.Pointer(p)).FiPos = (*Fts5LookaheadReader)(unsafe.Pointer(p)).FiLookahead if sqlite3Fts5PoslistNext64(tls, (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fa, (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fn, (p+12 /* &.i */), (p+24 /* &.iLookahead */)) != 0 { (*Fts5LookaheadReader)(unsafe.Pointer(p)).FiLookahead = (I64((int64(1))) << 62) @@ -181556,7 +181605,7 @@ func fts5LookaheadReaderNext(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:2168 return (libc.Bool32((*Fts5LookaheadReader)(unsafe.Pointer(p)).FiPos == (I64((int64(1))) << 62))) } -func fts5LookaheadReaderInit(tls *libc.TLS, a uintptr, n int32, p uintptr) int32 { /* sqlite3.c:216821:12: */ +func fts5LookaheadReaderInit(tls *libc.TLS, a uintptr, n int32, p uintptr) int32 { /* sqlite3.c:216833:12: */ libc.X__builtin___memset_chk(tls, p, 0, uint64(unsafe.Sizeof(Fts5LookaheadReader{})), libc.X__builtin_object_size(tls, p, 0)) (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fa = a (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fn = n @@ -181568,9 +181617,9 @@ type Fts5NearTrimmer1 = struct { Freader Fts5LookaheadReader Fwriter Fts5PoslistWriter FpOut uintptr -} /* sqlite3.c:216832:9 */ +} /* sqlite3.c:216844:9 */ -type Fts5NearTrimmer = Fts5NearTrimmer1 /* sqlite3.c:216832:32 */ +type Fts5NearTrimmer = Fts5NearTrimmer1 /* sqlite3.c:216844:32 */ // The near-set object passed as the first argument contains more than // one phrase. All phrases currently point to the same row. The @@ -181587,7 +181636,7 @@ type Fts5NearTrimmer = Fts5NearTrimmer1 /* sqlite3.c:216832:32 */ // If no error occurs and non-zero (a match) is returned, the position-list // of each phrase object is edited to contain only those entries that // meet the constraint before returning. -func fts5ExprNearIsMatch(tls *libc.TLS, pRc uintptr, pNear uintptr) int32 { /* sqlite3.c:216856:12: */ +func fts5ExprNearIsMatch(tls *libc.TLS, pRc uintptr, pNear uintptr) int32 { /* sqlite3.c:216868:12: */ bp := tls.Alloc(196) defer tls.Free(196) @@ -181789,7 +181838,7 @@ __29: // If the iterator reaches EOF, set *pbEof to true before returning. If // an error occurs, set *pRc to an error code. If either *pbEof or *pRc // are set, return a non-zero value. Otherwise, return zero. -func fts5ExprAdvanceto(tls *libc.TLS, pIter uintptr, bDesc int32, piLast uintptr, pRc uintptr, pbEof uintptr) int32 { /* sqlite3.c:216955:12: */ +func fts5ExprAdvanceto(tls *libc.TLS, pIter uintptr, bDesc int32, piLast uintptr, pRc uintptr, pbEof uintptr) int32 { /* sqlite3.c:216967:12: */ var iLast I64 = *(*I64)(unsafe.Pointer(piLast)) var iRowid I64 @@ -181809,7 +181858,7 @@ func fts5ExprAdvanceto(tls *libc.TLS, pIter uintptr, bDesc int32, piLast uintptr return 0 } -func fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast uintptr, pRc uintptr) int32 { /* sqlite3.c:216981:12: */ +func fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast uintptr, pRc uintptr) int32 { /* sqlite3.c:216993:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -181836,7 +181885,7 @@ func fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast return *(*int32)(unsafe.Pointer(bp /* bEof */)) } -func fts5ExprNearTest(tls *libc.TLS, pRc uintptr, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217011:12: */ +func fts5ExprNearTest(tls *libc.TLS, pRc uintptr, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217023:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -181893,7 +181942,7 @@ func fts5ExprNearTest(tls *libc.TLS, pRc uintptr, pExpr uintptr, pNode uintptr) // If an error occurs, return an SQLite error code. Otherwise, return // SQLITE_OK. It is not considered an error if some term matches zero // documents. -func fts5ExprNearInitAll(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217070:12: */ +func fts5ExprNearInitAll(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217082:12: */ var pNear uintptr = (*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear var i int32 @@ -181959,7 +182008,7 @@ func fts5ExprNearInitAll(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* // Otherwise, if this is a DESC iterator, the opposite is returned: // // (iRhs - iLhs) -func fts5RowidCmp(tls *libc.TLS, pExpr uintptr, iLhs I64, iRhs I64) int32 { /* sqlite3.c:217132:12: */ +func fts5RowidCmp(tls *libc.TLS, pExpr uintptr, iLhs I64, iRhs I64) int32 { /* sqlite3.c:217144:12: */ if (*Fts5Expr)(unsafe.Pointer(pExpr)).FbDesc == 0 { if iLhs < iRhs { @@ -181975,7 +182024,7 @@ func fts5RowidCmp(tls *libc.TLS, pExpr uintptr, iLhs I64, iRhs I64) int32 { /* s return int32(0) } -func fts5ExprSetEof(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217147:13: */ +func fts5ExprSetEof(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217159:13: */ var i int32 (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = 1 (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = 0 @@ -181984,7 +182033,7 @@ func fts5ExprSetEof(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217147:13: */ } } -func fts5ExprNodeZeroPoslist(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217156:13: */ +func fts5ExprNodeZeroPoslist(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217168:13: */ if ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_STRING) || ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_TERM) { var pNear uintptr = (*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear var i int32 @@ -182010,7 +182059,7 @@ func fts5ExprNodeZeroPoslist(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217156 // This means that if the iteration order is ASC, then numerically larger // rowids are considered larger. Or if it is the default DESC, numerically // smaller rowids are larger. -func fts5NodeCompare(tls *libc.TLS, pExpr uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:217186:12: */ +func fts5NodeCompare(tls *libc.TLS, pExpr uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:217198:12: */ if (*Fts5ExprNode)(unsafe.Pointer(p2)).FbEof != 0 { return -1 } @@ -182029,7 +182078,7 @@ func fts5NodeCompare(tls *libc.TLS, pExpr uintptr, p1 uintptr, p2 uintptr) int32 // SQLITE_OK is returned if an error occurs, or an SQLite error code // otherwise. It is not considered an error code if an iterator reaches // EOF. -func fts5ExprNodeTest_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217207:12: */ +func fts5ExprNodeTest_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217219:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -182097,7 +182146,7 @@ func fts5ExprNodeTest_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5ExprNodeNext_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217277:12: */ +func fts5ExprNodeNext_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217289:12: */ var pTerm uintptr = (*(*uintptr)(unsafe.Pointer(((*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear + 24 /* &.apPhrase */))) + 32 /* &.aTerm */) var rc int32 = SQLITE_OK @@ -182156,7 +182205,7 @@ func fts5ExprNodeNext_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromV return rc } -func fts5ExprNodeTest_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217342:12: */ +func fts5ExprNodeTest_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217354:12: */ // As this "NEAR" object is actually a single phrase that consists // of a single term only, grab pointers into the poslist managed by the // fts5_index.c iterator object. This is much faster than synthesizing @@ -182175,7 +182224,7 @@ func fts5ExprNodeTest_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { } // xNext() method for a node of type FTS5_TERM. -func fts5ExprNodeNext_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217370:12: */ +func fts5ExprNodeNext_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217382:12: */ var rc int32 var pIter uintptr = (*Fts5ExprTerm)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(((*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear + 24 /* &.apPhrase */))) + 32 /* &.aTerm */))).FpIter @@ -182193,7 +182242,7 @@ func fts5ExprNodeNext_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromVal return rc } -func fts5ExprNodeTest_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr) { /* sqlite3.c:217394:13: */ +func fts5ExprNodeTest_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr) { /* sqlite3.c:217406:13: */ var pNext uintptr = *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) var i int32 @@ -182209,7 +182258,7 @@ func fts5ExprNodeTest_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr) { /* sqlit (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = (*Fts5ExprNode)(unsafe.Pointer(pNext)).FbNomatch } -func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217413:12: */ +func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217425:12: */ var i int32 var iLast I64 = (*Fts5ExprNode)(unsafe.Pointer(pNode)).FiRowid @@ -182233,7 +182282,7 @@ func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid } // Argument pNode is an FTS5_AND node. -func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* sqlite3.c:217445:12: */ +func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* sqlite3.c:217457:12: */ var iChild int32 var iLast I64 = (*Fts5ExprNode)(unsafe.Pointer(pAnd)).FiRowid var rc int32 = SQLITE_OK @@ -182281,7 +182330,7 @@ func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* return SQLITE_OK } -func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217497:12: */ +func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217509:12: */ var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) + 16 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_AND(tls, pExpr, pNode) @@ -182291,7 +182340,7 @@ func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromVali return rc } -func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217512:12: */ +func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217524:12: */ var rc int32 = SQLITE_OK var p1 uintptr = *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) var p2 uintptr = *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */) + 1*8)) @@ -182317,7 +182366,7 @@ func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { / return rc } -func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217540:12: */ +func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217552:12: */ var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) + 16 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_NOT(tls, pExpr, pNode) @@ -182331,7 +182380,7 @@ func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromVali // If pNode currently points to a match, this function returns SQLITE_OK // without modifying it. Otherwise, pNode is advanced until it does point // to a match or EOF is reached. -func fts5ExprNodeTest(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217561:12: */ +func fts5ExprNodeTest(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217573:12: */ var rc int32 = SQLITE_OK if (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof == 0 { switch (*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType { @@ -182384,7 +182433,7 @@ func fts5ExprNodeTest(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sq // // Return an SQLite error code if an error occurs, or SQLITE_OK otherwise. // It is not an error if there are no matches. -func fts5ExprNodeFirst(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217606:12: */ +func fts5ExprNodeFirst(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217618:12: */ var rc int32 = SQLITE_OK (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = 0 (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = 0 @@ -182446,7 +182495,7 @@ func fts5ExprNodeFirst(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* s // // Return SQLITE_OK if successful, or an SQLite error code otherwise. It // is not considered an error if the query does not match any documents. -func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bDesc int32) int32 { /* sqlite3.c:217665:12: */ +func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bDesc int32) int32 { /* sqlite3.c:217677:12: */ var pRoot uintptr = (*Fts5Expr)(unsafe.Pointer(p)).FpRoot var rc int32 // Return code @@ -182474,7 +182523,7 @@ func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bD // // Return SQLITE_OK if successful, or an SQLite error code otherwise. It // is not considered an error if the query does not match any documents. -func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3.c:217696:12: */ +func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3.c:217708:12: */ var rc int32 var pRoot uintptr = (*Fts5Expr)(unsafe.Pointer(p)).FpRoot @@ -182488,15 +182537,15 @@ func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3 return rc } -func sqlite3Fts5ExprEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:217710:12: */ +func sqlite3Fts5ExprEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:217722:12: */ return (*Fts5ExprNode)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(p)).FpRoot)).FbEof } -func sqlite3Fts5ExprRowid(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:217714:12: */ +func sqlite3Fts5ExprRowid(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:217726:12: */ return (*Fts5ExprNode)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(p)).FpRoot)).FiRowid } -func fts5ParseStringFromToken(tls *libc.TLS, pToken uintptr, pz uintptr) int32 { /* sqlite3.c:217718:12: */ +func fts5ParseStringFromToken(tls *libc.TLS, pToken uintptr, pz uintptr) int32 { /* sqlite3.c:217730:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -182506,7 +182555,7 @@ func fts5ParseStringFromToken(tls *libc.TLS, pToken uintptr, pz uintptr) int32 { } // Free the phrase object passed as the only argument. -func fts5ExprPhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217727:13: */ +func fts5ExprPhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217739:13: */ if pPhrase != 0 { var i int32 for i = 0; i < (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FnTerm; i++ { @@ -182531,7 +182580,7 @@ func fts5ExprPhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217727:13 // Set the "bFirst" flag on the first token of the phrase passed as the // only argument. -func sqlite3Fts5ParseSetCaret(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217752:13: */ +func sqlite3Fts5ParseSetCaret(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217764:13: */ if (pPhrase != 0) && ((*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FnTerm != 0) { (*Fts5ExprTerm)(unsafe.Pointer((pPhrase + 32 /* &.aTerm */))).FbFirst = U8(1) } @@ -182543,7 +182592,7 @@ func sqlite3Fts5ParseSetCaret(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217 // // If an OOM error occurs, both the pNear and pPhrase objects are freed and // NULL returned. -func sqlite3Fts5ParseNearset(tls *libc.TLS, pParse uintptr, pNear uintptr, pPhrase uintptr) uintptr { /* sqlite3.c:217766:24: */ +func sqlite3Fts5ParseNearset(tls *libc.TLS, pParse uintptr, pNear uintptr, pPhrase uintptr) uintptr { /* sqlite3.c:217778:24: */ var SZALLOC int32 = 8 var pRet uintptr = uintptr(0) @@ -182603,12 +182652,12 @@ type TokenCtx1 = struct { FpPhrase uintptr Frc int32 _ [4]byte -} /* sqlite3.c:217826:9 */ +} /* sqlite3.c:217838:9 */ -type TokenCtx = TokenCtx1 /* sqlite3.c:217826:25 */ +type TokenCtx = TokenCtx1 /* sqlite3.c:217838:25 */ // Callback for tokenizing terms used by ParseTerm(). -func fts5ParseTokenize(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:217835:12: */ +func fts5ParseTokenize(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:217847:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -182677,12 +182726,12 @@ func fts5ParseTokenize(tls *libc.TLS, pContext uintptr, tflags int32, pToken uin } // Free the phrase object passed as the only argument. -func sqlite3Fts5ParsePhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217900:13: */ +func sqlite3Fts5ParsePhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217912:13: */ fts5ExprPhraseFree(tls, pPhrase) } // Free the phrase object passed as the second argument. -func sqlite3Fts5ParseNearsetFree(tls *libc.TLS, pNear uintptr) { /* sqlite3.c:217907:13: */ +func sqlite3Fts5ParseNearsetFree(tls *libc.TLS, pNear uintptr) { /* sqlite3.c:217919:13: */ if pNear != 0 { var i int32 for i = 0; i < (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase; i++ { @@ -182693,12 +182742,12 @@ func sqlite3Fts5ParseNearsetFree(tls *libc.TLS, pNear uintptr) { /* sqlite3.c:21 } } -func sqlite3Fts5ParseFinished(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:217918:13: */ +func sqlite3Fts5ParseFinished(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:217930:13: */ (*Fts5Parse)(unsafe.Pointer(pParse)).FpExpr = p } -func parseGrowPhraseArray(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:217923:12: */ +func parseGrowPhraseArray(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:217935:12: */ if ((*Fts5Parse)(unsafe.Pointer(pParse)).FnPhrase % 8) == 0 { var nByte Sqlite3_int64 = (Sqlite3_int64(uint64(unsafe.Sizeof(uintptr(0))) * (uint64((*Fts5Parse)(unsafe.Pointer(pParse)).FnPhrase + 8)))) var apNew uintptr @@ -182715,7 +182764,7 @@ func parseGrowPhraseArray(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:21 // This function is called by the parser to process a string token. The // string may or may not be quoted. In any case it is tokenized and a // phrase object consisting of all tokens returned. -func sqlite3Fts5ParseTerm(tls *libc.TLS, pParse uintptr, pAppend uintptr, pToken uintptr, bPrefix int32) uintptr { /* sqlite3.c:217942:23: */ +func sqlite3Fts5ParseTerm(tls *libc.TLS, pParse uintptr, pAppend uintptr, pToken uintptr, bPrefix int32) uintptr { /* sqlite3.c:217954:23: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -182773,7 +182822,7 @@ func sqlite3Fts5ParseTerm(tls *libc.TLS, pParse uintptr, pAppend uintptr, pToken // Create a new FTS5 expression by cloning phrase iPhrase of the // expression passed as the second argument. -func sqlite3Fts5ExprClonePhrase(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppNew uintptr) int32 { /* sqlite3.c:217996:12: */ +func sqlite3Fts5ExprClonePhrase(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppNew uintptr) int32 { /* sqlite3.c:218008:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -182868,7 +182917,7 @@ func sqlite3Fts5ExprClonePhrase(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppN // Token pTok has appeared in a MATCH expression where the NEAR operator // is expected. If token pTok does not contain "NEAR", store an error // in the pParse object. -func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqlite3.c:218092:13: */ +func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqlite3.c:218104:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -182878,7 +182927,7 @@ func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqli } } -func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p uintptr) { /* sqlite3.c:218100:13: */ +func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p uintptr) { /* sqlite3.c:218112:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -182909,7 +182958,7 @@ func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p // // If an OOM error occurs, store an error code in pParse and return NULL. // The old colset object (if any) is not freed in this case. -func fts5ParseColset(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:218135:19: */ +func fts5ParseColset(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:218147:19: */ var nCol int32 if p != 0 { nCol = (*Fts5Colset)(unsafe.Pointer(p)).FnCol @@ -182947,7 +182996,7 @@ func fts5ParseColset(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintp // Allocate and return an Fts5Colset object specifying the inverse of // the colset passed as the second argument. Free the colset passed // as the second argument before returning. -func sqlite3Fts5ParseColsetInvert(tls *libc.TLS, pParse uintptr, p uintptr) uintptr { /* sqlite3.c:218176:19: */ +func sqlite3Fts5ParseColsetInvert(tls *libc.TLS, pParse uintptr, p uintptr) uintptr { /* sqlite3.c:218188:19: */ var pRet uintptr var nCol int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Parse)(unsafe.Pointer(pParse)).FpConfig)).FnCol @@ -182969,7 +183018,7 @@ func sqlite3Fts5ParseColsetInvert(tls *libc.TLS, pParse uintptr, p uintptr) uint return pRet } -func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p uintptr) uintptr { /* sqlite3.c:218199:19: */ +func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p uintptr) uintptr { /* sqlite3.c:218211:19: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -183008,7 +183057,7 @@ func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p ui // Otherwise, a copy of (*pOrig) is made into memory obtained from // sqlite3Fts5MallocZero() and a pointer to it returned. If the allocation // fails, (*pRc) is set to SQLITE_NOMEM and NULL is returned. -func fts5CloneColset(tls *libc.TLS, pRc uintptr, pOrig uintptr) uintptr { /* sqlite3.c:218239:19: */ +func fts5CloneColset(tls *libc.TLS, pRc uintptr, pOrig uintptr) uintptr { /* sqlite3.c:218251:19: */ var pRet uintptr if pOrig != 0 { var nByte Sqlite3_int64 = (Sqlite3_int64(uint64(unsafe.Sizeof(Fts5Colset{})) + ((uint64((*Fts5Colset)(unsafe.Pointer(pOrig)).FnCol - 1)) * uint64(unsafe.Sizeof(int32(0)))))) @@ -183023,7 +183072,7 @@ func fts5CloneColset(tls *libc.TLS, pRc uintptr, pOrig uintptr) uintptr { /* sql } // Remove from colset pColset any columns that are not also in colset pMerge. -func fts5MergeColset(tls *libc.TLS, pColset uintptr, pMerge uintptr) { /* sqlite3.c:218256:13: */ +func fts5MergeColset(tls *libc.TLS, pColset uintptr, pMerge uintptr) { /* sqlite3.c:218268:13: */ var iIn int32 = 0 // Next input in pColset var iMerge int32 = 0 // Next input in pMerge var iOut int32 = 0 // Next output slot in pColset @@ -183047,7 +183096,7 @@ func fts5MergeColset(tls *libc.TLS, pColset uintptr, pMerge uintptr) { /* sqlite // its decendents. If (*ppFree) is not NULL, it contains a spare copy // of pColset. This function may use the spare copy and set (*ppFree) to // zero, or it may create copies of pColset using fts5CloneColset(). -func fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pNode uintptr, pColset uintptr, ppFree uintptr) { /* sqlite3.c:218282:13: */ +func fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pNode uintptr, pColset uintptr, ppFree uintptr) { /* sqlite3.c:218294:13: */ if (*Fts5Parse)(unsafe.Pointer(pParse)).Frc == SQLITE_OK { if ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_STRING) || ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_TERM) { @@ -183075,7 +183124,7 @@ func fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pNode uintptr, pColset ui } // Apply colset pColset to expression node pExpr and all of its descendents. -func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pColset uintptr) { /* sqlite3.c:218320:13: */ +func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pColset uintptr) { /* sqlite3.c:218332:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -183090,7 +183139,7 @@ func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pCo Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp /* pFree */))) } -func fts5ExprAssignXNext(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:218337:13: */ +func fts5ExprAssignXNext(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:218349:13: */ switch (*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType { case FTS5_STRING: { @@ -183141,7 +183190,7 @@ func fts5ExprAssignXNext(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:218337:13: } } -func fts5ExprAddChildren(tls *libc.TLS, p uintptr, pSub uintptr) { /* sqlite3.c:218370:13: */ +func fts5ExprAddChildren(tls *libc.TLS, p uintptr, pSub uintptr) { /* sqlite3.c:218382:13: */ if ((*Fts5ExprNode)(unsafe.Pointer(p)).FeType != FTS5_NOT) && ((*Fts5ExprNode)(unsafe.Pointer(pSub)).FeType == (*Fts5ExprNode)(unsafe.Pointer(p)).FeType) { var nByte int32 = (int32(uint64(unsafe.Sizeof(uintptr(0))) * uint64((*Fts5ExprNode)(unsafe.Pointer(pSub)).FnChild))) libc.X__builtin___memcpy_chk(tls, ((p + 48 /* &.apChild */) + uintptr((*Fts5ExprNode)(unsafe.Pointer(p)).FnChild)*8), pSub+48 /* &.apChild */, uint64(nByte), libc.X__builtin_object_size(tls, ((p+48 /* &.apChild */)+uintptr((*Fts5ExprNode)(unsafe.Pointer(p)).FnChild)*8), 0)) @@ -183161,7 +183210,7 @@ func fts5ExprAddChildren(tls *libc.TLS, p uintptr, pSub uintptr) { /* sqlite3.c: // into an AND tree: // // abc AND def AND ghi -func fts5ParsePhraseToAnd(tls *libc.TLS, pParse uintptr, pNear uintptr) uintptr { /* sqlite3.c:218392:21: */ +func fts5ParsePhraseToAnd(tls *libc.TLS, pParse uintptr, pNear uintptr) uintptr { /* sqlite3.c:218404:21: */ var nTerm int32 = (*Fts5ExprPhrase)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer((pNear + 24 /* &.apPhrase */))))).FnTerm var ii int32 var nByte int32 @@ -183204,7 +183253,7 @@ func fts5ParsePhraseToAnd(tls *libc.TLS, pParse uintptr, pNear uintptr) uintptr // Allocate and return a new expression object. If anything goes wrong (i.e. // OOM error), leave an error code in pParse and return NULL. -func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uintptr, pRight uintptr, pNear uintptr) uintptr { /* sqlite3.c:218446:21: */ +func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uintptr, pRight uintptr, pNear uintptr) uintptr { /* sqlite3.c:218458:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -183295,7 +183344,7 @@ func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uint return pRet } -func sqlite3Fts5ParseImplicitAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:218531:21: */ +func sqlite3Fts5ParseImplicitAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:218543:21: */ var pRet uintptr = uintptr(0) var pPrev uintptr @@ -183339,7 +183388,7 @@ func sqlite3Fts5ParseImplicitAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, p return pRet } -func fts5ExprTermPrint(tls *libc.TLS, pTerm uintptr) uintptr { /* sqlite3.c:218595:13: */ +func fts5ExprTermPrint(tls *libc.TLS, pTerm uintptr) uintptr { /* sqlite3.c:218607:13: */ var nByte Sqlite3_int64 = int64(0) var p uintptr var zQuoted uintptr @@ -183375,7 +183424,7 @@ func fts5ExprTermPrint(tls *libc.TLS, pTerm uintptr) uintptr { /* sqlite3.c:2185 return zQuoted } -func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:218627:13: */ +func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:218639:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -183398,7 +183447,7 @@ func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uin // pointer to a buffer containing that representation. It is the // responsibility of the caller to at some point free the buffer using // sqlite3_free(). -func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218648:13: */ +func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218660:13: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -183499,7 +183548,7 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr return zRet } -func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218727:13: */ +func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218739:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -183636,7 +183685,7 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s // The implementation of user-defined scalar functions fts5_expr() (bTcl==0) // and fts5_expr_tcl() (bTcl!=0). -func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bTcl int32) { /* sqlite3.c:218818:13: */ +func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bTcl int32) { /* sqlite3.c:218830:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -183729,18 +183778,18 @@ func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bT sqlite3Fts5ExprFree(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pExpr */))) } -func fts5ExprFunctionHr(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218903:13: */ +func fts5ExprFunctionHr(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218915:13: */ fts5ExprFunction(tls, pCtx, nArg, apVal, 0) } -func fts5ExprFunctionTcl(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218910:13: */ +func fts5ExprFunctionTcl(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218922:13: */ fts5ExprFunction(tls, pCtx, nArg, apVal, 1) } // The implementation of an SQLite user-defined-function that accepts a // single integer as an argument. If the integer is an alpha-numeric // unicode code point, 1 is returned. Otherwise 0. -func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218923:13: */ +func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218935:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -183760,7 +183809,7 @@ func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { / Xsqlite3_result_int(tls, pCtx, int32(*(*U8)(unsafe.Pointer(bp /* &aArr[0] */ + uintptr(sqlite3Fts5UnicodeCategory(tls, U32(iCode))))))) } -func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218944:13: */ +func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218956:13: */ if (nArg != 1) && (nArg != 2) { Xsqlite3_result_error(tls, pCtx, ts+31925 /* "wrong number of ..." */, -1) @@ -183777,7 +183826,7 @@ func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* s // This is called during initialization to register the fts5_expr() scalar // UDF with the SQLite handle passed as the only argument. -func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:218966:12: */ +func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:218978:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -183814,10 +183863,10 @@ func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* type Fts5ExprFunc = struct { Fz uintptr Fx uintptr -} /* sqlite3.c:218967:3 */ +} /* sqlite3.c:218979:3 */ // Return the number of phrases in expression pExpr. -func sqlite3Fts5ExprPhraseCount(tls *libc.TLS, pExpr uintptr) int32 { /* sqlite3.c:218998:12: */ +func sqlite3Fts5ExprPhraseCount(tls *libc.TLS, pExpr uintptr) int32 { /* sqlite3.c:219010:12: */ return func() int32 { if pExpr != 0 { return (*Fts5Expr)(unsafe.Pointer(pExpr)).FnPhrase @@ -183827,7 +183876,7 @@ func sqlite3Fts5ExprPhraseCount(tls *libc.TLS, pExpr uintptr) int32 { /* sqlite3 } // Return the number of terms in the iPhrase'th phrase in pExpr. -func sqlite3Fts5ExprPhraseSize(tls *libc.TLS, pExpr uintptr, iPhrase int32) int32 { /* sqlite3.c:219005:12: */ +func sqlite3Fts5ExprPhraseSize(tls *libc.TLS, pExpr uintptr, iPhrase int32) int32 { /* sqlite3.c:219017:12: */ if (iPhrase < 0) || (iPhrase >= (*Fts5Expr)(unsafe.Pointer(pExpr)).FnPhrase) { return 0 } @@ -183836,7 +183885,7 @@ func sqlite3Fts5ExprPhraseSize(tls *libc.TLS, pExpr uintptr, iPhrase int32) int3 // This function is used to access the current position list for phrase // iPhrase. -func sqlite3Fts5ExprPoslist(tls *libc.TLS, pExpr uintptr, iPhrase int32, pa uintptr) int32 { /* sqlite3.c:219014:12: */ +func sqlite3Fts5ExprPoslist(tls *libc.TLS, pExpr uintptr, iPhrase int32, pa uintptr) int32 { /* sqlite3.c:219026:12: */ var nRet int32 var pPhrase uintptr = *(*uintptr)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(pExpr)).FapExprPhrase + uintptr(iPhrase)*8)) var pNode uintptr = (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FpNode @@ -183850,7 +183899,7 @@ func sqlite3Fts5ExprPoslist(tls *libc.TLS, pExpr uintptr, iPhrase int32, pa uint return nRet } -func sqlite3Fts5ExprClearPoslists(tls *libc.TLS, pExpr uintptr, bLive int32) uintptr { /* sqlite3.c:219034:29: */ +func sqlite3Fts5ExprClearPoslists(tls *libc.TLS, pExpr uintptr, bLive int32) uintptr { /* sqlite3.c:219046:29: */ var pRet uintptr pRet = Xsqlite3_malloc64(tls, (uint64(uint64(unsafe.Sizeof(Fts5PoslistPopulator{})) * uint64((*Fts5Expr)(unsafe.Pointer(pExpr)).FnPhrase)))) if pRet != 0 { @@ -183874,12 +183923,12 @@ type Fts5ExprCtx1 = struct { FpExpr uintptr FaPopulator uintptr FiOff I64 -} /* sqlite3.c:219056:1 */ +} /* sqlite3.c:219068:1 */ -type Fts5ExprCtx = Fts5ExprCtx1 /* sqlite3.c:219061:28 */ +type Fts5ExprCtx = Fts5ExprCtx1 /* sqlite3.c:219073:28 */ // TODO: Make this more efficient! -func fts5ExprColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:219066:12: */ +func fts5ExprColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:219078:12: */ var i int32 for i = 0; i < (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol; i++ { if *(*int32)(unsafe.Pointer((pColset + 4 /* &.aiCol */) + uintptr(i)*4)) == iCol { @@ -183889,7 +183938,7 @@ func fts5ExprColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* s return 0 } -func fts5ExprPopulatePoslistsCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:219074:12: */ +func fts5ExprPopulatePoslistsCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:219086:12: */ var p uintptr = pCtx var pExpr uintptr = (*Fts5ExprCtx)(unsafe.Pointer(p)).FpExpr var i int32 @@ -183924,7 +183973,7 @@ func fts5ExprPopulatePoslistsCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToke return SQLITE_OK } -func sqlite3Fts5ExprPopulatePoslists(tls *libc.TLS, pConfig uintptr, pExpr uintptr, aPopulator uintptr, iCol int32, z uintptr, n int32) int32 { /* sqlite3.c:219109:12: */ +func sqlite3Fts5ExprPopulatePoslists(tls *libc.TLS, pConfig uintptr, pExpr uintptr, aPopulator uintptr, iCol int32, z uintptr, n int32) int32 { /* sqlite3.c:219121:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -183952,7 +184001,7 @@ func sqlite3Fts5ExprPopulatePoslists(tls *libc.TLS, pConfig uintptr, pExpr uintp }{fts5ExprPopulatePoslistsCb}))) } -func fts5ExprClearPoslists(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:219139:13: */ +func fts5ExprClearPoslists(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:219151:13: */ if ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_TERM) || ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_STRING) { (*Fts5ExprPhrase)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(((*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear + 24 /* &.apPhrase */))))).Fposlist.Fn = 0 } else { @@ -183963,7 +184012,7 @@ func fts5ExprClearPoslists(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:219139:1 } } -func fts5ExprCheckPoslists(tls *libc.TLS, pNode uintptr, iRowid I64) int32 { /* sqlite3.c:219150:12: */ +func fts5ExprCheckPoslists(tls *libc.TLS, pNode uintptr, iRowid I64) int32 { /* sqlite3.c:219162:12: */ (*Fts5ExprNode)(unsafe.Pointer(pNode)).FiRowid = iRowid (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = 0 switch (*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType { @@ -184013,12 +184062,12 @@ func fts5ExprCheckPoslists(tls *libc.TLS, pNode uintptr, iRowid I64) int32 { /* return 1 } -func sqlite3Fts5ExprCheckPoslists(tls *libc.TLS, pExpr uintptr, iRowid I64) { /* sqlite3.c:219194:13: */ +func sqlite3Fts5ExprCheckPoslists(tls *libc.TLS, pExpr uintptr, iRowid I64) { /* sqlite3.c:219206:13: */ fts5ExprCheckPoslists(tls, (*Fts5Expr)(unsafe.Pointer(pExpr)).FpRoot, iRowid) } // This function is only called for detail=columns tables. -func sqlite3Fts5ExprPhraseCollist(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppCollist uintptr, pnCollist uintptr) int32 { /* sqlite3.c:219201:12: */ +func sqlite3Fts5ExprPhraseCollist(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppCollist uintptr, pnCollist uintptr) int32 { /* sqlite3.c:219213:12: */ var pPhrase uintptr = *(*uintptr)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(pExpr)).FapExprPhrase + uintptr(iPhrase)*8)) var pNode uintptr = (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FpNode var rc int32 = SQLITE_OK @@ -184069,7 +184118,7 @@ type Fts5HashEntry1 = struct { FiCol I16 FiPos int32 FiRowid I64 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // 2014 August 11 // @@ -184085,14 +184134,14 @@ type Fts5HashEntry1 = struct { // #include "fts5Int.h" -type Fts5HashEntry = Fts5HashEntry1 /* sqlite3.c:219254:30 */ +type Fts5HashEntry = Fts5HashEntry1 /* sqlite3.c:219266:30 */ // Eqivalent to: // // char *fts5EntryKey(Fts5HashEntry *pEntry){ return zKey; } // Allocate a new hash table. -func sqlite3Fts5HashNew(tls *libc.TLS, pConfig uintptr, ppNew uintptr, pnByte uintptr) int32 { /* sqlite3.c:219320:12: */ +func sqlite3Fts5HashNew(tls *libc.TLS, pConfig uintptr, ppNew uintptr, pnByte uintptr) int32 { /* sqlite3.c:219332:12: */ var rc int32 = SQLITE_OK var pNew uintptr @@ -184120,7 +184169,7 @@ func sqlite3Fts5HashNew(tls *libc.TLS, pConfig uintptr, ppNew uintptr, pnByte ui } // Free a hash table object. -func sqlite3Fts5HashFree(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219350:13: */ +func sqlite3Fts5HashFree(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219362:13: */ if pHash != 0 { sqlite3Fts5HashClear(tls, pHash) Xsqlite3_free(tls, (*Fts5Hash)(unsafe.Pointer(pHash)).FaSlot) @@ -184129,7 +184178,7 @@ func sqlite3Fts5HashFree(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219350:13: } // Empty (but do not delete) a hash table. -func sqlite3Fts5HashClear(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219361:13: */ +func sqlite3Fts5HashClear(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219373:13: */ var i int32 for i = 0; i < (*Fts5Hash)(unsafe.Pointer(pHash)).FnSlot; i++ { var pNext uintptr @@ -184143,7 +184192,7 @@ func sqlite3Fts5HashClear(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219361:13 (*Fts5Hash)(unsafe.Pointer(pHash)).FnEntry = 0 } -func fts5HashKey(tls *libc.TLS, nSlot int32, p uintptr, n int32) uint32 { /* sqlite3.c:219375:21: */ +func fts5HashKey(tls *libc.TLS, nSlot int32, p uintptr, n int32) uint32 { /* sqlite3.c:219387:21: */ var i int32 var h uint32 = uint32(13) for i = (n - 1); i >= 0; i-- { @@ -184152,7 +184201,7 @@ func fts5HashKey(tls *libc.TLS, nSlot int32, p uintptr, n int32) uint32 { /* sql return (h % uint32(nSlot)) } -func fts5HashKey2(tls *libc.TLS, nSlot int32, b U8, p uintptr, n int32) uint32 { /* sqlite3.c:219384:21: */ +func fts5HashKey2(tls *libc.TLS, nSlot int32, b U8, p uintptr, n int32) uint32 { /* sqlite3.c:219396:21: */ var i int32 var h uint32 = uint32(13) for i = (n - 1); i >= 0; i-- { @@ -184163,7 +184212,7 @@ func fts5HashKey2(tls *libc.TLS, nSlot int32, b U8, p uintptr, n int32) uint32 { } // Resize the hash table by doubling the number of slots. -func fts5HashResize(tls *libc.TLS, pHash uintptr) int32 { /* sqlite3.c:219397:12: */ +func fts5HashResize(tls *libc.TLS, pHash uintptr) int32 { /* sqlite3.c:219409:12: */ var nNew int32 = ((*Fts5Hash)(unsafe.Pointer(pHash)).FnSlot * 2) var i int32 var apNew uintptr @@ -184193,7 +184242,7 @@ func fts5HashResize(tls *libc.TLS, pHash uintptr) int32 { /* sqlite3.c:219397:12 return SQLITE_OK } -func fts5HashAddPoslistSize(tls *libc.TLS, pHash uintptr, p uintptr, p2 uintptr) int32 { /* sqlite3.c:219425:12: */ +func fts5HashAddPoslistSize(tls *libc.TLS, pHash uintptr, p uintptr, p2 uintptr) int32 { /* sqlite3.c:219437:12: */ var nRet int32 = 0 if (*Fts5HashEntry)(unsafe.Pointer(p)).FiSzPoslist != 0 { var pPtr uintptr @@ -184242,7 +184291,7 @@ func fts5HashAddPoslistSize(tls *libc.TLS, pHash uintptr, p uintptr, p2 uintptr) // (bByte || pToken) -> (iRowid,iCol,iPos) // // Or, if iCol is negative, then the value is a delete marker. -func sqlite3Fts5HashWrite(tls *libc.TLS, pHash uintptr, iRowid I64, iCol int32, iPos int32, bByte int8, pToken uintptr, nToken int32) int32 { /* sqlite3.c:219476:12: */ +func sqlite3Fts5HashWrite(tls *libc.TLS, pHash uintptr, iRowid I64, iCol int32, iPos int32, bByte int8, pToken uintptr, nToken int32) int32 { /* sqlite3.c:219488:12: */ var iHash uint32 var p uintptr var pPtr uintptr @@ -184401,7 +184450,7 @@ func sqlite3Fts5HashWrite(tls *libc.TLS, pHash uintptr, iRowid I64, iCol int32, // Arguments pLeft and pRight point to linked-lists of hash-entry objects, // each sorted in key order. This function merges the two lists into a // single list and returns a pointer to its first element. -func fts5HashEntryMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:219629:22: */ +func fts5HashEntryMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:219641:22: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -184447,7 +184496,7 @@ func fts5HashEntryMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { // in sorted order. The hash table is cleared before returning. It is // the responsibility of the caller to free the elements of the returned // list. -func fts5HashEntrySort(tls *libc.TLS, pHash uintptr, pTerm uintptr, nTerm int32, ppSorted uintptr) int32 { /* sqlite3.c:219675:12: */ +func fts5HashEntrySort(tls *libc.TLS, pHash uintptr, pTerm uintptr, nTerm int32, ppSorted uintptr) int32 { /* sqlite3.c:219687:12: */ var nMergeSlot int32 = 32 var ap uintptr var pList uintptr @@ -184489,7 +184538,7 @@ func fts5HashEntrySort(tls *libc.TLS, pHash uintptr, pTerm uintptr, nTerm int32, } // Query the hash table for a doclist associated with term pTerm/nTerm. -func sqlite3Fts5HashQuery(tls *libc.TLS, pHash uintptr, nPre int32, pTerm uintptr, nTerm int32, ppOut uintptr, pnDoclist uintptr) int32 { /* sqlite3.c:219722:12: */ +func sqlite3Fts5HashQuery(tls *libc.TLS, pHash uintptr, nPre int32, pTerm uintptr, nTerm int32, ppOut uintptr, pnDoclist uintptr) int32 { /* sqlite3.c:219734:12: */ var iHash uint32 = fts5HashKey(tls, (*Fts5Hash)(unsafe.Pointer(pHash)).FnSlot, pTerm, nTerm) var zKey uintptr = uintptr(0) var p uintptr @@ -184523,20 +184572,20 @@ func sqlite3Fts5HashQuery(tls *libc.TLS, pHash uintptr, nPre int32, pTerm uintpt return SQLITE_OK } -func sqlite3Fts5HashScanInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32) int32 { /* sqlite3.c:219760:12: */ +func sqlite3Fts5HashScanInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32) int32 { /* sqlite3.c:219772:12: */ return fts5HashEntrySort(tls, p, pTerm, nTerm, (p + 24 /* &.pScan */)) } -func sqlite3Fts5HashScanNext(tls *libc.TLS, p uintptr) { /* sqlite3.c:219767:13: */ +func sqlite3Fts5HashScanNext(tls *libc.TLS, p uintptr) { /* sqlite3.c:219779:13: */ (*Fts5Hash)(unsafe.Pointer(p)).FpScan = (*Fts5HashEntry)(unsafe.Pointer((*Fts5Hash)(unsafe.Pointer(p)).FpScan)).FpScanNext } -func sqlite3Fts5HashScanEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:219772:12: */ +func sqlite3Fts5HashScanEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:219784:12: */ return (libc.Bool32((*Fts5Hash)(unsafe.Pointer(p)).FpScan == uintptr(0))) } -func sqlite3Fts5HashScanEntry(tls *libc.TLS, pHash uintptr, pzTerm uintptr, ppDoclist uintptr, pnDoclist uintptr) { /* sqlite3.c:219776:13: */ +func sqlite3Fts5HashScanEntry(tls *libc.TLS, pHash uintptr, pzTerm uintptr, ppDoclist uintptr, pnDoclist uintptr) { /* sqlite3.c:219788:13: */ var p uintptr if libc.AssignUintptr(&p, (*Fts5Hash)(unsafe.Pointer(pHash)).FpScan) != 0 { var zKey uintptr = ((p) + 1*48) @@ -184762,7 +184811,7 @@ type Fts5Data1 = struct { Fp uintptr Fnn int32 FszLeaf int32 -} /* sqlite3.c:220051:9 */ +} /* sqlite3.c:220063:9 */ // 2014 May 31 // @@ -184970,14 +185019,14 @@ type Fts5Data1 = struct { // many zero bytes. This makes it easier to decode the various record formats // without overreading if the records are corrupt. -type Fts5Data = Fts5Data1 /* sqlite3.c:220051:25 */ +type Fts5Data = Fts5Data1 /* sqlite3.c:220063:25 */ type Fts5DlidxIter1 = struct { FnLvl int32 FiSegid int32 FaLvl [1]Fts5DlidxLvl -} /* sqlite3.c:220052:9 */ +} /* sqlite3.c:220064:9 */ -type Fts5DlidxIter = Fts5DlidxIter1 /* sqlite3.c:220052:30 */ +type Fts5DlidxIter = Fts5DlidxIter1 /* sqlite3.c:220064:30 */ type Fts5DlidxLvl1 = struct { FpData uintptr FiOff int32 @@ -184985,17 +185034,17 @@ type Fts5DlidxLvl1 = struct { FiFirstOff int32 FiLeafPgno int32 FiRowid I64 -} /* sqlite3.c:220052:9 */ +} /* sqlite3.c:220064:9 */ -type Fts5DlidxLvl = Fts5DlidxLvl1 /* sqlite3.c:220053:29 */ +type Fts5DlidxLvl = Fts5DlidxLvl1 /* sqlite3.c:220065:29 */ type Fts5DlidxWriter1 = struct { Fpgno int32 FbPrevValid int32 FiPrev I64 Fbuf Fts5Buffer -} /* sqlite3.c:220054:9 */ +} /* sqlite3.c:220066:9 */ -type Fts5DlidxWriter = Fts5DlidxWriter1 /* sqlite3.c:220054:32 */ +type Fts5DlidxWriter = Fts5DlidxWriter1 /* sqlite3.c:220066:32 */ type Fts5Iter1 = struct { Fbase Fts5IndexIter FpIndex uintptr @@ -185009,18 +185058,18 @@ type Fts5Iter1 = struct { FiSwitchRowid I64 FaFirst uintptr FaSeg [1]Fts5SegIter -} /* sqlite3.c:220055:9 */ +} /* sqlite3.c:220067:9 */ -type Fts5Iter = Fts5Iter1 /* sqlite3.c:220055:25 */ +type Fts5Iter = Fts5Iter1 /* sqlite3.c:220067:25 */ type Fts5PageWriter1 = struct { Fpgno int32 FiPrevPgidx int32 Fbuf Fts5Buffer Fpgidx Fts5Buffer Fterm Fts5Buffer -} /* sqlite3.c:220056:9 */ +} /* sqlite3.c:220068:9 */ -type Fts5PageWriter = Fts5PageWriter1 /* sqlite3.c:220056:31 */ +type Fts5PageWriter = Fts5PageWriter1 /* sqlite3.c:220068:31 */ type Fts5SegIter1 = struct { FpSeg uintptr Fflags int32 @@ -185043,18 +185092,18 @@ type Fts5SegIter1 = struct { FnPos int32 FbDel U8 _ [3]byte -} /* sqlite3.c:220055:9 */ +} /* sqlite3.c:220067:9 */ -type Fts5SegIter = Fts5SegIter1 /* sqlite3.c:220057:28 */ +type Fts5SegIter = Fts5SegIter1 /* sqlite3.c:220069:28 */ type Fts5DoclistIter1 = struct { FaEof uintptr FiRowid I64 FaPoslist uintptr FnPoslist int32 FnSize int32 -} /* sqlite3.c:220058:9 */ +} /* sqlite3.c:220070:9 */ -type Fts5DoclistIter = Fts5DoclistIter1 /* sqlite3.c:220058:32 */ +type Fts5DoclistIter = Fts5DoclistIter1 /* sqlite3.c:220070:32 */ type Fts5SegWriter1 = struct { FiSegid int32 _ [4]byte @@ -185071,9 +185120,9 @@ type Fts5SegWriter1 = struct { Fbtterm Fts5Buffer FiBtPage int32 _ [4]byte -} /* sqlite3.c:220059:9 */ +} /* sqlite3.c:220071:9 */ -type Fts5SegWriter = Fts5SegWriter1 /* sqlite3.c:220059:30 */ +type Fts5SegWriter = Fts5SegWriter1 /* sqlite3.c:220071:30 */ type Fts5Structure1 = struct { FnRef int32 _ [4]byte @@ -185081,38 +185130,38 @@ type Fts5Structure1 = struct { FnSegment int32 FnLevel int32 FaLevel [1]Fts5StructureLevel -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Structure = Fts5Structure1 /* sqlite3.c:220060:30 */ +type Fts5Structure = Fts5Structure1 /* sqlite3.c:220072:30 */ type Fts5StructureLevel1 = struct { FnMerge int32 FnSeg int32 FaSeg uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5StructureLevel = Fts5StructureLevel1 /* sqlite3.c:220061:35 */ +type Fts5StructureLevel = Fts5StructureLevel1 /* sqlite3.c:220073:35 */ type Fts5StructureSegment1 = struct { FiSegid int32 FpgnoFirst int32 FpgnoLast int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5StructureSegment = Fts5StructureSegment1 /* sqlite3.c:220062:37 */ +type Fts5StructureSegment = Fts5StructureSegment1 /* sqlite3.c:220074:37 */ type Fts5CResult1 = struct { FiFirst U16 FbTermEq U8 _ [1]byte -} /* sqlite3.c:220055:9 */ +} /* sqlite3.c:220067:9 */ -type Fts5CResult = Fts5CResult1 /* sqlite3.c:220172:28 */ +type Fts5CResult = Fts5CResult1 /* sqlite3.c:220184:28 */ -func fts5PutU16(tls *libc.TLS, aOut uintptr, iVal U16) { /* sqlite3.c:220351:13: */ +func fts5PutU16(tls *libc.TLS, aOut uintptr, iVal U16) { /* sqlite3.c:220363:13: */ *(*U8)(unsafe.Pointer(aOut)) = (U8(int32(iVal) >> 8)) *(*U8)(unsafe.Pointer(aOut + 1)) = (U8(int32(iVal) & 0xFF)) } -func fts5GetU16(tls *libc.TLS, aIn uintptr) U16 { /* sqlite3.c:220356:12: */ +func fts5GetU16(tls *libc.TLS, aIn uintptr) U16 { /* sqlite3.c:220368:12: */ return (U16((int32(U16(*(*U8)(unsafe.Pointer(aIn)))) << 8) + int32(*(*U8)(unsafe.Pointer(aIn + 1))))) } @@ -185120,7 +185169,7 @@ func fts5GetU16(tls *libc.TLS, aIn uintptr) U16 { /* sqlite3.c:220356:12: */ // // If an OOM error is encountered, return NULL and set the error code in // the Fts5Index handle passed as the first argument. -func fts5IdxMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:220366:13: */ +func fts5IdxMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:220378:13: */ return sqlite3Fts5MallocZero(tls, (p + 52 /* &.rc */), nByte) } @@ -185138,7 +185187,7 @@ func fts5IdxMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* s // +ve if pRight is smaller than pLeft. In other words: // // res = *pLeft - *pRight -func fts5BufferCompare(tls *libc.TLS, pLeft uintptr, pRight uintptr) int32 { /* sqlite3.c:220398:12: */ +func fts5BufferCompare(tls *libc.TLS, pLeft uintptr, pRight uintptr) int32 { /* sqlite3.c:220410:12: */ var nCmp int32 = func() int32 { if ((*Fts5Buffer)(unsafe.Pointer(pLeft)).Fn) < ((*Fts5Buffer)(unsafe.Pointer(pRight)).Fn) { return (*Fts5Buffer)(unsafe.Pointer(pLeft)).Fn @@ -185159,7 +185208,7 @@ func fts5BufferCompare(tls *libc.TLS, pLeft uintptr, pRight uintptr) int32 { /* }() } -func fts5LeafFirstTermOff(tls *libc.TLS, pLeaf uintptr) int32 { /* sqlite3.c:220404:12: */ +func fts5LeafFirstTermOff(tls *libc.TLS, pLeaf uintptr) int32 { /* sqlite3.c:220416:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -185170,7 +185219,7 @@ func fts5LeafFirstTermOff(tls *libc.TLS, pLeaf uintptr) int32 { /* sqlite3.c:220 } // Close the read-only blob handle, if it is open. -func sqlite3Fts5IndexCloseReader(tls *libc.TLS, p uintptr) { /* sqlite3.c:220413:13: */ +func sqlite3Fts5IndexCloseReader(tls *libc.TLS, p uintptr) { /* sqlite3.c:220425:13: */ if (*Fts5Index)(unsafe.Pointer(p)).FpReader != 0 { var pReader uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpReader (*Fts5Index)(unsafe.Pointer(p)).FpReader = uintptr(0) @@ -185182,7 +185231,7 @@ func sqlite3Fts5IndexCloseReader(tls *libc.TLS, p uintptr) { /* sqlite3.c:220413 // // If an error occurs, NULL is returned and an error left in the // Fts5Index object. -func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220427:17: */ +func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220439:17: */ var pRet uintptr = uintptr(0) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var rc int32 = SQLITE_OK @@ -185255,11 +185304,11 @@ func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:2 // Release a reference to data record returned by an earlier call to // fts5DataRead(). -func fts5DataRelease(tls *libc.TLS, pData uintptr) { /* sqlite3.c:220500:13: */ +func fts5DataRelease(tls *libc.TLS, pData uintptr) { /* sqlite3.c:220512:13: */ Xsqlite3_free(tls, pData) } -func fts5LeafRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220504:17: */ +func fts5LeafRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220516:17: */ var pRet uintptr = fts5DataRead(tls, p, iRowid) if pRet != 0 { if ((*Fts5Data)(unsafe.Pointer(pRet)).Fnn < 4) || ((*Fts5Data)(unsafe.Pointer(pRet)).FszLeaf > (*Fts5Data)(unsafe.Pointer(pRet)).Fnn) { @@ -185271,7 +185320,7 @@ func fts5LeafRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:2 return pRet } -func fts5IndexPrepareStmt(tls *libc.TLS, p uintptr, ppStmt uintptr, zSql uintptr) int32 { /* sqlite3.c:220516:12: */ +func fts5IndexPrepareStmt(tls *libc.TLS, p uintptr, ppStmt uintptr, zSql uintptr) int32 { /* sqlite3.c:220528:12: */ if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { if zSql != 0 { (*Fts5Index)(unsafe.Pointer(p)).Frc = Xsqlite3_prepare_v3(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).Fdb, zSql, -1, @@ -185286,7 +185335,7 @@ func fts5IndexPrepareStmt(tls *libc.TLS, p uintptr, ppStmt uintptr, zSql uintptr } // INSERT OR REPLACE a record into the %_data table. -func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData int32) { /* sqlite3.c:220538:13: */ +func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData int32) { /* sqlite3.c:220550:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185314,7 +185363,7 @@ func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData in // Execute the following SQL: // // DELETE FROM %_data WHERE id BETWEEN $iFirst AND $iLast -func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite3.c:220562:13: */ +func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite3.c:220574:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185339,7 +185388,7 @@ func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite } // Remove all records associated with segment iSegid. -func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3.c:220583:13: */ +func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3.c:220595:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185361,7 +185410,7 @@ func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3. // Release a reference to an Fts5Structure object returned by an earlier // call to fts5StructureRead() or fts5StructureDecode(). -func fts5StructureRelease(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220605:13: */ +func fts5StructureRelease(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220617:13: */ if (pStruct != 0) && (0 >= (libc.PreDecInt32(&(*Fts5Structure)(unsafe.Pointer(pStruct)).FnRef, 1))) { var i int32 @@ -185372,7 +185421,7 @@ func fts5StructureRelease(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220605: } } -func fts5StructureRef(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220616:13: */ +func fts5StructureRef(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220628:13: */ (*Fts5Structure)(unsafe.Pointer(pStruct)).FnRef++ } @@ -185386,7 +185435,7 @@ func fts5StructureRef(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220616:13: // If an error occurs, *ppOut is set to NULL and an SQLite error code // returned. Otherwise, *ppOut is set to point to the new object and // SQLITE_OK returned. -func fts5StructureDecode(tls *libc.TLS, pData uintptr, nData int32, piCookie uintptr, ppOut uintptr) int32 { /* sqlite3.c:220632:12: */ +func fts5StructureDecode(tls *libc.TLS, pData uintptr, nData int32, piCookie uintptr, ppOut uintptr) int32 { /* sqlite3.c:220644:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185478,7 +185527,7 @@ func fts5StructureDecode(tls *libc.TLS, pData uintptr, nData int32, piCookie uin } // -func fts5StructureAddLevel(tls *libc.TLS, pRc uintptr, ppStruct uintptr) { /* sqlite3.c:220723:13: */ +func fts5StructureAddLevel(tls *libc.TLS, pRc uintptr, ppStruct uintptr) { /* sqlite3.c:220735:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var pStruct uintptr = *(*uintptr)(unsafe.Pointer(ppStruct)) var nLevel int32 = (*Fts5Structure)(unsafe.Pointer(pStruct)).FnLevel @@ -185497,7 +185546,7 @@ func fts5StructureAddLevel(tls *libc.TLS, pRc uintptr, ppStruct uintptr) { /* sq // Extend level iLvl so that there is room for at least nExtra more // segments. -func fts5StructureExtendLevel(tls *libc.TLS, pRc uintptr, pStruct uintptr, iLvl int32, nExtra int32, bInsert int32) { /* sqlite3.c:220747:13: */ +func fts5StructureExtendLevel(tls *libc.TLS, pRc uintptr, pStruct uintptr, iLvl int32, nExtra int32, bInsert int32) { /* sqlite3.c:220759:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var pLvl uintptr = ((pStruct + 24 /* &.aLevel */) + uintptr(iLvl)*16) var aNew uintptr @@ -185520,7 +185569,7 @@ func fts5StructureExtendLevel(tls *libc.TLS, pRc uintptr, pStruct uintptr, iLvl } } -func fts5StructureReadUncached(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220776:22: */ +func fts5StructureReadUncached(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220788:22: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185548,7 +185597,7 @@ func fts5StructureReadUncached(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c: return *(*uintptr)(unsafe.Pointer(bp + 8 /* pRet */)) } -func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:220800:12: */ +func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:220812:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -185581,7 +185630,7 @@ func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:220800:12 // If an error occurs, NULL is returned and an error code left in the // Fts5Index handle. If an error has already occurred when this function // is called, it is a no-op. -func fts5StructureRead(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220831:22: */ +func fts5StructureRead(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220843:22: */ if (*Fts5Index)(unsafe.Pointer(p)).FpStruct == uintptr(0) { (*Fts5Index)(unsafe.Pointer(p)).FiStructVersion = fts5IndexDataVersion(tls, p) @@ -185598,7 +185647,7 @@ func fts5StructureRead(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220831:2 return (*Fts5Index)(unsafe.Pointer(p)).FpStruct } -func fts5StructureInvalidate(tls *libc.TLS, p uintptr) { /* sqlite3.c:220870:13: */ +func fts5StructureInvalidate(tls *libc.TLS, p uintptr) { /* sqlite3.c:220882:13: */ if (*Fts5Index)(unsafe.Pointer(p)).FpStruct != 0 { fts5StructureRelease(tls, (*Fts5Index)(unsafe.Pointer(p)).FpStruct) (*Fts5Index)(unsafe.Pointer(p)).FpStruct = uintptr(0) @@ -185612,7 +185661,7 @@ func fts5StructureInvalidate(tls *libc.TLS, p uintptr) { /* sqlite3.c:220870:13: // // If an error occurs, leave an error code in the Fts5Index object. If an // error has already occurred, this function is a no-op. -func fts5StructureWrite(tls *libc.TLS, p uintptr, pStruct uintptr) { /* sqlite3.c:220913:13: */ +func fts5StructureWrite(tls *libc.TLS, p uintptr, pStruct uintptr) { /* sqlite3.c:220925:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185665,14 +185714,14 @@ func fts5StructureWrite(tls *libc.TLS, p uintptr, pStruct uintptr) { /* sqlite3. } } -func fts5SegmentSize(tls *libc.TLS, pSeg uintptr) int32 { /* sqlite3.c:220968:12: */ +func fts5SegmentSize(tls *libc.TLS, pSeg uintptr) int32 { /* sqlite3.c:220980:12: */ return ((1 + (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoLast) - (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoFirst) } // Return a copy of index structure pStruct. Except, promote as many // segments as possible to level iPromote. If an OOM occurs, NULL is // returned. -func fts5StructurePromoteTo(tls *libc.TLS, p uintptr, iPromote int32, szPromote int32, pStruct uintptr) { /* sqlite3.c:220977:13: */ +func fts5StructurePromoteTo(tls *libc.TLS, p uintptr, iPromote int32, szPromote int32, pStruct uintptr) { /* sqlite3.c:220989:13: */ var il int32 var is int32 var pOut uintptr = ((pStruct + 24 /* &.aLevel */) + uintptr(iPromote)*16) @@ -185715,7 +185764,7 @@ func fts5StructurePromoteTo(tls *libc.TLS, p uintptr, iPromote int32, szPromote // // If one or more segments are promoted, the structure object is updated // to reflect this. -func fts5StructurePromote(tls *libc.TLS, p uintptr, iLvl int32, pStruct uintptr) { /* sqlite3.c:221020:13: */ +func fts5StructurePromote(tls *libc.TLS, p uintptr, iLvl int32, pStruct uintptr) { /* sqlite3.c:221032:13: */ if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var iTst int32 var iPromote int32 = -1 @@ -185764,7 +185813,7 @@ func fts5StructurePromote(tls *libc.TLS, p uintptr, iLvl int32, pStruct uintptr) // Advance the iterator passed as the only argument. If the end of the // doclist-index page is reached, return non-zero. -func fts5DlidxLvlNext(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221071:12: */ +func fts5DlidxLvlNext(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221083:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -185800,7 +185849,7 @@ func fts5DlidxLvlNext(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221071:1 } // Advance the iterator passed as the only argument. -func fts5DlidxIterNextR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221103:12: */ +func fts5DlidxIterNextR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221115:12: */ var pLvl uintptr = ((pIter + 8 /* &.aLvl */) + uintptr(iLvl)*32) if fts5DlidxLvlNext(tls, pLvl) != 0 { @@ -185821,7 +185870,7 @@ func fts5DlidxIterNextR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof } -func fts5DlidxIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221123:12: */ +func fts5DlidxIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221135:12: */ return fts5DlidxIterNextR(tls, p, pIter, 0) } @@ -185834,7 +185883,7 @@ func fts5DlidxIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlit // // When this function is called pIter->iLeafPgno is the page number the // doclist is associated with (the one featuring the term). -func fts5DlidxIterFirst(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221138:12: */ +func fts5DlidxIterFirst(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221150:12: */ var i int32 for i = 0; i < (*Fts5DlidxIter)(unsafe.Pointer(pIter)).FnLvl; i++ { fts5DlidxLvlNext(tls, ((pIter + 8 /* &.aLvl */) + uintptr(i)*32)) @@ -185842,11 +185891,11 @@ func fts5DlidxIterFirst(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:22113 return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof } -func fts5DlidxIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221147:12: */ +func fts5DlidxIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221159:12: */ return (libc.Bool32(((*Fts5Index)(unsafe.Pointer(p)).Frc != SQLITE_OK) || ((*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof != 0))) } -func fts5DlidxIterLast(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221151:13: */ +func fts5DlidxIterLast(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221163:13: */ var i int32 // Advance each level to the last entry on the last page @@ -185867,7 +185916,7 @@ func fts5DlidxIterLast(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:2 } // Move the iterator passed as the only argument to the previous entry. -func fts5DlidxLvlPrev(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221174:12: */ +func fts5DlidxLvlPrev(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221186:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -185929,7 +185978,7 @@ func fts5DlidxLvlPrev(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221174:1 return (*Fts5DlidxLvl)(unsafe.Pointer(pLvl)).FbEof } -func fts5DlidxIterPrevR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221223:12: */ +func fts5DlidxIterPrevR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221235:12: */ var pLvl uintptr = ((pIter + 8 /* &.aLvl */) + uintptr(iLvl)*32) if fts5DlidxLvlPrev(tls, pLvl) != 0 { @@ -185952,12 +186001,12 @@ func fts5DlidxIterPrevR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof } -func fts5DlidxIterPrev(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221246:12: */ +func fts5DlidxIterPrev(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221258:12: */ return fts5DlidxIterPrevR(tls, p, pIter, 0) } // Free a doclist-index iterator object allocated by fts5DlidxIterInit(). -func fts5DlidxIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:221253:13: */ +func fts5DlidxIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:221265:13: */ if pIter != 0 { var i int32 for i = 0; i < (*Fts5DlidxIter)(unsafe.Pointer(pIter)).FnLvl; i++ { @@ -185967,7 +186016,7 @@ func fts5DlidxIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:221253:13: * } } -func fts5DlidxIterInit(tls *libc.TLS, p uintptr, bRev int32, iSegid int32, iLeafPg int32) uintptr { /* sqlite3.c:221263:22: */ +func fts5DlidxIterInit(tls *libc.TLS, p uintptr, bRev int32, iSegid int32, iLeafPg int32) uintptr { /* sqlite3.c:221275:22: */ var pIter uintptr = uintptr(0) var i int32 var bDone int32 = 0 @@ -186009,16 +186058,16 @@ func fts5DlidxIterInit(tls *libc.TLS, p uintptr, bRev int32, iSegid int32, iLeaf return pIter } -func fts5DlidxIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:221310:12: */ +func fts5DlidxIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:221322:12: */ return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FiRowid } -func fts5DlidxIterPgno(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221313:12: */ +func fts5DlidxIterPgno(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221325:12: */ return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FiLeafPgno } // Load the next leaf page into the segment iterator. -func fts5SegIterNextPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221320:13: */ +func fts5SegIterNextPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221332:13: */ var pLeaf uintptr var pSeg uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpSeg fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf) @@ -186048,7 +186097,7 @@ func fts5SegIterNextPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c // position list size field. Read the varint and return the number of bytes // read. Before returning, set *pnSz to the number of bytes in the position // list, and *pbDel to true if the delete flag is set, or false otherwise. -func fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) int32 { /* sqlite3.c:221358:12: */ +func fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) int32 { /* sqlite3.c:221370:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -186077,7 +186126,7 @@ func fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) i // // Leave Fts5SegIter.iLeafOffset pointing to the first byte of the // position list content (if any). -func fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221379:13: */ +func fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221391:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -186122,7 +186171,7 @@ func fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c } } -func fts5SegIterLoadRowid(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221408:13: */ +func fts5SegIterLoadRowid(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221420:13: */ var a uintptr = (*Fts5Data)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).Fp // Buffer to read data from var iOff int32 = (*Fts5SegIter)(unsafe.Pointer(pIter)).FiLeafOffset @@ -186154,7 +186203,7 @@ func fts5SegIterLoadRowid(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3. // accordingly and leaves (Fts5SegIter.iLeafOffset) set to the content of // the first position list. The position list belonging to document // (Fts5SegIter.iRowid). -func fts5SegIterLoadTerm(tls *libc.TLS, p uintptr, pIter uintptr, nKeep int32) { /* sqlite3.c:221441:13: */ +func fts5SegIterLoadTerm(tls *libc.TLS, p uintptr, pIter uintptr, nKeep int32) { /* sqlite3.c:221453:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -186188,7 +186237,7 @@ func fts5SegIterLoadTerm(tls *libc.TLS, p uintptr, pIter uintptr, nKeep int32) { fts5SegIterLoadRowid(tls, p, pIter) } -func fts5SegIterSetNext(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221474:13: */ +func fts5SegIterSetNext(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221486:13: */ if ((*Fts5SegIter)(unsafe.Pointer(pIter)).Fflags & FTS5_SEGITER_REVERSE) != 0 { (*Fts5SegIter)(unsafe.Pointer(pIter)).FxNext = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr) @@ -186210,7 +186259,7 @@ func fts5SegIterSetNext(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c: // // If an error occurs, Fts5Index.rc is set to an appropriate error code. If // an error has already occurred when this function is called, it is a no-op. -func fts5SegIterInit(tls *libc.TLS, p uintptr, pSeg uintptr, pIter uintptr) { /* sqlite3.c:221492:13: */ +func fts5SegIterInit(tls *libc.TLS, p uintptr, pSeg uintptr, pIter uintptr) { /* sqlite3.c:221504:13: */ if (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoFirst == 0 { // This happens if the segment is being used as an input to an incremental // merge and all data has already been "trimmed". See function @@ -186251,7 +186300,7 @@ func fts5SegIterInit(tls *libc.TLS, p uintptr, pSeg uintptr, pIter uintptr) { /* // aRowidOffset[] and iRowidOffset variables. At this point the iterator // is in its regular state - Fts5SegIter.iLeafOffset points to the first // byte of the position list content associated with said rowid. -func fts5SegIterReverseInitPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221540:13: */ +func fts5SegIterReverseInitPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221552:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -186310,7 +186359,7 @@ func fts5SegIterReverseInitPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq } // -func fts5SegIterReverseNewPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221593:13: */ +func fts5SegIterReverseNewPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221605:13: */ fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf) (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf = uintptr(0) @@ -186356,7 +186405,7 @@ func fts5SegIterReverseNewPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sql // Return true if the iterator passed as the second argument currently // points to a delete marker. A delete marker is an entry with a 0 byte // position-list. -func fts5MultiIterIsEmpty(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221645:12: */ +func fts5MultiIterIsEmpty(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221657:12: */ var pSeg uintptr = ((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120) return (libc.Bool32((((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf != 0)) && ((*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos == 0))) } @@ -186364,7 +186413,7 @@ func fts5MultiIterIsEmpty(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sq // Advance iterator pIter to the next entry. // // This version of fts5SegIterNext() is only used by reverse iterators. -func fts5SegIterNext_Reverse(tls *libc.TLS, p uintptr, pIter uintptr, pbUnused uintptr) { /* sqlite3.c:221655:13: */ +func fts5SegIterNext_Reverse(tls *libc.TLS, p uintptr, pIter uintptr, pbUnused uintptr) { /* sqlite3.c:221667:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -186393,7 +186442,7 @@ func fts5SegIterNext_Reverse(tls *libc.TLS, p uintptr, pIter uintptr, pbUnused u // // This version of fts5SegIterNext() is only used if detail=none and the // iterator is not a reverse direction iterator. -func fts5SegIterNext_None(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221689:13: */ +func fts5SegIterNext_None(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221701:13: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -186498,7 +186547,7 @@ next_none_eof: // If an error occurs, Fts5Index.rc is set to an appropriate error code. It // is not considered an error if the iterator reaches EOF. If an error has // already occurred when this function is called, it is a no-op. -func fts5SegIterNext(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221761:13: */ +func fts5SegIterNext(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221773:13: */ bp := tls.Alloc(44) defer tls.Free(44) @@ -186623,7 +186672,7 @@ func fts5SegIterNext(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) // Iterator pIter currently points to the first rowid in a doclist. This // function sets the iterator up so that iterates in reverse order through // the doclist. -func fts5SegIterReverse(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221893:13: */ +func fts5SegIterReverse(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221905:13: */ var pDlidx uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpDlidx var pLast uintptr = uintptr(0) var pgnoLast int32 = 0 @@ -186720,7 +186769,7 @@ func fts5SegIterReverse(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c: // There is a doclist-index associated with the final term on the current // page. If the current term is the last term on the page, load the // doclist-index from disk and initialize an iterator at (pIter->pDlidx). -func fts5SegIterLoadDlidx(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221979:13: */ +func fts5SegIterLoadDlidx(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221991:13: */ var iSeg int32 = (*Fts5StructureSegment)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pIter)).FpSeg)).FiSegid var bRev int32 = ((*Fts5SegIter)(unsafe.Pointer(pIter)).Fflags & FTS5_SEGITER_REVERSE) var pLeaf uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf // Current leaf data @@ -186748,7 +186797,7 @@ func fts5SegIterLoadDlidx(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3. // iterator is left pointing to the smallest term in the segment that // is larger than the specified term, even if this term is not on the // current page. -func fts5LeafSeek(tls *libc.TLS, p uintptr, bGe int32, pIter uintptr, pTerm uintptr, nTerm int32) { /* sqlite3.c:222013:13: */ +func fts5LeafSeek(tls *libc.TLS, p uintptr, bGe int32, pIter uintptr, pTerm uintptr, nTerm int32) { /* sqlite3.c:222025:13: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -186984,7 +187033,7 @@ __31: fts5SegIterLoadNPos(tls, p, pIter) } -func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:222140:21: */ +func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:222152:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -187003,7 +187052,7 @@ func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:222140:2 // // If an error occurs, Fts5Index.rc is set to an appropriate error code. If // an error has already occurred when this function is called, it is a no-op. -func fts5SegIterSeekInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pSeg uintptr, pIter uintptr) { /* sqlite3.c:222159:13: */ +func fts5SegIterSeekInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pSeg uintptr, pIter uintptr) { /* sqlite3.c:222171:13: */ var iPg int32 = 1 var bGe int32 = (flags & FTS5INDEX_QUERY_SCAN) var bDlidx int32 = 0 // True if there is a doclist-index @@ -187073,7 +187122,7 @@ func fts5SegIterSeekInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, f // // If an error occurs, Fts5Index.rc is set to an appropriate error code. If // an error has already occurred when this function is called, it is a no-op. -func fts5SegIterHashInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pIter uintptr) { /* sqlite3.c:222242:13: */ +func fts5SegIterHashInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pIter uintptr) { /* sqlite3.c:222254:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -187129,7 +187178,7 @@ func fts5SegIterHashInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, f } // Zero the iterator passed as the only argument. -func fts5SegIterClear(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222301:13: */ +func fts5SegIterClear(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222313:13: */ sqlite3Fts5BufferFree(tls, (pIter + 88 /* &.term */)) fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf) fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpNextLeaf) @@ -187144,7 +187193,7 @@ func fts5SegIterClear(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222301:13: */ // in the pIter->aSeg[] array that is (a) not at EOF, and (b) pointing // to a key that is a duplicate of another, higher priority, // segment-iterator in the pSeg->aSeg[] array. -func fts5MultiIterDoCompare(tls *libc.TLS, pIter uintptr, iOut int32) int32 { /* sqlite3.c:222405:12: */ +func fts5MultiIterDoCompare(tls *libc.TLS, pIter uintptr, iOut int32) int32 { /* sqlite3.c:222417:12: */ var i1 int32 // Index of left-hand Fts5SegIter var i2 int32 // Index of right-hand Fts5SegIter var iRes int32 @@ -187196,7 +187245,7 @@ func fts5MultiIterDoCompare(tls *libc.TLS, pIter uintptr, iOut int32) int32 { /* // Move the seg-iter so that it points to the first rowid on page iLeafPgno. // It is an error if leaf iLeafPgno does not exist or contains no rowids. -func fts5SegIterGotoPage(tls *libc.TLS, p uintptr, pIter uintptr, iLeafPgno int32) { /* sqlite3.c:222459:13: */ +func fts5SegIterGotoPage(tls *libc.TLS, p uintptr, pIter uintptr, iLeafPgno int32) { /* sqlite3.c:222471:13: */ if iLeafPgno > (*Fts5StructureSegment)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pIter)).FpSeg)).FpgnoLast { (*Fts5Index)(unsafe.Pointer(p)).Frc = (SQLITE_CORRUPT | (int32(1) << 8)) @@ -187226,7 +187275,7 @@ func fts5SegIterGotoPage(tls *libc.TLS, p uintptr, pIter uintptr, iLeafPgno int3 // Advance the iterator passed as the second argument until it is at or // past rowid iFrom. Regardless of the value of iFrom, the iterator is // always advanced at least once. -func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:222497:13: */ +func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:222509:13: */ var bRev int32 = ((*Fts5SegIter)(unsafe.Pointer(pIter)).Fflags & FTS5_SEGITER_REVERSE) var pDlidx uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpDlidx var iLeafPgno int32 = (*Fts5SegIter)(unsafe.Pointer(pIter)).FiLeafPgno @@ -187274,7 +187323,7 @@ func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { } // Free the iterator object passed as the second argument. -func fts5MultiIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222551:13: */ +func fts5MultiIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222563:13: */ if pIter != 0 { var i int32 for i = 0; i < (*Fts5Iter)(unsafe.Pointer(pIter)).FnSeg; i++ { @@ -187285,7 +187334,7 @@ func fts5MultiIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222551:13: * } } -func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int32, iMinset int32) { /* sqlite3.c:222562:13: */ +func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int32, iMinset int32) { /* sqlite3.c:222574:13: */ var i int32 for i = (((*Fts5Iter)(unsafe.Pointer(pIter)).FnSeg + iChanged) / 2); (i >= iMinset) && ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK); i = (i / 2) { var iEq int32 @@ -187306,7 +187355,7 @@ func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int // If non-zero is returned, the caller should call fts5MultiIterAdvanced() // on the iterator instead. That function does the same as this one, except // that it deals with more complicated cases as well. -func fts5MultiIterAdvanceRowid(tls *libc.TLS, pIter uintptr, iChanged int32, ppFirst uintptr) int32 { /* sqlite3.c:222590:12: */ +func fts5MultiIterAdvanceRowid(tls *libc.TLS, pIter uintptr, iChanged int32, ppFirst uintptr) int32 { /* sqlite3.c:222602:12: */ var pNew uintptr = ((pIter + 96 /* &.aSeg */) + uintptr(iChanged)*120) if ((*Fts5SegIter)(unsafe.Pointer(pNew)).FiRowid == (*Fts5Iter)(unsafe.Pointer(pIter)).FiSwitchRowid) || @@ -187346,7 +187395,7 @@ func fts5MultiIterAdvanceRowid(tls *libc.TLS, pIter uintptr, iChanged int32, ppF } // Set the pIter->bEof variable based on the state of the sub-iterators. -func fts5MultiIterSetEof(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222633:13: */ +func fts5MultiIterSetEof(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222645:13: */ var pSeg uintptr = ((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120) (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FbEof = (U8(libc.Bool32((*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf == uintptr(0)))) (*Fts5Iter)(unsafe.Pointer(pIter)).FiSwitchRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid @@ -187357,7 +187406,7 @@ func fts5MultiIterSetEof(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222633:13: // If an error occurs, an error code is left in Fts5Index.rc. It is not // considered an error if the iterator reaches EOF, or if it is already at // EOF when this function is called. -func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFrom I64) { /* sqlite3.c:222646:13: */ +func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFrom I64) { /* sqlite3.c:222658:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -187392,7 +187441,7 @@ func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFr } } -func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:222684:13: */ +func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:222696:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -187415,12 +187464,12 @@ func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintp } } -func fts5IterSetOutputs_Noop(tls *libc.TLS, pUnused1 uintptr, pUnused2 uintptr) { /* sqlite3.c:222712:13: */ +func fts5IterSetOutputs_Noop(tls *libc.TLS, pUnused1 uintptr, pUnused2 uintptr) { /* sqlite3.c:222724:13: */ _ = pUnused1 _ = pUnused2 } -func fts5MultiIterAlloc(tls *libc.TLS, p uintptr, nSeg int32) uintptr { /* sqlite3.c:222716:17: */ +func fts5MultiIterAlloc(tls *libc.TLS, p uintptr, nSeg int32) uintptr { /* sqlite3.c:222728:17: */ var pNew uintptr var nSlot int32 // Power of two >= nSeg @@ -187439,7 +187488,7 @@ func fts5MultiIterAlloc(tls *libc.TLS, p uintptr, nSeg int32) uintptr { /* sqlit return pNew } -func fts5PoslistCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222738:13: */ +func fts5PoslistCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222750:13: */ _ = pUnused if nChunk > 0 { @@ -187456,21 +187505,21 @@ type PoslistCallbackCtx1 = struct { FpColset uintptr FeState int32 _ [4]byte -} /* sqlite3.c:222750:9 */ +} /* sqlite3.c:222762:9 */ -type PoslistCallbackCtx = PoslistCallbackCtx1 /* sqlite3.c:222750:35 */ +type PoslistCallbackCtx = PoslistCallbackCtx1 /* sqlite3.c:222762:35 */ type PoslistOffsetsCtx1 = struct { FpBuf uintptr FpColset uintptr FiRead int32 FiWrite int32 -} /* sqlite3.c:222757:9 */ +} /* sqlite3.c:222769:9 */ -type PoslistOffsetsCtx = PoslistOffsetsCtx1 /* sqlite3.c:222757:34 */ +type PoslistOffsetsCtx = PoslistOffsetsCtx1 /* sqlite3.c:222769:34 */ // TODO: Make this more efficient! -func fts5IndexColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:222768:12: */ +func fts5IndexColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:222780:12: */ var i int32 for i = 0; i < (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol; i++ { if *(*int32)(unsafe.Pointer((pColset + 4 /* &.aiCol */) + uintptr(i)*4)) == iCol { @@ -187480,7 +187529,7 @@ func fts5IndexColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* return 0 } -func fts5PoslistOffsetsCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222776:13: */ +func fts5PoslistOffsetsCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222788:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -187506,7 +187555,7 @@ func fts5PoslistOffsetsCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr } } -func fts5PoslistFilterCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222799:13: */ +func fts5PoslistFilterCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222811:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -187586,7 +187635,7 @@ func fts5PoslistFilterCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, } } -func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChunk uintptr) { /* sqlite3.c:222851:13: */ +func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChunk uintptr) { /* sqlite3.c:222863:13: */ var nRem int32 = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos // Number of bytes still to come var pData uintptr = uintptr(0) var pChunk uintptr = ((*Fts5Data)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf)).Fp + uintptr((*Fts5SegIter)(unsafe.Pointer(pSeg)).FiLeafOffset)) @@ -187640,7 +187689,7 @@ func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChu // function appends the position list data for the current entry to // buffer pBuf. It does not make a copy of the position-list size // field. -func fts5SegiterPoslist(tls *libc.TLS, p uintptr, pSeg uintptr, pColset uintptr, pBuf uintptr) { /* sqlite3.c:222901:13: */ +func fts5SegiterPoslist(tls *libc.TLS, p uintptr, pSeg uintptr, pColset uintptr, pBuf uintptr) { /* sqlite3.c:222913:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -187690,7 +187739,7 @@ func fts5SegiterPoslist(tls *libc.TLS, p uintptr, pSeg uintptr, pColset uintptr, // This function is a no-op if *pRc is other than SQLITE_OK when it is // called. If an OOM error is encountered, *pRc is set to SQLITE_NOMEM // before returning. -func fts5IndexExtractColset(tls *libc.TLS, pRc uintptr, pColset uintptr, pPos uintptr, nPos int32, pIter uintptr) { /* sqlite3.c:222942:13: */ +func fts5IndexExtractColset(tls *libc.TLS, pRc uintptr, pColset uintptr, pPos uintptr, nPos int32, pIter uintptr) { /* sqlite3.c:222954:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -187751,7 +187800,7 @@ func fts5IndexExtractColset(tls *libc.TLS, pRc uintptr, pColset uintptr, pPos ui } // xSetOutputs callback used by detail=none tables. -func fts5IterSetOutputs_None(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223002:13: */ +func fts5IterSetOutputs_None(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223014:13: */ (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FnData = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos @@ -187759,7 +187808,7 @@ func fts5IterSetOutputs_None(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sq // xSetOutputs callback used by detail=full and detail=col tables when no // column filters are specified. -func fts5IterSetOutputs_Nocolset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223012:13: */ +func fts5IterSetOutputs_Nocolset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223024:13: */ (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FnData = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos @@ -187779,7 +187828,7 @@ func fts5IterSetOutputs_Nocolset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { / // xSetOutputs callback used when the Fts5Colset object has nCol==0 (match // against no columns at all). -func fts5IterSetOutputs_ZeroColset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223037:13: */ +func fts5IterSetOutputs_ZeroColset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223049:13: */ _ = pSeg (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FnData = 0 } @@ -187787,7 +187836,7 @@ func fts5IterSetOutputs_ZeroColset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { // xSetOutputs callback used by detail=col when there is a column filter // and there are 100 or more columns. Also called as a fallback from // fts5IterSetOutputs_Col100 if the column-list spans more than one page. -func fts5IterSetOutputs_Col(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223047:13: */ +func fts5IterSetOutputs_Col(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223059:13: */ sqlite3Fts5BufferZero(tls, (pIter + 32 /* &.poslist */)) fts5SegiterPoslist(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex, pSeg, (*Fts5Iter)(unsafe.Pointer(pIter)).FpColset, (pIter + 32 /* &.poslist */)) (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid @@ -187803,7 +187852,7 @@ func fts5IterSetOutputs_Col(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sql // // The last point is to ensure all column numbers are stored as // single-byte varints. -func fts5IterSetOutputs_Col100(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223065:13: */ +func fts5IterSetOutputs_Col100(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223077:13: */ var a uintptr var pEnd uintptr var iPrev int32 @@ -187865,7 +187914,7 @@ __2: } // xSetOutputs callback used by detail=full when there is a column filter. -func fts5IterSetOutputs_Full(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223105:13: */ +func fts5IterSetOutputs_Full(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223117:13: */ var pColset uintptr = (*Fts5Iter)(unsafe.Pointer(pIter)).FpColset (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid @@ -187887,7 +187936,7 @@ func fts5IterSetOutputs_Full(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sq } } -func fts5IterSetOutputCb(tls *libc.TLS, pRc uintptr, pIter uintptr) { /* sqlite3.c:223130:13: */ +func fts5IterSetOutputCb(tls *libc.TLS, pRc uintptr, pIter uintptr) { /* sqlite3.c:223142:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex)).FpConfig if (*Fts5Config)(unsafe.Pointer(pConfig)).FeDetail == FTS5_DETAIL_NONE { @@ -187931,7 +187980,7 @@ func fts5IterSetOutputCb(tls *libc.TLS, pRc uintptr, pIter uintptr) { /* sqlite3 // // The iterator initially points to the first term/rowid entry in the // iterated data. -func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pColset uintptr, pTerm uintptr, nTerm int32, iLevel int32, nSegment int32, ppOut uintptr) { /* sqlite3.c:223173:13: */ +func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pColset uintptr, pTerm uintptr, nTerm int32, iLevel int32, nSegment int32, ppOut uintptr) { /* sqlite3.c:223185:13: */ var nSeg int32 = 0 // Number of segment-iters in use var iIter int32 = 0 // var iSeg int32 // Used to iterate through segments @@ -188030,7 +188079,7 @@ func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pC // Create an Fts5Iter that iterates through the doclist provided // as the second argument. -func fts5MultiIterNew2(tls *libc.TLS, p uintptr, pData uintptr, bDesc int32, ppOut uintptr) { /* sqlite3.c:223272:13: */ +func fts5MultiIterNew2(tls *libc.TLS, p uintptr, pData uintptr, bDesc int32, ppOut uintptr) { /* sqlite3.c:223284:13: */ var pNew uintptr pNew = fts5MultiIterAlloc(tls, p, 2) if pNew != 0 { @@ -188063,7 +188112,7 @@ func fts5MultiIterNew2(tls *libc.TLS, p uintptr, pData uintptr, bDesc int32, ppO // Return true if the iterator is at EOF or if an error has occurred. // False otherwise. -func fts5MultiIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:223312:12: */ +func fts5MultiIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:223324:12: */ return (libc.Bool32(((*Fts5Index)(unsafe.Pointer(p)).Frc != 0) || ((*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FbEof != 0))) } @@ -188071,13 +188120,13 @@ func fts5MultiIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite // Return the rowid of the entry that the iterator currently points // to. If the iterator points to EOF when this function is called the // results are undefined. -func fts5MultiIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:223324:12: */ +func fts5MultiIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:223336:12: */ return (*Fts5SegIter)(unsafe.Pointer((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120)).FiRowid } // Move the iterator to the next entry at or following iMatch. -func fts5MultiIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:223332:13: */ +func fts5MultiIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:223344:13: */ for 1 != 0 { var iRowid I64 fts5MultiIterNext(tls, p, pIter, 1, iMatch) @@ -188096,7 +188145,7 @@ func fts5MultiIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) // Return a pointer to a buffer containing the term associated with the // entry that the iterator currently points to. -func fts5MultiIterTerm(tls *libc.TLS, pIter uintptr, pn uintptr) uintptr { /* sqlite3.c:223351:17: */ +func fts5MultiIterTerm(tls *libc.TLS, pIter uintptr, pn uintptr) uintptr { /* sqlite3.c:223363:17: */ var p uintptr = ((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120) *(*int32)(unsafe.Pointer(pn)) = (*Fts5SegIter)(unsafe.Pointer(p)).Fterm.Fn return (*Fts5SegIter)(unsafe.Pointer(p)).Fterm.Fp @@ -188109,7 +188158,7 @@ func fts5MultiIterTerm(tls *libc.TLS, pIter uintptr, pn uintptr) uintptr { /* sq // // If an error has already occurred, this function is a no-op. 0 is // returned in this case. -func fts5AllocateSegid(tls *libc.TLS, p uintptr, pStruct uintptr) int32 { /* sqlite3.c:223366:12: */ +func fts5AllocateSegid(tls *libc.TLS, p uintptr, pStruct uintptr) int32 { /* sqlite3.c:223378:12: */ bp := tls.Alloc(252) defer tls.Free(252) @@ -188151,7 +188200,7 @@ func fts5AllocateSegid(tls *libc.TLS, p uintptr, pStruct uintptr) int32 { /* sql } // Discard all data currently cached in the hash-tables. -func fts5IndexDiscardData(tls *libc.TLS, p uintptr) { /* sqlite3.c:223423:13: */ +func fts5IndexDiscardData(tls *libc.TLS, p uintptr) { /* sqlite3.c:223435:13: */ if (*Fts5Index)(unsafe.Pointer(p)).FpHash != 0 { sqlite3Fts5HashClear(tls, (*Fts5Index)(unsafe.Pointer(p)).FpHash) @@ -188164,7 +188213,7 @@ func fts5IndexDiscardData(tls *libc.TLS, p uintptr) { /* sqlite3.c:223423:13: */ // // Buffer (pNew/) is guaranteed to be greater // than buffer (pOld/nOld). -func fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) int32 { /* sqlite3.c:223438:12: */ +func fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) int32 { /* sqlite3.c:223450:12: */ var i int32 for i = 0; i < nOld; i++ { if int32(*(*U8)(unsafe.Pointer(pOld + uintptr(i)))) != int32(*(*U8)(unsafe.Pointer(pNew + uintptr(i)))) { @@ -188174,7 +188223,7 @@ func fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) i return i } -func fts5WriteDlidxClear(tls *libc.TLS, p uintptr, pWriter uintptr, bFlush int32) { /* sqlite3.c:223446:13: */ +func fts5WriteDlidxClear(tls *libc.TLS, p uintptr, pWriter uintptr, bFlush int32) { /* sqlite3.c:223458:13: */ var i int32 for i = 0; i < (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FnDlidx; i++ { @@ -188195,7 +188244,7 @@ func fts5WriteDlidxClear(tls *libc.TLS, p uintptr, pWriter uintptr, bFlush int32 // Grow the pWriter->aDlidx[] array to at least nLvl elements in size. // Any new array elements are zeroed before returning. -func fts5WriteDlidxGrow(tls *libc.TLS, p uintptr, pWriter uintptr, nLvl int32) int32 { /* sqlite3.c:223472:12: */ +func fts5WriteDlidxGrow(tls *libc.TLS, p uintptr, pWriter uintptr, nLvl int32) int32 { /* sqlite3.c:223484:12: */ if ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (nLvl >= (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FnDlidx) { var aDlidx uintptr = Xsqlite3_realloc64(tls, (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FaDlidx, (uint64(uint64(unsafe.Sizeof(Fts5DlidxWriter{})) * uint64(nLvl)))) @@ -188214,7 +188263,7 @@ func fts5WriteDlidxGrow(tls *libc.TLS, p uintptr, pWriter uintptr, nLvl int32) i // If the current doclist-index accumulating in pWriter->aDlidx[] is large // enough, flush it to disk and return 1. Otherwise discard it and return // zero. -func fts5WriteFlushDlidx(tls *libc.TLS, p uintptr, pWriter uintptr) int32 { /* sqlite3.c:223498:12: */ +func fts5WriteFlushDlidx(tls *libc.TLS, p uintptr, pWriter uintptr) int32 { /* sqlite3.c:223510:12: */ var bFlag int32 = 0 // If there were FTS5_MIN_DLIDX_SIZE or more empty leaf pages written @@ -188236,7 +188285,7 @@ func fts5WriteFlushDlidx(tls *libc.TLS, p uintptr, pWriter uintptr) int32 { /* s // it. // // Fts5SegWriter.btterm currently contains the first term on page iBtPage. -func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223522:13: */ +func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223534:13: */ var bFlag int32 if (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FiBtPage == 0 { @@ -188269,7 +188318,7 @@ func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3 // // If an error occurs, an error code is left in Fts5Index.rc. If an error // has already occurred when this function is called, it is a no-op. -func fts5WriteBtreeTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223551:13: */ +func fts5WriteBtreeTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223563:13: */ fts5WriteFlushBtree(tls, p, pWriter) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { sqlite3Fts5BufferSet(tls, (p + 52 /* &.rc */), (pWriter + 96 /* &.btterm */), nTerm, pTerm) @@ -188279,7 +188328,7 @@ func fts5WriteBtreeTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, // This function is called when flushing a leaf page that contains no // terms at all to disk. -func fts5WriteBtreeNoTerm(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223567:13: */ +func fts5WriteBtreeNoTerm(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223579:13: */ // If there were no rowids on the leaf page either and the doclist-index // has already been started, append an 0x00 byte to it. if ((*Fts5SegWriter)(unsafe.Pointer(pWriter)).FbFirstRowidInPage != 0) && ((*Fts5DlidxWriter)(unsafe.Pointer((*Fts5SegWriter)(unsafe.Pointer(pWriter)).FaDlidx)).Fbuf.Fn > 0) { @@ -188292,7 +188341,7 @@ func fts5WriteBtreeNoTerm(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FnEmpty++ } -func fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) I64 { /* sqlite3.c:223583:12: */ +func fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) I64 { /* sqlite3.c:223595:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -188308,7 +188357,7 @@ func fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) I64 { /* sqlite3.c: // Rowid iRowid has just been appended to the current leaf page. It is the // first on the page. This function appends an appropriate entry to the current // doclist-index. -func fts5WriteDlidxAppend(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223597:13: */ +func fts5WriteDlidxAppend(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223609:13: */ var i int32 var bDone int32 = 0 @@ -188368,7 +188417,7 @@ func fts5WriteDlidxAppend(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) } } -func fts5WriteFlushLeaf(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223657:13: */ +func fts5WriteFlushLeaf(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223669:13: */ var pPage uintptr = (pWriter + 8 /* &.writer */) var iRowid I64 @@ -188404,14 +188453,14 @@ func fts5WriteFlushLeaf(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3. (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FbFirstRowidInPage = U8(1) } -var zero = [4]U8{U8(0x00), U8(0x00), U8(0x00), U8(0x00)} /* sqlite3.c:223658:19 */ +var zero = [4]U8{U8(0x00), U8(0x00), U8(0x00), U8(0x00)} /* sqlite3.c:223670:19 */ // Append term pTerm/nTerm to the segment being written by the writer passed // as the second argument. // // If an error occurs, set the Fts5Index.rc error code. If an error has // already occurred, this function is a no-op. -func fts5WriteAppendTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223703:13: */ +func fts5WriteAppendTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223715:13: */ var nPrefix int32 // Bytes of prefix compression for term var pPage uintptr = (pWriter + 8 /* &.writer */) var pPgidx uintptr = (pWriter + 8 /* &.writer */ + 24 /* &.pgidx */) @@ -188487,7 +188536,7 @@ func fts5WriteAppendTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, } // Append a rowid and position-list size field to the writers output. -func fts5WriteAppendRowid(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223784:13: */ +func fts5WriteAppendRowid(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223796:13: */ if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var pPage uintptr = (pWriter + 8 /* &.writer */) @@ -188516,7 +188565,7 @@ func fts5WriteAppendRowid(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) } } -func fts5WriteAppendPoslistData(tls *libc.TLS, p uintptr, pWriter uintptr, aData uintptr, nData int32) { /* sqlite3.c:223817:13: */ +func fts5WriteAppendPoslistData(tls *libc.TLS, p uintptr, pWriter uintptr, aData uintptr, nData int32) { /* sqlite3.c:223829:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -188545,7 +188594,7 @@ func fts5WriteAppendPoslistData(tls *libc.TLS, p uintptr, pWriter uintptr, aData // Flush any data cached by the writer object to the database. Free any // allocations associated with the writer. -func fts5WriteFinish(tls *libc.TLS, p uintptr, pWriter uintptr, pnLeaf uintptr) { /* sqlite3.c:223851:13: */ +func fts5WriteFinish(tls *libc.TLS, p uintptr, pWriter uintptr, pnLeaf uintptr) { /* sqlite3.c:223863:13: */ var i int32 var pLeaf uintptr = (pWriter + 8 /* &.writer */) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -188569,7 +188618,7 @@ func fts5WriteFinish(tls *libc.TLS, p uintptr, pWriter uintptr, pnLeaf uintptr) Xsqlite3_free(tls, (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FaDlidx) } -func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* sqlite3.c:223879:13: */ +func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* sqlite3.c:223891:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188609,7 +188658,7 @@ func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* // Iterator pIter was used to iterate through the input segments of on an // incremental merge operation. This function is called if the incremental // merge step has finished but the input has not been completely exhausted. -func fts5TrimSegments(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:223926:13: */ +func fts5TrimSegments(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:223938:13: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -188678,13 +188727,13 @@ func fts5TrimSegments(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:22 sqlite3Fts5BufferFree(tls, bp /* &buf */) } -func fts5MergeChunkCallback(tls *libc.TLS, p uintptr, pCtx uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:223992:13: */ +func fts5MergeChunkCallback(tls *libc.TLS, p uintptr, pCtx uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:224004:13: */ var pWriter uintptr = pCtx fts5WriteAppendPoslistData(tls, p, pWriter, pChunk, nChunk) } // -func fts5IndexMergeLevel(tls *libc.TLS, p uintptr, ppStruct uintptr, iLvl int32, pnRem uintptr) { /* sqlite3.c:224004:13: */ +func fts5IndexMergeLevel(tls *libc.TLS, p uintptr, ppStruct uintptr, iLvl int32, pnRem uintptr) { /* sqlite3.c:224016:13: */ bp := tls.Alloc(148) defer tls.Free(148) @@ -188843,7 +188892,7 @@ func fts5IndexMergeLevel(tls *libc.TLS, p uintptr, ppStruct uintptr, iLvl int32, // Do up to nPg pages of automerge work on the index. // // Return true if any changes were actually made, or false otherwise. -func fts5IndexMerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nPg int32, nMin int32) int32 { /* sqlite3.c:224153:12: */ +func fts5IndexMerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nPg int32, nMin int32) int32 { /* sqlite3.c:224165:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -188893,7 +188942,7 @@ func fts5IndexMerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nPg int32, nMin // // If an error occurs, set the Fts5Index.rc error code. If an error has // already occurred, this function is a no-op. -func fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) { /* sqlite3.c:224212:13: */ +func fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) { /* sqlite3.c:224224:13: */ if ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FnAutomerge > 0) { var pStruct uintptr = *(*uintptr)(unsafe.Pointer(ppStruct)) var nWrite U64 // Initial value of write-counter @@ -188910,7 +188959,7 @@ func fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) } } -func fts5IndexCrisismerge(tls *libc.TLS, p uintptr, ppStruct uintptr) { /* sqlite3.c:224233:13: */ +func fts5IndexCrisismerge(tls *libc.TLS, p uintptr, ppStruct uintptr) { /* sqlite3.c:224245:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -188927,7 +188976,7 @@ func fts5IndexCrisismerge(tls *libc.TLS, p uintptr, ppStruct uintptr) { /* sqlit *(*uintptr)(unsafe.Pointer(ppStruct)) = *(*uintptr)(unsafe.Pointer(bp /* pStruct */)) } -func fts5IndexReturn(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224251:12: */ +func fts5IndexReturn(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224263:12: */ var rc int32 = (*Fts5Index)(unsafe.Pointer(p)).Frc (*Fts5Index)(unsafe.Pointer(p)).Frc = SQLITE_OK return rc @@ -188936,14 +188985,14 @@ func fts5IndexReturn(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224251:12: * type Fts5FlushCtx1 = struct { FpIdx uintptr Fwriter Fts5SegWriter -} /* sqlite3.c:224257:9 */ +} /* sqlite3.c:224269:9 */ -type Fts5FlushCtx = Fts5FlushCtx1 /* sqlite3.c:224257:29 */ +type Fts5FlushCtx = Fts5FlushCtx1 /* sqlite3.c:224269:29 */ // Buffer aBuf[] contains a list of varints, all small enough to fit // in a 32-bit integer. Return the size of the largest prefix of this // list nMax bytes or less in size. -func fts5PoslistPrefix(tls *libc.TLS, aBuf uintptr, nMax int32) int32 { /* sqlite3.c:224268:12: */ +func fts5PoslistPrefix(tls *libc.TLS, aBuf uintptr, nMax int32) int32 { /* sqlite3.c:224280:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -188968,7 +189017,7 @@ func fts5PoslistPrefix(tls *libc.TLS, aBuf uintptr, nMax int32) int32 { /* sqlit // // If an error occurs, set the Fts5Index.rc error code. If an error has // already occurred, this function is a no-op. -func fts5FlushOneHash(tls *libc.TLS, p uintptr) { /* sqlite3.c:224289:13: */ +func fts5FlushOneHash(tls *libc.TLS, p uintptr) { /* sqlite3.c:224301:13: */ bp := tls.Alloc(176) defer tls.Free(176) @@ -189146,7 +189195,7 @@ func fts5FlushOneHash(tls *libc.TLS, p uintptr) { /* sqlite3.c:224289:13: */ } // Flush any data stored in the in-memory hash tables to the database. -func fts5IndexFlush(tls *libc.TLS, p uintptr) { /* sqlite3.c:224443:13: */ +func fts5IndexFlush(tls *libc.TLS, p uintptr) { /* sqlite3.c:224455:13: */ // Unless it is empty, flush the hash table to disk if (*Fts5Index)(unsafe.Pointer(p)).FnPendingData != 0 { @@ -189155,7 +189204,7 @@ func fts5IndexFlush(tls *libc.TLS, p uintptr) { /* sqlite3.c:224443:13: */ } } -func fts5IndexOptimizeStruct(tls *libc.TLS, p uintptr, pStruct uintptr) uintptr { /* sqlite3.c:224452:22: */ +func fts5IndexOptimizeStruct(tls *libc.TLS, p uintptr, pStruct uintptr) uintptr { /* sqlite3.c:224464:22: */ var pNew uintptr = uintptr(0) var nByte Sqlite3_int64 = Sqlite3_int64(unsafe.Sizeof(Fts5Structure{})) var nSeg int32 = (*Fts5Structure)(unsafe.Pointer(pStruct)).FnSegment @@ -189216,7 +189265,7 @@ func fts5IndexOptimizeStruct(tls *libc.TLS, p uintptr, pStruct uintptr) uintptr return pNew } -func sqlite3Fts5IndexOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224514:12: */ +func sqlite3Fts5IndexOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224526:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -189250,7 +189299,7 @@ func sqlite3Fts5IndexOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224 // This is called to implement the special "VALUES('merge', $nMerge)" // INSERT command. -func sqlite3Fts5IndexMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:224548:12: */ +func sqlite3Fts5IndexMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:224560:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -189275,12 +189324,12 @@ func sqlite3Fts5IndexMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sq return fts5IndexReturn(tls, p) } -func fts5AppendRowid(tls *libc.TLS, p uintptr, iDelta I64, pUnused uintptr, pBuf uintptr) { /* sqlite3.c:224570:13: */ +func fts5AppendRowid(tls *libc.TLS, p uintptr, iDelta I64, pUnused uintptr, pBuf uintptr) { /* sqlite3.c:224582:13: */ _ = pUnused sqlite3Fts5BufferAppendVarint(tls, (p + 52 /* &.rc */), pBuf, iDelta) } -func fts5AppendPoslist(tls *libc.TLS, p uintptr, iDelta I64, pMulti uintptr, pBuf uintptr) { /* sqlite3.c:224580:13: */ +func fts5AppendPoslist(tls *libc.TLS, p uintptr, iDelta I64, pMulti uintptr, pBuf uintptr) { /* sqlite3.c:224592:13: */ var nData int32 = (*Fts5Iter)(unsafe.Pointer(pMulti)).Fbase.FnData var nByte int32 = (((nData + 9) + 9) + FTS5_DATA_ZERO_PADDING) @@ -189307,7 +189356,7 @@ func fts5AppendPoslist(tls *libc.TLS, p uintptr, iDelta I64, pMulti uintptr, pBu } } -func fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:224598:13: */ +func fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:224610:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -189339,7 +189388,7 @@ func fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:224598:13: } } -func fts5DoclistIterInit(tls *libc.TLS, pBuf uintptr, pIter uintptr) { /* sqlite3.c:224627:13: */ +func fts5DoclistIterInit(tls *libc.TLS, pBuf uintptr, pIter uintptr) { /* sqlite3.c:224639:13: */ libc.X__builtin___memset_chk(tls, pIter, 0, uint64(unsafe.Sizeof(Fts5DoclistIter{})), libc.X__builtin_object_size(tls, pIter, 0)) if (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn > 0 { (*Fts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist = (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp @@ -189349,13 +189398,13 @@ func fts5DoclistIterInit(tls *libc.TLS, pBuf uintptr, pIter uintptr) { /* sqlite } // Swap the contents of buffer *p1 with that of *p2. -func fts5BufferSwap(tls *libc.TLS, p1 uintptr, p2 uintptr) { /* sqlite3.c:224666:13: */ +func fts5BufferSwap(tls *libc.TLS, p1 uintptr, p2 uintptr) { /* sqlite3.c:224678:13: */ var tmp = *(*Fts5Buffer)(unsafe.Pointer(p1)) *(*Fts5Buffer)(unsafe.Pointer(p1)) = *(*Fts5Buffer)(unsafe.Pointer(p2)) *(*Fts5Buffer)(unsafe.Pointer(p2)) = tmp } -func fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) { /* sqlite3.c:224672:13: */ +func fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) { /* sqlite3.c:224684:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -189372,7 +189421,7 @@ func fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) // This is the equivalent of fts5MergePrefixLists() for detail=none mode. // In this case the buffers consist of a delta-encoded list of rowids only. -func fts5MergeRowidLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224687:13: */ +func fts5MergeRowidLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224699:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -189428,11 +189477,11 @@ type PrefixMerger1 = struct { _ [4]byte FaPos uintptr FpNext uintptr -} /* sqlite3.c:224730:9 */ +} /* sqlite3.c:224742:9 */ -type PrefixMerger = PrefixMerger1 /* sqlite3.c:224730:29 */ +type PrefixMerger = PrefixMerger1 /* sqlite3.c:224742:29 */ -func fts5PrefixMergerInsertByRowid(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224739:13: */ +func fts5PrefixMergerInsertByRowid(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224751:13: */ if (*PrefixMerger)(unsafe.Pointer(p)).Fiter.FaPoslist != 0 { var pp uintptr = ppHead for (*(*uintptr)(unsafe.Pointer(pp)) != 0) && ((*PrefixMerger)(unsafe.Pointer(p)).Fiter.FiRowid > (*PrefixMerger)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pp))))).Fiter.FiRowid) { @@ -189443,7 +189492,7 @@ func fts5PrefixMergerInsertByRowid(tls *libc.TLS, ppHead uintptr, p uintptr) { / } } -func fts5PrefixMergerInsertByPosition(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224753:13: */ +func fts5PrefixMergerInsertByPosition(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224765:13: */ if (*PrefixMerger)(unsafe.Pointer(p)).FiPos >= int64(0) { var pp uintptr = ppHead for (*(*uintptr)(unsafe.Pointer(pp)) != 0) && ((*PrefixMerger)(unsafe.Pointer(p)).FiPos > (*PrefixMerger)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pp))))).FiPos) { @@ -189456,7 +189505,7 @@ func fts5PrefixMergerInsertByPosition(tls *libc.TLS, ppHead uintptr, p uintptr) // Array aBuf[] contains nBuf doclists. These are all merged in with the // doclist in buffer p1. -func fts5MergePrefixLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224772:13: */ +func fts5MergePrefixLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224784:13: */ bp := tls.Alloc(1072) defer tls.Free(1072) @@ -189624,7 +189673,7 @@ func fts5MergePrefixLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf *(*Fts5Buffer)(unsafe.Pointer(p1)) = *(*Fts5Buffer)(unsafe.Pointer(bp + 1032 /* out */)) } -func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pToken uintptr, nToken int32, pColset uintptr, ppIter uintptr) { /* sqlite3.c:224915:13: */ +func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pToken uintptr, nToken int32, pColset uintptr, ppIter uintptr) { /* sqlite3.c:224927:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -189759,7 +189808,7 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok // Indicate that all subsequent calls to sqlite3Fts5IndexWrite() pertain // to the document with rowid iRowid. -func sqlite3Fts5IndexBeginWrite(tls *libc.TLS, p uintptr, bDelete int32, iRowid I64) int32 { /* sqlite3.c:225052:12: */ +func sqlite3Fts5IndexBeginWrite(tls *libc.TLS, p uintptr, bDelete int32, iRowid I64) int32 { /* sqlite3.c:225064:12: */ // Allocate the hash table if it has not already been allocated if (*Fts5Index)(unsafe.Pointer(p)).FpHash == uintptr(0) { @@ -189779,7 +189828,7 @@ func sqlite3Fts5IndexBeginWrite(tls *libc.TLS, p uintptr, bDelete int32, iRowid } // Commit data to disk. -func sqlite3Fts5IndexSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225076:12: */ +func sqlite3Fts5IndexSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225088:12: */ fts5IndexFlush(tls, p) sqlite3Fts5IndexCloseReader(tls, p) @@ -189790,7 +189839,7 @@ func sqlite3Fts5IndexSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225076: // to the database. Additionally, assume that the contents of the %_data // table may have changed on disk. So any in-memory caches of %_data // records must be invalidated. -func sqlite3Fts5IndexRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225089:12: */ +func sqlite3Fts5IndexRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225101:12: */ sqlite3Fts5IndexCloseReader(tls, p) fts5IndexDiscardData(tls, p) fts5StructureInvalidate(tls, p) @@ -189801,7 +189850,7 @@ func sqlite3Fts5IndexRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225 // The %_data table is completely empty when this function is called. This // function populates it with the initial structure objects for each index, // and the initial version of the "averages" record (a zero-byte blob). -func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225102:12: */ +func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225114:12: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -189820,7 +189869,7 @@ func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:22510 // // If successful, set *pp to point to the new object and return SQLITE_OK. // Otherwise, set *pp to NULL and return an SQLite error code. -func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:225119:12: */ +func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:225131:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -189854,7 +189903,7 @@ func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uint } // Close a handle opened by an earlier call to sqlite3Fts5IndexOpen(). -func sqlite3Fts5IndexClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225160:12: */ +func sqlite3Fts5IndexClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225172:12: */ var rc int32 = SQLITE_OK if p != 0 { @@ -189875,7 +189924,7 @@ func sqlite3Fts5IndexClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225160 // Argument p points to a buffer containing utf-8 text that is n bytes in // size. Return the number of bytes in the nChar character prefix of the // buffer, or 0 if there are less than nChar characters in total. -func sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nChar int32) int32 { /* sqlite3.c:225183:12: */ +func sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nChar int32) int32 { /* sqlite3.c:225195:12: */ var n int32 = 0 var i int32 for i = 0; i < nChar; i++ { @@ -189902,7 +189951,7 @@ func sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nCh // pIn is a UTF-8 encoded string, nIn bytes in size. Return the number of // unicode characters in the string. -func fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) int32 { /* sqlite3.c:225210:12: */ +func fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) int32 { /* sqlite3.c:225222:12: */ var nChar int32 = 0 var i int32 = 0 for i < nIn { @@ -189924,7 +189973,7 @@ func fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) int32 { /* sqlite3. // If the operation is a delete, it must be called (at least) once for each // unique token in the document with an iCol value less than zero. The iPos // argument is ignored for a delete. -func sqlite3Fts5IndexWrite(tls *libc.TLS, p uintptr, iCol int32, iPos int32, pToken uintptr, nToken int32) int32 { /* sqlite3.c:225232:12: */ +func sqlite3Fts5IndexWrite(tls *libc.TLS, p uintptr, iCol int32, iPos int32, pToken uintptr, nToken int32) int32 { /* sqlite3.c:225244:12: */ var i int32 // Used to iterate through indexes var rc int32 = SQLITE_OK // Return code var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig @@ -189948,7 +189997,7 @@ func sqlite3Fts5IndexWrite(tls *libc.TLS, p uintptr, iCol int32, iPos int32, pTo // Open a new iterator to iterate though all rowid that match the // specified token or token prefix. -func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int32, flags int32, pColset uintptr, ppIter uintptr) int32 { /* sqlite3.c:225268:12: */ +func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int32, flags int32, pColset uintptr, ppIter uintptr) int32 { /* sqlite3.c:225280:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -190025,7 +190074,7 @@ func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int3 // Return true if the iterator passed as the only argument is at EOF. // Move to the next matching rowid. -func sqlite3Fts5IterNext(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225352:12: */ +func sqlite3Fts5IterNext(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225364:12: */ var pIter uintptr = pIndexIter fts5MultiIterNext(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex, pIter, 0, int64(0)) @@ -190033,7 +190082,7 @@ func sqlite3Fts5IterNext(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c } // Move to the next matching term/rowid. Used by the fts5vocab module. -func sqlite3Fts5IterNextScan(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225362:12: */ +func sqlite3Fts5IterNextScan(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225374:12: */ var pIter uintptr = pIndexIter var p uintptr = (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex @@ -190053,14 +190102,14 @@ func sqlite3Fts5IterNextScan(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlit // Move to the next matching rowid that occurs at or after iMatch. The // definition of "at or after" depends on whether this iterator iterates // in ascending or descending rowid order. -func sqlite3Fts5IterNextFrom(tls *libc.TLS, pIndexIter uintptr, iMatch I64) int32 { /* sqlite3.c:225386:12: */ +func sqlite3Fts5IterNextFrom(tls *libc.TLS, pIndexIter uintptr, iMatch I64) int32 { /* sqlite3.c:225398:12: */ var pIter uintptr = pIndexIter fts5MultiIterNextFrom(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex, pIter, iMatch) return fts5IndexReturn(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex) } // Return the current term. -func sqlite3Fts5IterTerm(tls *libc.TLS, pIndexIter uintptr, pn uintptr) uintptr { /* sqlite3.c:225395:19: */ +func sqlite3Fts5IterTerm(tls *libc.TLS, pIndexIter uintptr, pn uintptr) uintptr { /* sqlite3.c:225407:19: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -190078,7 +190127,7 @@ func sqlite3Fts5IterTerm(tls *libc.TLS, pIndexIter uintptr, pn uintptr) uintptr } // Close an iterator opened by an earlier call to sqlite3Fts5IndexQuery(). -func sqlite3Fts5IterClose(tls *libc.TLS, pIndexIter uintptr) { /* sqlite3.c:225406:13: */ +func sqlite3Fts5IterClose(tls *libc.TLS, pIndexIter uintptr) { /* sqlite3.c:225418:13: */ if pIndexIter != 0 { var pIter uintptr = pIndexIter var pIndex uintptr = (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex @@ -190091,7 +190140,7 @@ func sqlite3Fts5IterClose(tls *libc.TLS, pIndexIter uintptr) { /* sqlite3.c:2254 // // Parameter anSize must point to an array of size nCol, where nCol is // the number of user defined columns in the FTS table. -func sqlite3Fts5IndexGetAverages(tls *libc.TLS, p uintptr, pnRow uintptr, anSize uintptr) int32 { /* sqlite3.c:225421:12: */ +func sqlite3Fts5IndexGetAverages(tls *libc.TLS, p uintptr, pnRow uintptr, anSize uintptr) int32 { /* sqlite3.c:225433:12: */ var nCol int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FnCol var pData uintptr @@ -190113,7 +190162,7 @@ func sqlite3Fts5IndexGetAverages(tls *libc.TLS, p uintptr, pnRow uintptr, anSize // Replace the current "averages" record with the contents of the buffer // supplied as the second argument. -func sqlite3Fts5IndexSetAverages(tls *libc.TLS, p uintptr, pData uintptr, nData int32) int32 { /* sqlite3.c:225445:12: */ +func sqlite3Fts5IndexSetAverages(tls *libc.TLS, p uintptr, pData uintptr, nData int32) int32 { /* sqlite3.c:225457:12: */ fts5DataWrite(tls, p, int64(FTS5_AVERAGES_ROWID), pData, nData) return fts5IndexReturn(tls, p) @@ -190121,7 +190170,7 @@ func sqlite3Fts5IndexSetAverages(tls *libc.TLS, p uintptr, pData uintptr, nData // Return the total number of blocks this module has read from the %_data // table since it was created. -func sqlite3Fts5IndexReads(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225455:12: */ +func sqlite3Fts5IndexReads(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225467:12: */ return (*Fts5Index)(unsafe.Pointer(p)).FnRead } @@ -190130,7 +190179,7 @@ func sqlite3Fts5IndexReads(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225455 // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* sqlite3.c:225466:12: */ +func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* sqlite3.c:225478:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -190152,7 +190201,7 @@ func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* return rc } -func sqlite3Fts5IndexLoadConfig(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225486:12: */ +func sqlite3Fts5IndexLoadConfig(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225498:12: */ var pStruct uintptr pStruct = fts5StructureRead(tls, p) fts5StructureRelease(tls, pStruct) @@ -190166,7 +190215,7 @@ func sqlite3Fts5IndexLoadConfig(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:2 // functionality. // Return a simple checksum value based on the arguments. -func sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid I64, iCol int32, iPos int32, iIdx int32, pTerm uintptr, nTerm int32) U64 { /* sqlite3.c:225503:12: */ +func sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid I64, iCol int32, iPos int32, iIdx int32, pTerm uintptr, nTerm int32) U64 { /* sqlite3.c:225515:12: */ var i int32 var ret U64 = U64(iRowid) ret = ret + ((ret << 3) + U64(iCol)) @@ -190186,7 +190235,7 @@ func sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid I64, iCol int32, iPos int3 // contain zero terms. // 2) All leaves of pSeg between iNoRowid and iLast (inclusive) exist and // contain zero rowids. -func fts5IndexIntegrityCheckEmpty(tls *libc.TLS, p uintptr, pSeg uintptr, iFirst int32, iNoRowid int32, iLast int32) { /* sqlite3.c:225721:13: */ +func fts5IndexIntegrityCheckEmpty(tls *libc.TLS, p uintptr, pSeg uintptr, iFirst int32, iNoRowid int32, iLast int32) { /* sqlite3.c:225733:13: */ var i int32 // Now check that the iter.nEmpty leaves following the current leaf @@ -190205,7 +190254,7 @@ func fts5IndexIntegrityCheckEmpty(tls *libc.TLS, p uintptr, pSeg uintptr, iFirst } } -func fts5IntegrityCheckPgidx(tls *libc.TLS, p uintptr, pLeaf uintptr) { /* sqlite3.c:225742:13: */ +func fts5IntegrityCheckPgidx(tls *libc.TLS, p uintptr, pLeaf uintptr) { /* sqlite3.c:225754:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -190264,7 +190313,7 @@ func fts5IntegrityCheckPgidx(tls *libc.TLS, p uintptr, pLeaf uintptr) { /* sqlit sqlite3Fts5BufferFree(tls, bp+32 /* &buf2 */) } -func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* sqlite3.c:225792:13: */ +func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* sqlite3.c:225804:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -190433,7 +190482,7 @@ func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* // checksum does not match. Return SQLITE_OK if all checks pass without // error, or some other SQLite error code if another error (e.g. OOM) // occurs. -func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCksum int32) int32 { /* sqlite3.c:225937:12: */ +func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCksum int32) int32 { /* sqlite3.c:225949:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -190517,7 +190566,7 @@ func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCks // Decode a segment-data rowid from the %_data table. This function is // the opposite of macro FTS5_SEGMENT_ROWID(). -func fts5DecodeRowid(tls *libc.TLS, iRowid I64, piSegid uintptr, pbDlidx uintptr, piHeight uintptr, piPgno uintptr) { /* sqlite3.c:226029:13: */ +func fts5DecodeRowid(tls *libc.TLS, iRowid I64, piSegid uintptr, pbDlidx uintptr, piHeight uintptr, piPgno uintptr) { /* sqlite3.c:226041:13: */ *(*int32)(unsafe.Pointer(piPgno)) = (int32(iRowid & ((I64(int64(1)) << FTS5_DATA_PAGE_B) - int64(1)))) iRowid >>= FTS5_DATA_PAGE_B @@ -190530,7 +190579,7 @@ func fts5DecodeRowid(tls *libc.TLS, iRowid I64, piSegid uintptr, pbDlidx uintptr *(*int32)(unsafe.Pointer(piSegid)) = (int32(iRowid & ((I64(int64(1)) << FTS5_DATA_ID_B) - int64(1)))) } -func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sqlite3.c:226048:13: */ +func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sqlite3.c:226060:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -190561,7 +190610,7 @@ func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sql } } -func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { /* sqlite3.c:226066:13: */ +func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { /* sqlite3.c:226078:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -190586,7 +190635,7 @@ func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { / // Arguments pBlob/nBlob contain a serialized Fts5Structure object. This // function appends a human-readable representation of the same object // to the buffer passed as the second argument. -func fts5DecodeStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226095:13: */ +func fts5DecodeStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226107:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -190608,7 +190657,7 @@ func fts5DecodeStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr // Arguments pBlob/nBlob contain an "averages" record. This function // appends a human-readable representation of record to the buffer passed // as the second argument. -func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226120:13: */ +func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226132:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -190629,7 +190678,7 @@ func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, // after either the input buffer is exhausted or a 0 value is read. // // The return value is the number of bytes read from the input buffer. -func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226143:12: */ +func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226155:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -190649,7 +190698,7 @@ func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in // pBuf. // // The return value is the number of bytes read from the input buffer. -func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226161:12: */ +func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226173:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -190701,7 +190750,7 @@ func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in // no-op. If an OOM or other error occurs within this function, *pRc is // set to an SQLite error code before returning. The final state of buffer // pBuf is undefined in this case. -func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr, nData int32) { /* sqlite3.c:226199:13: */ +func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr, nData int32) { /* sqlite3.c:226211:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -190730,7 +190779,7 @@ func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr } // The implementation of user-defined scalar function fts5_decode(). -func fts5DecodeFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226230:13: */ +func fts5DecodeFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226242:13: */ bp := tls.Alloc(192) defer tls.Free(192) @@ -191077,7 +191126,7 @@ __41: } // The implementation of user-defined scalar function fts5_rowid(). -func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226439:13: */ +func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226451:13: */ var zArg uintptr if nArg == 0 { Xsqlite3_result_error(tls, pCtx, ts+32655 /* "should be: fts5_..." */, -1) @@ -191109,7 +191158,7 @@ func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { // // If successful, SQLITE_OK is returned. If an error occurs, some other // SQLite error code is returned instead. -func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:226478:12: */ +func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:226490:12: */ var rc int32 = Xsqlite3_create_function(tls, db, ts+32791 /* "fts5_decode" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) @@ -191132,7 +191181,7 @@ func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:226478 return rc } -func sqlite3Fts5IndexReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:226499:12: */ +func sqlite3Fts5IndexReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:226511:12: */ if fts5IndexDataVersion(tls, p) != (*Fts5Index)(unsafe.Pointer(p)).FiStructVersion { fts5StructureInvalidate(tls, p) @@ -191159,16 +191208,16 @@ func sqlite3Fts5IndexReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:226499 // structures should not be corrupt. Otherwise, true. If it is false, extra // assert() conditions in the fts5 code are activated - conditions that are // only true if it is guaranteed that the fts5 database is not corrupt. -var Xsqlite3_fts5_may_be_corrupt int32 = 1 /* sqlite3.c:226531:16 */ +var Xsqlite3_fts5_may_be_corrupt int32 = 1 /* sqlite3.c:226543:16 */ type Fts5Auxdata1 = struct { FpAux uintptr FpPtr uintptr FxDelete uintptr FpNext uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Auxdata = Fts5Auxdata1 /* sqlite3.c:226534:28 */ +type Fts5Auxdata = Fts5Auxdata1 /* sqlite3.c:226546:28 */ type Fts5Auxiliary1 = struct { FpGlobal uintptr FzFunc uintptr @@ -191176,9 +191225,9 @@ type Fts5Auxiliary1 = struct { FxFunc Fts5_extension_function FxDestroy uintptr FpNext uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Auxiliary = Fts5Auxiliary1 /* sqlite3.c:226535:30 */ +type Fts5Auxiliary = Fts5Auxiliary1 /* sqlite3.c:226547:30 */ type Fts5Cursor1 = struct { Fbase Sqlite3_vtab_cursor FpNext uintptr @@ -191207,35 +191256,35 @@ type Fts5Cursor1 = struct { FnInstAlloc int32 FnInstCount int32 FaInst uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Cursor = Fts5Cursor1 /* sqlite3.c:226536:27 */ +type Fts5Cursor = Fts5Cursor1 /* sqlite3.c:226548:27 */ type Fts5FullTable1 = struct { Fp Fts5Table FpStorage uintptr FpGlobal uintptr FpSortCsr uintptr -} /* sqlite3.c:226537:9 */ +} /* sqlite3.c:226549:9 */ -type Fts5FullTable = Fts5FullTable1 /* sqlite3.c:226537:30 */ +type Fts5FullTable = Fts5FullTable1 /* sqlite3.c:226549:30 */ type Fts5Sorter1 = struct { FpStmt uintptr FiRowid I64 FaPoslist uintptr FnIdx int32 FaIdx [1]int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Sorter = Fts5Sorter1 /* sqlite3.c:226538:27 */ +type Fts5Sorter = Fts5Sorter1 /* sqlite3.c:226550:27 */ type Fts5TokenizerModule1 = struct { FzName uintptr FpUserData uintptr Fx Fts5_tokenizer FxDestroy uintptr FpNext uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5TokenizerModule = Fts5TokenizerModule1 /* sqlite3.c:226539:36 */ +type Fts5TokenizerModule = Fts5TokenizerModule1 /* sqlite3.c:226551:36 */ // NOTES ON TRANSACTIONS: // @@ -191269,21 +191318,21 @@ type Fts5TokenizerModule = Fts5TokenizerModule1 /* sqlite3.c:226539:36 */ type Fts5TransactionState = struct { FeState int32 FiSavepoint int32 -} /* sqlite3.c:226572:1 */ +} /* sqlite3.c:226584:1 */ type Fts5MatchPhrase = struct { FpPoslist uintptr FnTerm int32 _ [4]byte -} /* sqlite3.c:226629:1 */ +} /* sqlite3.c:226641:1 */ // Return true if pTab is a contentless table. -func fts5IsContentless(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:226813:12: */ +func fts5IsContentless(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:226825:12: */ return (libc.Bool32((*Fts5Config)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig)).FeContent == FTS5_CONTENT_NONE)) } // Delete a virtual table handle allocated by fts5InitVtab(). -func fts5FreeVtab(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:226820:13: */ +func fts5FreeVtab(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:226832:13: */ if pTab != 0 { sqlite3Fts5IndexClose(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex) sqlite3Fts5StorageClose(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) @@ -191293,13 +191342,13 @@ func fts5FreeVtab(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:226820:13: */ } // The xDisconnect() virtual table method. -func fts5DisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226832:12: */ +func fts5DisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226844:12: */ fts5FreeVtab(tls, pVtab) return SQLITE_OK } // The xDestroy() virtual table method. -func fts5DestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226840:12: */ +func fts5DestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226852:12: */ var pTab uintptr = pVtab var rc int32 = sqlite3Fts5DropAll(tls, (*Fts5Table)(unsafe.Pointer(pTab)).FpConfig) if rc == SQLITE_OK { @@ -191317,7 +191366,7 @@ func fts5DestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226840 // argv[1] -> database name // argv[2] -> table name // argv[...] -> "column name" and other module argument fields. -func fts5InitVtab(tls *libc.TLS, bCreate int32, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226860:12: */ +func fts5InitVtab(tls *libc.TLS, bCreate int32, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226872:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -191375,11 +191424,11 @@ func fts5InitVtab(tls *libc.TLS, bCreate int32, db uintptr, pAux uintptr, argc i // The xConnect() and xCreate() methods for the virtual table. All the // work is done in function fts5InitVtab(). -func fts5ConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226926:12: */ +func fts5ConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226938:12: */ return fts5InitVtab(tls, 0, db, pAux, argc, argv, ppVtab, pzErr) } -func fts5CreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226936:12: */ +func fts5CreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226948:12: */ return fts5InitVtab(tls, 1, db, pAux, argc, argv, ppVtab, pzErr) } @@ -191388,14 +191437,14 @@ func fts5CreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv // Set the SQLITE_INDEX_SCAN_UNIQUE flag in pIdxInfo->flags. Unless this // extension is currently being used by a version of SQLite too old to // support index-info flags. In that case this function is a no-op. -func fts5SetUniqueFlag(tls *libc.TLS, pIdxInfo uintptr) { /* sqlite3.c:226962:13: */ +func fts5SetUniqueFlag(tls *libc.TLS, pIdxInfo uintptr) { /* sqlite3.c:226974:13: */ { *(*int32)(unsafe.Pointer(pIdxInfo + 80 /* &.idxFlags */)) |= (SQLITE_INDEX_SCAN_UNIQUE) } } -func fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) int32 { /* sqlite3.c:226973:12: */ +func fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) int32 { /* sqlite3.c:226985:12: */ if ((*Fts5Config)(unsafe.Pointer(pConfig)).FePattern == FTS5_PATTERN_GLOB) && (int32((*sqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == FTS5_PATTERN_GLOB) { return 1 @@ -191466,7 +191515,7 @@ func fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) int32 { /* s // * An == rowid constraint: cost=10.0 // // Costs are not modified by the ORDER BY clause. -func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* sqlite3.c:227051:12: */ +func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* sqlite3.c:227063:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -191628,7 +191677,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* return SQLITE_OK } -func fts5NewTransaction(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:227186:12: */ +func fts5NewTransaction(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:227198:12: */ var pCsr uintptr for pCsr = (*Fts5Global)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).FpGlobal)).FpCsr; pCsr != 0; pCsr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpNext { if (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab == pTab { @@ -191639,7 +191688,7 @@ func fts5NewTransaction(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:227186 } // Implementation of xOpen method. -func fts5OpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:227197:12: */ +func fts5OpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:227209:12: */ var pTab uintptr = pVTab var pConfig uintptr = (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig var pCsr uintptr = uintptr(0) // New cursor object @@ -191665,7 +191714,7 @@ func fts5OpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqli return rc } -func fts5StmtType(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227223:12: */ +func fts5StmtType(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227235:12: */ if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan == FTS5_PLAN_SCAN { if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FbDesc != 0 { return FTS5_STMT_SCAN_DESC @@ -191678,11 +191727,11 @@ func fts5StmtType(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227223:12: * // This function is called after the cursor passed as the only argument // is moved to point at a different row. It clears all cached data // specific to the previous row stored by the cursor object. -func fts5CsrNewrow(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227235:13: */ +func fts5CsrNewrow(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227247:13: */ *(*int32)(unsafe.Pointer(pCsr + 80 /* &.csrflags */)) |= (((FTS5CSR_REQUIRE_CONTENT | FTS5CSR_REQUIRE_DOCSIZE) | FTS5CSR_REQUIRE_INST) | FTS5CSR_REQUIRE_POSLIST) } -func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227244:13: */ +func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227256:13: */ var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab var pData uintptr var pNext uintptr @@ -191725,7 +191774,7 @@ func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227244 // Close the cursor. For additional information see the documentation // on the xClose method of the virtual table interface. -func fts5CloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227288:12: */ +func fts5CloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227300:12: */ if pCursor != 0 { var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var pCsr uintptr = pCursor @@ -191742,7 +191791,7 @@ func fts5CloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227288 return SQLITE_OK } -func fts5SorterNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227304:12: */ +func fts5SorterNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227316:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -191786,7 +191835,7 @@ func fts5SorterNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227304:12: // Set the FTS5CSR_REQUIRE_RESEEK flag on all FTS5_PLAN_MATCH cursors // open on table pTab. -func fts5TripCursors(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:227347:13: */ +func fts5TripCursors(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:227359:13: */ var pCsr uintptr for pCsr = (*Fts5Global)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).FpGlobal)).FpCsr; pCsr != 0; pCsr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpNext { if ((*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan == FTS5_PLAN_MATCH) && @@ -191806,7 +191855,7 @@ func fts5TripCursors(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:227347:13: */ // // Return SQLITE_OK if successful or if no reseek was required, or an // error code if an error occurred. -func fts5CursorReseek(tls *libc.TLS, pCsr uintptr, pbSkip uintptr) int32 { /* sqlite3.c:227370:12: */ +func fts5CursorReseek(tls *libc.TLS, pCsr uintptr, pbSkip uintptr) int32 { /* sqlite3.c:227382:12: */ var rc int32 = SQLITE_OK if ((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_REQUIRE_RESEEK)) != 0 { @@ -191835,7 +191884,7 @@ func fts5CursorReseek(tls *libc.TLS, pCsr uintptr, pbSkip uintptr) int32 { /* sq // Return SQLITE_OK if nothing goes wrong. SQLITE_OK is returned // even if we reach end-of-file. The fts5EofMethod() will be called // subsequently to determine whether or not an EOF was hit. -func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227402:12: */ +func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227414:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -191894,7 +191943,7 @@ func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227402: return rc } -func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:227455:12: */ +func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:227467:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -191922,7 +191971,7 @@ func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt u return rc } -func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227484:12: */ +func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227496:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -191989,7 +192038,7 @@ func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int3 return rc } -func fts5CursorFirst(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227536:12: */ +func fts5CursorFirst(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227548:12: */ var rc int32 var pExpr uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpExpr rc = sqlite3Fts5ExprFirst(tls, pExpr, (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiFirstRowid, bDesc) @@ -192004,7 +192053,7 @@ func fts5CursorFirst(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int // MATCH expression that begins with a '*' character. The remainder of // the text passed to the MATCH operator are used as the special query // parameters. -func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) int32 { /* sqlite3.c:227553:12: */ +func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) int32 { /* sqlite3.c:227565:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -192036,7 +192085,7 @@ func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) // Search for an auxiliary function named zName that can be used with table // pTab. If one is found, return a pointer to the corresponding Fts5Auxiliary // structure. Otherwise, if no such function exists, return NULL. -func fts5FindAuxiliary(tls *libc.TLS, pTab uintptr, zName uintptr) uintptr { /* sqlite3.c:227588:22: */ +func fts5FindAuxiliary(tls *libc.TLS, pTab uintptr, zName uintptr) uintptr { /* sqlite3.c:227600:22: */ var pAux uintptr for pAux = (*Fts5Global)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).FpGlobal)).FpAux; pAux != 0; pAux = (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpNext { @@ -192049,7 +192098,7 @@ func fts5FindAuxiliary(tls *libc.TLS, pTab uintptr, zName uintptr) uintptr { /* return uintptr(0) } -func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227600:12: */ +func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227612:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -192102,7 +192151,7 @@ func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:2276 return *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) } -func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uintptr) int32 { /* sqlite3.c:227651:12: */ +func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uintptr) int32 { /* sqlite3.c:227663:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -192139,7 +192188,7 @@ func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uin return rc } -func fts5GetRowidLimit(tls *libc.TLS, pVal uintptr, iDefault I64) I64 { /* sqlite3.c:227688:12: */ +func fts5GetRowidLimit(tls *libc.TLS, pVal uintptr, iDefault I64) I64 { /* sqlite3.c:227700:12: */ if pVal != 0 { var eType int32 = Xsqlite3_value_numeric_type(tls, pVal) if eType == SQLITE_INTEGER { @@ -192158,7 +192207,7 @@ func fts5GetRowidLimit(tls *libc.TLS, pVal uintptr, iDefault I64) I64 { /* sqlit // 1. Full-text search using a MATCH operator. // 2. A by-rowid lookup. // 3. A full-table scan. -func fts5FilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, nVal int32, apVal uintptr) int32 { /* sqlite3.c:227709:12: */ +func fts5FilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, nVal int32, apVal uintptr) int32 { /* sqlite3.c:227721:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -192478,7 +192527,7 @@ filter_out: // This is the xEof method of the virtual table. SQLite calls this // routine to find out if it has reached the end of a result set. -func fts5EofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227901:12: */ +func fts5EofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227913:12: */ var pCsr uintptr = pCursor return func() int32 { if ((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_EOF)) != 0 { @@ -192489,7 +192538,7 @@ func fts5EofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227901:1 } // Return the rowid that the cursor currently points to. -func fts5CursorRowid(tls *libc.TLS, pCsr uintptr) I64 { /* sqlite3.c:227909:12: */ +func fts5CursorRowid(tls *libc.TLS, pCsr uintptr) I64 { /* sqlite3.c:227921:12: */ if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpSorter != 0 { return (*Fts5Sorter)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).FpSorter)).FiRowid @@ -192503,7 +192552,7 @@ func fts5CursorRowid(tls *libc.TLS, pCsr uintptr) I64 { /* sqlite3.c:227909:12: // retrieve the rowid for the current row of the result set. fts5 // exposes %_content.rowid as the rowid for the virtual table. The // rowid should be written to *pRowid. -func fts5RowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:227927:12: */ +func fts5RowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:227939:12: */ var pCsr uintptr = pCursor var ePlan int32 = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan @@ -192533,7 +192582,7 @@ func fts5RowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* // // If argument bErrormsg is true and an error occurs, an error message may // be left in sqlite3_vtab.zErrMsg. -func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sqlite3.c:227958:12: */ +func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sqlite3.c:227970:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -192577,7 +192626,7 @@ func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sql return rc } -func fts5SetVtabError(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:227997:13: */ +func fts5SetVtabError(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:228009:13: */ var ap Va_list _ = ap // ... printf arguments ap = va @@ -192599,7 +192648,7 @@ func fts5SetVtabError(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) { / // The commands implemented by this function are documented in the "Special // INSERT Directives" section of the documentation. It should be updated if // more commands are added to this function. -func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) int32 { /* sqlite3.c:228020:12: */ +func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) int32 { /* sqlite3.c:228032:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -192648,7 +192697,7 @@ func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) return rc } -func fts5SpecialDelete(tls *libc.TLS, pTab uintptr, apVal uintptr) int32 { /* sqlite3.c:228076:12: */ +func fts5SpecialDelete(tls *libc.TLS, pTab uintptr, apVal uintptr) int32 { /* sqlite3.c:228088:12: */ var rc int32 = SQLITE_OK var eType1 int32 = Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*8))) if eType1 == SQLITE_INTEGER { @@ -192658,7 +192707,7 @@ func fts5SpecialDelete(tls *libc.TLS, pTab uintptr, apVal uintptr) int32 { /* sq return rc } -func fts5StorageInsert(tls *libc.TLS, pRc uintptr, pTab uintptr, apVal uintptr, piRowid uintptr) { /* sqlite3.c:228089:13: */ +func fts5StorageInsert(tls *libc.TLS, pRc uintptr, pTab uintptr, apVal uintptr, piRowid uintptr) { /* sqlite3.c:228101:13: */ var rc int32 = *(*int32)(unsafe.Pointer(pRc)) if rc == SQLITE_OK { rc = sqlite3Fts5StorageContentInsert(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, apVal, piRowid) @@ -192681,7 +192730,7 @@ func fts5StorageInsert(tls *libc.TLS, pRc uintptr, pTab uintptr, apVal uintptr, // 2. The "new" rowid. // 3. Values for each of the nCol matchable columns. // 4. Values for the two hidden columns ( and "rank"). -func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, pRowid uintptr) int32 { /* sqlite3.c:228119:12: */ +func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, pRowid uintptr) int32 { /* sqlite3.c:228131:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -192783,7 +192832,7 @@ func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, p } // Implementation of xSync() method. -func fts5SyncMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228245:12: */ +func fts5SyncMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228257:12: */ var rc int32 var pTab uintptr = pVtab @@ -192795,7 +192844,7 @@ func fts5SyncMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228245:12 } // Implementation of xBegin() method. -func fts5BeginMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228259:12: */ +func fts5BeginMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228271:12: */ fts5NewTransaction(tls, pVtab) return SQLITE_OK @@ -192804,7 +192853,7 @@ func fts5BeginMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228259:1 // Implementation of xCommit() method. This is a no-op. The contents of // the pending-terms hash-table have already been flushed into the database // by fts5SyncMethod(). -func fts5CommitMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228270:12: */ +func fts5CommitMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228282:12: */ _ = pVtab // Call below is a no-op for NDEBUG builds return SQLITE_OK @@ -192812,7 +192861,7 @@ func fts5CommitMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228270: // Implementation of xRollback(). Discard the contents of the pending-terms // hash-table. Any changes made to the database are reverted by SQLite. -func fts5RollbackMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228280:12: */ +func fts5RollbackMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228292:12: */ var rc int32 var pTab uintptr = pVtab @@ -192820,46 +192869,46 @@ func fts5RollbackMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:22828 return rc } -func fts5ApiUserData(tls *libc.TLS, pCtx uintptr) uintptr { /* sqlite3.c:228290:13: */ +func fts5ApiUserData(tls *libc.TLS, pCtx uintptr) uintptr { /* sqlite3.c:228302:13: */ var pCsr uintptr = pCtx return (*Fts5Auxiliary)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux)).FpUserData } -func fts5ApiColumnCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228295:12: */ +func fts5ApiColumnCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228307:12: */ var pCsr uintptr = pCtx return (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab)).FpConfig)).FnCol } -func fts5ApiColumnTotalSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228300:12: */ +func fts5ApiColumnTotalSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228312:12: */ var pCsr uintptr = pCtx var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab return sqlite3Fts5StorageSize(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, iCol, pnToken) } -func fts5ApiRowCount(tls *libc.TLS, pCtx uintptr, pnRow uintptr) int32 { /* sqlite3.c:228310:12: */ +func fts5ApiRowCount(tls *libc.TLS, pCtx uintptr, pnRow uintptr) int32 { /* sqlite3.c:228322:12: */ var pCsr uintptr = pCtx var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab return sqlite3Fts5StorageRowCount(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, pnRow) } -func fts5ApiTokenize(tls *libc.TLS, pCtx uintptr, pText uintptr, nText int32, pUserData uintptr, xToken uintptr) int32 { /* sqlite3.c:228316:12: */ +func fts5ApiTokenize(tls *libc.TLS, pCtx uintptr, pText uintptr, nText int32, pUserData uintptr, xToken uintptr) int32 { /* sqlite3.c:228328:12: */ var pCsr uintptr = pCtx var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab return sqlite3Fts5Tokenize(tls, (*Fts5Table)(unsafe.Pointer(pTab)).FpConfig, FTS5_TOKENIZE_AUX, pText, nText, pUserData, xToken) } -func fts5ApiPhraseCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228329:12: */ +func fts5ApiPhraseCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228341:12: */ var pCsr uintptr = pCtx return sqlite3Fts5ExprPhraseCount(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpExpr) } -func fts5ApiPhraseSize(tls *libc.TLS, pCtx uintptr, iPhrase int32) int32 { /* sqlite3.c:228334:12: */ +func fts5ApiPhraseSize(tls *libc.TLS, pCtx uintptr, iPhrase int32) int32 { /* sqlite3.c:228346:12: */ var pCsr uintptr = pCtx return sqlite3Fts5ExprPhraseSize(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpExpr, iPhrase) } -func fts5ApiColumnText(tls *libc.TLS, pCtx uintptr, iCol int32, pz uintptr, pn uintptr) int32 { /* sqlite3.c:228339:12: */ +func fts5ApiColumnText(tls *libc.TLS, pCtx uintptr, iCol int32, pz uintptr, pn uintptr) int32 { /* sqlite3.c:228351:12: */ var rc int32 = SQLITE_OK var pCsr uintptr = pCtx if (fts5IsContentless(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab) != 0) || @@ -192876,7 +192925,7 @@ func fts5ApiColumnText(tls *libc.TLS, pCtx uintptr, iCol int32, pz uintptr, pn u return rc } -func fts5CsrPoslist(tls *libc.TLS, pCsr uintptr, iPhrase int32, pa uintptr, pn uintptr) int32 { /* sqlite3.c:228362:12: */ +func fts5CsrPoslist(tls *libc.TLS, pCsr uintptr, iPhrase int32, pa uintptr, pn uintptr) int32 { /* sqlite3.c:228374:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -192933,7 +192982,7 @@ func fts5CsrPoslist(tls *libc.TLS, pCsr uintptr, iPhrase int32, pa uintptr, pn u // Ensure that the Fts5Cursor.nInstCount and aInst[] variables are populated // correctly for the current view. Return SQLITE_OK if successful, or an // SQLite error code otherwise. -func fts5CacheInstArray(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:228414:12: */ +func fts5CacheInstArray(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:228426:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -193015,7 +193064,7 @@ func fts5CacheInstArray(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:228414 return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func fts5ApiInstCount(tls *libc.TLS, pCtx uintptr, pnInst uintptr) int32 { /* sqlite3.c:228486:12: */ +func fts5ApiInstCount(tls *libc.TLS, pCtx uintptr, pnInst uintptr) int32 { /* sqlite3.c:228498:12: */ var pCsr uintptr = pCtx var rc int32 = SQLITE_OK if (((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_REQUIRE_INST)) == 0) || @@ -193025,7 +193074,7 @@ func fts5ApiInstCount(tls *libc.TLS, pCtx uintptr, pnInst uintptr) int32 { /* sq return rc } -func fts5ApiInst(tls *libc.TLS, pCtx uintptr, iIdx int32, piPhrase uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228496:12: */ +func fts5ApiInst(tls *libc.TLS, pCtx uintptr, iIdx int32, piPhrase uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228508:12: */ var pCsr uintptr = pCtx var rc int32 = SQLITE_OK if (((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_REQUIRE_INST)) == 0) || @@ -193041,11 +193090,11 @@ func fts5ApiInst(tls *libc.TLS, pCtx uintptr, iIdx int32, piPhrase uintptr, piCo return rc } -func fts5ApiRowid(tls *libc.TLS, pCtx uintptr) Sqlite3_int64 { /* sqlite3.c:228525:22: */ +func fts5ApiRowid(tls *libc.TLS, pCtx uintptr) Sqlite3_int64 { /* sqlite3.c:228537:22: */ return fts5CursorRowid(tls, pCtx) } -func fts5ColumnSizeCb(tls *libc.TLS, pContext uintptr, tflags int32, pUnused uintptr, nUnused int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:228529:12: */ +func fts5ColumnSizeCb(tls *libc.TLS, pContext uintptr, tflags int32, pUnused uintptr, nUnused int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:228541:12: */ var pCnt uintptr = pContext _ = pUnused _ = nUnused @@ -193057,7 +193106,7 @@ func fts5ColumnSizeCb(tls *libc.TLS, pContext uintptr, tflags int32, pUnused uin return SQLITE_OK } -func fts5ApiColumnSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228546:12: */ +func fts5ApiColumnSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228558:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -193115,7 +193164,7 @@ func fts5ApiColumnSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) } // Implementation of the xSetAuxdata() method. -func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintptr) int32 { /* sqlite3.c:228599:12: */ +func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintptr) int32 { /* sqlite3.c:228611:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -193153,7 +193202,7 @@ func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintpt return SQLITE_OK } -func fts5ApiGetAuxdata(tls *libc.TLS, pCtx uintptr, bClear int32) uintptr { /* sqlite3.c:228634:13: */ +func fts5ApiGetAuxdata(tls *libc.TLS, pCtx uintptr, bClear int32) uintptr { /* sqlite3.c:228646:13: */ var pCsr uintptr = pCtx var pData uintptr var pRet uintptr = uintptr(0) @@ -193175,7 +193224,7 @@ func fts5ApiGetAuxdata(tls *libc.TLS, pCtx uintptr, bClear int32) uintptr { /* s return pRet } -func fts5ApiPhraseNext(tls *libc.TLS, pUnused uintptr, pIter uintptr, piCol uintptr, piOff uintptr) { /* sqlite3.c:228654:13: */ +func fts5ApiPhraseNext(tls *libc.TLS, pUnused uintptr, pIter uintptr, piCol uintptr, piOff uintptr) { /* sqlite3.c:228666:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -193197,7 +193246,7 @@ func fts5ApiPhraseNext(tls *libc.TLS, pUnused uintptr, pIter uintptr, piCol uint } } -func fts5ApiPhraseFirst(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228676:12: */ +func fts5ApiPhraseFirst(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228688:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -193220,7 +193269,7 @@ func fts5ApiPhraseFirst(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintpt return rc } -func fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol uintptr) { /* sqlite3.c:228695:13: */ +func fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol uintptr) { /* sqlite3.c:228707:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -193253,7 +193302,7 @@ func fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol u } } -func fts5ApiPhraseFirstColumn(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr) int32 { /* sqlite3.c:228725:12: */ +func fts5ApiPhraseFirstColumn(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr) int32 { /* sqlite3.c:228737:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -193334,10 +193383,10 @@ var sFts5Api = Fts5ExtensionApi{ FxPhraseNext: 0, FxPhraseFirstColumn: 0, FxPhraseNextColumn: 0, -} /* sqlite3.c:228775:31 */ +} /* sqlite3.c:228787:31 */ // Implementation of API function xQueryPhrase(). -func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData uintptr, xCallback uintptr) int32 { /* sqlite3.c:228801:12: */ +func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData uintptr, xCallback uintptr) int32 { /* sqlite3.c:228813:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -193371,14 +193420,14 @@ func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData ui return rc } -func fts5ApiInvoke(tls *libc.TLS, pAux uintptr, pCsr uintptr, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228838:13: */ +func fts5ApiInvoke(tls *libc.TLS, pAux uintptr, pCsr uintptr, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228850:13: */ (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = pAux (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((pAux + 24 /* &.xFunc */))))(tls, uintptr(unsafe.Pointer(&sFts5Api)), pCsr, context, argc, argv) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = uintptr(0) } -func fts5CursorFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228851:19: */ +func fts5CursorFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228863:19: */ var pCsr uintptr for pCsr = (*Fts5Global)(unsafe.Pointer(pGlobal)).FpCsr; pCsr != 0; pCsr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpNext { if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiCsrId == iCsrId { @@ -193388,7 +193437,7 @@ func fts5CursorFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { / return pCsr } -func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228859:13: */ +func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228871:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -193411,7 +193460,7 @@ func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // Given cursor id iId, return a pointer to the corresponding Fts5Table // object. Or NULL If the cursor id does not exist. -func sqlite3Fts5TableFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228888:18: */ +func sqlite3Fts5TableFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228900:18: */ var pCsr uintptr pCsr = fts5CursorFromCsrid(tls, pGlobal, iCsrId) if pCsr != 0 { @@ -193433,7 +193482,7 @@ func sqlite3Fts5TableFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintp // for phrase 0. The second (same disclaimer) contains the size of position // list 1. And so on. There is no size field for the final position list, // as it can be derived from the total size of the blob. -func fts5PoslistBlob(tls *libc.TLS, pCtx uintptr, pCsr uintptr) int32 { /* sqlite3.c:228915:12: */ +func fts5PoslistBlob(tls *libc.TLS, pCtx uintptr, pCsr uintptr) int32 { /* sqlite3.c:228927:12: */ bp := tls.Alloc(68) defer tls.Free(68) @@ -193497,7 +193546,7 @@ func fts5PoslistBlob(tls *libc.TLS, pCtx uintptr, pCsr uintptr) int32 { /* sqlit // This is the xColumn method, called by SQLite to request a value from // the row that the supplied cursor currently points to. -func fts5ColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:228972:12: */ +func fts5ColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:228984:12: */ var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var pConfig uintptr = (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig var pCsr uintptr = pCursor @@ -193537,7 +193586,7 @@ func fts5ColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) // This routine implements the xFindFunction method for the FTS3 // virtual table. -func fts5FindFunctionMethod(tls *libc.TLS, pVtab uintptr, nUnused int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:229025:12: */ +func fts5FindFunctionMethod(tls *libc.TLS, pVtab uintptr, nUnused int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:229037:12: */ var pTab uintptr = pVtab var pAux uintptr @@ -193556,12 +193605,12 @@ func fts5FindFunctionMethod(tls *libc.TLS, pVtab uintptr, nUnused int32, zName u } // Implementation of FTS5 xRename method. Rename an fts5 table. -func fts5RenameMethod(tls *libc.TLS, pVtab uintptr, zName uintptr) int32 { /* sqlite3.c:229050:12: */ +func fts5RenameMethod(tls *libc.TLS, pVtab uintptr, zName uintptr) int32 { /* sqlite3.c:229062:12: */ var pTab uintptr = pVtab return sqlite3Fts5StorageRename(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, zName) } -func sqlite3Fts5FlushToDisk(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:229058:12: */ +func sqlite3Fts5FlushToDisk(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:229070:12: */ fts5TripCursors(tls, pTab) return sqlite3Fts5StorageSync(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } @@ -193569,7 +193618,7 @@ func sqlite3Fts5FlushToDisk(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:22 // The xSavepoint() method. // // Flush the contents of the pending-terms table to disk. -func fts5SavepointMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229068:12: */ +func fts5SavepointMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229080:12: */ _ = iSavepoint // Call below is a no-op for NDEBUG builds return sqlite3Fts5FlushToDisk(tls, pVtab) @@ -193578,7 +193627,7 @@ func fts5SavepointMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { // The xRelease() method. // // This is a no-op. -func fts5ReleaseMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229079:12: */ +func fts5ReleaseMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229091:12: */ _ = iSavepoint // Call below is a no-op for NDEBUG builds return sqlite3Fts5FlushToDisk(tls, pVtab) @@ -193587,7 +193636,7 @@ func fts5ReleaseMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { / // The xRollbackTo() method. // // Discard the contents of the pending terms table. -func fts5RollbackToMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229090:12: */ +func fts5RollbackToMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229102:12: */ var pTab uintptr = pVtab _ = iSavepoint // Call below is a no-op for NDEBUG builds @@ -193596,7 +193645,7 @@ func fts5RollbackToMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 } // Register a new auxiliary function with global context pGlobal. -func fts5CreateAux(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, xFunc Fts5_extension_function, xDestroy uintptr) int32 { /* sqlite3.c:229101:12: */ +func fts5CreateAux(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, xFunc Fts5_extension_function, xDestroy uintptr) int32 { /* sqlite3.c:229113:12: */ var pGlobal uintptr = pApi var rc int32 = Xsqlite3_overload_function(tls, (*Fts5Global)(unsafe.Pointer(pGlobal)).Fdb, zName, -1) if rc == SQLITE_OK { @@ -193627,7 +193676,7 @@ func fts5CreateAux(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr // Register a new tokenizer. This is the implementation of the // fts5_api.xCreateTokenizer() method. -func fts5CreateTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, pTokenizer uintptr, xDestroy uintptr) int32 { /* sqlite3.c:229140:12: */ +func fts5CreateTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, pTokenizer uintptr, xDestroy uintptr) int32 { /* sqlite3.c:229152:12: */ var pGlobal uintptr = pApi var pNew uintptr var nName Sqlite3_int64 // Size of zName and its \0 terminator @@ -193656,7 +193705,7 @@ func fts5CreateTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData u return rc } -func fts5LocateTokenizer(tls *libc.TLS, pGlobal uintptr, zName uintptr) uintptr { /* sqlite3.c:229175:28: */ +func fts5LocateTokenizer(tls *libc.TLS, pGlobal uintptr, zName uintptr) uintptr { /* sqlite3.c:229187:28: */ var pMod uintptr = uintptr(0) if zName == uintptr(0) { @@ -193674,7 +193723,7 @@ func fts5LocateTokenizer(tls *libc.TLS, pGlobal uintptr, zName uintptr) uintptr // Find a tokenizer. This is the implementation of the // fts5_api.xFindTokenizer() method. -func fts5FindTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, ppUserData uintptr, pTokenizer uintptr) int32 { /* sqlite3.c:229196:12: */ +func fts5FindTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, ppUserData uintptr, pTokenizer uintptr) int32 { /* sqlite3.c:229208:12: */ var rc int32 = SQLITE_OK var pMod uintptr @@ -193690,7 +193739,7 @@ func fts5FindTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, ppUserData ui return rc } -func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg int32, pConfig uintptr, pzErr uintptr) int32 { /* sqlite3.c:229217:12: */ +func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg int32, pConfig uintptr, pzErr uintptr) int32 { /* sqlite3.c:229229:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -193739,7 +193788,7 @@ func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg return rc } -func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:229254:13: */ +func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:229266:13: */ var pTok uintptr var pNextTok uintptr var pAux uintptr @@ -193765,7 +193814,7 @@ func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:229254:13: */ Xsqlite3_free(tls, pGlobal) } -func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:229274:13: */ +func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:229286:13: */ var pGlobal uintptr = Xsqlite3_user_data(tls, pCtx) var ppApi uintptr _ = nArg @@ -193777,16 +193826,16 @@ func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s } // Implementation of fts5_source_id() function. -func fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) { /* sqlite3.c:229290:13: */ +func fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) { /* sqlite3.c:229302:13: */ _ = nArg _ = apUnused - Xsqlite3_result_text(tls, pCtx, ts+33381 /* "fts5: 2021-04-02..." */, -1, libc.UintptrFromInt32(-1)) + Xsqlite3_result_text(tls, pCtx, ts+33381 /* "fts5: 2021-04-19..." */, -1, libc.UintptrFromInt32(-1)) } // Return true if zName is the extension on one of the shadow tables used // by this module. -func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:229304:12: */ +func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:229316:12: */ var i uint32 for i = uint32(0); uint64(i) < (uint64(unsafe.Sizeof(azName2)) / uint64(unsafe.Sizeof(uintptr(0)))); i++ { if Xsqlite3_stricmp(tls, zName, azName2[i]) == 0 { @@ -193798,9 +193847,9 @@ func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:229304:12 var azName2 = [5]uintptr{ ts + 33472 /* "config" */, ts + 30922 /* "content" */, ts + 23323 /* "data" */, ts + 31273 /* "docsize" */, ts + 10173, /* "idx" */ -} /* sqlite3.c:229305:21 */ +} /* sqlite3.c:229317:21 */ -func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229315:12: */ +func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229327:12: */ var rc int32 var pGlobal uintptr = uintptr(0) @@ -193883,7 +193932,7 @@ var fts5Mod = Sqlite3_module{ /* xRelease */ FxRelease: 0, /* xRollbackTo */ FxRollbackTo: 0, /* xShadowName */ FxShadowName: 0, -} /* sqlite3.c:229316:31 */ +} /* sqlite3.c:229328:31 */ // The following functions are used to register the module with SQLite. If // this module is being built as part of the SQLite core (SQLITE_CORE is @@ -193892,7 +193941,7 @@ var fts5Mod = Sqlite3_module{ // Or, if this module is being built as a loadable extension, // sqlite3Fts5Init() is omitted and the two standard entry points // sqlite3_fts_init() and sqlite3_fts5_init() defined instead. -func Xsqlite3Fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229424:20: */ +func Xsqlite3Fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229436:20: */ return fts5Init(tls, db) } @@ -193900,7 +193949,7 @@ func Xsqlite3Fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229424:20: // Fts5Storage.pInsertDocsize - if they have not already been prepared. // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:229482:12: */ +func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:229494:12: */ bp := tls.Alloc(216) defer tls.Free(216) @@ -194001,7 +194050,7 @@ func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, p return rc } -func fts5ExecPrintf(tls *libc.TLS, db uintptr, pzErr uintptr, zFormat uintptr, va uintptr) int32 { /* sqlite3.c:229585:12: */ +func fts5ExecPrintf(tls *libc.TLS, db uintptr, pzErr uintptr, zFormat uintptr, va uintptr) int32 { /* sqlite3.c:229597:12: */ var rc int32 var ap Va_list _ = ap // ... printf arguments @@ -194023,7 +194072,7 @@ func fts5ExecPrintf(tls *libc.TLS, db uintptr, pzErr uintptr, zFormat uintptr, v // Drop all shadow tables. Return SQLITE_OK if successful or an SQLite error // code otherwise. -func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:229613:12: */ +func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:229625:12: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -194046,7 +194095,7 @@ func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:229 return rc } -func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uintptr, zName uintptr) { /* sqlite3.c:229637:13: */ +func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uintptr, zName uintptr) { /* sqlite3.c:229649:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -194057,7 +194106,7 @@ func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uin } } -func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) int32 { /* sqlite3.c:229651:12: */ +func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) int32 { /* sqlite3.c:229663:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -194078,7 +194127,7 @@ func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) in // Create the shadow table named zPost, with definition zDefn. Return // SQLITE_OK if successful, or an SQLite error code otherwise. -func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn uintptr, bWithout int32, pzErr uintptr) int32 { /* sqlite3.c:229671:12: */ +func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn uintptr, bWithout int32, pzErr uintptr) int32 { /* sqlite3.c:229683:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -194108,7 +194157,7 @@ func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn // // If successful, set *pp to point to the new object and return SQLITE_OK. // Otherwise, set *pp to NULL and return an SQLite error code. -func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:229706:12: */ +func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:229718:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -194169,7 +194218,7 @@ func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCre } // Close a handle opened by an earlier call to sqlite3Fts5StorageOpen(). -func sqlite3Fts5StorageClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229772:12: */ +func sqlite3Fts5StorageClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229784:12: */ var rc int32 = SQLITE_OK if p != 0 { var i int32 @@ -194188,12 +194237,12 @@ type Fts5InsertCtx1 = struct { FpStorage uintptr FiCol int32 FszCol int32 -} /* sqlite3.c:229787:9 */ +} /* sqlite3.c:229799:9 */ -type Fts5InsertCtx = Fts5InsertCtx1 /* sqlite3.c:229787:30 */ +type Fts5InsertCtx = Fts5InsertCtx1 /* sqlite3.c:229799:30 */ // Tokenization callback used when inserting tokens into the FTS index. -func fts5StorageInsertCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:229797:12: */ +func fts5StorageInsertCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:229809:12: */ var pCtx uintptr = pContext var pIdx uintptr = (*Fts5Storage)(unsafe.Pointer((*Fts5InsertCtx)(unsafe.Pointer(pCtx)).FpStorage)).FpIndex _ = iUnused1 @@ -194210,7 +194259,7 @@ func fts5StorageInsertCallback(tls *libc.TLS, pContext uintptr, tflags int32, pT // If a row with rowid iDel is present in the %_content table, add the // delete-markers to the FTS index necessary to delete it. Do not actually // remove the %_content row at this time though. -func fts5StorageDeleteFromIndex(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229820:12: */ +func fts5StorageDeleteFromIndex(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229832:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -194276,7 +194325,7 @@ func fts5StorageDeleteFromIndex(tls *libc.TLS, p uintptr, iDel I64, apVal uintpt // // If there is no %_docsize table (as happens if the columnsize=0 option // is specified when the FTS5 table is created), this function is a no-op. -func fts5StorageInsertDocsize(tls *libc.TLS, p uintptr, iRowid I64, pBuf uintptr) int32 { /* sqlite3.c:229885:12: */ +func fts5StorageInsertDocsize(tls *libc.TLS, p uintptr, iRowid I64, pBuf uintptr) int32 { /* sqlite3.c:229897:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -194303,7 +194352,7 @@ func fts5StorageInsertDocsize(tls *libc.TLS, p uintptr, iRowid I64, pBuf uintptr // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5StorageLoadTotals(tls *libc.TLS, p uintptr, bCache int32) int32 { /* sqlite3.c:229915:12: */ +func fts5StorageLoadTotals(tls *libc.TLS, p uintptr, bCache int32) int32 { /* sqlite3.c:229927:12: */ var rc int32 = SQLITE_OK if (*Fts5Storage)(unsafe.Pointer(p)).FbTotalsValid == 0 { rc = sqlite3Fts5IndexGetAverages(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex, (p + 24 /* &.nTotalRow */), (*Fts5Storage)(unsafe.Pointer(p)).FaTotalSize) @@ -194317,7 +194366,7 @@ func fts5StorageLoadTotals(tls *libc.TLS, p uintptr, bCache int32) int32 { /* sq // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5StorageSaveTotals(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229931:12: */ +func fts5StorageSaveTotals(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229943:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -194341,7 +194390,7 @@ func fts5StorageSaveTotals(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229931 } // Remove a row from the FTS table. -func sqlite3Fts5StorageDelete(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229953:12: */ +func sqlite3Fts5StorageDelete(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229965:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -194382,7 +194431,7 @@ func sqlite3Fts5StorageDelete(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) } // Delete all entries in the FTS5 index. -func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229994:12: */ +func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230006:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -194414,7 +194463,7 @@ func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c: return rc } -func sqlite3Fts5StorageRebuild(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230025:12: */ +func sqlite3Fts5StorageRebuild(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230037:12: */ bp := tls.Alloc(44) defer tls.Free(44) @@ -194478,15 +194527,15 @@ func sqlite3Fts5StorageRebuild(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:23 return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } -func sqlite3Fts5StorageOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230080:12: */ +func sqlite3Fts5StorageOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230092:12: */ return sqlite3Fts5IndexOptimize(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } -func sqlite3Fts5StorageMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:230084:12: */ +func sqlite3Fts5StorageMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:230096:12: */ return sqlite3Fts5IndexMerge(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex, nMerge) } -func sqlite3Fts5StorageReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230088:12: */ +func sqlite3Fts5StorageReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230100:12: */ return sqlite3Fts5IndexReset(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } @@ -194497,7 +194546,7 @@ func sqlite3Fts5StorageReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:2300 // // If the %_docsize table does not exist, SQLITE_MISMATCH is returned. In // this case the user is required to provide a rowid explicitly. -func fts5StorageNewRowid(tls *libc.TLS, p uintptr, piRowid uintptr) int32 { /* sqlite3.c:230101:12: */ +func fts5StorageNewRowid(tls *libc.TLS, p uintptr, piRowid uintptr) int32 { /* sqlite3.c:230113:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -194519,7 +194568,7 @@ func fts5StorageNewRowid(tls *libc.TLS, p uintptr, piRowid uintptr) int32 { /* s } // Insert a new row into the FTS content table. -func sqlite3Fts5StorageContentInsert(tls *libc.TLS, p uintptr, apVal uintptr, piRowid uintptr) int32 { /* sqlite3.c:230122:12: */ +func sqlite3Fts5StorageContentInsert(tls *libc.TLS, p uintptr, apVal uintptr, piRowid uintptr) int32 { /* sqlite3.c:230134:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -194551,7 +194600,7 @@ func sqlite3Fts5StorageContentInsert(tls *libc.TLS, p uintptr, apVal uintptr, pi } // Insert new entries into the FTS index and %_docsize table. -func sqlite3Fts5StorageIndexInsert(tls *libc.TLS, p uintptr, apVal uintptr, iRowid I64) int32 { /* sqlite3.c:230157:12: */ +func sqlite3Fts5StorageIndexInsert(tls *libc.TLS, p uintptr, apVal uintptr, iRowid I64) int32 { /* sqlite3.c:230169:12: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -194596,7 +194645,7 @@ func sqlite3Fts5StorageIndexInsert(tls *libc.TLS, p uintptr, apVal uintptr, iRow return *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) } -func fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) int32 { /* sqlite3.c:230200:12: */ +func fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) int32 { /* sqlite3.c:230212:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -194631,13 +194680,13 @@ type Fts5IntegrityCtx1 = struct { Fcksum U64 FpTermset uintptr FpConfig uintptr -} /* sqlite3.c:230228:9 */ +} /* sqlite3.c:230240:9 */ // Context object used by sqlite3Fts5StorageIntegrity(). -type Fts5IntegrityCtx = Fts5IntegrityCtx1 /* sqlite3.c:230228:33 */ +type Fts5IntegrityCtx = Fts5IntegrityCtx1 /* sqlite3.c:230240:33 */ // Tokenization callback used by integrity check. -func fts5StorageIntegrityCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:230242:12: */ +func fts5StorageIntegrityCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:230254:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -194703,7 +194752,7 @@ func fts5StorageIntegrityCallback(tls *libc.TLS, pContext uintptr, tflags int32, // table. Return SQLITE_OK if they do, or SQLITE_CORRUPT if not. Return // some other SQLite error code if an error occurs while attempting to // determine this. -func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { /* sqlite3.c:230312:12: */ +func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { /* sqlite3.c:230324:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -194828,7 +194877,7 @@ func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { / // Obtain an SQLite statement handle that may be used to read data from the // %_content table. -func sqlite3Fts5StorageStmt(tls *libc.TLS, p uintptr, eStmt int32, pp uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:230420:12: */ +func sqlite3Fts5StorageStmt(tls *libc.TLS, p uintptr, eStmt int32, pp uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:230432:12: */ var rc int32 rc = fts5StorageGetStmt(tls, p, eStmt, pp, pzErrMsg) @@ -194842,7 +194891,7 @@ func sqlite3Fts5StorageStmt(tls *libc.TLS, p uintptr, eStmt int32, pp uintptr, p // Release an SQLite statement handle obtained via an earlier call to // sqlite3Fts5StorageStmt(). The eStmt parameter passed to this function // must match that passed to the sqlite3Fts5StorageStmt() call. -func sqlite3Fts5StorageStmtRelease(tls *libc.TLS, p uintptr, eStmt int32, pStmt uintptr) { /* sqlite3.c:230444:13: */ +func sqlite3Fts5StorageStmtRelease(tls *libc.TLS, p uintptr, eStmt int32, pStmt uintptr) { /* sqlite3.c:230456:13: */ if *(*uintptr)(unsafe.Pointer((p + 40 /* &.aStmt */) + uintptr(eStmt)*8)) == uintptr(0) { Xsqlite3_reset(tls, pStmt) @@ -194852,7 +194901,7 @@ func sqlite3Fts5StorageStmtRelease(tls *libc.TLS, p uintptr, eStmt int32, pStmt } } -func fts5StorageDecodeSizeArray(tls *libc.TLS, aCol uintptr, nCol int32, aBlob uintptr, nBlob int32) int32 { /* sqlite3.c:230461:12: */ +func fts5StorageDecodeSizeArray(tls *libc.TLS, aCol uintptr, nCol int32, aBlob uintptr, nBlob int32) int32 { /* sqlite3.c:230473:12: */ var i int32 var iOff int32 = 0 for i = 0; i < nCol; i++ { @@ -194870,7 +194919,7 @@ func fts5StorageDecodeSizeArray(tls *libc.TLS, aCol uintptr, nCol int32, aBlob u // // An SQLite error code is returned if an error occurs, or SQLITE_OK // otherwise. -func sqlite3Fts5StorageDocsize(tls *libc.TLS, p uintptr, iRowid I64, aCol uintptr) int32 { /* sqlite3.c:230482:12: */ +func sqlite3Fts5StorageDocsize(tls *libc.TLS, p uintptr, iRowid I64, aCol uintptr) int32 { /* sqlite3.c:230494:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -194898,7 +194947,7 @@ func sqlite3Fts5StorageDocsize(tls *libc.TLS, p uintptr, iRowid I64, aCol uintpt return rc } -func sqlite3Fts5StorageSize(tls *libc.TLS, p uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:230508:12: */ +func sqlite3Fts5StorageSize(tls *libc.TLS, p uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:230520:12: */ var rc int32 = fts5StorageLoadTotals(tls, p, 0) if rc == SQLITE_OK { *(*I64)(unsafe.Pointer(pnToken)) = int64(0) @@ -194916,7 +194965,7 @@ func sqlite3Fts5StorageSize(tls *libc.TLS, p uintptr, iCol int32, pnToken uintpt return rc } -func sqlite3Fts5StorageRowCount(tls *libc.TLS, p uintptr, pnRow uintptr) int32 { /* sqlite3.c:230526:12: */ +func sqlite3Fts5StorageRowCount(tls *libc.TLS, p uintptr, pnRow uintptr) int32 { /* sqlite3.c:230538:12: */ var rc int32 = fts5StorageLoadTotals(tls, p, 0) if rc == SQLITE_OK { // nTotalRow being zero does not necessarily indicate a corrupt @@ -194933,7 +194982,7 @@ func sqlite3Fts5StorageRowCount(tls *libc.TLS, p uintptr, pnRow uintptr) int32 { } // Flush any data currently held in-memory to disk. -func sqlite3Fts5StorageSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230543:12: */ +func sqlite3Fts5StorageSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230555:12: */ var rc int32 = SQLITE_OK var iLastRowid I64 = Xsqlite3_last_insert_rowid(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Storage)(unsafe.Pointer(p)).FpConfig)).Fdb) if (*Fts5Storage)(unsafe.Pointer(p)).FbTotalsValid != 0 { @@ -194947,12 +194996,12 @@ func sqlite3Fts5StorageSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:23054 return rc } -func sqlite3Fts5StorageRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230557:12: */ +func sqlite3Fts5StorageRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230569:12: */ (*Fts5Storage)(unsafe.Pointer(p)).FbTotalsValid = 0 return sqlite3Fts5IndexRollback(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } -func sqlite3Fts5StorageConfigValue(tls *libc.TLS, p uintptr, z uintptr, pVal uintptr, iVal int32) int32 { /* sqlite3.c:230562:12: */ +func sqlite3Fts5StorageConfigValue(tls *libc.TLS, p uintptr, z uintptr, pVal uintptr, iVal int32) int32 { /* sqlite3.c:230574:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -195007,13 +195056,13 @@ var aAsciiTokenChar = [128]uint8{ uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), // 0x50..0x5F uint8(0), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), // 0x60..0x6F uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), // 0x70..0x7F -} /* sqlite3.c:230615:22 */ +} /* sqlite3.c:230627:22 */ -type AsciiTokenizer1 = struct{ FaTokenChar [128]uint8 } /* sqlite3.c:230626:9 */ +type AsciiTokenizer1 = struct{ FaTokenChar [128]uint8 } /* sqlite3.c:230638:9 */ -type AsciiTokenizer = AsciiTokenizer1 /* sqlite3.c:230626:31 */ +type AsciiTokenizer = AsciiTokenizer1 /* sqlite3.c:230638:31 */ -func fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars int32) { /* sqlite3.c:230631:13: */ +func fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars int32) { /* sqlite3.c:230643:13: */ var i int32 for i = 0; *(*int8)(unsafe.Pointer(zArg + uintptr(i))) != 0; i++ { if (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) & 0x80) == 0 { @@ -195023,12 +195072,12 @@ func fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars } // Delete a "ascii" tokenizer. -func fts5AsciiDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:230647:13: */ +func fts5AsciiDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:230659:13: */ Xsqlite3_free(tls, p) } // Create an "ascii" tokenizer. -func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230654:12: */ +func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230666:12: */ var rc int32 = SQLITE_OK var p uintptr = uintptr(0) _ = pUnused @@ -195063,7 +195112,7 @@ func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, return rc } -func asciiFold(tls *libc.TLS, aOut uintptr, aIn uintptr, nByte int32) { /* sqlite3.c:230695:13: */ +func asciiFold(tls *libc.TLS, aOut uintptr, aIn uintptr, nByte int32) { /* sqlite3.c:230707:13: */ var i int32 for i = 0; i < nByte; i++ { var c int8 = *(*int8)(unsafe.Pointer(aIn + uintptr(i))) @@ -195075,7 +195124,7 @@ func asciiFold(tls *libc.TLS, aOut uintptr, aIn uintptr, nByte int32) { /* sqlit } // Tokenize some text using the ascii tokenizer. -func fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:230707:12: */ +func fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:230719:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -195154,7 +195203,7 @@ type Unicode61Tokenizer1 = struct { _ [4]byte FaiException uintptr FaCategory [32]uint8 -} /* sqlite3.c:230822:9 */ +} /* sqlite3.c:230834:9 */ // ************************************************************************* // @@ -195164,11 +195213,11 @@ type Unicode61Tokenizer1 = struct { // from the sqlite3 source file utf.c. If this file is compiled as part // of the amalgamation, they are not required. -type Unicode61Tokenizer = Unicode61Tokenizer1 /* sqlite3.c:230822:35 */ +type Unicode61Tokenizer = Unicode61Tokenizer1 /* sqlite3.c:230834:35 */ // Values for eRemoveDiacritic (must match internals of fts5_unicode2.c) -func fts5UnicodeAddExceptions(tls *libc.TLS, p uintptr, z uintptr, bTokenChars int32) int32 { /* sqlite3.c:230839:12: */ +func fts5UnicodeAddExceptions(tls *libc.TLS, p uintptr, z uintptr, bTokenChars int32) int32 { /* sqlite3.c:230851:12: */ var rc int32 = SQLITE_OK var n int32 = int32(libc.Xstrlen(tls, z)) var aNew uintptr @@ -195223,7 +195272,7 @@ func fts5UnicodeAddExceptions(tls *libc.TLS, p uintptr, z uintptr, bTokenChars i } // Return true if the p->aiException[] array contains the value iCode. -func fts5UnicodeIsException(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:230889:12: */ +func fts5UnicodeIsException(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:230901:12: */ if (*Unicode61Tokenizer)(unsafe.Pointer(p)).FnException > 0 { var a uintptr = (*Unicode61Tokenizer)(unsafe.Pointer(p)).FaiException var iLo int32 = 0 @@ -195245,7 +195294,7 @@ func fts5UnicodeIsException(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sq } // Delete a "unicode61" tokenizer. -func fts5UnicodeDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:230913:13: */ +func fts5UnicodeDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:230925:13: */ if pTok != 0 { var p uintptr = pTok Xsqlite3_free(tls, (*Unicode61Tokenizer)(unsafe.Pointer(p)).FaiException) @@ -195255,7 +195304,7 @@ func fts5UnicodeDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:230913:13: */ return } -func unicodeSetCategories(tls *libc.TLS, p uintptr, zCat uintptr) int32 { /* sqlite3.c:230923:12: */ +func unicodeSetCategories(tls *libc.TLS, p uintptr, zCat uintptr) int32 { /* sqlite3.c:230935:12: */ var z uintptr = zCat for *(*int8)(unsafe.Pointer(z)) != 0 { @@ -195275,7 +195324,7 @@ func unicodeSetCategories(tls *libc.TLS, p uintptr, zCat uintptr) int32 { /* sql } // Create a "unicode61" tokenizer. -func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230941:12: */ +func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230953:12: */ var rc int32 = SQLITE_OK // Return code var p uintptr = uintptr(0) // New tokenizer object @@ -195343,12 +195392,12 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 // Return true if, for the purposes of tokenizing with the tokenizer // passed as the first argument, codepoint iCode is considered a token // character (not a separator). -func fts5UnicodeIsAlnum(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:231021:12: */ +func fts5UnicodeIsAlnum(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:231033:12: */ return (int32(*(*uint8)(unsafe.Pointer((p + 160 /* &.aCategory */) + uintptr(sqlite3Fts5UnicodeCategory(tls, U32(iCode)))))) ^ fts5UnicodeIsException(tls, p, iCode)) } -func fts5UnicodeTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231028:12: */ +func fts5UnicodeTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231040:12: */ var p uintptr var rc int32 var a uintptr @@ -195602,7 +195651,7 @@ type PorterTokenizer1 = struct { Ftokenizer Fts5_tokenizer FpTokenizer uintptr FaBuf [128]int8 -} /* sqlite3.c:231140:9 */ +} /* sqlite3.c:231152:9 */ // ************************************************************************* // @@ -195611,10 +195660,10 @@ type PorterTokenizer1 = struct { // Any tokens larger than this (in bytes) are passed through without // stemming. -type PorterTokenizer = PorterTokenizer1 /* sqlite3.c:231140:32 */ +type PorterTokenizer = PorterTokenizer1 /* sqlite3.c:231152:32 */ // Delete a "porter" tokenizer. -func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:231150:13: */ +func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:231162:13: */ if pTok != 0 { var p uintptr = pTok if (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer != 0 { @@ -195625,7 +195674,7 @@ func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:231150:13: */ } // Create a "porter" tokenizer. -func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231163:12: */ +func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231175:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -195674,9 +195723,9 @@ type PorterContext1 = struct { FpCtx uintptr FxToken uintptr FaBuf uintptr -} /* sqlite3.c:231199:9 */ +} /* sqlite3.c:231211:9 */ -type PorterContext = PorterContext1 /* sqlite3.c:231199:30 */ +type PorterContext = PorterContext1 /* sqlite3.c:231211:30 */ type PorterRule1 = struct { FzSuffix uintptr @@ -195686,15 +195735,15 @@ type PorterRule1 = struct { FzOutput uintptr FnOutput int32 _ [4]byte -} /* sqlite3.c:231206:9 */ +} /* sqlite3.c:231218:9 */ -type PorterRule = PorterRule1 /* sqlite3.c:231206:27 */ +type PorterRule = PorterRule1 /* sqlite3.c:231218:27 */ -func fts5PorterIsVowel(tls *libc.TLS, c int8, bYIsVowel int32) int32 { /* sqlite3.c:231241:12: */ +func fts5PorterIsVowel(tls *libc.TLS, c int8, bYIsVowel int32) int32 { /* sqlite3.c:231253:12: */ return (libc.Bool32((((((int32(c) == 'a') || (int32(c) == 'e')) || (int32(c) == 'i')) || (int32(c) == 'o')) || (int32(c) == 'u')) || ((bYIsVowel != 0) && (int32(c) == 'y')))) } -func fts5PorterGobbleVC(tls *libc.TLS, zStem uintptr, nStem int32, bPrevCons int32) int32 { /* sqlite3.c:231247:12: */ +func fts5PorterGobbleVC(tls *libc.TLS, zStem uintptr, nStem int32, bPrevCons int32) int32 { /* sqlite3.c:231259:12: */ var i int32 var bCons int32 = bPrevCons @@ -195715,12 +195764,12 @@ func fts5PorterGobbleVC(tls *libc.TLS, zStem uintptr, nStem int32, bPrevCons int } // porter rule condition: (m > 0) -func fts5Porter_MGt0(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231264:12: */ +func fts5Porter_MGt0(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231276:12: */ return libc.BoolInt32(!(!(fts5PorterGobbleVC(tls, zStem, nStem, 0) != 0))) } // porter rule condition: (m > 1) -func fts5Porter_MGt1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231269:12: */ +func fts5Porter_MGt1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231281:12: */ var n int32 n = fts5PorterGobbleVC(tls, zStem, nStem, 0) if (n != 0) && (fts5PorterGobbleVC(tls, (zStem+uintptr(n)), (nStem-n), 1) != 0) { @@ -195730,7 +195779,7 @@ func fts5Porter_MGt1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlit } // porter rule condition: (m = 1) -func fts5Porter_MEq1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231279:12: */ +func fts5Porter_MEq1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231291:12: */ var n int32 n = fts5PorterGobbleVC(tls, zStem, nStem, 0) if (n != 0) && (0 == fts5PorterGobbleVC(tls, (zStem+uintptr(n)), (nStem-n), 1)) { @@ -195740,7 +195789,7 @@ func fts5Porter_MEq1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlit } // porter rule condition: (*o) -func fts5Porter_Ostar(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231289:12: */ +func fts5Porter_Ostar(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231301:12: */ if ((int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 'w') || (int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 'x')) || (int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 'y') { return 0 } else { @@ -195758,14 +195807,14 @@ func fts5Porter_Ostar(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqli } // porter rule condition: (m > 1 and (*S or *T)) -func fts5Porter_MGt1_and_S_or_T(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231306:12: */ +func fts5Porter_MGt1_and_S_or_T(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231318:12: */ return (libc.Bool32(((int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 's') || (int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 't')) && (fts5Porter_MGt1(tls, zStem, nStem) != 0))) } // porter rule condition: (*v*) -func fts5Porter_Vowel(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231313:12: */ +func fts5Porter_Vowel(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231325:12: */ var i int32 for i = 0; i < nStem; i++ { if fts5PorterIsVowel(tls, *(*int8)(unsafe.Pointer(zStem + uintptr(i))), (libc.Bool32(i > 0))) != 0 { @@ -195780,7 +195829,7 @@ func fts5Porter_Vowel(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqli // // GENERATED CODE STARTS HERE (mkportersteps.tcl) -func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231329:12: */ +func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231341:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -195913,7 +195962,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli return ret } -func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231463:12: */ +func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231475:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -195946,7 +195995,7 @@ func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sq return ret } -func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231497:12: */ +func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231509:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -196092,7 +196141,7 @@ func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli return ret } -func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231644:12: */ +func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231656:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -196157,7 +196206,7 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli return ret } -func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231710:12: */ +func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231722:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -196194,7 +196243,7 @@ func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sql // // -func fts5PorterStep1A(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) { /* sqlite3.c:231747:13: */ +func fts5PorterStep1A(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) { /* sqlite3.c:231759:13: */ var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) if int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 1))))) == 's' { if int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) == 'e' { @@ -196210,7 +196259,7 @@ func fts5PorterStep1A(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) { /* sqlite3.c } } -func fts5PorterCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iStart int32, iEnd int32) int32 { /* sqlite3.c:231765:12: */ +func fts5PorterCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iStart int32, iEnd int32) int32 { /* sqlite3.c:231777:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -196304,7 +196353,7 @@ pass_through: } // Tokenize using the porter tokenizer. -func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231834:12: */ +func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231846:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -196323,20 +196372,20 @@ func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags i // ************************************************************************* // // Start of trigram implementation. -type TrigramTokenizer1 = struct{ FbFold int32 } /* sqlite3.c:231854:9 */ +type TrigramTokenizer1 = struct{ FbFold int32 } /* sqlite3.c:231866:9 */ // ************************************************************************* // // Start of trigram implementation. -type TrigramTokenizer = TrigramTokenizer1 /* sqlite3.c:231854:33 */ +type TrigramTokenizer = TrigramTokenizer1 /* sqlite3.c:231866:33 */ // Free a trigram tokenizer. -func fts5TriDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:231862:13: */ +func fts5TriDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:231874:13: */ Xsqlite3_free(tls, p) } // Allocate a trigram tokenizer. -func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231869:12: */ +func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231881:12: */ var rc int32 = SQLITE_OK var pNew uintptr = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(TrigramTokenizer{}))) _ = pUnused @@ -196367,7 +196416,7 @@ func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, pp } // Trigram tokenizer tokenize routine. -func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231907:12: */ +func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231919:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -196518,7 +196567,7 @@ func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int3 // "trigram" tokenizer, case_sensitive=1 - FTS5_PATTERN_GLOB // "trigram" tokenizer, case_sensitive=0 (the default) - FTS5_PATTERN_LIKE // all other tokenizers - FTS5_PATTERN_NONE -func sqlite3Fts5TokenizerPattern(tls *libc.TLS, xCreate uintptr, pTok uintptr) int32 { /* sqlite3.c:231967:12: */ +func sqlite3Fts5TokenizerPattern(tls *libc.TLS, xCreate uintptr, pTok uintptr) int32 { /* sqlite3.c:231979:12: */ if xCreate == *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5TriCreate})) { @@ -196532,7 +196581,7 @@ func sqlite3Fts5TokenizerPattern(tls *libc.TLS, xCreate uintptr, pTok uintptr) i } // Register all built-in tokenizers with FTS5. -func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:231981:12: */ +func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:231993:12: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -196576,7 +196625,7 @@ func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c: type BuiltinTokenizer = struct { FzName uintptr Fx Fts5_tokenizer -} /* sqlite3.c:231982:3 */ +} /* sqlite3.c:231994:3 */ // 2012-05-25 // @@ -196599,7 +196648,7 @@ type BuiltinTokenizer = struct { // SMALL LETTER E WITH DIAERESIS" - return 65 ("LATIN SMALL LETTER // E"). The resuls of passing a codepoint that corresponds to an // uppercase letter are undefined. -func fts5_remove_diacritic(tls *libc.TLS, c int32, bComplex int32) int32 { /* sqlite3.c:232037:12: */ +func fts5_remove_diacritic(tls *libc.TLS, c int32, bComplex int32) int32 { /* sqlite3.c:232049:12: */ bp := tls.Alloc(378) defer tls.Free(378) @@ -196670,7 +196719,7 @@ func fts5_remove_diacritic(tls *libc.TLS, c int32, bComplex int32) int32 { /* sq // Return true if the argument interpreted as a unicode codepoint // is a diacritical modifier character. -func sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) int32 { /* sqlite3.c:232104:12: */ +func sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) int32 { /* sqlite3.c:232116:12: */ var mask0 uint32 = uint32(0x08029FDF) var mask1 uint32 = uint32(0x000361F8) if (c < 768) || (c > 817) { @@ -196689,7 +196738,7 @@ func sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) int32 { /* sqlite3.c: // // The results are undefined if the value passed to this function // is less than zero. -func sqlite3Fts5UnicodeFold(tls *libc.TLS, c int32, eRemoveDiacritic int32) int32 { /* sqlite3.c:232123:12: */ +func sqlite3Fts5UnicodeFold(tls *libc.TLS, c int32, eRemoveDiacritic int32) int32 { /* sqlite3.c:232135:12: */ var ret int32 = c @@ -196750,7 +196799,7 @@ type TableEntry = struct { FiCode uint16 Fflags uint8 FnRange uint8 -} /* sqlite3.c:232141:16 */ +} /* sqlite3.c:232153:16 */ var aEntry = [163]TableEntry{ {FiCode: uint16(65), Fflags: uint8(14), FnRange: uint8(26)}, {FiCode: uint16(181), Fflags: uint8(64), FnRange: uint8(1)}, {FiCode: uint16(192), Fflags: uint8(14), FnRange: uint8(23)}, @@ -196808,7 +196857,7 @@ var aEntry = [163]TableEntry{ {FiCode: uint16(42878), Fflags: uint8(1), FnRange: uint8(10)}, {FiCode: uint16(42891), FnRange: uint8(1)}, {FiCode: uint16(42893), Fflags: uint8(74), FnRange: uint8(1)}, {FiCode: uint16(42896), Fflags: uint8(1), FnRange: uint8(4)}, {FiCode: uint16(42912), Fflags: uint8(1), FnRange: uint8(10)}, {FiCode: uint16(42922), Fflags: uint8(72), FnRange: uint8(1)}, {FiCode: uint16(65313), Fflags: uint8(14), FnRange: uint8(26)}, -} /* sqlite3.c:232145:5 */ +} /* sqlite3.c:232157:5 */ var aiOff = [77]uint16{ uint16(1), uint16(2), uint16(8), uint16(15), uint16(16), uint16(26), uint16(28), uint16(32), uint16(37), uint16(38), uint16(40), uint16(48), uint16(63), uint16(64), uint16(69), uint16(71), @@ -196820,9 +196869,9 @@ var aiOff = [77]uint16{ uint16(65408), uint16(65410), uint16(65415), uint16(65424), uint16(65436), uint16(65439), uint16(65450), uint16(65462), uint16(65472), uint16(65476), uint16(65478), uint16(65480), uint16(65482), uint16(65488), uint16(65506), uint16(65511), uint16(65514), uint16(65521), uint16(65527), uint16(65528), uint16(65529), -} /* sqlite3.c:232202:31 */ +} /* sqlite3.c:232214:31 */ -func sqlite3Fts5UnicodeCatParse(tls *libc.TLS, zCat uintptr, aArray uintptr) int32 { /* sqlite3.c:232259:12: */ +func sqlite3Fts5UnicodeCatParse(tls *libc.TLS, zCat uintptr, aArray uintptr) int32 { /* sqlite3.c:232271:12: */ *(*U8)(unsafe.Pointer(aArray)) = U8(1) switch int32(*(*int8)(unsafe.Pointer(zCat))) { case 'C': @@ -197019,7 +197068,7 @@ func sqlite3Fts5UnicodeCatParse(tls *libc.TLS, zCat uintptr, aArray uintptr) int var aFts5UnicodeBlock = [17]U16{ U16(0), U16(1471), U16(1753), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1763), U16(1765), -} /* sqlite3.c:232377:12 */ +} /* sqlite3.c:232389:12 */ var aFts5UnicodeMap = [1765]U16{ U16(0), U16(32), U16(33), U16(36), U16(37), U16(40), U16(41), U16(42), U16(43), U16(44), U16(45), U16(46), U16(48), U16(58), U16(60), U16(63), U16(65), U16(91), U16(92), U16(93), @@ -197198,7 +197247,7 @@ var aFts5UnicodeMap = [1765]U16{ U16(62406), U16(62432), U16(62464), U16(62528), U16(62530), U16(62713), U16(62720), U16(62784), U16(62800), U16(62971), U16(63045), U16(63104), U16(63232), U16(0), U16(42710), U16(42752), U16(46900), U16(46912), U16(47133), U16(63488), U16(1), U16(32), U16(256), U16(0), U16(65533), -} /* sqlite3.c:232381:12 */ +} /* sqlite3.c:232393:12 */ var aFts5UnicodeData = [1765]U16{ U16(1025), U16(61), U16(117), U16(55), U16(117), U16(54), U16(50), U16(53), U16(57), U16(53), U16(49), U16(85), U16(333), U16(85), U16(121), U16(85), U16(841), U16(54), U16(53), U16(50), @@ -197377,9 +197426,9 @@ var aFts5UnicodeData = [1765]U16{ U16(186), U16(570), U16(2042), U16(58), U16(5850), U16(154), U16(2010), U16(154), U16(794), U16(2266), U16(378), U16(2266), U16(3738), U16(39), U16(39), U16(39), U16(39), U16(39), U16(39), U16(17351), U16(34), U16(3074), U16(7692), U16(63), U16(63), -} /* sqlite3.c:232560:12 */ +} /* sqlite3.c:232572:12 */ -func sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode U32) int32 { /* sqlite3.c:232740:12: */ +func sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode U32) int32 { /* sqlite3.c:232752:12: */ var iRes int32 = -1 var iHi int32 var iLo int32 @@ -197419,7 +197468,7 @@ func sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode U32) int32 { /* sqlite3.c:2 return 9 } -func sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { /* sqlite3.c:232771:13: */ +func sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { /* sqlite3.c:232783:13: */ var i int32 = 0 var iTbl int32 = 0 for i < 128 { @@ -197451,7 +197500,7 @@ func sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { /* // This is a copy of the sqlite3GetVarint32() routine from the SQLite core. // Except, this version does handle the single byte case that the core // version depends on being handled before its function is called. -func sqlite3Fts5GetVarint32(tls *libc.TLS, p uintptr, v uintptr) int32 { /* sqlite3.c:232809:12: */ +func sqlite3Fts5GetVarint32(tls *libc.TLS, p uintptr, v uintptr) int32 { /* sqlite3.c:232821:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197526,7 +197575,7 @@ func sqlite3Fts5GetVarint32(tls *libc.TLS, p uintptr, v uintptr) int32 { /* sqli // Read a 64-bit variable-length integer from memory starting at p[0]. // Return the number of bytes read. The value is stored in *v. -func sqlite3Fts5GetVarint(tls *libc.TLS, p uintptr, v uintptr) U8 { /* sqlite3.c:232887:11: */ +func sqlite3Fts5GetVarint(tls *libc.TLS, p uintptr, v uintptr) U8 { /* sqlite3.c:232899:11: */ var a U32 var b U32 var s U32 @@ -197702,7 +197751,7 @@ func sqlite3Fts5GetVarint(tls *libc.TLS, p uintptr, v uintptr) U8 { /* sqlite3.c // for all bytes that have the 8th bit set and one byte with the 8th // bit clear. Except, if we get to the 9th byte, it stores the full // 8 bits and is the last byte. -func fts5PutVarint64(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233081:26: */ +func fts5PutVarint64(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233093:26: */ bp := tls.Alloc(10) defer tls.Free(10) @@ -197748,7 +197797,7 @@ __3: return n } -func sqlite3Fts5PutVarint(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233106:12: */ +func sqlite3Fts5PutVarint(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233118:12: */ if v <= uint64(0x7f) { *(*uint8)(unsafe.Pointer(p)) = (uint8(v & uint64(0x7f))) return 1 @@ -197761,7 +197810,7 @@ func sqlite3Fts5PutVarint(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c: return fts5PutVarint64(tls, p, v) } -func sqlite3Fts5GetVarintLen(tls *libc.TLS, iVal U32) int32 { /* sqlite3.c:233120:12: */ +func sqlite3Fts5GetVarintLen(tls *libc.TLS, iVal U32) int32 { /* sqlite3.c:233132:12: */ if iVal < (U32(int32(1) << 14)) { return 2 @@ -197821,7 +197870,7 @@ type Fts5VocabTable1 = struct { FpGlobal uintptr FeType int32 FbBusy uint32 -} /* sqlite3.c:233173:9 */ +} /* sqlite3.c:233185:9 */ // 2015 May 08 // @@ -197861,7 +197910,7 @@ type Fts5VocabTable1 = struct { // #include "fts5Int.h" -type Fts5VocabTable = Fts5VocabTable1 /* sqlite3.c:233173:31 */ +type Fts5VocabTable = Fts5VocabTable1 /* sqlite3.c:233185:31 */ type Fts5VocabCursor1 = struct { Fbase Sqlite3_vtab_cursor FpStmt uintptr @@ -197881,9 +197930,9 @@ type Fts5VocabCursor1 = struct { FiInstPos I64 FiInstOff int32 _ [4]byte -} /* sqlite3.c:233174:9 */ +} /* sqlite3.c:233186:9 */ -type Fts5VocabCursor = Fts5VocabCursor1 /* sqlite3.c:233174:32 */ +type Fts5VocabCursor = Fts5VocabCursor1 /* sqlite3.c:233186:32 */ // Bits for the mask used as the idxNum value by xBestIndex/xFilter. @@ -197891,7 +197940,7 @@ type Fts5VocabCursor = Fts5VocabCursor1 /* sqlite3.c:233174:32 */ // FTS5_VOCAB_XXX constant. If successful, set *peType to the output // value and return SQLITE_OK. Otherwise, set *pzErr to an error message // and return SQLITE_ERROR. -func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uintptr) int32 { /* sqlite3.c:233233:12: */ +func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uintptr) int32 { /* sqlite3.c:233245:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -197916,14 +197965,14 @@ func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uint } // The xDisconnect() virtual table method. -func fts5VocabDisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233262:12: */ +func fts5VocabDisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233274:12: */ var pTab uintptr = pVtab Xsqlite3_free(tls, pTab) return SQLITE_OK } // The xDestroy() virtual table method. -func fts5VocabDestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233271:12: */ +func fts5VocabDestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233283:12: */ var pTab uintptr = pVtab Xsqlite3_free(tls, pTab) return SQLITE_OK @@ -197948,7 +197997,7 @@ func fts5VocabDestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:2 // argv[3] -> name of fts5 tables database // argv[4] -> name of fts5 table // argv[5] -> type of fts5vocab table -func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233298:12: */ +func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233310:12: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -198018,11 +198067,11 @@ func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv // The xConnect() and xCreate() methods for the virtual table. All the // work is done in function fts5VocabInitVtab(). -func fts5VocabConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233360:12: */ +func fts5VocabConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233372:12: */ return fts5VocabInitVtab(tls, db, pAux, argc, argv, ppVtab, pzErr) } -func fts5VocabCreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233370:12: */ +func fts5VocabCreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233382:12: */ return fts5VocabInitVtab(tls, db, pAux, argc, argv, ppVtab, pzErr) } @@ -198036,7 +198085,7 @@ func fts5VocabCreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, // // are interpreted. Less-than and less-than-or-equal are treated // identically, as are greater-than and greater-than-or-equal. -func fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) int32 { /* sqlite3.c:233393:12: */ +func fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) int32 { /* sqlite3.c:233405:12: */ var i int32 var iTermEq int32 = -1 var iTermGe int32 = -1 @@ -198104,7 +198153,7 @@ func fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) int } // Implementation of xOpen method. -func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:233455:12: */ +func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:233467:12: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -198171,7 +198220,7 @@ func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* return *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) } -func fts5VocabResetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:233523:13: */ +func fts5VocabResetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:233535:13: */ (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).Frowid = int64(0) sqlite3Fts5IterClose(tls, (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpIter) (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpIter = uintptr(0) @@ -198183,7 +198232,7 @@ func fts5VocabResetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:233523:13: // Close the cursor. For additional information see the documentation // on the xClose method of the virtual table interface. -func fts5VocabCloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233537:12: */ +func fts5VocabCloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233549:12: */ var pCsr uintptr = pCursor fts5VocabResetCursor(tls, pCsr) sqlite3Fts5BufferFree(tls, (pCsr + 88 /* &.term */)) @@ -198192,7 +198241,7 @@ func fts5VocabCloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:2 return SQLITE_OK } -func fts5VocabInstanceNewTerm(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233546:12: */ +func fts5VocabInstanceNewTerm(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233558:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -198223,7 +198272,7 @@ func fts5VocabInstanceNewTerm(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c: return *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) } -func fts5VocabInstanceNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233568:12: */ +func fts5VocabInstanceNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233580:12: */ var eDetail int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer((*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpFts5)).FpConfig)).FeDetail var rc int32 = SQLITE_OK var pIter uintptr = (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpIter @@ -198252,7 +198301,7 @@ func fts5VocabInstanceNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233 } // Advance the cursor to the next row in the table. -func fts5VocabNextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233600:12: */ +func fts5VocabNextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233612:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -198392,7 +198441,7 @@ func fts5VocabNextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:23 } // This is the xFilter implementation for the virtual table. -func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused uintptr, nUnused int32, apVal uintptr) int32 { /* sqlite3.c:233726:12: */ +func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused uintptr, nUnused int32, apVal uintptr) int32 { /* sqlite3.c:233738:12: */ var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var pCsr uintptr = pCursor var eType int32 = (*Fts5VocabTable)(unsafe.Pointer(pTab)).FeType @@ -198463,12 +198512,12 @@ func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused // This is the xEof method of the virtual table. SQLite calls this // routine to find out if it has reached the end of a result set. -func fts5VocabEofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233797:12: */ +func fts5VocabEofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233809:12: */ var pCsr uintptr = pCursor return (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FbEof } -func fts5VocabColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:233802:12: */ +func fts5VocabColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:233814:12: */ var pCsr uintptr = pCursor var eDetail int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer((*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpFts5)).FpConfig)).FeDetail var eType int32 = (*Fts5VocabTable)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab)).FeType @@ -198541,13 +198590,13 @@ func fts5VocabColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol in // This is the xRowid method. The SQLite core calls this routine to // retrieve the rowid for the current row of the result set. The // rowid should be written to *pRowid. -func fts5VocabRowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:233874:12: */ +func fts5VocabRowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:233886:12: */ var pCsr uintptr = pCursor *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).Frowid return SQLITE_OK } -func sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:233883:12: */ +func sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:233895:12: */ var p uintptr = pGlobal return Xsqlite3_create_module_v2(tls, db, ts+35152 /* "fts5vocab" */, uintptr(unsafe.Pointer(&fts5Vocab)), p, uintptr(0)) @@ -198567,7 +198616,7 @@ var fts5Vocab = Sqlite3_module{ /* xEof */ FxEof: 0, /* xColumn */ FxColumn: 0, /* xRowid */ FxRowid: 0, -} /* sqlite3.c:233884:31 */ +} /* sqlite3.c:233896:31 */ //************* End of fts5.c *********************************************** //************* Begin file stmt.c ******************************************* @@ -198594,117 +198643,117 @@ var fts5Vocab = Sqlite3_module{ //************* End of stmt.c *********************************************** // Return the source-id for this library -func Xsqlite3_sourceid(tls *libc.TLS) uintptr { /* sqlite3.c:234228:23: */ - return ts + 35162 /* "2021-04-02 15:20..." */ +func Xsqlite3_sourceid(tls *libc.TLS) uintptr { /* sqlite3.c:234240:23: */ + return ts + 35162 /* "2021-04-19 18:32..." */ } //************************* End of sqlite3.c ***************************** func init() { - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 16 /* .xStep */)) = jsonArrayStep // sqlite3.c:191128:7: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 24 /* .xFinal */)) = jsonArrayFinal // sqlite3.c:191128:24: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 32 /* .xValue */)) = jsonArrayValue // sqlite3.c:191128:41: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 56 /* .xStep */)) = jsonObjectStep // sqlite3.c:191130:7: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 64 /* .xFinal */)) = jsonObjectFinal // sqlite3.c:191130:24: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 72 /* .xValue */)) = jsonObjectValue // sqlite3.c:191130:41: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 0 /* .xStep */)) = geopolyBBoxStep // sqlite3.c:197341:8: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 8 /* .xFinal */)) = geopolyBBoxFinal // sqlite3.c:197341:25: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 24 /* .xSFunc */)) = renameColumnFunc // sqlite3.c:108746:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 96 /* .xSFunc */)) = renameTableFunc // sqlite3.c:108747:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 168 /* .xSFunc */)) = renameTableTest // sqlite3.c:108748:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 240 /* .xSFunc */)) = dropColumnFunc // sqlite3.c:108749:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 24 /* .xSFunc */)) = versionFunc // sqlite3.c:120539:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 96 /* .xSFunc */)) = versionFunc // sqlite3.c:120540:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 168 /* .xSFunc */)) = versionFunc // sqlite3.c:120541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 240 /* .xSFunc */)) = soundexFunc // sqlite3.c:120547:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 312 /* .xSFunc */)) = loadExt // sqlite3.c:120550:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 384 /* .xSFunc */)) = loadExt // sqlite3.c:120551:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 456 /* .xSFunc */)) = compileoptionusedFunc // sqlite3.c:120557:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 528 /* .xSFunc */)) = compileoptiongetFunc // sqlite3.c:120558:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 600 /* .xSFunc */)) = versionFunc // sqlite3.c:120560:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 672 /* .xSFunc */)) = versionFunc // sqlite3.c:120561:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 744 /* .xSFunc */)) = versionFunc // sqlite3.c:120562:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 816 /* .xSFunc */)) = versionFunc // sqlite3.c:120564:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 888 /* .xSFunc */)) = trimFunc // sqlite3.c:120567:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 960 /* .xSFunc */)) = trimFunc // sqlite3.c:120568:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1032 /* .xSFunc */)) = trimFunc // sqlite3.c:120569:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1104 /* .xSFunc */)) = trimFunc // sqlite3.c:120570:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1176 /* .xSFunc */)) = trimFunc // sqlite3.c:120571:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1248 /* .xSFunc */)) = trimFunc // sqlite3.c:120572:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1320 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120573:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1464 /* .xSFunc */)) = minmaxStep // sqlite3.c:120575:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1472 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120575:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1480 /* .xValue */)) = minMaxValue // sqlite3.c:120575:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1536 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120577:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1680 /* .xSFunc */)) = minmaxStep // sqlite3.c:120579:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1688 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120579:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1696 /* .xValue */)) = minMaxValue // sqlite3.c:120579:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1752 /* .xSFunc */)) = typeofFunc // sqlite3.c:120581:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1824 /* .xSFunc */)) = lengthFunc // sqlite3.c:120582:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1896 /* .xSFunc */)) = instrFunc // sqlite3.c:120583:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1968 /* .xSFunc */)) = printfFunc // sqlite3.c:120584:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2040 /* .xSFunc */)) = unicodeFunc // sqlite3.c:120585:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2112 /* .xSFunc */)) = charFunc // sqlite3.c:120586:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2184 /* .xSFunc */)) = absFunc // sqlite3.c:120587:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2256 /* .xSFunc */)) = roundFunc // sqlite3.c:120589:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2328 /* .xSFunc */)) = roundFunc // sqlite3.c:120590:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2400 /* .xSFunc */)) = upperFunc // sqlite3.c:120592:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2472 /* .xSFunc */)) = lowerFunc // sqlite3.c:120593:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2544 /* .xSFunc */)) = hexFunc // sqlite3.c:120594:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2616 /* .xSFunc */)) = versionFunc // sqlite3.c:120595:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2688 /* .xSFunc */)) = randomFunc // sqlite3.c:120596:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2760 /* .xSFunc */)) = randomBlob // sqlite3.c:120597:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2832 /* .xSFunc */)) = nullifFunc // sqlite3.c:120598:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2904 /* .xSFunc */)) = versionFunc // sqlite3.c:120599:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2976 /* .xSFunc */)) = sourceidFunc // sqlite3.c:120600:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3048 /* .xSFunc */)) = errlogFunc // sqlite3.c:120601:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3120 /* .xSFunc */)) = quoteFunc // sqlite3.c:120602:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3192 /* .xSFunc */)) = last_insert_rowid // sqlite3.c:120603:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3264 /* .xSFunc */)) = changes // sqlite3.c:120604:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3336 /* .xSFunc */)) = total_changes // sqlite3.c:120605:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3408 /* .xSFunc */)) = replaceFunc // sqlite3.c:120606:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3480 /* .xSFunc */)) = zeroblobFunc // sqlite3.c:120607:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3552 /* .xSFunc */)) = substrFunc // sqlite3.c:120608:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3624 /* .xSFunc */)) = substrFunc // sqlite3.c:120609:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3696 /* .xSFunc */)) = substrFunc // sqlite3.c:120610:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3768 /* .xSFunc */)) = substrFunc // sqlite3.c:120611:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3840 /* .xSFunc */)) = sumStep // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3848 /* .xFinalize */)) = sumFinalize // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3856 /* .xValue */)) = sumFinalize // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3864 /* .xInverse */)) = sumInverse // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3912 /* .xSFunc */)) = sumStep // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3920 /* .xFinalize */)) = totalFinalize // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3928 /* .xValue */)) = totalFinalize // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3936 /* .xInverse */)) = sumInverse // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3984 /* .xSFunc */)) = sumStep // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3992 /* .xFinalize */)) = avgFinalize // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4000 /* .xValue */)) = avgFinalize // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4008 /* .xInverse */)) = sumInverse // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4056 /* .xSFunc */)) = countStep // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4064 /* .xFinalize */)) = countFinalize // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4072 /* .xValue */)) = countFinalize // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4080 /* .xInverse */)) = countInverse // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4128 /* .xSFunc */)) = countStep // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4136 /* .xFinalize */)) = countFinalize // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4144 /* .xValue */)) = countFinalize // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4152 /* .xInverse */)) = countInverse // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4200 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4208 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4216 /* .xValue */)) = groupConcatValue // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4224 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4272 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120621:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4280 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120621:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4288 /* .xValue */)) = groupConcatValue // sqlite3.c:120621:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4296 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120621:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4328 /* .pUserData */)) = uintptr(unsafe.Pointer(&globInfo)) // sqlite3.c:120624:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4344 /* .xSFunc */)) = likeFunc // sqlite3.c:120624:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4400 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120629:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4416 /* .xSFunc */)) = likeFunc // sqlite3.c:120629:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4472 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120630:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4488 /* .xSFunc */)) = likeFunc // sqlite3.c:120630:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4704 /* .xSFunc */)) = signFunc // sqlite3.c:120673:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4776 /* .xSFunc */)) = versionFunc // sqlite3.c:120674:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4848 /* .xSFunc */)) = versionFunc // sqlite3.c:120675:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 16 /* .xStep */)) = jsonArrayStep // sqlite3.c:191140:7: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 24 /* .xFinal */)) = jsonArrayFinal // sqlite3.c:191140:24: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 32 /* .xValue */)) = jsonArrayValue // sqlite3.c:191140:41: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 56 /* .xStep */)) = jsonObjectStep // sqlite3.c:191142:7: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 64 /* .xFinal */)) = jsonObjectFinal // sqlite3.c:191142:24: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 72 /* .xValue */)) = jsonObjectValue // sqlite3.c:191142:41: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 0 /* .xStep */)) = geopolyBBoxStep // sqlite3.c:197353:8: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 8 /* .xFinal */)) = geopolyBBoxFinal // sqlite3.c:197353:25: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 24 /* .xSFunc */)) = renameColumnFunc // sqlite3.c:108757:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 96 /* .xSFunc */)) = renameTableFunc // sqlite3.c:108758:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 168 /* .xSFunc */)) = renameTableTest // sqlite3.c:108759:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 240 /* .xSFunc */)) = dropColumnFunc // sqlite3.c:108760:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 24 /* .xSFunc */)) = versionFunc // sqlite3.c:120550:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 96 /* .xSFunc */)) = versionFunc // sqlite3.c:120551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 168 /* .xSFunc */)) = versionFunc // sqlite3.c:120552:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 240 /* .xSFunc */)) = soundexFunc // sqlite3.c:120558:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 312 /* .xSFunc */)) = loadExt // sqlite3.c:120561:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 384 /* .xSFunc */)) = loadExt // sqlite3.c:120562:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 456 /* .xSFunc */)) = compileoptionusedFunc // sqlite3.c:120568:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 528 /* .xSFunc */)) = compileoptiongetFunc // sqlite3.c:120569:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 600 /* .xSFunc */)) = versionFunc // sqlite3.c:120571:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 672 /* .xSFunc */)) = versionFunc // sqlite3.c:120572:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 744 /* .xSFunc */)) = versionFunc // sqlite3.c:120573:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 816 /* .xSFunc */)) = versionFunc // sqlite3.c:120575:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 888 /* .xSFunc */)) = trimFunc // sqlite3.c:120578:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 960 /* .xSFunc */)) = trimFunc // sqlite3.c:120579:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1032 /* .xSFunc */)) = trimFunc // sqlite3.c:120580:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1104 /* .xSFunc */)) = trimFunc // sqlite3.c:120581:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1176 /* .xSFunc */)) = trimFunc // sqlite3.c:120582:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1248 /* .xSFunc */)) = trimFunc // sqlite3.c:120583:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1320 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120584:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1464 /* .xSFunc */)) = minmaxStep // sqlite3.c:120586:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1472 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120586:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1480 /* .xValue */)) = minMaxValue // sqlite3.c:120586:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1536 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120588:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1680 /* .xSFunc */)) = minmaxStep // sqlite3.c:120590:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1688 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120590:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1696 /* .xValue */)) = minMaxValue // sqlite3.c:120590:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1752 /* .xSFunc */)) = typeofFunc // sqlite3.c:120592:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1824 /* .xSFunc */)) = lengthFunc // sqlite3.c:120593:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1896 /* .xSFunc */)) = instrFunc // sqlite3.c:120594:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1968 /* .xSFunc */)) = printfFunc // sqlite3.c:120595:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2040 /* .xSFunc */)) = unicodeFunc // sqlite3.c:120596:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2112 /* .xSFunc */)) = charFunc // sqlite3.c:120597:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2184 /* .xSFunc */)) = absFunc // sqlite3.c:120598:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2256 /* .xSFunc */)) = roundFunc // sqlite3.c:120600:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2328 /* .xSFunc */)) = roundFunc // sqlite3.c:120601:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2400 /* .xSFunc */)) = upperFunc // sqlite3.c:120603:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2472 /* .xSFunc */)) = lowerFunc // sqlite3.c:120604:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2544 /* .xSFunc */)) = hexFunc // sqlite3.c:120605:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2616 /* .xSFunc */)) = versionFunc // sqlite3.c:120606:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2688 /* .xSFunc */)) = randomFunc // sqlite3.c:120607:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2760 /* .xSFunc */)) = randomBlob // sqlite3.c:120608:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2832 /* .xSFunc */)) = nullifFunc // sqlite3.c:120609:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2904 /* .xSFunc */)) = versionFunc // sqlite3.c:120610:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2976 /* .xSFunc */)) = sourceidFunc // sqlite3.c:120611:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3048 /* .xSFunc */)) = errlogFunc // sqlite3.c:120612:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3120 /* .xSFunc */)) = quoteFunc // sqlite3.c:120613:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3192 /* .xSFunc */)) = last_insert_rowid // sqlite3.c:120614:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3264 /* .xSFunc */)) = changes // sqlite3.c:120615:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3336 /* .xSFunc */)) = total_changes // sqlite3.c:120616:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3408 /* .xSFunc */)) = replaceFunc // sqlite3.c:120617:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3480 /* .xSFunc */)) = zeroblobFunc // sqlite3.c:120618:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3552 /* .xSFunc */)) = substrFunc // sqlite3.c:120619:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3624 /* .xSFunc */)) = substrFunc // sqlite3.c:120620:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3696 /* .xSFunc */)) = substrFunc // sqlite3.c:120621:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3768 /* .xSFunc */)) = substrFunc // sqlite3.c:120622:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3840 /* .xSFunc */)) = sumStep // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3848 /* .xFinalize */)) = sumFinalize // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3856 /* .xValue */)) = sumFinalize // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3864 /* .xInverse */)) = sumInverse // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3912 /* .xSFunc */)) = sumStep // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3920 /* .xFinalize */)) = totalFinalize // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3928 /* .xValue */)) = totalFinalize // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3936 /* .xInverse */)) = sumInverse // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3984 /* .xSFunc */)) = sumStep // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3992 /* .xFinalize */)) = avgFinalize // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4000 /* .xValue */)) = avgFinalize // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4008 /* .xInverse */)) = sumInverse // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4056 /* .xSFunc */)) = countStep // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4064 /* .xFinalize */)) = countFinalize // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4072 /* .xValue */)) = countFinalize // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4080 /* .xInverse */)) = countInverse // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4128 /* .xSFunc */)) = countStep // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4136 /* .xFinalize */)) = countFinalize // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4144 /* .xValue */)) = countFinalize // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4152 /* .xInverse */)) = countInverse // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4200 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4208 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4216 /* .xValue */)) = groupConcatValue // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4224 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4272 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120632:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4280 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120632:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4288 /* .xValue */)) = groupConcatValue // sqlite3.c:120632:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4296 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120632:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4328 /* .pUserData */)) = uintptr(unsafe.Pointer(&globInfo)) // sqlite3.c:120635:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4344 /* .xSFunc */)) = likeFunc // sqlite3.c:120635:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4400 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120640:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4416 /* .xSFunc */)) = likeFunc // sqlite3.c:120640:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4472 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120641:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4488 /* .xSFunc */)) = likeFunc // sqlite3.c:120641:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4704 /* .xSFunc */)) = signFunc // sqlite3.c:120684:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4776 /* .xSFunc */)) = versionFunc // sqlite3.c:120685:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4848 /* .xSFunc */)) = versionFunc // sqlite3.c:120686:5: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 8 /* .pUserData */)) = uintptr(unsafe.Pointer(&Xsqlite3Config)) // sqlite3.c:23227:5: *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 24 /* .xSFunc */)) = juliandayFunc // sqlite3.c:23227:5: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 80 /* .pUserData */)) = uintptr(unsafe.Pointer(&Xsqlite3Config)) // sqlite3.c:23228:5: @@ -198718,40 +198767,40 @@ func init() { *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 384 /* .xSFunc */)) = ctimeFunc // sqlite3.c:23232:5: *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 456 /* .xSFunc */)) = ctimestampFunc // sqlite3.c:23233:5: *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 528 /* .xSFunc */)) = cdateFunc // sqlite3.c:23234:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 16 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191098:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 40 /* .xFunc */)) = jsonArrayFunc // sqlite3.c:191099:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 64 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191100:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 88 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191101:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 112 /* .xFunc */)) = jsonExtractFunc // sqlite3.c:191102:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 136 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191103:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 160 /* .xFunc */)) = jsonObjectFunc // sqlite3.c:191104:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 184 /* .xFunc */)) = jsonPatchFunc // sqlite3.c:191105:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 208 /* .xFunc */)) = jsonQuoteFunc // sqlite3.c:191106:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 232 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191107:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 256 /* .xFunc */)) = jsonReplaceFunc // sqlite3.c:191108:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 280 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191109:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 304 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191110:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 328 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191111:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 352 /* .xFunc */)) = jsonValidFunc // sqlite3.c:191112:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 0 /* .xFunc */)) = geopolyAreaFunc // sqlite3.c:197323:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 24 /* .xFunc */)) = geopolyBlobFunc // sqlite3.c:197324:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 48 /* .xFunc */)) = geopolyJsonFunc // sqlite3.c:197325:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 72 /* .xFunc */)) = geopolySvgFunc // sqlite3.c:197326:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 96 /* .xFunc */)) = geopolyWithinFunc // sqlite3.c:197327:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 120 /* .xFunc */)) = geopolyContainsPointFunc // sqlite3.c:197328:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 144 /* .xFunc */)) = geopolyOverlapFunc // sqlite3.c:197329:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 168 /* .xFunc */)) = geopolyDebugFunc // sqlite3.c:197330:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 192 /* .xFunc */)) = geopolyBBoxFunc // sqlite3.c:197331:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 216 /* .xFunc */)) = geopolyXformFunc // sqlite3.c:197332:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 240 /* .xFunc */)) = geopolyRegularFunc // sqlite3.c:197333:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 264 /* .xFunc */)) = geopolyCcwFunc // sqlite3.c:197334:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 16 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191110:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 40 /* .xFunc */)) = jsonArrayFunc // sqlite3.c:191111:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 64 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191112:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 88 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191113:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 112 /* .xFunc */)) = jsonExtractFunc // sqlite3.c:191114:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 136 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191115:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 160 /* .xFunc */)) = jsonObjectFunc // sqlite3.c:191116:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 184 /* .xFunc */)) = jsonPatchFunc // sqlite3.c:191117:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 208 /* .xFunc */)) = jsonQuoteFunc // sqlite3.c:191118:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 232 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191119:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 256 /* .xFunc */)) = jsonReplaceFunc // sqlite3.c:191120:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 280 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191121:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 304 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191122:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 328 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191123:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 352 /* .xFunc */)) = jsonValidFunc // sqlite3.c:191124:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 0 /* .xFunc */)) = geopolyAreaFunc // sqlite3.c:197335:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 24 /* .xFunc */)) = geopolyBlobFunc // sqlite3.c:197336:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 48 /* .xFunc */)) = geopolyJsonFunc // sqlite3.c:197337:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 72 /* .xFunc */)) = geopolySvgFunc // sqlite3.c:197338:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 96 /* .xFunc */)) = geopolyWithinFunc // sqlite3.c:197339:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 120 /* .xFunc */)) = geopolyContainsPointFunc // sqlite3.c:197340:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 144 /* .xFunc */)) = geopolyOverlapFunc // sqlite3.c:197341:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 168 /* .xFunc */)) = geopolyDebugFunc // sqlite3.c:197342:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 192 /* .xFunc */)) = geopolyBBoxFunc // sqlite3.c:197343:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 216 /* .xFunc */)) = geopolyXformFunc // sqlite3.c:197344:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 240 /* .xFunc */)) = geopolyRegularFunc // sqlite3.c:197345:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 264 /* .xFunc */)) = geopolyCcwFunc // sqlite3.c:197346:8: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 8 /* .pMethods */)) = uintptr(unsafe.Pointer(&posixIoMethods)) // sqlite3.c:39342:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 24 /* .pMethods */)) = uintptr(unsafe.Pointer(&posixIoMethods)) // sqlite3.c:39343:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 40 /* .pMethods */)) = uintptr(unsafe.Pointer(&afpIoMethods)) // sqlite3.c:39344:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 56 /* .pMethods */)) = uintptr(unsafe.Pointer(&afpIoMethods)) // sqlite3.c:39345:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 72 /* .pMethods */)) = uintptr(unsafe.Pointer(&nolockIoMethods)) // sqlite3.c:39346:17: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 8 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonEachModule)) // sqlite3.c:191137:31: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 24 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonTreeModule)) // sqlite3.c:191138:31: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 8 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonEachModule)) // sqlite3.c:191149:31: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 24 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonTreeModule)) // sqlite3.c:191150:31: *(*Sqlite3_syscall_ptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aSyscall)) + 8 /* .pCurrent */)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, int32) int32 }{posixOpen})) // sqlite3.c:34250:21: @@ -198971,81 +199020,81 @@ func init() { *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_syscall_ptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&aVfs)) + 1488 /* .xSetSystemCall */)) = unixSetSystemCall // sqlite3.c:41878:5: *(*func(*libc.TLS, uintptr, uintptr) Sqlite3_syscall_ptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aVfs)) + 1496 /* .xGetSystemCall */)) = unixGetSystemCall // sqlite3.c:41878:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aVfs)) + 1504 /* .xNextSystemCall */)) = unixNextSystemCall // sqlite3.c:41878:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 24 /* .xSFunc */)) = row_numberStepFunc // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 32 /* .xFinalize */)) = row_numberValueFunc // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 40 /* .xValue */)) = row_numberValueFunc // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 48 /* .xInverse */)) = noopStepFunc // sqlite3.c:154537:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 56 /* .zName */)) = uintptr(unsafe.Pointer(&row_numberName)) // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 96 /* .xSFunc */)) = dense_rankStepFunc // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 104 /* .xFinalize */)) = dense_rankValueFunc // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 112 /* .xValue */)) = dense_rankValueFunc // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 120 /* .xInverse */)) = noopStepFunc // sqlite3.c:154538:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 128 /* .zName */)) = uintptr(unsafe.Pointer(&dense_rankName)) // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 168 /* .xSFunc */)) = rankStepFunc // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 176 /* .xFinalize */)) = rankValueFunc // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 184 /* .xValue */)) = rankValueFunc // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 192 /* .xInverse */)) = noopStepFunc // sqlite3.c:154539:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 200 /* .zName */)) = uintptr(unsafe.Pointer(&rankName)) // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 240 /* .xSFunc */)) = percent_rankStepFunc // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 248 /* .xFinalize */)) = percent_rankValueFunc // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 256 /* .xValue */)) = percent_rankValueFunc // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 264 /* .xInverse */)) = percent_rankInvFunc // sqlite3.c:154540:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 272 /* .zName */)) = uintptr(unsafe.Pointer(&percent_rankName)) // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 312 /* .xSFunc */)) = cume_distStepFunc // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 320 /* .xFinalize */)) = cume_distValueFunc // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 328 /* .xValue */)) = cume_distValueFunc // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 336 /* .xInverse */)) = cume_distInvFunc // sqlite3.c:154541:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 344 /* .zName */)) = uintptr(unsafe.Pointer(&cume_distName)) // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 384 /* .xSFunc */)) = ntileStepFunc // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 392 /* .xFinalize */)) = ntileValueFunc // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 400 /* .xValue */)) = ntileValueFunc // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 408 /* .xInverse */)) = ntileInvFunc // sqlite3.c:154542:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 416 /* .zName */)) = uintptr(unsafe.Pointer(&ntileName)) // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 456 /* .xSFunc */)) = last_valueStepFunc // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 464 /* .xFinalize */)) = last_valueFinalizeFunc // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 472 /* .xValue */)) = last_valueValueFunc // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 480 /* .xInverse */)) = last_valueInvFunc // sqlite3.c:154543:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 488 /* .zName */)) = uintptr(unsafe.Pointer(&last_valueName)) // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 528 /* .xSFunc */)) = nth_valueStepFunc // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 536 /* .xFinalize */)) = nth_valueFinalizeFunc // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 544 /* .xValue */)) = noopValueFunc // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 552 /* .xInverse */)) = noopStepFunc // sqlite3.c:154544:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 560 /* .zName */)) = uintptr(unsafe.Pointer(&nth_valueName)) // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 600 /* .xSFunc */)) = first_valueStepFunc // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 608 /* .xFinalize */)) = first_valueFinalizeFunc // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 616 /* .xValue */)) = noopValueFunc // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 624 /* .xInverse */)) = noopStepFunc // sqlite3.c:154545:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 632 /* .zName */)) = uintptr(unsafe.Pointer(&first_valueName)) // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 672 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 680 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 688 /* .xValue */)) = noopValueFunc // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 696 /* .xInverse */)) = noopStepFunc // sqlite3.c:154546:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 704 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 744 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 752 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 760 /* .xValue */)) = noopValueFunc // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 768 /* .xInverse */)) = noopStepFunc // sqlite3.c:154547:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 776 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 816 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 824 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 832 /* .xValue */)) = noopValueFunc // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 840 /* .xInverse */)) = noopStepFunc // sqlite3.c:154548:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 848 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 888 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 896 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 904 /* .xValue */)) = noopValueFunc // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 912 /* .xInverse */)) = noopStepFunc // sqlite3.c:154549:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 920 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 960 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 968 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 976 /* .xValue */)) = noopValueFunc // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 984 /* .xInverse */)) = noopStepFunc // sqlite3.c:154550:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 992 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1032 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154551:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1040 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154551:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1048 /* .xValue */)) = noopValueFunc // sqlite3.c:154551:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1056 /* .xInverse */)) = noopStepFunc // sqlite3.c:154551:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1064 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 24 /* .xSFunc */)) = row_numberStepFunc // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 32 /* .xFinalize */)) = row_numberValueFunc // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 40 /* .xValue */)) = row_numberValueFunc // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 48 /* .xInverse */)) = noopStepFunc // sqlite3.c:154549:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 56 /* .zName */)) = uintptr(unsafe.Pointer(&row_numberName)) // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 96 /* .xSFunc */)) = dense_rankStepFunc // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 104 /* .xFinalize */)) = dense_rankValueFunc // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 112 /* .xValue */)) = dense_rankValueFunc // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 120 /* .xInverse */)) = noopStepFunc // sqlite3.c:154550:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 128 /* .zName */)) = uintptr(unsafe.Pointer(&dense_rankName)) // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 168 /* .xSFunc */)) = rankStepFunc // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 176 /* .xFinalize */)) = rankValueFunc // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 184 /* .xValue */)) = rankValueFunc // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 192 /* .xInverse */)) = noopStepFunc // sqlite3.c:154551:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 200 /* .zName */)) = uintptr(unsafe.Pointer(&rankName)) // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 240 /* .xSFunc */)) = percent_rankStepFunc // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 248 /* .xFinalize */)) = percent_rankValueFunc // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 256 /* .xValue */)) = percent_rankValueFunc // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 264 /* .xInverse */)) = percent_rankInvFunc // sqlite3.c:154552:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 272 /* .zName */)) = uintptr(unsafe.Pointer(&percent_rankName)) // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 312 /* .xSFunc */)) = cume_distStepFunc // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 320 /* .xFinalize */)) = cume_distValueFunc // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 328 /* .xValue */)) = cume_distValueFunc // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 336 /* .xInverse */)) = cume_distInvFunc // sqlite3.c:154553:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 344 /* .zName */)) = uintptr(unsafe.Pointer(&cume_distName)) // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 384 /* .xSFunc */)) = ntileStepFunc // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 392 /* .xFinalize */)) = ntileValueFunc // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 400 /* .xValue */)) = ntileValueFunc // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 408 /* .xInverse */)) = ntileInvFunc // sqlite3.c:154554:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 416 /* .zName */)) = uintptr(unsafe.Pointer(&ntileName)) // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 456 /* .xSFunc */)) = last_valueStepFunc // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 464 /* .xFinalize */)) = last_valueFinalizeFunc // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 472 /* .xValue */)) = last_valueValueFunc // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 480 /* .xInverse */)) = last_valueInvFunc // sqlite3.c:154555:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 488 /* .zName */)) = uintptr(unsafe.Pointer(&last_valueName)) // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 528 /* .xSFunc */)) = nth_valueStepFunc // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 536 /* .xFinalize */)) = nth_valueFinalizeFunc // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 544 /* .xValue */)) = noopValueFunc // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 552 /* .xInverse */)) = noopStepFunc // sqlite3.c:154556:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 560 /* .zName */)) = uintptr(unsafe.Pointer(&nth_valueName)) // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 600 /* .xSFunc */)) = first_valueStepFunc // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 608 /* .xFinalize */)) = first_valueFinalizeFunc // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 616 /* .xValue */)) = noopValueFunc // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 624 /* .xInverse */)) = noopStepFunc // sqlite3.c:154557:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 632 /* .zName */)) = uintptr(unsafe.Pointer(&first_valueName)) // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 672 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 680 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 688 /* .xValue */)) = noopValueFunc // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 696 /* .xInverse */)) = noopStepFunc // sqlite3.c:154558:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 704 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 744 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 752 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 760 /* .xValue */)) = noopValueFunc // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 768 /* .xInverse */)) = noopStepFunc // sqlite3.c:154559:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 776 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 816 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 824 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 832 /* .xValue */)) = noopValueFunc // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 840 /* .xInverse */)) = noopStepFunc // sqlite3.c:154560:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 848 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 888 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 896 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 904 /* .xValue */)) = noopValueFunc // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 912 /* .xInverse */)) = noopStepFunc // sqlite3.c:154561:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 920 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 960 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 968 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 976 /* .xValue */)) = noopValueFunc // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 984 /* .xInverse */)) = noopStepFunc // sqlite3.c:154562:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 992 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1032 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154563:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1040 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154563:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1048 /* .xValue */)) = noopValueFunc // sqlite3.c:154563:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1056 /* .xInverse */)) = noopStepFunc // sqlite3.c:154563:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1064 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154563:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoFinder)) + 0)) = afpIoFinderImpl // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 8 /* .xClose */)) = afpClose // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39274:1: @@ -199064,7 +199113,7 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39274:1: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&attach_func)) + 24 /* .xSFunc */)) = attachFunc // sqlite3.c:111128:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&attach_func)) + 24 /* .xSFunc */)) = attachFunc // sqlite3.c:111139:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&autolockIoFinder)) + 0)) = autolockIoFinderImpl // sqlite3.c:39388:55: *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods)) + 0 /* .xMalloc */)) = sqlite3MemMalloc // sqlite3.c:24117:6: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods)) + 8 /* .xFree */)) = sqlite3MemFree // sqlite3.c:24118:6: @@ -199084,7 +199133,7 @@ func init() { *(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods1)) + 80 /* .xTruncate */)) = pcache1Truncate // sqlite3.c:51403:5: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods1)) + 88 /* .xDestroy */)) = pcache1Destroy // sqlite3.c:51404:5: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods1)) + 96 /* .xShrink */)) = pcache1Shrink // sqlite3.c:51405:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&detach_func)) + 24 /* .xSFunc */)) = detachFunc // sqlite3.c:111108:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&detach_func)) + 24 /* .xSFunc */)) = detachFunc // sqlite3.c:111119:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&dotlockIoFinder)) + 0)) = dotlockIoFinderImpl // sqlite3.c:39236:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dotlockIoMethods)) + 8 /* .xClose */)) = dotlockClose // sqlite3.c:39236:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dotlockIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39236:1: @@ -199121,82 +199170,82 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&flockIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39248:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&flockIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39248:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&flockIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39248:1: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 8 /* .xCreate */)) = fts5CreateMethod // sqlite3.c:229318:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 16 /* .xConnect */)) = fts5ConnectMethod // sqlite3.c:229319:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 24 /* .xBestIndex */)) = fts5BestIndexMethod // sqlite3.c:229320:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 32 /* .xDisconnect */)) = fts5DisconnectMethod // sqlite3.c:229321:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 40 /* .xDestroy */)) = fts5DestroyMethod // sqlite3.c:229322:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 48 /* .xOpen */)) = fts5OpenMethod // sqlite3.c:229323:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 56 /* .xClose */)) = fts5CloseMethod // sqlite3.c:229324:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 64 /* .xFilter */)) = fts5FilterMethod // sqlite3.c:229325:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 72 /* .xNext */)) = fts5NextMethod // sqlite3.c:229326:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 80 /* .xEof */)) = fts5EofMethod // sqlite3.c:229327:25: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 88 /* .xColumn */)) = fts5ColumnMethod // sqlite3.c:229328:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 96 /* .xRowid */)) = fts5RowidMethod // sqlite3.c:229329:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 104 /* .xUpdate */)) = fts5UpdateMethod // sqlite3.c:229330:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 112 /* .xBegin */)) = fts5BeginMethod // sqlite3.c:229331:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 120 /* .xSync */)) = fts5SyncMethod // sqlite3.c:229332:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 128 /* .xCommit */)) = fts5CommitMethod // sqlite3.c:229333:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 136 /* .xRollback */)) = fts5RollbackMethod // sqlite3.c:229334:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 144 /* .xFindFunction */)) = fts5FindFunctionMethod // sqlite3.c:229335:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 152 /* .xRename */)) = fts5RenameMethod // sqlite3.c:229336:25: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 160 /* .xSavepoint */)) = fts5SavepointMethod // sqlite3.c:229337:25: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 168 /* .xRelease */)) = fts5ReleaseMethod // sqlite3.c:229338:25: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 176 /* .xRollbackTo */)) = fts5RollbackToMethod // sqlite3.c:229339:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 184 /* .xShadowName */)) = fts5ShadowName // sqlite3.c:229340:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 8 /* .xCreate */)) = fts5VocabCreateMethod // sqlite3.c:233886:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 16 /* .xConnect */)) = fts5VocabConnectMethod // sqlite3.c:233887:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 24 /* .xBestIndex */)) = fts5VocabBestIndexMethod // sqlite3.c:233888:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 32 /* .xDisconnect */)) = fts5VocabDisconnectMethod // sqlite3.c:233889:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 40 /* .xDestroy */)) = fts5VocabDestroyMethod // sqlite3.c:233890:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 48 /* .xOpen */)) = fts5VocabOpenMethod // sqlite3.c:233891:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 56 /* .xClose */)) = fts5VocabCloseMethod // sqlite3.c:233892:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 64 /* .xFilter */)) = fts5VocabFilterMethod // sqlite3.c:233893:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 72 /* .xNext */)) = fts5VocabNextMethod // sqlite3.c:233894:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 80 /* .xEof */)) = fts5VocabEofMethod // sqlite3.c:233895:25: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 88 /* .xColumn */)) = fts5VocabColumnMethod // sqlite3.c:233896:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 96 /* .xRowid */)) = fts5VocabRowidMethod // sqlite3.c:233897:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 8 /* .xCreate */)) = geopolyCreate // sqlite3.c:197290:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 16 /* .xConnect */)) = geopolyConnect // sqlite3.c:197291:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 24 /* .xBestIndex */)) = geopolyBestIndex // sqlite3.c:197292:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:197293:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:197294:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:197295:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:197296:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 64 /* .xFilter */)) = geopolyFilter // sqlite3.c:197297:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:197298:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:197299:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 88 /* .xColumn */)) = geopolyColumn // sqlite3.c:197300:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:197301:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 104 /* .xUpdate */)) = geopolyUpdate // sqlite3.c:197302:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:197303:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:197304:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:197305:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:197306:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 144 /* .xFindFunction */)) = geopolyFindFunction // sqlite3.c:197307:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:197308:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:197309:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:197312:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191030:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191031:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191032:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 48 /* .xOpen */)) = jsonEachOpenEach // sqlite3.c:191034:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191035:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191036:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191037:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191038:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191039:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191040:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191058:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191059:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191060:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 48 /* .xOpen */)) = jsonEachOpenTree // sqlite3.c:191062:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191063:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191064:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191065:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191066:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191067:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191068:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 8 /* .xCreate */)) = fts5CreateMethod // sqlite3.c:229330:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 16 /* .xConnect */)) = fts5ConnectMethod // sqlite3.c:229331:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 24 /* .xBestIndex */)) = fts5BestIndexMethod // sqlite3.c:229332:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 32 /* .xDisconnect */)) = fts5DisconnectMethod // sqlite3.c:229333:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 40 /* .xDestroy */)) = fts5DestroyMethod // sqlite3.c:229334:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 48 /* .xOpen */)) = fts5OpenMethod // sqlite3.c:229335:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 56 /* .xClose */)) = fts5CloseMethod // sqlite3.c:229336:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 64 /* .xFilter */)) = fts5FilterMethod // sqlite3.c:229337:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 72 /* .xNext */)) = fts5NextMethod // sqlite3.c:229338:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 80 /* .xEof */)) = fts5EofMethod // sqlite3.c:229339:25: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 88 /* .xColumn */)) = fts5ColumnMethod // sqlite3.c:229340:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 96 /* .xRowid */)) = fts5RowidMethod // sqlite3.c:229341:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 104 /* .xUpdate */)) = fts5UpdateMethod // sqlite3.c:229342:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 112 /* .xBegin */)) = fts5BeginMethod // sqlite3.c:229343:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 120 /* .xSync */)) = fts5SyncMethod // sqlite3.c:229344:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 128 /* .xCommit */)) = fts5CommitMethod // sqlite3.c:229345:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 136 /* .xRollback */)) = fts5RollbackMethod // sqlite3.c:229346:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 144 /* .xFindFunction */)) = fts5FindFunctionMethod // sqlite3.c:229347:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 152 /* .xRename */)) = fts5RenameMethod // sqlite3.c:229348:25: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 160 /* .xSavepoint */)) = fts5SavepointMethod // sqlite3.c:229349:25: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 168 /* .xRelease */)) = fts5ReleaseMethod // sqlite3.c:229350:25: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 176 /* .xRollbackTo */)) = fts5RollbackToMethod // sqlite3.c:229351:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 184 /* .xShadowName */)) = fts5ShadowName // sqlite3.c:229352:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 8 /* .xCreate */)) = fts5VocabCreateMethod // sqlite3.c:233898:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 16 /* .xConnect */)) = fts5VocabConnectMethod // sqlite3.c:233899:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 24 /* .xBestIndex */)) = fts5VocabBestIndexMethod // sqlite3.c:233900:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 32 /* .xDisconnect */)) = fts5VocabDisconnectMethod // sqlite3.c:233901:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 40 /* .xDestroy */)) = fts5VocabDestroyMethod // sqlite3.c:233902:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 48 /* .xOpen */)) = fts5VocabOpenMethod // sqlite3.c:233903:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 56 /* .xClose */)) = fts5VocabCloseMethod // sqlite3.c:233904:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 64 /* .xFilter */)) = fts5VocabFilterMethod // sqlite3.c:233905:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 72 /* .xNext */)) = fts5VocabNextMethod // sqlite3.c:233906:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 80 /* .xEof */)) = fts5VocabEofMethod // sqlite3.c:233907:25: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 88 /* .xColumn */)) = fts5VocabColumnMethod // sqlite3.c:233908:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 96 /* .xRowid */)) = fts5VocabRowidMethod // sqlite3.c:233909:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 8 /* .xCreate */)) = geopolyCreate // sqlite3.c:197302:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 16 /* .xConnect */)) = geopolyConnect // sqlite3.c:197303:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 24 /* .xBestIndex */)) = geopolyBestIndex // sqlite3.c:197304:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:197305:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:197306:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:197307:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:197308:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 64 /* .xFilter */)) = geopolyFilter // sqlite3.c:197309:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:197310:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:197311:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 88 /* .xColumn */)) = geopolyColumn // sqlite3.c:197312:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:197313:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 104 /* .xUpdate */)) = geopolyUpdate // sqlite3.c:197314:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:197315:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:197316:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:197317:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:197318:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 144 /* .xFindFunction */)) = geopolyFindFunction // sqlite3.c:197319:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:197320:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:197321:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:197324:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191042:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191043:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191044:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 48 /* .xOpen */)) = jsonEachOpenEach // sqlite3.c:191046:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191047:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191048:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191049:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191050:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191051:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191052:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191070:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191071:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191072:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 48 /* .xOpen */)) = jsonEachOpenTree // sqlite3.c:191074:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191075:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191076:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191077:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191078:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191079:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191080:3: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&nfsIoFinder)) + 0)) = nfsIoFinderImpl // sqlite3.c:39314:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&nfsIoMethods)) + 8 /* .xClose */)) = unixClose // sqlite3.c:39314:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&nfsIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39314:1: @@ -199252,16 +199301,16 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&posixIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39216:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&posixIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39216:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&posixIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39216:1: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 16 /* .xConnect */)) = pragmaVtabConnect // sqlite3.c:130087:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 24 /* .xBestIndex */)) = pragmaVtabBestIndex // sqlite3.c:130088:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 32 /* .xDisconnect */)) = pragmaVtabDisconnect // sqlite3.c:130089:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 48 /* .xOpen */)) = pragmaVtabOpen // sqlite3.c:130091:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 56 /* .xClose */)) = pragmaVtabClose // sqlite3.c:130092:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 64 /* .xFilter */)) = pragmaVtabFilter // sqlite3.c:130093:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 72 /* .xNext */)) = pragmaVtabNext // sqlite3.c:130094:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 80 /* .xEof */)) = pragmaVtabEof // sqlite3.c:130095:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 88 /* .xColumn */)) = pragmaVtabColumn // sqlite3.c:130096:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 96 /* .xRowid */)) = pragmaVtabRowid // sqlite3.c:130097:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 16 /* .xConnect */)) = pragmaVtabConnect // sqlite3.c:130098:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 24 /* .xBestIndex */)) = pragmaVtabBestIndex // sqlite3.c:130099:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 32 /* .xDisconnect */)) = pragmaVtabDisconnect // sqlite3.c:130100:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 48 /* .xOpen */)) = pragmaVtabOpen // sqlite3.c:130102:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 56 /* .xClose */)) = pragmaVtabClose // sqlite3.c:130103:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 64 /* .xFilter */)) = pragmaVtabFilter // sqlite3.c:130104:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 72 /* .xNext */)) = pragmaVtabNext // sqlite3.c:130105:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 80 /* .xEof */)) = pragmaVtabEof // sqlite3.c:130106:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 88 /* .xColumn */)) = pragmaVtabColumn // sqlite3.c:130107:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 96 /* .xRowid */)) = pragmaVtabRowid // sqlite3.c:130108:3: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoFinder)) + 0)) = proxyIoFinderImpl // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 8 /* .xClose */)) = proxyClose // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39300:1: @@ -199280,61 +199329,61 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39300:1: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 8 /* .xClose */)) = rbuVfsClose // sqlite3.c:203930:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 16 /* .xRead */)) = rbuVfsRead // sqlite3.c:203931:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 24 /* .xWrite */)) = rbuVfsWrite // sqlite3.c:203932:5: - *(*func(*libc.TLS, uintptr, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 32 /* .xTruncate */)) = rbuVfsTruncate // sqlite3.c:203933:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 40 /* .xSync */)) = rbuVfsSync // sqlite3.c:203934:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 48 /* .xFileSize */)) = rbuVfsFileSize // sqlite3.c:203935:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 56 /* .xLock */)) = rbuVfsLock // sqlite3.c:203936:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 64 /* .xUnlock */)) = rbuVfsUnlock // sqlite3.c:203937:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 72 /* .xCheckReservedLock */)) = rbuVfsCheckReservedLock // sqlite3.c:203938:5: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 80 /* .xFileControl */)) = rbuVfsFileControl // sqlite3.c:203939:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 88 /* .xSectorSize */)) = rbuVfsSectorSize // sqlite3.c:203940:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 96 /* .xDeviceCharacteristics */)) = rbuVfsDeviceCharacteristics // sqlite3.c:203941:5: - *(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 104 /* .xShmMap */)) = rbuVfsShmMap // sqlite3.c:203942:5: - *(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 112 /* .xShmLock */)) = rbuVfsShmLock // sqlite3.c:203943:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 120 /* .xShmBarrier */)) = rbuVfsShmBarrier // sqlite3.c:203944:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 128 /* .xShmUnmap */)) = rbuVfsShmUnmap // sqlite3.c:203945:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 8 /* .xCreate */)) = rtreeCreate // sqlite3.c:194643:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 16 /* .xConnect */)) = rtreeConnect // sqlite3.c:194644:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 24 /* .xBestIndex */)) = rtreeBestIndex // sqlite3.c:194645:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:194646:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:194647:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:194648:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:194649:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 64 /* .xFilter */)) = rtreeFilter // sqlite3.c:194650:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:194651:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:194652:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 88 /* .xColumn */)) = rtreeColumn // sqlite3.c:194653:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:194654:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 104 /* .xUpdate */)) = rtreeUpdate // sqlite3.c:194655:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:194656:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:194657:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:194658:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:194659:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:194661:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:194662:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:194665:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 8 /* .xUserData */)) = fts5ApiUserData // sqlite3.c:228777:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 16 /* .xColumnCount */)) = fts5ApiColumnCount // sqlite3.c:228778:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 24 /* .xRowCount */)) = fts5ApiRowCount // sqlite3.c:228779:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 32 /* .xColumnTotalSize */)) = fts5ApiColumnTotalSize // sqlite3.c:228780:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 40 /* .xTokenize */)) = fts5ApiTokenize // sqlite3.c:228781:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 48 /* .xPhraseCount */)) = fts5ApiPhraseCount // sqlite3.c:228782:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 56 /* .xPhraseSize */)) = fts5ApiPhraseSize // sqlite3.c:228783:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 64 /* .xInstCount */)) = fts5ApiInstCount // sqlite3.c:228784:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 72 /* .xInst */)) = fts5ApiInst // sqlite3.c:228785:3: - *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 80 /* .xRowid */)) = fts5ApiRowid // sqlite3.c:228786:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 88 /* .xColumnText */)) = fts5ApiColumnText // sqlite3.c:228787:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 96 /* .xColumnSize */)) = fts5ApiColumnSize // sqlite3.c:228788:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 104 /* .xQueryPhrase */)) = fts5ApiQueryPhrase // sqlite3.c:228789:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 112 /* .xSetAuxdata */)) = fts5ApiSetAuxdata // sqlite3.c:228790:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 120 /* .xGetAuxdata */)) = fts5ApiGetAuxdata // sqlite3.c:228791:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 128 /* .xPhraseFirst */)) = fts5ApiPhraseFirst // sqlite3.c:228792:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 136 /* .xPhraseNext */)) = fts5ApiPhraseNext // sqlite3.c:228793:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 144 /* .xPhraseFirstColumn */)) = fts5ApiPhraseFirstColumn // sqlite3.c:228794:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 152 /* .xPhraseNextColumn */)) = fts5ApiPhraseNextColumn // sqlite3.c:228795:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 8 /* .xClose */)) = rbuVfsClose // sqlite3.c:203942:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 16 /* .xRead */)) = rbuVfsRead // sqlite3.c:203943:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 24 /* .xWrite */)) = rbuVfsWrite // sqlite3.c:203944:5: + *(*func(*libc.TLS, uintptr, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 32 /* .xTruncate */)) = rbuVfsTruncate // sqlite3.c:203945:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 40 /* .xSync */)) = rbuVfsSync // sqlite3.c:203946:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 48 /* .xFileSize */)) = rbuVfsFileSize // sqlite3.c:203947:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 56 /* .xLock */)) = rbuVfsLock // sqlite3.c:203948:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 64 /* .xUnlock */)) = rbuVfsUnlock // sqlite3.c:203949:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 72 /* .xCheckReservedLock */)) = rbuVfsCheckReservedLock // sqlite3.c:203950:5: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 80 /* .xFileControl */)) = rbuVfsFileControl // sqlite3.c:203951:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 88 /* .xSectorSize */)) = rbuVfsSectorSize // sqlite3.c:203952:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 96 /* .xDeviceCharacteristics */)) = rbuVfsDeviceCharacteristics // sqlite3.c:203953:5: + *(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 104 /* .xShmMap */)) = rbuVfsShmMap // sqlite3.c:203954:5: + *(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 112 /* .xShmLock */)) = rbuVfsShmLock // sqlite3.c:203955:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 120 /* .xShmBarrier */)) = rbuVfsShmBarrier // sqlite3.c:203956:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 128 /* .xShmUnmap */)) = rbuVfsShmUnmap // sqlite3.c:203957:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 8 /* .xCreate */)) = rtreeCreate // sqlite3.c:194655:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 16 /* .xConnect */)) = rtreeConnect // sqlite3.c:194656:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 24 /* .xBestIndex */)) = rtreeBestIndex // sqlite3.c:194657:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:194658:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:194659:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:194660:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:194661:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 64 /* .xFilter */)) = rtreeFilter // sqlite3.c:194662:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:194663:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:194664:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 88 /* .xColumn */)) = rtreeColumn // sqlite3.c:194665:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:194666:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 104 /* .xUpdate */)) = rtreeUpdate // sqlite3.c:194667:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:194668:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:194669:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:194670:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:194671:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:194673:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:194674:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:194677:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 8 /* .xUserData */)) = fts5ApiUserData // sqlite3.c:228789:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 16 /* .xColumnCount */)) = fts5ApiColumnCount // sqlite3.c:228790:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 24 /* .xRowCount */)) = fts5ApiRowCount // sqlite3.c:228791:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 32 /* .xColumnTotalSize */)) = fts5ApiColumnTotalSize // sqlite3.c:228792:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 40 /* .xTokenize */)) = fts5ApiTokenize // sqlite3.c:228793:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 48 /* .xPhraseCount */)) = fts5ApiPhraseCount // sqlite3.c:228794:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 56 /* .xPhraseSize */)) = fts5ApiPhraseSize // sqlite3.c:228795:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 64 /* .xInstCount */)) = fts5ApiInstCount // sqlite3.c:228796:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 72 /* .xInst */)) = fts5ApiInst // sqlite3.c:228797:3: + *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 80 /* .xRowid */)) = fts5ApiRowid // sqlite3.c:228798:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 88 /* .xColumnText */)) = fts5ApiColumnText // sqlite3.c:228799:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 96 /* .xColumnSize */)) = fts5ApiColumnSize // sqlite3.c:228800:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 104 /* .xQueryPhrase */)) = fts5ApiQueryPhrase // sqlite3.c:228801:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 112 /* .xSetAuxdata */)) = fts5ApiSetAuxdata // sqlite3.c:228802:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 120 /* .xGetAuxdata */)) = fts5ApiGetAuxdata // sqlite3.c:228803:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 128 /* .xPhraseFirst */)) = fts5ApiPhraseFirst // sqlite3.c:228804:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 136 /* .xPhraseNext */)) = fts5ApiPhraseNext // sqlite3.c:228805:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 144 /* .xPhraseFirstColumn */)) = fts5ApiPhraseFirstColumn // sqlite3.c:228806:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 152 /* .xPhraseNextColumn */)) = fts5ApiPhraseNextColumn // sqlite3.c:228807:3: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMemJournalMethods)) + 8 /* .xClose */)) = memjrnlClose // sqlite3.c:98257:3: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMemJournalMethods)) + 16 /* .xRead */)) = memjrnlRead // sqlite3.c:98258:3: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMemJournalMethods)) + 24 /* .xWrite */)) = memjrnlWrite // sqlite3.c:98259:3: @@ -199348,279 +199397,279 @@ func init() { *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sMutex)) + 32 /* .xMutexEnter */)) = noopMutexEnter // sqlite3.c:26354:5: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMutex)) + 40 /* .xMutexTry */)) = noopMutexTry // sqlite3.c:26355:5: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sMutex)) + 48 /* .xMutexLeave */)) = noopMutexLeave // sqlite3.c:26356:5: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 0 /* .aggregate_context */)) = Xsqlite3_aggregate_context // sqlite3.c:126160:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 8 /* .aggregate_count */)) = Xsqlite3_aggregate_count // sqlite3.c:126162:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 16 /* .bind_blob */)) = Xsqlite3_bind_blob // sqlite3.c:126166:3: - *(*func(*libc.TLS, uintptr, int32, float64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 24 /* .bind_double */)) = Xsqlite3_bind_double // sqlite3.c:126167:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 32 /* .bind_int */)) = Xsqlite3_bind_int // sqlite3.c:126168:3: - *(*func(*libc.TLS, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 40 /* .bind_int64 */)) = Xsqlite3_bind_int64 // sqlite3.c:126169:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 48 /* .bind_null */)) = Xsqlite3_bind_null // sqlite3.c:126170:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 56 /* .bind_parameter_count */)) = Xsqlite3_bind_parameter_count // sqlite3.c:126171:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 64 /* .bind_parameter_index */)) = Xsqlite3_bind_parameter_index // sqlite3.c:126172:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 72 /* .bind_parameter_name */)) = Xsqlite3_bind_parameter_name // sqlite3.c:126173:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 80 /* .bind_text */)) = Xsqlite3_bind_text // sqlite3.c:126174:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 88 /* .bind_text16 */)) = Xsqlite3_bind_text16 // sqlite3.c:126175:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 96 /* .bind_value */)) = Xsqlite3_bind_value // sqlite3.c:126176:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 104 /* .busy_handler */)) = Xsqlite3_busy_handler // sqlite3.c:126177:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 112 /* .busy_timeout */)) = Xsqlite3_busy_timeout // sqlite3.c:126178:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 120 /* .changes */)) = Xsqlite3_changes // sqlite3.c:126179:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 128 /* .close */)) = Xsqlite3_close // sqlite3.c:126180:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 136 /* .collation_needed */)) = Xsqlite3_collation_needed // sqlite3.c:126181:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 144 /* .collation_needed16 */)) = Xsqlite3_collation_needed16 // sqlite3.c:126182:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 152 /* .column_blob */)) = Xsqlite3_column_blob // sqlite3.c:126183:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 160 /* .column_bytes */)) = Xsqlite3_column_bytes // sqlite3.c:126184:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 168 /* .column_bytes16 */)) = Xsqlite3_column_bytes16 // sqlite3.c:126185:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 176 /* .column_count */)) = Xsqlite3_column_count // sqlite3.c:126186:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 184 /* .column_database_name */)) = Xsqlite3_column_database_name // sqlite3.c:126187:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 192 /* .column_database_name16 */)) = Xsqlite3_column_database_name16 // sqlite3.c:126188:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 200 /* .column_decltype */)) = Xsqlite3_column_decltype // sqlite3.c:126189:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 208 /* .column_decltype16 */)) = Xsqlite3_column_decltype16 // sqlite3.c:126190:3: - *(*func(*libc.TLS, uintptr, int32) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 216 /* .column_double */)) = Xsqlite3_column_double // sqlite3.c:126191:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 224 /* .column_int */)) = Xsqlite3_column_int // sqlite3.c:126192:3: - *(*func(*libc.TLS, uintptr, int32) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 232 /* .column_int64 */)) = Xsqlite3_column_int64 // sqlite3.c:126193:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 240 /* .column_name */)) = Xsqlite3_column_name // sqlite3.c:126194:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 248 /* .column_name16 */)) = Xsqlite3_column_name16 // sqlite3.c:126195:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 256 /* .column_origin_name */)) = Xsqlite3_column_origin_name // sqlite3.c:126196:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 264 /* .column_origin_name16 */)) = Xsqlite3_column_origin_name16 // sqlite3.c:126197:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 272 /* .column_table_name */)) = Xsqlite3_column_table_name // sqlite3.c:126198:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 280 /* .column_table_name16 */)) = Xsqlite3_column_table_name16 // sqlite3.c:126199:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 288 /* .column_text */)) = Xsqlite3_column_text // sqlite3.c:126200:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 296 /* .column_text16 */)) = Xsqlite3_column_text16 // sqlite3.c:126201:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 304 /* .column_type */)) = Xsqlite3_column_type // sqlite3.c:126202:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 312 /* .column_value */)) = Xsqlite3_column_value // sqlite3.c:126203:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 320 /* .commit_hook */)) = Xsqlite3_commit_hook // sqlite3.c:126204:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 328 /* .complete */)) = Xsqlite3_complete // sqlite3.c:126205:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 336 /* .complete16 */)) = Xsqlite3_complete16 // sqlite3.c:126206:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 344 /* .create_collation */)) = Xsqlite3_create_collation // sqlite3.c:126207:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 352 /* .create_collation16 */)) = Xsqlite3_create_collation16 // sqlite3.c:126208:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 360 /* .create_function */)) = Xsqlite3_create_function // sqlite3.c:126209:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 368 /* .create_function16 */)) = Xsqlite3_create_function16 // sqlite3.c:126210:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 376 /* .create_module */)) = Xsqlite3_create_module // sqlite3.c:126211:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 384 /* .data_count */)) = Xsqlite3_data_count // sqlite3.c:126212:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 392 /* .db_handle */)) = Xsqlite3_db_handle // sqlite3.c:126213:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 400 /* .declare_vtab */)) = Xsqlite3_declare_vtab // sqlite3.c:126214:3: - *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 408 /* .enable_shared_cache */)) = Xsqlite3_enable_shared_cache // sqlite3.c:126215:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 416 /* .errcode */)) = Xsqlite3_errcode // sqlite3.c:126216:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 424 /* .errmsg */)) = Xsqlite3_errmsg // sqlite3.c:126217:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 432 /* .errmsg16 */)) = Xsqlite3_errmsg16 // sqlite3.c:126218:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_callback, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 440 /* .exec */)) = Xsqlite3_exec // sqlite3.c:126219:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 448 /* .expired */)) = Xsqlite3_expired // sqlite3.c:126221:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 456 /* .finalize */)) = Xsqlite3_finalize // sqlite3.c:126225:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 464 /* .free */)) = Xsqlite3_free // sqlite3.c:126226:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 472 /* .free_table */)) = Xsqlite3_free_table // sqlite3.c:126227:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 480 /* .get_autocommit */)) = Xsqlite3_get_autocommit // sqlite3.c:126228:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 488 /* .get_auxdata */)) = Xsqlite3_get_auxdata // sqlite3.c:126229:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 496 /* .get_table */)) = Xsqlite3_get_table // sqlite3.c:126230:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 512 /* .interruptx */)) = Xsqlite3_interrupt // sqlite3.c:126232:3: - *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 520 /* .last_insert_rowid */)) = Xsqlite3_last_insert_rowid // sqlite3.c:126233:3: - *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 528 /* .libversion */)) = Xsqlite3_libversion // sqlite3.c:126234:3: - *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 536 /* .libversion_number */)) = Xsqlite3_libversion_number // sqlite3.c:126235:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 544 /* .malloc */)) = Xsqlite3_malloc // sqlite3.c:126236:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 552 /* .mprintf */)) = Xsqlite3_mprintf // sqlite3.c:126237:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 560 /* .open */)) = Xsqlite3_open // sqlite3.c:126238:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 568 /* .open16 */)) = Xsqlite3_open16 // sqlite3.c:126239:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 576 /* .prepare */)) = Xsqlite3_prepare // sqlite3.c:126240:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 584 /* .prepare16 */)) = Xsqlite3_prepare16 // sqlite3.c:126241:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 592 /* .profile */)) = Xsqlite3_profile // sqlite3.c:126242:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 600 /* .progress_handler */)) = Xsqlite3_progress_handler // sqlite3.c:126243:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 608 /* .realloc */)) = Xsqlite3_realloc // sqlite3.c:126244:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 616 /* .reset */)) = Xsqlite3_reset // sqlite3.c:126245:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 624 /* .result_blob */)) = Xsqlite3_result_blob // sqlite3.c:126246:3: - *(*func(*libc.TLS, uintptr, float64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 632 /* .result_double */)) = Xsqlite3_result_double // sqlite3.c:126247:3: - *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 640 /* .result_error */)) = Xsqlite3_result_error // sqlite3.c:126248:3: - *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 648 /* .result_error16 */)) = Xsqlite3_result_error16 // sqlite3.c:126249:3: - *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 656 /* .result_int */)) = Xsqlite3_result_int // sqlite3.c:126250:3: - *(*func(*libc.TLS, uintptr, I64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 664 /* .result_int64 */)) = Xsqlite3_result_int64 // sqlite3.c:126251:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 672 /* .result_null */)) = Xsqlite3_result_null // sqlite3.c:126252:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 680 /* .result_text */)) = Xsqlite3_result_text // sqlite3.c:126253:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 688 /* .result_text16 */)) = Xsqlite3_result_text16 // sqlite3.c:126254:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 696 /* .result_text16be */)) = Xsqlite3_result_text16be // sqlite3.c:126255:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 704 /* .result_text16le */)) = Xsqlite3_result_text16le // sqlite3.c:126256:3: - *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 712 /* .result_value */)) = Xsqlite3_result_value // sqlite3.c:126257:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 720 /* .rollback_hook */)) = Xsqlite3_rollback_hook // sqlite3.c:126258:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 728 /* .set_authorizer */)) = Xsqlite3_set_authorizer // sqlite3.c:126259:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 736 /* .set_auxdata */)) = Xsqlite3_set_auxdata // sqlite3.c:126260:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 744 /* .xsnprintf */)) = Xsqlite3_snprintf // sqlite3.c:126261:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 752 /* .step */)) = Xsqlite3_step // sqlite3.c:126262:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 760 /* .table_column_metadata */)) = Xsqlite3_table_column_metadata // sqlite3.c:126263:3: - *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 768 /* .thread_cleanup */)) = Xsqlite3_thread_cleanup // sqlite3.c:126265:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 776 /* .total_changes */)) = Xsqlite3_total_changes // sqlite3.c:126269:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 784 /* .trace */)) = Xsqlite3_trace // sqlite3.c:126270:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 792 /* .transfer_bindings */)) = Xsqlite3_transfer_bindings // sqlite3.c:126272:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 800 /* .update_hook */)) = Xsqlite3_update_hook // sqlite3.c:126276:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 808 /* .user_data */)) = Xsqlite3_user_data // sqlite3.c:126277:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 816 /* .value_blob */)) = Xsqlite3_value_blob // sqlite3.c:126278:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 824 /* .value_bytes */)) = Xsqlite3_value_bytes // sqlite3.c:126279:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 832 /* .value_bytes16 */)) = Xsqlite3_value_bytes16 // sqlite3.c:126280:3: - *(*func(*libc.TLS, uintptr) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 840 /* .value_double */)) = Xsqlite3_value_double // sqlite3.c:126281:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 848 /* .value_int */)) = Xsqlite3_value_int // sqlite3.c:126282:3: - *(*func(*libc.TLS, uintptr) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 856 /* .value_int64 */)) = Xsqlite3_value_int64 // sqlite3.c:126283:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 864 /* .value_numeric_type */)) = Xsqlite3_value_numeric_type // sqlite3.c:126284:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 872 /* .value_text */)) = Xsqlite3_value_text // sqlite3.c:126285:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 880 /* .value_text16 */)) = Xsqlite3_value_text16 // sqlite3.c:126286:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 888 /* .value_text16be */)) = Xsqlite3_value_text16be // sqlite3.c:126287:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 896 /* .value_text16le */)) = Xsqlite3_value_text16le // sqlite3.c:126288:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 904 /* .value_type */)) = Xsqlite3_value_type // sqlite3.c:126289:3: - *(*func(*libc.TLS, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 912 /* .vmprintf */)) = Xsqlite3_vmprintf // sqlite3.c:126290:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 920 /* .overload_function */)) = Xsqlite3_overload_function // sqlite3.c:126299:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 928 /* .prepare_v2 */)) = Xsqlite3_prepare_v2 // sqlite3.c:126304:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 936 /* .prepare16_v2 */)) = Xsqlite3_prepare16_v2 // sqlite3.c:126305:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 944 /* .clear_bindings */)) = Xsqlite3_clear_bindings // sqlite3.c:126306:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 952 /* .create_module_v2 */)) = Xsqlite3_create_module_v2 // sqlite3.c:126311:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 960 /* .bind_zeroblob */)) = Xsqlite3_bind_zeroblob // sqlite3.c:126316:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 968 /* .blob_bytes */)) = Xsqlite3_blob_bytes // sqlite3.c:126317:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 976 /* .blob_close */)) = Xsqlite3_blob_close // sqlite3.c:126318:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, Sqlite_int64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 984 /* .blob_open */)) = Xsqlite3_blob_open // sqlite3.c:126319:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 992 /* .blob_read */)) = Xsqlite3_blob_read // sqlite3.c:126320:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1000 /* .blob_write */)) = Xsqlite3_blob_write // sqlite3.c:126321:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1008 /* .create_collation_v2 */)) = Xsqlite3_create_collation_v2 // sqlite3.c:126322:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1016 /* .file_control */)) = Xsqlite3_file_control // sqlite3.c:126323:3: - *(*func(*libc.TLS, int32) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1024 /* .memory_highwater */)) = Xsqlite3_memory_highwater // sqlite3.c:126324:3: - *(*func(*libc.TLS) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1032 /* .memory_used */)) = Xsqlite3_memory_used // sqlite3.c:126325:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1040 /* .mutex_alloc */)) = Xsqlite3_mutex_alloc // sqlite3.c:126333:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1048 /* .mutex_enter */)) = Xsqlite3_mutex_enter // sqlite3.c:126334:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1056 /* .mutex_free */)) = Xsqlite3_mutex_free // sqlite3.c:126335:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1064 /* .mutex_leave */)) = Xsqlite3_mutex_leave // sqlite3.c:126336:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1072 /* .mutex_try */)) = Xsqlite3_mutex_try // sqlite3.c:126337:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1080 /* .open_v2 */)) = Xsqlite3_open_v2 // sqlite3.c:126339:3: - *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1088 /* .release_memory */)) = Xsqlite3_release_memory // sqlite3.c:126340:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1096 /* .result_error_nomem */)) = Xsqlite3_result_error_nomem // sqlite3.c:126341:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1104 /* .result_error_toobig */)) = Xsqlite3_result_error_toobig // sqlite3.c:126342:3: - *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1112 /* .sleep */)) = Xsqlite3_sleep // sqlite3.c:126343:3: - *(*func(*libc.TLS, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1120 /* .soft_heap_limit */)) = Xsqlite3_soft_heap_limit // sqlite3.c:126344:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1128 /* .vfs_find */)) = Xsqlite3_vfs_find // sqlite3.c:126345:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1136 /* .vfs_register */)) = Xsqlite3_vfs_register // sqlite3.c:126346:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1144 /* .vfs_unregister */)) = Xsqlite3_vfs_unregister // sqlite3.c:126347:3: - *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1152 /* .xthreadsafe */)) = Xsqlite3_threadsafe // sqlite3.c:126352:3: - *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1160 /* .result_zeroblob */)) = Xsqlite3_result_zeroblob // sqlite3.c:126353:3: - *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1168 /* .result_error_code */)) = Xsqlite3_result_error_code // sqlite3.c:126354:3: - *(*func(*libc.TLS, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1176 /* .test_control */)) = Xsqlite3_test_control // sqlite3.c:126355:3: - *(*func(*libc.TLS, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1184 /* .randomness */)) = Xsqlite3_randomness // sqlite3.c:126356:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1192 /* .context_db_handle */)) = Xsqlite3_context_db_handle // sqlite3.c:126357:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1200 /* .extended_result_codes */)) = Xsqlite3_extended_result_codes // sqlite3.c:126362:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1208 /* .limit */)) = Xsqlite3_limit // sqlite3.c:126363:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1216 /* .next_stmt */)) = Xsqlite3_next_stmt // sqlite3.c:126364:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1224 /* .sql */)) = Xsqlite3_sql // sqlite3.c:126365:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1232 /* .status */)) = Xsqlite3_status // sqlite3.c:126366:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1240 /* .backup_finish */)) = Xsqlite3_backup_finish // sqlite3.c:126371:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1248 /* .backup_init */)) = Xsqlite3_backup_init // sqlite3.c:126372:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1256 /* .backup_pagecount */)) = Xsqlite3_backup_pagecount // sqlite3.c:126373:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1264 /* .backup_remaining */)) = Xsqlite3_backup_remaining // sqlite3.c:126374:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1272 /* .backup_step */)) = Xsqlite3_backup_step // sqlite3.c:126375:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1280 /* .compileoption_get */)) = Xsqlite3_compileoption_get // sqlite3.c:126377:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1288 /* .compileoption_used */)) = Xsqlite3_compileoption_used // sqlite3.c:126378:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1296 /* .create_function_v2 */)) = Xsqlite3_create_function_v2 // sqlite3.c:126383:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1304 /* .db_config */)) = Xsqlite3_db_config // sqlite3.c:126384:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1312 /* .db_mutex */)) = Xsqlite3_db_mutex // sqlite3.c:126385:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1320 /* .db_status */)) = Xsqlite3_db_status // sqlite3.c:126386:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1328 /* .extended_errcode */)) = Xsqlite3_extended_errcode // sqlite3.c:126387:3: - *(*func(*libc.TLS, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1336 /* .log */)) = Xsqlite3_log // sqlite3.c:126388:3: - *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1344 /* .soft_heap_limit64 */)) = Xsqlite3_soft_heap_limit64 // sqlite3.c:126389:3: - *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1352 /* .sourceid */)) = Xsqlite3_sourceid // sqlite3.c:126390:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1360 /* .stmt_status */)) = Xsqlite3_stmt_status // sqlite3.c:126391:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1368 /* .strnicmp */)) = Xsqlite3_strnicmp // sqlite3.c:126392:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1376 /* .unlock_notify */)) = Xsqlite3_unlock_notify // sqlite3.c:126394:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1384 /* .wal_autocheckpoint */)) = Xsqlite3_wal_autocheckpoint // sqlite3.c:126399:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1392 /* .wal_checkpoint */)) = Xsqlite3_wal_checkpoint // sqlite3.c:126400:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1400 /* .wal_hook */)) = Xsqlite3_wal_hook // sqlite3.c:126401:3: - *(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1408 /* .blob_reopen */)) = Xsqlite3_blob_reopen // sqlite3.c:126407:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1416 /* .vtab_config */)) = Xsqlite3_vtab_config // sqlite3.c:126408:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1424 /* .vtab_on_conflict */)) = Xsqlite3_vtab_on_conflict // sqlite3.c:126409:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1432 /* .close_v2 */)) = Xsqlite3_close_v2 // sqlite3.c:126410:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1440 /* .db_filename */)) = Xsqlite3_db_filename // sqlite3.c:126411:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1448 /* .db_readonly */)) = Xsqlite3_db_readonly // sqlite3.c:126412:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1456 /* .db_release_memory */)) = Xsqlite3_db_release_memory // sqlite3.c:126413:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1464 /* .errstr */)) = Xsqlite3_errstr // sqlite3.c:126414:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1472 /* .stmt_busy */)) = Xsqlite3_stmt_busy // sqlite3.c:126415:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1480 /* .stmt_readonly */)) = Xsqlite3_stmt_readonly // sqlite3.c:126416:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1488 /* .stricmp */)) = Xsqlite3_stricmp // sqlite3.c:126417:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1496 /* .uri_boolean */)) = Xsqlite3_uri_boolean // sqlite3.c:126418:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1504 /* .uri_int64 */)) = Xsqlite3_uri_int64 // sqlite3.c:126419:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1512 /* .uri_parameter */)) = Xsqlite3_uri_parameter // sqlite3.c:126420:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1520 /* .xvsnprintf */)) = Xsqlite3_vsnprintf // sqlite3.c:126421:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1528 /* .wal_checkpoint_v2 */)) = Xsqlite3_wal_checkpoint_v2 // sqlite3.c:126422:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1536 /* .auto_extension */)) = Xsqlite3_auto_extension // sqlite3.c:126424:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1544 /* .bind_blob64 */)) = Xsqlite3_bind_blob64 // sqlite3.c:126425:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr, uint8) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1552 /* .bind_text64 */)) = Xsqlite3_bind_text64 // sqlite3.c:126426:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1560 /* .cancel_auto_extension */)) = Xsqlite3_cancel_auto_extension // sqlite3.c:126427:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1568 /* .load_extension */)) = Xsqlite3_load_extension // sqlite3.c:126428:3: - *(*func(*libc.TLS, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1576 /* .malloc64 */)) = Xsqlite3_malloc64 // sqlite3.c:126429:3: - *(*func(*libc.TLS, uintptr) Sqlite3_uint64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1584 /* .msize */)) = Xsqlite3_msize // sqlite3.c:126430:3: - *(*func(*libc.TLS, uintptr, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1592 /* .realloc64 */)) = Xsqlite3_realloc64 // sqlite3.c:126431:3: - *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1600 /* .reset_auto_extension */)) = Xsqlite3_reset_auto_extension // sqlite3.c:126432:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1608 /* .result_blob64 */)) = Xsqlite3_result_blob64 // sqlite3.c:126433:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr, uint8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1616 /* .result_text64 */)) = Xsqlite3_result_text64 // sqlite3.c:126434:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1624 /* .strglob */)) = Xsqlite3_strglob // sqlite3.c:126435:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 0 /* .aggregate_context */)) = Xsqlite3_aggregate_context // sqlite3.c:126171:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 8 /* .aggregate_count */)) = Xsqlite3_aggregate_count // sqlite3.c:126173:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 16 /* .bind_blob */)) = Xsqlite3_bind_blob // sqlite3.c:126177:3: + *(*func(*libc.TLS, uintptr, int32, float64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 24 /* .bind_double */)) = Xsqlite3_bind_double // sqlite3.c:126178:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 32 /* .bind_int */)) = Xsqlite3_bind_int // sqlite3.c:126179:3: + *(*func(*libc.TLS, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 40 /* .bind_int64 */)) = Xsqlite3_bind_int64 // sqlite3.c:126180:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 48 /* .bind_null */)) = Xsqlite3_bind_null // sqlite3.c:126181:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 56 /* .bind_parameter_count */)) = Xsqlite3_bind_parameter_count // sqlite3.c:126182:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 64 /* .bind_parameter_index */)) = Xsqlite3_bind_parameter_index // sqlite3.c:126183:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 72 /* .bind_parameter_name */)) = Xsqlite3_bind_parameter_name // sqlite3.c:126184:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 80 /* .bind_text */)) = Xsqlite3_bind_text // sqlite3.c:126185:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 88 /* .bind_text16 */)) = Xsqlite3_bind_text16 // sqlite3.c:126186:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 96 /* .bind_value */)) = Xsqlite3_bind_value // sqlite3.c:126187:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 104 /* .busy_handler */)) = Xsqlite3_busy_handler // sqlite3.c:126188:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 112 /* .busy_timeout */)) = Xsqlite3_busy_timeout // sqlite3.c:126189:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 120 /* .changes */)) = Xsqlite3_changes // sqlite3.c:126190:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 128 /* .close */)) = Xsqlite3_close // sqlite3.c:126191:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 136 /* .collation_needed */)) = Xsqlite3_collation_needed // sqlite3.c:126192:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 144 /* .collation_needed16 */)) = Xsqlite3_collation_needed16 // sqlite3.c:126193:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 152 /* .column_blob */)) = Xsqlite3_column_blob // sqlite3.c:126194:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 160 /* .column_bytes */)) = Xsqlite3_column_bytes // sqlite3.c:126195:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 168 /* .column_bytes16 */)) = Xsqlite3_column_bytes16 // sqlite3.c:126196:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 176 /* .column_count */)) = Xsqlite3_column_count // sqlite3.c:126197:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 184 /* .column_database_name */)) = Xsqlite3_column_database_name // sqlite3.c:126198:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 192 /* .column_database_name16 */)) = Xsqlite3_column_database_name16 // sqlite3.c:126199:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 200 /* .column_decltype */)) = Xsqlite3_column_decltype // sqlite3.c:126200:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 208 /* .column_decltype16 */)) = Xsqlite3_column_decltype16 // sqlite3.c:126201:3: + *(*func(*libc.TLS, uintptr, int32) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 216 /* .column_double */)) = Xsqlite3_column_double // sqlite3.c:126202:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 224 /* .column_int */)) = Xsqlite3_column_int // sqlite3.c:126203:3: + *(*func(*libc.TLS, uintptr, int32) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 232 /* .column_int64 */)) = Xsqlite3_column_int64 // sqlite3.c:126204:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 240 /* .column_name */)) = Xsqlite3_column_name // sqlite3.c:126205:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 248 /* .column_name16 */)) = Xsqlite3_column_name16 // sqlite3.c:126206:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 256 /* .column_origin_name */)) = Xsqlite3_column_origin_name // sqlite3.c:126207:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 264 /* .column_origin_name16 */)) = Xsqlite3_column_origin_name16 // sqlite3.c:126208:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 272 /* .column_table_name */)) = Xsqlite3_column_table_name // sqlite3.c:126209:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 280 /* .column_table_name16 */)) = Xsqlite3_column_table_name16 // sqlite3.c:126210:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 288 /* .column_text */)) = Xsqlite3_column_text // sqlite3.c:126211:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 296 /* .column_text16 */)) = Xsqlite3_column_text16 // sqlite3.c:126212:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 304 /* .column_type */)) = Xsqlite3_column_type // sqlite3.c:126213:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 312 /* .column_value */)) = Xsqlite3_column_value // sqlite3.c:126214:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 320 /* .commit_hook */)) = Xsqlite3_commit_hook // sqlite3.c:126215:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 328 /* .complete */)) = Xsqlite3_complete // sqlite3.c:126216:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 336 /* .complete16 */)) = Xsqlite3_complete16 // sqlite3.c:126217:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 344 /* .create_collation */)) = Xsqlite3_create_collation // sqlite3.c:126218:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 352 /* .create_collation16 */)) = Xsqlite3_create_collation16 // sqlite3.c:126219:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 360 /* .create_function */)) = Xsqlite3_create_function // sqlite3.c:126220:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 368 /* .create_function16 */)) = Xsqlite3_create_function16 // sqlite3.c:126221:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 376 /* .create_module */)) = Xsqlite3_create_module // sqlite3.c:126222:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 384 /* .data_count */)) = Xsqlite3_data_count // sqlite3.c:126223:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 392 /* .db_handle */)) = Xsqlite3_db_handle // sqlite3.c:126224:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 400 /* .declare_vtab */)) = Xsqlite3_declare_vtab // sqlite3.c:126225:3: + *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 408 /* .enable_shared_cache */)) = Xsqlite3_enable_shared_cache // sqlite3.c:126226:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 416 /* .errcode */)) = Xsqlite3_errcode // sqlite3.c:126227:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 424 /* .errmsg */)) = Xsqlite3_errmsg // sqlite3.c:126228:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 432 /* .errmsg16 */)) = Xsqlite3_errmsg16 // sqlite3.c:126229:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_callback, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 440 /* .exec */)) = Xsqlite3_exec // sqlite3.c:126230:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 448 /* .expired */)) = Xsqlite3_expired // sqlite3.c:126232:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 456 /* .finalize */)) = Xsqlite3_finalize // sqlite3.c:126236:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 464 /* .free */)) = Xsqlite3_free // sqlite3.c:126237:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 472 /* .free_table */)) = Xsqlite3_free_table // sqlite3.c:126238:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 480 /* .get_autocommit */)) = Xsqlite3_get_autocommit // sqlite3.c:126239:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 488 /* .get_auxdata */)) = Xsqlite3_get_auxdata // sqlite3.c:126240:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 496 /* .get_table */)) = Xsqlite3_get_table // sqlite3.c:126241:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 512 /* .interruptx */)) = Xsqlite3_interrupt // sqlite3.c:126243:3: + *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 520 /* .last_insert_rowid */)) = Xsqlite3_last_insert_rowid // sqlite3.c:126244:3: + *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 528 /* .libversion */)) = Xsqlite3_libversion // sqlite3.c:126245:3: + *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 536 /* .libversion_number */)) = Xsqlite3_libversion_number // sqlite3.c:126246:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 544 /* .malloc */)) = Xsqlite3_malloc // sqlite3.c:126247:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 552 /* .mprintf */)) = Xsqlite3_mprintf // sqlite3.c:126248:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 560 /* .open */)) = Xsqlite3_open // sqlite3.c:126249:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 568 /* .open16 */)) = Xsqlite3_open16 // sqlite3.c:126250:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 576 /* .prepare */)) = Xsqlite3_prepare // sqlite3.c:126251:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 584 /* .prepare16 */)) = Xsqlite3_prepare16 // sqlite3.c:126252:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 592 /* .profile */)) = Xsqlite3_profile // sqlite3.c:126253:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 600 /* .progress_handler */)) = Xsqlite3_progress_handler // sqlite3.c:126254:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 608 /* .realloc */)) = Xsqlite3_realloc // sqlite3.c:126255:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 616 /* .reset */)) = Xsqlite3_reset // sqlite3.c:126256:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 624 /* .result_blob */)) = Xsqlite3_result_blob // sqlite3.c:126257:3: + *(*func(*libc.TLS, uintptr, float64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 632 /* .result_double */)) = Xsqlite3_result_double // sqlite3.c:126258:3: + *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 640 /* .result_error */)) = Xsqlite3_result_error // sqlite3.c:126259:3: + *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 648 /* .result_error16 */)) = Xsqlite3_result_error16 // sqlite3.c:126260:3: + *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 656 /* .result_int */)) = Xsqlite3_result_int // sqlite3.c:126261:3: + *(*func(*libc.TLS, uintptr, I64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 664 /* .result_int64 */)) = Xsqlite3_result_int64 // sqlite3.c:126262:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 672 /* .result_null */)) = Xsqlite3_result_null // sqlite3.c:126263:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 680 /* .result_text */)) = Xsqlite3_result_text // sqlite3.c:126264:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 688 /* .result_text16 */)) = Xsqlite3_result_text16 // sqlite3.c:126265:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 696 /* .result_text16be */)) = Xsqlite3_result_text16be // sqlite3.c:126266:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 704 /* .result_text16le */)) = Xsqlite3_result_text16le // sqlite3.c:126267:3: + *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 712 /* .result_value */)) = Xsqlite3_result_value // sqlite3.c:126268:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 720 /* .rollback_hook */)) = Xsqlite3_rollback_hook // sqlite3.c:126269:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 728 /* .set_authorizer */)) = Xsqlite3_set_authorizer // sqlite3.c:126270:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 736 /* .set_auxdata */)) = Xsqlite3_set_auxdata // sqlite3.c:126271:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 744 /* .xsnprintf */)) = Xsqlite3_snprintf // sqlite3.c:126272:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 752 /* .step */)) = Xsqlite3_step // sqlite3.c:126273:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 760 /* .table_column_metadata */)) = Xsqlite3_table_column_metadata // sqlite3.c:126274:3: + *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 768 /* .thread_cleanup */)) = Xsqlite3_thread_cleanup // sqlite3.c:126276:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 776 /* .total_changes */)) = Xsqlite3_total_changes // sqlite3.c:126280:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 784 /* .trace */)) = Xsqlite3_trace // sqlite3.c:126281:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 792 /* .transfer_bindings */)) = Xsqlite3_transfer_bindings // sqlite3.c:126283:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 800 /* .update_hook */)) = Xsqlite3_update_hook // sqlite3.c:126287:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 808 /* .user_data */)) = Xsqlite3_user_data // sqlite3.c:126288:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 816 /* .value_blob */)) = Xsqlite3_value_blob // sqlite3.c:126289:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 824 /* .value_bytes */)) = Xsqlite3_value_bytes // sqlite3.c:126290:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 832 /* .value_bytes16 */)) = Xsqlite3_value_bytes16 // sqlite3.c:126291:3: + *(*func(*libc.TLS, uintptr) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 840 /* .value_double */)) = Xsqlite3_value_double // sqlite3.c:126292:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 848 /* .value_int */)) = Xsqlite3_value_int // sqlite3.c:126293:3: + *(*func(*libc.TLS, uintptr) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 856 /* .value_int64 */)) = Xsqlite3_value_int64 // sqlite3.c:126294:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 864 /* .value_numeric_type */)) = Xsqlite3_value_numeric_type // sqlite3.c:126295:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 872 /* .value_text */)) = Xsqlite3_value_text // sqlite3.c:126296:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 880 /* .value_text16 */)) = Xsqlite3_value_text16 // sqlite3.c:126297:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 888 /* .value_text16be */)) = Xsqlite3_value_text16be // sqlite3.c:126298:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 896 /* .value_text16le */)) = Xsqlite3_value_text16le // sqlite3.c:126299:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 904 /* .value_type */)) = Xsqlite3_value_type // sqlite3.c:126300:3: + *(*func(*libc.TLS, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 912 /* .vmprintf */)) = Xsqlite3_vmprintf // sqlite3.c:126301:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 920 /* .overload_function */)) = Xsqlite3_overload_function // sqlite3.c:126310:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 928 /* .prepare_v2 */)) = Xsqlite3_prepare_v2 // sqlite3.c:126315:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 936 /* .prepare16_v2 */)) = Xsqlite3_prepare16_v2 // sqlite3.c:126316:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 944 /* .clear_bindings */)) = Xsqlite3_clear_bindings // sqlite3.c:126317:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 952 /* .create_module_v2 */)) = Xsqlite3_create_module_v2 // sqlite3.c:126322:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 960 /* .bind_zeroblob */)) = Xsqlite3_bind_zeroblob // sqlite3.c:126327:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 968 /* .blob_bytes */)) = Xsqlite3_blob_bytes // sqlite3.c:126328:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 976 /* .blob_close */)) = Xsqlite3_blob_close // sqlite3.c:126329:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, Sqlite_int64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 984 /* .blob_open */)) = Xsqlite3_blob_open // sqlite3.c:126330:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 992 /* .blob_read */)) = Xsqlite3_blob_read // sqlite3.c:126331:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1000 /* .blob_write */)) = Xsqlite3_blob_write // sqlite3.c:126332:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1008 /* .create_collation_v2 */)) = Xsqlite3_create_collation_v2 // sqlite3.c:126333:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1016 /* .file_control */)) = Xsqlite3_file_control // sqlite3.c:126334:3: + *(*func(*libc.TLS, int32) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1024 /* .memory_highwater */)) = Xsqlite3_memory_highwater // sqlite3.c:126335:3: + *(*func(*libc.TLS) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1032 /* .memory_used */)) = Xsqlite3_memory_used // sqlite3.c:126336:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1040 /* .mutex_alloc */)) = Xsqlite3_mutex_alloc // sqlite3.c:126344:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1048 /* .mutex_enter */)) = Xsqlite3_mutex_enter // sqlite3.c:126345:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1056 /* .mutex_free */)) = Xsqlite3_mutex_free // sqlite3.c:126346:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1064 /* .mutex_leave */)) = Xsqlite3_mutex_leave // sqlite3.c:126347:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1072 /* .mutex_try */)) = Xsqlite3_mutex_try // sqlite3.c:126348:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1080 /* .open_v2 */)) = Xsqlite3_open_v2 // sqlite3.c:126350:3: + *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1088 /* .release_memory */)) = Xsqlite3_release_memory // sqlite3.c:126351:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1096 /* .result_error_nomem */)) = Xsqlite3_result_error_nomem // sqlite3.c:126352:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1104 /* .result_error_toobig */)) = Xsqlite3_result_error_toobig // sqlite3.c:126353:3: + *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1112 /* .sleep */)) = Xsqlite3_sleep // sqlite3.c:126354:3: + *(*func(*libc.TLS, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1120 /* .soft_heap_limit */)) = Xsqlite3_soft_heap_limit // sqlite3.c:126355:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1128 /* .vfs_find */)) = Xsqlite3_vfs_find // sqlite3.c:126356:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1136 /* .vfs_register */)) = Xsqlite3_vfs_register // sqlite3.c:126357:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1144 /* .vfs_unregister */)) = Xsqlite3_vfs_unregister // sqlite3.c:126358:3: + *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1152 /* .xthreadsafe */)) = Xsqlite3_threadsafe // sqlite3.c:126363:3: + *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1160 /* .result_zeroblob */)) = Xsqlite3_result_zeroblob // sqlite3.c:126364:3: + *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1168 /* .result_error_code */)) = Xsqlite3_result_error_code // sqlite3.c:126365:3: + *(*func(*libc.TLS, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1176 /* .test_control */)) = Xsqlite3_test_control // sqlite3.c:126366:3: + *(*func(*libc.TLS, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1184 /* .randomness */)) = Xsqlite3_randomness // sqlite3.c:126367:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1192 /* .context_db_handle */)) = Xsqlite3_context_db_handle // sqlite3.c:126368:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1200 /* .extended_result_codes */)) = Xsqlite3_extended_result_codes // sqlite3.c:126373:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1208 /* .limit */)) = Xsqlite3_limit // sqlite3.c:126374:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1216 /* .next_stmt */)) = Xsqlite3_next_stmt // sqlite3.c:126375:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1224 /* .sql */)) = Xsqlite3_sql // sqlite3.c:126376:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1232 /* .status */)) = Xsqlite3_status // sqlite3.c:126377:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1240 /* .backup_finish */)) = Xsqlite3_backup_finish // sqlite3.c:126382:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1248 /* .backup_init */)) = Xsqlite3_backup_init // sqlite3.c:126383:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1256 /* .backup_pagecount */)) = Xsqlite3_backup_pagecount // sqlite3.c:126384:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1264 /* .backup_remaining */)) = Xsqlite3_backup_remaining // sqlite3.c:126385:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1272 /* .backup_step */)) = Xsqlite3_backup_step // sqlite3.c:126386:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1280 /* .compileoption_get */)) = Xsqlite3_compileoption_get // sqlite3.c:126388:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1288 /* .compileoption_used */)) = Xsqlite3_compileoption_used // sqlite3.c:126389:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1296 /* .create_function_v2 */)) = Xsqlite3_create_function_v2 // sqlite3.c:126394:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1304 /* .db_config */)) = Xsqlite3_db_config // sqlite3.c:126395:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1312 /* .db_mutex */)) = Xsqlite3_db_mutex // sqlite3.c:126396:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1320 /* .db_status */)) = Xsqlite3_db_status // sqlite3.c:126397:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1328 /* .extended_errcode */)) = Xsqlite3_extended_errcode // sqlite3.c:126398:3: + *(*func(*libc.TLS, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1336 /* .log */)) = Xsqlite3_log // sqlite3.c:126399:3: + *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1344 /* .soft_heap_limit64 */)) = Xsqlite3_soft_heap_limit64 // sqlite3.c:126400:3: + *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1352 /* .sourceid */)) = Xsqlite3_sourceid // sqlite3.c:126401:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1360 /* .stmt_status */)) = Xsqlite3_stmt_status // sqlite3.c:126402:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1368 /* .strnicmp */)) = Xsqlite3_strnicmp // sqlite3.c:126403:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1376 /* .unlock_notify */)) = Xsqlite3_unlock_notify // sqlite3.c:126405:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1384 /* .wal_autocheckpoint */)) = Xsqlite3_wal_autocheckpoint // sqlite3.c:126410:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1392 /* .wal_checkpoint */)) = Xsqlite3_wal_checkpoint // sqlite3.c:126411:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1400 /* .wal_hook */)) = Xsqlite3_wal_hook // sqlite3.c:126412:3: + *(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1408 /* .blob_reopen */)) = Xsqlite3_blob_reopen // sqlite3.c:126418:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1416 /* .vtab_config */)) = Xsqlite3_vtab_config // sqlite3.c:126419:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1424 /* .vtab_on_conflict */)) = Xsqlite3_vtab_on_conflict // sqlite3.c:126420:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1432 /* .close_v2 */)) = Xsqlite3_close_v2 // sqlite3.c:126421:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1440 /* .db_filename */)) = Xsqlite3_db_filename // sqlite3.c:126422:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1448 /* .db_readonly */)) = Xsqlite3_db_readonly // sqlite3.c:126423:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1456 /* .db_release_memory */)) = Xsqlite3_db_release_memory // sqlite3.c:126424:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1464 /* .errstr */)) = Xsqlite3_errstr // sqlite3.c:126425:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1472 /* .stmt_busy */)) = Xsqlite3_stmt_busy // sqlite3.c:126426:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1480 /* .stmt_readonly */)) = Xsqlite3_stmt_readonly // sqlite3.c:126427:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1488 /* .stricmp */)) = Xsqlite3_stricmp // sqlite3.c:126428:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1496 /* .uri_boolean */)) = Xsqlite3_uri_boolean // sqlite3.c:126429:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1504 /* .uri_int64 */)) = Xsqlite3_uri_int64 // sqlite3.c:126430:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1512 /* .uri_parameter */)) = Xsqlite3_uri_parameter // sqlite3.c:126431:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1520 /* .xvsnprintf */)) = Xsqlite3_vsnprintf // sqlite3.c:126432:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1528 /* .wal_checkpoint_v2 */)) = Xsqlite3_wal_checkpoint_v2 // sqlite3.c:126433:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1536 /* .auto_extension */)) = Xsqlite3_auto_extension // sqlite3.c:126435:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1544 /* .bind_blob64 */)) = Xsqlite3_bind_blob64 // sqlite3.c:126436:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr, uint8) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1552 /* .bind_text64 */)) = Xsqlite3_bind_text64 // sqlite3.c:126437:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1560 /* .cancel_auto_extension */)) = Xsqlite3_cancel_auto_extension // sqlite3.c:126438:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1568 /* .load_extension */)) = Xsqlite3_load_extension // sqlite3.c:126439:3: + *(*func(*libc.TLS, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1576 /* .malloc64 */)) = Xsqlite3_malloc64 // sqlite3.c:126440:3: + *(*func(*libc.TLS, uintptr) Sqlite3_uint64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1584 /* .msize */)) = Xsqlite3_msize // sqlite3.c:126441:3: + *(*func(*libc.TLS, uintptr, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1592 /* .realloc64 */)) = Xsqlite3_realloc64 // sqlite3.c:126442:3: + *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1600 /* .reset_auto_extension */)) = Xsqlite3_reset_auto_extension // sqlite3.c:126443:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1608 /* .result_blob64 */)) = Xsqlite3_result_blob64 // sqlite3.c:126444:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr, uint8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1616 /* .result_text64 */)) = Xsqlite3_result_text64 // sqlite3.c:126445:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1624 /* .strglob */)) = Xsqlite3_strglob // sqlite3.c:126446:3: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1632 /* .value_dup */)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr) uintptr - }{Xsqlite3_value_dup})) // sqlite3.c:126437:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1640 /* .value_free */)) = Xsqlite3_value_free // sqlite3.c:126438:3: - *(*func(*libc.TLS, uintptr, U64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1648 /* .result_zeroblob64 */)) = Xsqlite3_result_zeroblob64 // sqlite3.c:126439:3: - *(*func(*libc.TLS, uintptr, int32, Sqlite3_uint64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1656 /* .bind_zeroblob64 */)) = Xsqlite3_bind_zeroblob64 // sqlite3.c:126440:3: - *(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1664 /* .value_subtype */)) = Xsqlite3_value_subtype // sqlite3.c:126442:3: - *(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1672 /* .result_subtype */)) = Xsqlite3_result_subtype // sqlite3.c:126443:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1680 /* .status64 */)) = Xsqlite3_status64 // sqlite3.c:126445:3: - *(*func(*libc.TLS, uintptr, uintptr, uint32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1688 /* .strlike */)) = Xsqlite3_strlike // sqlite3.c:126446:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1696 /* .db_cacheflush */)) = Xsqlite3_db_cacheflush // sqlite3.c:126447:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1704 /* .system_errno */)) = Xsqlite3_system_errno // sqlite3.c:126449:3: - *(*func(*libc.TLS, uintptr, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1712 /* .trace_v2 */)) = Xsqlite3_trace_v2 // sqlite3.c:126451:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1720 /* .expanded_sql */)) = Xsqlite3_expanded_sql // sqlite3.c:126452:3: - *(*func(*libc.TLS, uintptr, Sqlite3_int64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1728 /* .set_last_insert_rowid */)) = Xsqlite3_set_last_insert_rowid // sqlite3.c:126454:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1736 /* .prepare_v3 */)) = Xsqlite3_prepare_v3 // sqlite3.c:126456:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1744 /* .prepare16_v3 */)) = Xsqlite3_prepare16_v3 // sqlite3.c:126457:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1752 /* .bind_pointer */)) = Xsqlite3_bind_pointer // sqlite3.c:126458:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1760 /* .result_pointer */)) = Xsqlite3_result_pointer // sqlite3.c:126459:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1768 /* .value_pointer */)) = Xsqlite3_value_pointer // sqlite3.c:126460:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1776 /* .vtab_nochange */)) = Xsqlite3_vtab_nochange // sqlite3.c:126462:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1784 /* .value_nochange */)) = Xsqlite3_value_nochange // sqlite3.c:126463:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1792 /* .vtab_collation */)) = Xsqlite3_vtab_collation // sqlite3.c:126464:3: - *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1800 /* .keyword_count */)) = Xsqlite3_keyword_count // sqlite3.c:126466:3: - *(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1808 /* .keyword_name */)) = Xsqlite3_keyword_name // sqlite3.c:126467:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1816 /* .keyword_check */)) = Xsqlite3_keyword_check // sqlite3.c:126468:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1824 /* .str_new */)) = Xsqlite3_str_new // sqlite3.c:126469:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1832 /* .str_finish */)) = Xsqlite3_str_finish // sqlite3.c:126470:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1840 /* .str_appendf */)) = Xsqlite3_str_appendf // sqlite3.c:126471:3: - *(*func(*libc.TLS, uintptr, uintptr, Va_list))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1848 /* .str_vappendf */)) = Xsqlite3_str_vappendf // sqlite3.c:126472:3: - *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1856 /* .str_append */)) = Xsqlite3_str_append // sqlite3.c:126473:3: - *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1864 /* .str_appendall */)) = Xsqlite3_str_appendall // sqlite3.c:126474:3: - *(*func(*libc.TLS, uintptr, int32, int8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1872 /* .str_appendchar */)) = Xsqlite3_str_appendchar // sqlite3.c:126475:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1880 /* .str_reset */)) = Xsqlite3_str_reset // sqlite3.c:126476:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1888 /* .str_errcode */)) = Xsqlite3_str_errcode // sqlite3.c:126477:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1896 /* .str_length */)) = Xsqlite3_str_length // sqlite3.c:126478:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1904 /* .str_value */)) = Xsqlite3_str_value // sqlite3.c:126479:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1912 /* .create_window_function */)) = Xsqlite3_create_window_function // sqlite3.c:126481:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1928 /* .stmt_isexplain */)) = Xsqlite3_stmt_isexplain // sqlite3.c:126489:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1936 /* .value_frombind */)) = Xsqlite3_value_frombind // sqlite3.c:126490:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1944 /* .drop_modules */)) = Xsqlite3_drop_modules // sqlite3.c:126493:3: - *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1952 /* .hard_heap_limit64 */)) = Xsqlite3_hard_heap_limit64 // sqlite3.c:126498:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1960 /* .uri_key */)) = Xsqlite3_uri_key // sqlite3.c:126499:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1968 /* .filename_database */)) = Xsqlite3_filename_database // sqlite3.c:126500:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1976 /* .filename_journal */)) = Xsqlite3_filename_journal // sqlite3.c:126501:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1984 /* .filename_wal */)) = Xsqlite3_filename_wal // sqlite3.c:126502:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1992 /* .create_filename */)) = Xsqlite3_create_filename // sqlite3.c:126504:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2000 /* .free_filename */)) = Xsqlite3_free_filename // sqlite3.c:126505:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2008 /* .database_file_object */)) = Xsqlite3_database_file_object // sqlite3.c:126506:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2016 /* .txn_state */)) = Xsqlite3_txn_state // sqlite3.c:126508:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 0)) = Xsqlite3Fts5Init // sqlite3.c:164116:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 8)) = Xsqlite3RtreeInit // sqlite3.c:164122:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 16)) = sqlite3TestExtInit // sqlite3.c:164130:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 24)) = Xsqlite3Json1Init // sqlite3.c:164132:3: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statGetFuncdef)) + 24 /* .xSFunc */)) = statGet // sqlite3.c:109690:3: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statInitFuncdef)) + 24 /* .xSFunc */)) = statInit // sqlite3.c:109248:3: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statPushFuncdef)) + 24 /* .xSFunc */)) = statPush // sqlite3.c:109538:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 40 /* .xOpen */)) = rbuVfsOpen // sqlite3.c:204201:5: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 48 /* .xDelete */)) = rbuVfsDelete // sqlite3.c:204202:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 56 /* .xAccess */)) = rbuVfsAccess // sqlite3.c:204203:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 64 /* .xFullPathname */)) = rbuVfsFullPathname // sqlite3.c:204204:5: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 72 /* .xDlOpen */)) = rbuVfsDlOpen // sqlite3.c:204207:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 80 /* .xDlError */)) = rbuVfsDlError // sqlite3.c:204208:5: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 88 /* .xDlSym */)) = rbuVfsDlSym // sqlite3.c:204209:5: - *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 96 /* .xDlClose */)) = rbuVfsDlClose // sqlite3.c:204210:5: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 104 /* .xRandomness */)) = rbuVfsRandomness // sqlite3.c:204215:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 112 /* .xSleep */)) = rbuVfsSleep // sqlite3.c:204216:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 120 /* .xCurrentTime */)) = rbuVfsCurrentTime // sqlite3.c:204217:5: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 128 /* .xGetLastError */)) = rbuVfsGetLastError // sqlite3.c:204218:5: + }{Xsqlite3_value_dup})) // sqlite3.c:126448:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1640 /* .value_free */)) = Xsqlite3_value_free // sqlite3.c:126449:3: + *(*func(*libc.TLS, uintptr, U64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1648 /* .result_zeroblob64 */)) = Xsqlite3_result_zeroblob64 // sqlite3.c:126450:3: + *(*func(*libc.TLS, uintptr, int32, Sqlite3_uint64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1656 /* .bind_zeroblob64 */)) = Xsqlite3_bind_zeroblob64 // sqlite3.c:126451:3: + *(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1664 /* .value_subtype */)) = Xsqlite3_value_subtype // sqlite3.c:126453:3: + *(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1672 /* .result_subtype */)) = Xsqlite3_result_subtype // sqlite3.c:126454:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1680 /* .status64 */)) = Xsqlite3_status64 // sqlite3.c:126456:3: + *(*func(*libc.TLS, uintptr, uintptr, uint32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1688 /* .strlike */)) = Xsqlite3_strlike // sqlite3.c:126457:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1696 /* .db_cacheflush */)) = Xsqlite3_db_cacheflush // sqlite3.c:126458:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1704 /* .system_errno */)) = Xsqlite3_system_errno // sqlite3.c:126460:3: + *(*func(*libc.TLS, uintptr, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1712 /* .trace_v2 */)) = Xsqlite3_trace_v2 // sqlite3.c:126462:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1720 /* .expanded_sql */)) = Xsqlite3_expanded_sql // sqlite3.c:126463:3: + *(*func(*libc.TLS, uintptr, Sqlite3_int64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1728 /* .set_last_insert_rowid */)) = Xsqlite3_set_last_insert_rowid // sqlite3.c:126465:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1736 /* .prepare_v3 */)) = Xsqlite3_prepare_v3 // sqlite3.c:126467:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1744 /* .prepare16_v3 */)) = Xsqlite3_prepare16_v3 // sqlite3.c:126468:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1752 /* .bind_pointer */)) = Xsqlite3_bind_pointer // sqlite3.c:126469:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1760 /* .result_pointer */)) = Xsqlite3_result_pointer // sqlite3.c:126470:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1768 /* .value_pointer */)) = Xsqlite3_value_pointer // sqlite3.c:126471:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1776 /* .vtab_nochange */)) = Xsqlite3_vtab_nochange // sqlite3.c:126473:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1784 /* .value_nochange */)) = Xsqlite3_value_nochange // sqlite3.c:126474:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1792 /* .vtab_collation */)) = Xsqlite3_vtab_collation // sqlite3.c:126475:3: + *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1800 /* .keyword_count */)) = Xsqlite3_keyword_count // sqlite3.c:126477:3: + *(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1808 /* .keyword_name */)) = Xsqlite3_keyword_name // sqlite3.c:126478:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1816 /* .keyword_check */)) = Xsqlite3_keyword_check // sqlite3.c:126479:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1824 /* .str_new */)) = Xsqlite3_str_new // sqlite3.c:126480:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1832 /* .str_finish */)) = Xsqlite3_str_finish // sqlite3.c:126481:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1840 /* .str_appendf */)) = Xsqlite3_str_appendf // sqlite3.c:126482:3: + *(*func(*libc.TLS, uintptr, uintptr, Va_list))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1848 /* .str_vappendf */)) = Xsqlite3_str_vappendf // sqlite3.c:126483:3: + *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1856 /* .str_append */)) = Xsqlite3_str_append // sqlite3.c:126484:3: + *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1864 /* .str_appendall */)) = Xsqlite3_str_appendall // sqlite3.c:126485:3: + *(*func(*libc.TLS, uintptr, int32, int8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1872 /* .str_appendchar */)) = Xsqlite3_str_appendchar // sqlite3.c:126486:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1880 /* .str_reset */)) = Xsqlite3_str_reset // sqlite3.c:126487:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1888 /* .str_errcode */)) = Xsqlite3_str_errcode // sqlite3.c:126488:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1896 /* .str_length */)) = Xsqlite3_str_length // sqlite3.c:126489:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1904 /* .str_value */)) = Xsqlite3_str_value // sqlite3.c:126490:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1912 /* .create_window_function */)) = Xsqlite3_create_window_function // sqlite3.c:126492:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1928 /* .stmt_isexplain */)) = Xsqlite3_stmt_isexplain // sqlite3.c:126500:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1936 /* .value_frombind */)) = Xsqlite3_value_frombind // sqlite3.c:126501:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1944 /* .drop_modules */)) = Xsqlite3_drop_modules // sqlite3.c:126504:3: + *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1952 /* .hard_heap_limit64 */)) = Xsqlite3_hard_heap_limit64 // sqlite3.c:126509:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1960 /* .uri_key */)) = Xsqlite3_uri_key // sqlite3.c:126510:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1968 /* .filename_database */)) = Xsqlite3_filename_database // sqlite3.c:126511:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1976 /* .filename_journal */)) = Xsqlite3_filename_journal // sqlite3.c:126512:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1984 /* .filename_wal */)) = Xsqlite3_filename_wal // sqlite3.c:126513:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1992 /* .create_filename */)) = Xsqlite3_create_filename // sqlite3.c:126515:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2000 /* .free_filename */)) = Xsqlite3_free_filename // sqlite3.c:126516:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2008 /* .database_file_object */)) = Xsqlite3_database_file_object // sqlite3.c:126517:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2016 /* .txn_state */)) = Xsqlite3_txn_state // sqlite3.c:126519:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 0)) = Xsqlite3Fts5Init // sqlite3.c:164128:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 8)) = Xsqlite3RtreeInit // sqlite3.c:164134:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 16)) = sqlite3TestExtInit // sqlite3.c:164142:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 24)) = Xsqlite3Json1Init // sqlite3.c:164144:3: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statGetFuncdef)) + 24 /* .xSFunc */)) = statGet // sqlite3.c:109701:3: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statInitFuncdef)) + 24 /* .xSFunc */)) = statInit // sqlite3.c:109259:3: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statPushFuncdef)) + 24 /* .xSFunc */)) = statPush // sqlite3.c:109549:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 40 /* .xOpen */)) = rbuVfsOpen // sqlite3.c:204213:5: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 48 /* .xDelete */)) = rbuVfsDelete // sqlite3.c:204214:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 56 /* .xAccess */)) = rbuVfsAccess // sqlite3.c:204215:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 64 /* .xFullPathname */)) = rbuVfsFullPathname // sqlite3.c:204216:5: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 72 /* .xDlOpen */)) = rbuVfsDlOpen // sqlite3.c:204219:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 80 /* .xDlError */)) = rbuVfsDlError // sqlite3.c:204220:5: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 88 /* .xDlSym */)) = rbuVfsDlSym // sqlite3.c:204221:5: + *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 96 /* .xDlClose */)) = rbuVfsDlClose // sqlite3.c:204222:5: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 104 /* .xRandomness */)) = rbuVfsRandomness // sqlite3.c:204227:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 112 /* .xSleep */)) = rbuVfsSleep // sqlite3.c:204228:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 120 /* .xCurrentTime */)) = rbuVfsCurrentTime // sqlite3.c:204229:5: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 128 /* .xGetLastError */)) = rbuVfsGetLastError // sqlite3.c:204230:5: } -var ts1 = "COMPILER=gcc-10.2.1 20201220\x00ENABLE_COLUMN_METADATA\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00THREADSAFE=1\x003.35.4\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00thstndrd\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00AutoCommit\x00Transaction\x00SorterNext\x00Prev\x00Next\x00Checkpoint\x00JournalMode\x00Vacuum\x00VFilter\x00VUpdate\x00Goto\x00Gosub\x00InitCoroutine\x00Yield\x00MustBeInt\x00Jump\x00Once\x00If\x00Not\x00IfNot\x00IfNullRow\x00SeekLT\x00SeekLE\x00SeekGE\x00SeekGT\x00IfNotOpen\x00IfNoHope\x00NoConflict\x00NotFound\x00Found\x00SeekRowid\x00NotExists\x00Last\x00IfSmaller\x00SorterSort\x00Sort\x00Rewind\x00IdxLE\x00IdxGT\x00IdxLT\x00IdxGE\x00RowSetRead\x00Or\x00And\x00RowSetTest\x00Program\x00FkIfZero\x00IfPos\x00IfNotZero\x00IsNull\x00NotNull\x00Ne\x00Eq\x00Gt\x00Le\x00Lt\x00Ge\x00ElseNotEq\x00DecrJumpZero\x00IncrVacuum\x00VNext\x00Init\x00PureFunc\x00Function\x00Return\x00EndCoroutine\x00HaltIfNull\x00Halt\x00Integer\x00Int64\x00String\x00Null\x00SoftNull\x00Blob\x00Variable\x00Move\x00Copy\x00SCopy\x00IntCopy\x00ChngCntRow\x00ResultRow\x00CollSeq\x00AddImm\x00RealAffinity\x00Cast\x00Permutation\x00Compare\x00IsTrue\x00Offset\x00Column\x00Affinity\x00MakeRecord\x00Count\x00ReadCookie\x00SetCookie\x00ReopenIdx\x00OpenRead\x00OpenWrite\x00OpenDup\x00OpenAutoindex\x00OpenEphemeral\x00BitAnd\x00BitOr\x00ShiftLeft\x00ShiftRight\x00Add\x00Subtract\x00Multiply\x00Divide\x00Remainder\x00Concat\x00SorterOpen\x00BitNot\x00SequenceTest\x00OpenPseudo\x00String8\x00Close\x00ColumnsUsed\x00SeekScan\x00SeekHit\x00Sequence\x00NewRowid\x00Insert\x00RowCell\x00Delete\x00ResetCount\x00SorterCompare\x00SorterData\x00RowData\x00Rowid\x00NullRow\x00SeekEnd\x00IdxInsert\x00SorterInsert\x00IdxDelete\x00DeferredSeek\x00IdxRowid\x00FinishSeek\x00Destroy\x00Clear\x00ResetSorter\x00CreateBtree\x00SqlExec\x00ParseSchema\x00LoadAnalysis\x00DropTable\x00DropIndex\x00DropTrigger\x00IntegrityCk\x00RowSetAdd\x00Param\x00Real\x00FkCounter\x00MemMax\x00OffsetLimit\x00AggInverse\x00AggStep\x00AggStep1\x00AggValue\x00AggFinal\x00Expire\x00CursorLock\x00CursorUnlock\x00TableLock\x00VBegin\x00VCreate\x00VDestroy\x00VOpen\x00VColumn\x00VRename\x00Pagecount\x00MaxPgcnt\x00Trace\x00CursorHint\x00ReleaseReg\x00Noop\x00Explain\x00Abortable\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00os_unix.c:%d: (%d) %s(%s) - %s\x00S\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00%s\x00full_fsync\x00%s-shm\x00readonly_shm\x00nfs\x00hfs\x00ufs\x00afpfs\x00smbfs\x00webdav\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00msdos\x00exfat\x00SQLITE_FORCE_PROXY_LOCKING\x00:auto:\x00fsync\x00/dev/urandom\x00sqliteplocks\x00/\x00dummy\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00break\x00path error (len %d)\x00read error (len %d)\x00create failed (%d)\x00write failed (%d)\x00rename failed (%d)\x00broke stale lock on %s\n\x00failed to break stale lock on %s, %s\n\x00-conch\x00.lock\x00:auto: (not held)\x00unix\x00unix-none\x00unix-dotfile\x00unix-posix\x00unix-flock\x00unix-afp\x00unix-nfs\x00unix-proxy\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00%d\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x001\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00misuse of aggregate: %s()\x00unknown function: %s()\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %Q)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %Q)=NULL \x00there is already another table or index with this name: %s\x00table\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename',0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\"\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00sqlite\\_%\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00memdb\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%s\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00index\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00ON\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00%s.rowid\x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00sqlite3_extension_init\x00unable to open shared library [%s]\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00dylib\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00rowid\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00lock_proxy_file\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00failed to set lock proxy file\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00NONE\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00ok\x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00cannot use window functions in recursive queries\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00LEFT\x00RIGHT\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00SCAN TABLE %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %u\x00MATERIALIZE %u\x00DISTINCT\x00GROUP BY\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00-- TRIGGER %s\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00SEARCH\x00SCAN\x00 SUBQUERY %u\x00 TABLE %s\x00 AS %s\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00MULTI-INDEX OR\x00INDEX %d\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00shared\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00%s \x00-col %d \x00-col {%d\x00 %d\x00} \x00-near %d \x00--\x00 {\x00 [%z]\x00\"\"\x00{\x00%s : \x00NEAR(\x00 + \x00, %d)\x00 NOT \x00 OR \x00%s%s%z%s\x00nearset\x00wrong number of arguments to function %s\x00fts5_expr_tcl\x00fts5_expr\x00wrong number of arguments to function fts5_isalnum\x00L*\x00N*\x00Co\x00wrong number of arguments to function fts5_fold\x00fts5_isalnum\x00fts5_fold\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00{averages} \x00{structure}\x00{%ssegid=%d h=%d pgno=%d}\x00dlidx \x00 {lvl=%d nMerge=%d nSeg=%d\x00 {id=%d leaves=%d..%d}\x00%s%d\x00 id=%lld\x00 nPos=%d%s\x00+\x00 %lld%s\x00 %d(%lld)\x00 term=%.*s\x00corrupt\x00should be: fts5_rowid(subject, ....)\x00segment\x00should be: fts5_rowid('segment', segid, pgno))\x00first arg to fts5_rowid() must be 'segment'\x00fts5_decode\x00fts5_decode_none\x00fts5_rowid\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x002021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e\x00" +var ts1 = "COMPILER=gcc-10.2.1 20201220\x00ENABLE_COLUMN_METADATA\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00THREADSAFE=1\x003.35.5\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00thstndrd\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00AutoCommit\x00Transaction\x00SorterNext\x00Prev\x00Next\x00Checkpoint\x00JournalMode\x00Vacuum\x00VFilter\x00VUpdate\x00Goto\x00Gosub\x00InitCoroutine\x00Yield\x00MustBeInt\x00Jump\x00Once\x00If\x00Not\x00IfNot\x00IfNullRow\x00SeekLT\x00SeekLE\x00SeekGE\x00SeekGT\x00IfNotOpen\x00IfNoHope\x00NoConflict\x00NotFound\x00Found\x00SeekRowid\x00NotExists\x00Last\x00IfSmaller\x00SorterSort\x00Sort\x00Rewind\x00IdxLE\x00IdxGT\x00IdxLT\x00IdxGE\x00RowSetRead\x00Or\x00And\x00RowSetTest\x00Program\x00FkIfZero\x00IfPos\x00IfNotZero\x00IsNull\x00NotNull\x00Ne\x00Eq\x00Gt\x00Le\x00Lt\x00Ge\x00ElseNotEq\x00DecrJumpZero\x00IncrVacuum\x00VNext\x00Init\x00PureFunc\x00Function\x00Return\x00EndCoroutine\x00HaltIfNull\x00Halt\x00Integer\x00Int64\x00String\x00Null\x00SoftNull\x00Blob\x00Variable\x00Move\x00Copy\x00SCopy\x00IntCopy\x00ChngCntRow\x00ResultRow\x00CollSeq\x00AddImm\x00RealAffinity\x00Cast\x00Permutation\x00Compare\x00IsTrue\x00Offset\x00Column\x00Affinity\x00MakeRecord\x00Count\x00ReadCookie\x00SetCookie\x00ReopenIdx\x00OpenRead\x00OpenWrite\x00OpenDup\x00OpenAutoindex\x00OpenEphemeral\x00BitAnd\x00BitOr\x00ShiftLeft\x00ShiftRight\x00Add\x00Subtract\x00Multiply\x00Divide\x00Remainder\x00Concat\x00SorterOpen\x00BitNot\x00SequenceTest\x00OpenPseudo\x00String8\x00Close\x00ColumnsUsed\x00SeekScan\x00SeekHit\x00Sequence\x00NewRowid\x00Insert\x00RowCell\x00Delete\x00ResetCount\x00SorterCompare\x00SorterData\x00RowData\x00Rowid\x00NullRow\x00SeekEnd\x00IdxInsert\x00SorterInsert\x00IdxDelete\x00DeferredSeek\x00IdxRowid\x00FinishSeek\x00Destroy\x00Clear\x00ResetSorter\x00CreateBtree\x00SqlExec\x00ParseSchema\x00LoadAnalysis\x00DropTable\x00DropIndex\x00DropTrigger\x00IntegrityCk\x00RowSetAdd\x00Param\x00Real\x00FkCounter\x00MemMax\x00OffsetLimit\x00AggInverse\x00AggStep\x00AggStep1\x00AggValue\x00AggFinal\x00Expire\x00CursorLock\x00CursorUnlock\x00TableLock\x00VBegin\x00VCreate\x00VDestroy\x00VOpen\x00VColumn\x00VRename\x00Pagecount\x00MaxPgcnt\x00Trace\x00CursorHint\x00ReleaseReg\x00Noop\x00Explain\x00Abortable\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00os_unix.c:%d: (%d) %s(%s) - %s\x00S\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00%s\x00full_fsync\x00%s-shm\x00readonly_shm\x00nfs\x00hfs\x00ufs\x00afpfs\x00smbfs\x00webdav\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00msdos\x00exfat\x00SQLITE_FORCE_PROXY_LOCKING\x00:auto:\x00fsync\x00/dev/urandom\x00sqliteplocks\x00/\x00dummy\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00break\x00path error (len %d)\x00read error (len %d)\x00create failed (%d)\x00write failed (%d)\x00rename failed (%d)\x00broke stale lock on %s\n\x00failed to break stale lock on %s, %s\n\x00-conch\x00.lock\x00:auto: (not held)\x00unix\x00unix-none\x00unix-dotfile\x00unix-posix\x00unix-flock\x00unix-afp\x00unix-nfs\x00unix-proxy\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00%d\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x001\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00misuse of aggregate: %s()\x00unknown function: %s()\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %Q)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %Q)=NULL \x00there is already another table or index with this name: %s\x00table\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename',0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\"\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00sqlite\\_%\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00memdb\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%s\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00index\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00ON\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00%s.rowid\x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00sqlite3_extension_init\x00unable to open shared library [%s]\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00dylib\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00rowid\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00lock_proxy_file\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00failed to set lock proxy file\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00NONE\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00ok\x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00cannot use window functions in recursive queries\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00LEFT\x00RIGHT\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00SCAN TABLE %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %u\x00MATERIALIZE %u\x00DISTINCT\x00GROUP BY\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00-- TRIGGER %s\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00SEARCH\x00SCAN\x00 SUBQUERY %u\x00 TABLE %s\x00 AS %s\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00MULTI-INDEX OR\x00INDEX %d\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00shared\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00%s \x00-col %d \x00-col {%d\x00 %d\x00} \x00-near %d \x00--\x00 {\x00 [%z]\x00\"\"\x00{\x00%s : \x00NEAR(\x00 + \x00, %d)\x00 NOT \x00 OR \x00%s%s%z%s\x00nearset\x00wrong number of arguments to function %s\x00fts5_expr_tcl\x00fts5_expr\x00wrong number of arguments to function fts5_isalnum\x00L*\x00N*\x00Co\x00wrong number of arguments to function fts5_fold\x00fts5_isalnum\x00fts5_fold\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00{averages} \x00{structure}\x00{%ssegid=%d h=%d pgno=%d}\x00dlidx \x00 {lvl=%d nMerge=%d nSeg=%d\x00 {id=%d leaves=%d..%d}\x00%s%d\x00 id=%lld\x00 nPos=%d%s\x00+\x00 %lld%s\x00 %d(%lld)\x00 term=%.*s\x00corrupt\x00should be: fts5_rowid(subject, ....)\x00segment\x00should be: fts5_rowid('segment', segid, pgno))\x00first arg to fts5_rowid() must be 'segment'\x00fts5_decode\x00fts5_decode_none\x00fts5_rowid\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x002021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886\x00" var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data diff --git a/libtest/capi_darwin_arm64.go b/libtest/capi_darwin_arm64.go index 7587e85..a98fae6 100644 --- a/libtest/capi_darwin_arm64.go +++ b/libtest/capi_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -pkgname sqlite3 -o libtest/sqlite_darwin_arm64.go -trace-translation-units -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt testdata/sqlite-amalgamation-3350400/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CKSUMVFS_STATIC -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_HAVE_ZLIB=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. +// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -pkgname sqlite3 -o libtest/sqlite_darwin_arm64.go -trace-translation-units -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt testdata/sqlite-amalgamation-3350500/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CKSUMVFS_STATIC -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_HAVE_ZLIB=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. package sqlite3 diff --git a/libtest/sqlite_darwin_amd64.go b/libtest/sqlite_darwin_amd64.go index f4e8c2d..411dd65 100644 --- a/libtest/sqlite_darwin_amd64.go +++ b/libtest/sqlite_darwin_amd64.go @@ -120591,7 +120591,6 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt goto __4 goto __6 __6: - } } @@ -176318,7 +176317,6 @@ __15: goto __14 goto __16 __16: - } // This is a helper function for rbuObjIterCacheTableInfo(). It populates diff --git a/libtest/sqlite_darwin_arm64.go b/libtest/sqlite_darwin_arm64.go index 3882cfb..83c1350 100644 --- a/libtest/sqlite_darwin_arm64.go +++ b/libtest/sqlite_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines "" -export-enums "" -export-externs X -export-fields F -export-typedefs "" -pkgname sqlite3 -o libtest/sqlite_darwin_arm64.go -trace-translation-units -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt testdata/sqlite-amalgamation-3350400/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CKSUMVFS_STATIC -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_HAVE_ZLIB=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. +// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines "" -export-enums "" -export-externs X -export-fields F -export-typedefs "" -pkgname sqlite3 -o libtest/sqlite_darwin_arm64.go -trace-translation-units -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt testdata/sqlite-amalgamation-3350500/sqlite3.c -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CKSUMVFS_STATIC -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_HAVE_ZLIB=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. package sqlite3 @@ -889,12 +889,18 @@ const ( IOPOL_TYPE_DISK = 0 IOPOL_TYPE_VFS_ATIME_UPDATES = 2 IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION = 6 + IOPOL_TYPE_VFS_IGNORE_PERMISSIONS = 7 IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES = 3 + IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE = 8 IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME = 4 IOPOL_TYPE_VFS_TRIGGER_RESOLVE = 5 IOPOL_UTILITY = 4 IOPOL_VFS_CONTENT_PROTECTION_DEFAULT = 0 IOPOL_VFS_CONTENT_PROTECTION_IGNORE = 1 + IOPOL_VFS_IGNORE_PERMISSIONS_OFF = 0 + IOPOL_VFS_IGNORE_PERMISSIONS_ON = 1 + IOPOL_VFS_SKIP_MTIME_UPDATE_OFF = 0 + IOPOL_VFS_SKIP_MTIME_UPDATE_ON = 1 IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME = 1 IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT = 0 IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT = 0 @@ -1083,7 +1089,7 @@ const ( MAX_AUDIT_RECORDS = 20 MAX_AUDIT_RECORD_SIZE = 32767 MAX_CANON = 1024 - MAX_FATAL_kGUARD_EXC_CODE = 64 + MAX_FATAL_kGUARD_EXC_CODE = 128 MAX_INPUT = 1024 MAX_PATHNAME = 512 MAX_SECTOR_SIZE = 0x10000 @@ -1166,6 +1172,9 @@ const ( MNT_UPDATE = 0x00010000 MNT_VISFLAGMASK = 3622893567 MNT_WAIT = 1 + MPG_FLAGS_IMMOVABLE_PINNED = 72057594037927936 + MPG_FLAGS_MOD_REFS_PINNED_DEALLOC = 72057594037927936 + MPG_FLAGS_NONE = 0 MPG_FLAGS_STRICT_REPLY_INVALID_REPLY_DISP = 72057594037927936 MPG_FLAGS_STRICT_REPLY_INVALID_REPLY_PORT = 144115188075855872 MPG_FLAGS_STRICT_REPLY_INVALID_VOUCHER = 288230376151711744 @@ -2090,6 +2099,7 @@ const ( SQLITE_DEFAULT_FILE_FORMAT = 4 SQLITE_DEFAULT_FILE_PERMISSIONS = 0644 SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT = -1 + SQLITE_DEFAULT_LOOKASIDE = 40 SQLITE_DEFAULT_MEMSTATUS = 0 SQLITE_DEFAULT_MMAP_SIZE = 0 SQLITE_DEFAULT_PAGE_SIZE = 1024 @@ -2524,7 +2534,7 @@ const ( SQLITE_SHM_UNLOCK = 1 SQLITE_SORTER_PMASZ = 250 SQLITE_SOUNDEX = 1 - SQLITE_SOURCE_ID = "2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e" + SQLITE_SOURCE_ID = "2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886" SQLITE_SO_ASC = 0 SQLITE_SO_DESC = 1 SQLITE_SO_UNDEFINED = -1 @@ -2623,8 +2633,8 @@ const ( SQLITE_UTF8 = 1 SQLITE_VDBEINT_H = 0 SQLITE_VDBE_H = 0 - SQLITE_VERSION = "3.35.4" - SQLITE_VERSION_NUMBER = 3035004 + SQLITE_VERSION = "3.35.5" + SQLITE_VERSION_NUMBER = 3035005 SQLITE_VTABRISK_High = 2 SQLITE_VTABRISK_Low = 0 SQLITE_VTABRISK_Normal = 1 @@ -3889,7 +3899,7 @@ const ( // to differentiate among them. // Reasons for exception for a guarded mach port -const ( /* port.h:368:1: */ +const ( /* port.h:367:1: */ KGUARD_EXC_DESTROY = 1 KGUARD_EXC_MOD_REFS = 2 KGUARD_EXC_SET_CONTEXT = 4 @@ -3911,7 +3921,9 @@ const ( /* port.h:368:1: */ KGUARD_EXC_SEND_INVALID_VOUCHER = 131072 KGUARD_EXC_SEND_INVALID_RIGHT = 262144 KGUARD_EXC_RCV_INVALID_NAME = 524288 - KGUARD_EXC_RCV_GUARDED_DESC = 1048576 + KGUARD_EXC_RCV_GUARDED_DESC = 1048576 // should never be fatal; for development only + KGUARD_EXC_MOD_REFS_NON_FATAL = 2097152 + KGUARD_EXC_IMMOVABLE_NON_FATAL = 4194304 ) // Copyright (c) 2003-2012 Apple Inc. All rights reserved. @@ -4301,7 +4313,7 @@ type X__float128 = float64 /* :47:21 */ // ***************************************************************************** // // This file is an amalgamation of many separate C source files from SQLite -// version 3.35.4. By combining all the individual C code files into this +// version 3.35.5. By combining all the individual C code files into this // single large file, the entire code can be compiled as a single translation // unit. This allows many compilers to do optimizations that would not be // possible if the files were compiled separately. Performance improvements @@ -4688,7 +4700,7 @@ type Va_list = X__gnuc_va_list /* stdarg.h:99:24 */ // of the hash might be different from [SQLITE_SOURCE_ID].)^ // // See also: [sqlite_version()] and [sqlite_source_id()]. -var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 366 /* "3.35.4" */)) /* sqlite3.c:1225:23 */ +var Xsqlite3_version = *(*[7]int8)(unsafe.Pointer(ts + 366 /* "3.35.5" */)) /* sqlite3.c:1225:23 */ // CAPI3REF: Database Connection Handle // KEYWORDS: {database connection} {database connections} @@ -10406,6 +10418,7 @@ type __darwin_arm_neon_state = struct { } /* _structs.h:448:1 */ type __darwin_arm_amx_state_v1 = struct { + _ [0]uint64 F__x [8][64]X__uint8_t F__y [8][64]X__uint8_t F__z [64][64]X__uint8_t @@ -31799,18 +31812,18 @@ type Mach_port_type_array_t = uintptr /* port.h:200:26 */ // User-references for capabilities. -type Mach_port_urefs_t = Natural_t /* port.h:236:19 */ -type Mach_port_delta_t = Integer_t /* port.h:237:19 */ // change in urefs +type Mach_port_urefs_t = Natural_t /* port.h:235:19 */ +type Mach_port_delta_t = Integer_t /* port.h:236:19 */ // change in urefs // Attributes of ports. (See mach_port_get_receive_status.) -type Mach_port_seqno_t = Natural_t /* port.h:241:19 */ // sequence number -type Mach_port_mscount_t = Natural_t /* port.h:242:19 */ // make-send count -type Mach_port_msgcount_t = Natural_t /* port.h:243:19 */ // number of msgs -type Mach_port_rights_t = Natural_t /* port.h:244:19 */ // number of rights +type Mach_port_seqno_t = Natural_t /* port.h:240:19 */ // sequence number +type Mach_port_mscount_t = Natural_t /* port.h:241:19 */ // make-send count +type Mach_port_msgcount_t = Natural_t /* port.h:242:19 */ // number of msgs +type Mach_port_rights_t = Natural_t /* port.h:243:19 */ // number of rights // Are there outstanding send rights for a given port? -type Mach_port_srights_t = uint32 /* port.h:251:22 */ // status of send rights +type Mach_port_srights_t = uint32 /* port.h:250:22 */ // status of send rights type mach_port_status = struct { Fmps_pset Mach_port_rights_t @@ -31823,19 +31836,19 @@ type mach_port_status = struct { Fmps_pdrequest Boolean_t Fmps_nsrequest Boolean_t Fmps_flags Natural_t -} /* port.h:253:9 */ +} /* port.h:252:9 */ // status of send rights -type Mach_port_status_t = mach_port_status /* port.h:264:3 */ +type Mach_port_status_t = mach_port_status /* port.h:263:3 */ // System-wide values for setting queue limits on a port -type mach_port_limits = struct{ Fmpl_qlimit Mach_port_msgcount_t } /* port.h:276:9 */ +type mach_port_limits = struct{ Fmpl_qlimit Mach_port_msgcount_t } /* port.h:275:9 */ // System-wide values for setting queue limits on a port -type Mach_port_limits_t = mach_port_limits /* port.h:278:3 */ +type Mach_port_limits_t = mach_port_limits /* port.h:277:3 */ // Possible values for mps_flags (part of mach_port_status_t) @@ -31843,27 +31856,28 @@ type mach_port_info_ext = struct { Fmpie_status Mach_port_status_t Fmpie_boost_cnt Mach_port_msgcount_t Freserved [6]Uint32_t -} /* port.h:290:9 */ +} /* port.h:289:9 */ // Possible values for mps_flags (part of mach_port_status_t) -type Mach_port_info_ext_t = mach_port_info_ext /* port.h:294:3 */ +type Mach_port_info_ext_t = mach_port_info_ext /* port.h:293:3 */ -type Mach_port_info_t = uintptr /* port.h:296:19 */ // varying array of natural_t +type Mach_port_info_t = uintptr /* port.h:295:19 */ // varying array of natural_t // Flavors for mach_port_get/set_attributes() -type Mach_port_flavor_t = int32 /* port.h:299:17 */ +type Mach_port_flavor_t = int32 /* port.h:298:17 */ // Structure used to pass information about port allocation requests. // Must be padded to 64-bits total length. type mach_port_qos = struct { Fname uint32 /* unsigned name: 1, unsigned prealloc: 1, boolean_t pad1: 30 */ + _ [4]byte Flen Natural_t -} /* port.h:319:9 */ +} /* port.h:318:9 */ // Structure used to pass information about port allocation requests. // Must be padded to 64-bits total length. -type Mach_port_qos_t = mach_port_qos /* port.h:324:3 */ +type Mach_port_qos_t = mach_port_qos /* port.h:323:3 */ // Mach Port Guarding definitions @@ -31878,7 +31892,7 @@ type mach_port_options = struct { Fflags Uint32_t Fmpl Mach_port_limits_t F__8 struct{ Freserved [2]Uint64_t } -} /* port.h:349:9 */ +} /* port.h:348:9 */ // Mach Port Guarding definitions @@ -31889,9 +31903,9 @@ type mach_port_options = struct { // Structure to define optional attributes for a newly // constructed port. -type Mach_port_options_t = mach_port_options /* port.h:356:2 */ +type Mach_port_options_t = mach_port_options /* port.h:355:2 */ -type Mach_port_options_ptr_t = uintptr /* port.h:358:29 */ +type Mach_port_options_ptr_t = uintptr /* port.h:357:29 */ // Credential flags that can be set on a credential // also forces credential cache miss @@ -103206,39 +103220,21 @@ __8: Xsqlite3OpenTable(tls, pParse, iCur, iDb, pTab, OP_OpenWrite) addr = Xsqlite3VdbeAddOp1(tls, v, OP_Rewind, iCur) reg = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) - *(*int32)(unsafe.Pointer(pParse + 56 /* &.nMem */)) += (int32((*Table)(unsafe.Pointer(pTab)).FnCol)) if !(((*Table)(unsafe.Pointer((pTab))).FtabFlags & U32(TF_WithoutRowid)) == U32(0)) { goto __10 } Xsqlite3VdbeAddOp2(tls, v, OP_Rowid, iCur, reg) + *(*int32)(unsafe.Pointer(pParse + 56 /* &.nMem */)) += (int32((*Table)(unsafe.Pointer(pTab)).FnCol)) goto __11 __10: pPk = Xsqlite3PrimaryKeyIndex(tls, pTab) -__11: - ; + *(*int32)(unsafe.Pointer(pParse + 56 /* &.nMem */)) += (int32((*Index)(unsafe.Pointer(pPk)).FnColumn)) i = 0 __12: - if !(i < int32((*Table)(unsafe.Pointer(pTab)).FnCol)) { + if !(i < int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) { goto __14 } - if !((i != iCol) && ((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(i)*32)).FcolFlags) & COLFLAG_VIRTUAL) == 0)) { - goto __15 - } - if !(pPk != 0) { - goto __16 - } - iPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(i))) - iColPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(iCol))) - regOut = (((reg + 1) + iPos) - (libc.Bool32(iPos > iColPos))) - goto __17 -__16: - regOut = ((reg + 1) + nField) -__17: - ; - Xsqlite3ExprCodeGetColumnOfTable(tls, v, pTab, iCur, i, regOut) - nField++ -__15: - ; + Xsqlite3VdbeAddOp3(tls, v, OP_Column, iCur, i, ((reg + i) + 1)) goto __13 __13: i++ @@ -103246,17 +103242,65 @@ __13: goto __14 __14: ; - regRec = (reg + int32((*Table)(unsafe.Pointer(pTab)).FnCol)) - Xsqlite3VdbeAddOp3(tls, v, OP_MakeRecord, (reg + 1), nField, regRec) - if !(pPk != 0) { + nField = int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol) +__11: + ; + regRec = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) + i = 0 +__15: + if !(i < int32((*Table)(unsafe.Pointer(pTab)).FnCol)) { + goto __17 + } + if !((i != iCol) && ((int32((*Column)(unsafe.Pointer((*Table)(unsafe.Pointer(pTab)).FaCol+uintptr(i)*32)).FcolFlags) & COLFLAG_VIRTUAL) == 0)) { goto __18 } - Xsqlite3VdbeAddOp4Int(tls, v, OP_IdxInsert, iCur, regRec, (reg + 1), int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) - goto __19 -__18: - Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iCur, regRec, reg) -__19: + if !(pPk != 0) { + goto __19 + } + iPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(i))) + iColPos = int32(Xsqlite3TableColumnToIndex(tls, pPk, int16(iCol))) + if !(iPos < int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) { + goto __21 + } + goto __16 +__21: ; + regOut = (((reg + 1) + iPos) - (libc.Bool32(iPos > iColPos))) + goto __20 +__19: + regOut = ((reg + 1) + nField) +__20: + ; + if !(i == int32((*Table)(unsafe.Pointer(pTab)).FiPKey)) { + goto __22 + } + Xsqlite3VdbeAddOp2(tls, v, OP_Null, 0, regOut) + goto __23 +__22: + Xsqlite3ExprCodeGetColumnOfTable(tls, v, pTab, iCur, i, regOut) +__23: + ; + nField++ +__18: + ; + goto __16 +__16: + i++ + goto __15 + goto __17 +__17: + ; + Xsqlite3VdbeAddOp3(tls, v, OP_MakeRecord, (reg + 1), nField, regRec) + if !(pPk != 0) { + goto __24 + } + Xsqlite3VdbeAddOp4Int(tls, v, OP_IdxInsert, iCur, regRec, (reg + 1), int32((*Index)(unsafe.Pointer(pPk)).FnKeyCol)) + goto __25 +__24: + Xsqlite3VdbeAddOp3(tls, v, OP_Insert, iCur, regRec, reg) +__25: + ; + Xsqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_SAVEPOSITION)) Xsqlite3VdbeAddOp2(tls, v, OP_Next, iCur, (addr + 1)) Xsqlite3VdbeJumpHere(tls, v, addr) @@ -103269,7 +103313,7 @@ exit_drop_column: } // Register built-in functions used to help implement ALTER TABLE -func Xsqlite3AlterFunctions(tls *libc.TLS) { /* sqlite3.c:108744:21: */ +func Xsqlite3AlterFunctions(tls *libc.TLS) { /* sqlite3.c:108755:21: */ Xsqlite3InsertBuiltinFuncs(tls, uintptr(unsafe.Pointer(&aAlterTableFuncs)), (int32(uint64(unsafe.Sizeof(aAlterTableFuncs)) / uint64(unsafe.Sizeof(FuncDef{}))))) } @@ -103277,7 +103321,7 @@ var aAlterTableFuncs = [4]FuncDef{ {FnArg: int8(9), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13908 /* "sqlite_rename_co..." */}, {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13929 /* "sqlite_rename_ta..." */}, {FnArg: int8(7), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13949 /* "sqlite_rename_te..." */}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13968 /* "sqlite_drop_colu..." */}} /* sqlite3.c:108745:18 */ + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_FUNC_INTERNAL | SQLITE_UTF8) | SQLITE_FUNC_CONSTANT)), FxSFunc: 0, FzName: ts + 13968 /* "sqlite_drop_colu..." */}} /* sqlite3.c:108756:18 */ //************* End of alter.c ********************************************** //************* Begin file analyze.c **************************************** @@ -103433,7 +103477,7 @@ var aAlterTableFuncs = [4]FuncDef{ // or it may be a NULL pointer. If it is not NULL, then all entries in // the sqlite_statN tables associated with the named table are deleted. // If zWhere==0, then code is generated to delete all stat table entries. -func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWhere uintptr, zWhereType uintptr) { /* sqlite3.c:108922:13: */ +func openStatTable(tls *libc.TLS, pParse uintptr, iDb int32, iStatCur int32, zWhere uintptr, zWhereType uintptr) { /* sqlite3.c:108933:13: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -103513,7 +103557,7 @@ var aTable = [3]struct { {FzName: ts + 14058 /* "sqlite_stat1" */, FzCols: ts + 14071 /* "tbl,idx,stat" */}, {FzName: ts + 14084 /* "sqlite_stat4" */, FzCols: ts + 14097 /* "tbl,idx,neq,nlt,..." */}, {FzName: ts + 14125 /* "sqlite_stat3" */}, -} /* sqlite3.c:108932:5 */ +} /* sqlite3.c:108943:5 */ // Recommended number of samples for sqlite_stat4 @@ -103540,14 +103584,14 @@ type StatAccum1 = struct { FnMaxEqZero int32 FiGet int32 Fa uintptr -} /* sqlite3.c:109020:9 */ +} /* sqlite3.c:109031:9 */ // Recommended number of samples for sqlite_stat4 // Three SQL functions - stat_init(), stat_push(), and stat_get() - // share an instance of the following structure to hold their state // information. -type StatAccum = StatAccum1 /* sqlite3.c:109020:26 */ +type StatAccum = StatAccum1 /* sqlite3.c:109031:26 */ type StatSample1 = struct { FanEq uintptr FanDLt uintptr @@ -103558,12 +103602,12 @@ type StatSample1 = struct { _ [3]byte FiCol int32 FiHash U32 -} /* sqlite3.c:109020:9 */ +} /* sqlite3.c:109031:9 */ -type StatSample = StatSample1 /* sqlite3.c:109021:27 */ +type StatSample = StatSample1 /* sqlite3.c:109032:27 */ // Reclaim memory used by a StatSample -func sampleClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:109062:13: */ +func sampleClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:109073:13: */ if (*StatSample)(unsafe.Pointer(p)).FnRowid != 0 { Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(p + 24 /* &.u */))) @@ -103572,7 +103616,7 @@ func sampleClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:109062:13: } // Initialize the BLOB value of a ROWID -func sampleSetRowid(tls *libc.TLS, db uintptr, p uintptr, n int32, pData uintptr) { /* sqlite3.c:109074:13: */ +func sampleSetRowid(tls *libc.TLS, db uintptr, p uintptr, n int32, pData uintptr) { /* sqlite3.c:109085:13: */ if (*StatSample)(unsafe.Pointer(p)).FnRowid != 0 { Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(p + 24 /* &.u */))) @@ -103587,7 +103631,7 @@ func sampleSetRowid(tls *libc.TLS, db uintptr, p uintptr, n int32, pData uintptr } // Initialize the INTEGER value of a ROWID. -func sampleSetRowidInt64(tls *libc.TLS, db uintptr, p uintptr, iRowid I64) { /* sqlite3.c:109090:13: */ +func sampleSetRowidInt64(tls *libc.TLS, db uintptr, p uintptr, iRowid I64) { /* sqlite3.c:109101:13: */ if (*StatSample)(unsafe.Pointer(p)).FnRowid != 0 { Xsqlite3DbFree(tls, db, *(*uintptr)(unsafe.Pointer(p + 24 /* &.u */))) @@ -103597,7 +103641,7 @@ func sampleSetRowidInt64(tls *libc.TLS, db uintptr, p uintptr, iRowid I64) { /* } // Copy the contents of object (*pFrom) into (*pTo). -func sampleCopy(tls *libc.TLS, p uintptr, pTo uintptr, pFrom uintptr) { /* sqlite3.c:109103:13: */ +func sampleCopy(tls *libc.TLS, p uintptr, pTo uintptr, pFrom uintptr) { /* sqlite3.c:109114:13: */ (*StatSample)(unsafe.Pointer(pTo)).FisPSample = (*StatSample)(unsafe.Pointer(pFrom)).FisPSample (*StatSample)(unsafe.Pointer(pTo)).FiCol = (*StatSample)(unsafe.Pointer(pFrom)).FiCol (*StatSample)(unsafe.Pointer(pTo)).FiHash = (*StatSample)(unsafe.Pointer(pFrom)).FiHash @@ -103612,7 +103656,7 @@ func sampleCopy(tls *libc.TLS, p uintptr, pTo uintptr, pFrom uintptr) { /* sqlit } // Reclaim all memory of a StatAccum structure. -func statAccumDestructor(tls *libc.TLS, pOld uintptr) { /* sqlite3.c:109121:13: */ +func statAccumDestructor(tls *libc.TLS, pOld uintptr) { /* sqlite3.c:109132:13: */ var p uintptr = pOld if (*StatAccum)(unsafe.Pointer(p)).FmxSample != 0 { var i int32 @@ -103647,7 +103691,7 @@ func statAccumDestructor(tls *libc.TLS, pOld uintptr) { /* sqlite3.c:109121:13: // value is a pointer to the StatAccum object. The datatype of the // return value is BLOB, but it is really just a pointer to the StatAccum // object. -func statInit(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109156:13: */ +func statInit(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109167:13: */ var p uintptr var nCol int32 // Number of columns in index being sampled var nKeyCol int32 // Number of key columns @@ -103743,7 +103787,7 @@ var statInitFuncdef = FuncDef{ FnArg: int8(4), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 14138 /* "stat_init" */} /* sqlite3.c:109243:22 */ + FzName: ts + 14138 /* "stat_init" */} /* sqlite3.c:109254:22 */ // pNew and pOld are both candidate non-periodic samples selected for // the same column (pNew->iCol==pOld->iCol). Ignoring this column and @@ -103754,7 +103798,7 @@ var statInitFuncdef = FuncDef{ // // This function assumes that for each argument sample, the contents of // the anEq[] array from pSample->anEq[pSample->iCol+1] onwards are valid. -func sampleIsBetterPost(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109267:12: */ +func sampleIsBetterPost(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109278:12: */ var nCol int32 = (*StatAccum)(unsafe.Pointer(pAccum)).FnCol var i int32 @@ -103776,7 +103820,7 @@ func sampleIsBetterPost(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintpt // // This function assumes that for each argument sample, the contents of // the anEq[] array from pSample->anEq[pSample->iCol] onwards are valid. -func sampleIsBetter(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109291:12: */ +func sampleIsBetter(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) int32 { /* sqlite3.c:109302:12: */ var nEqNew TRowcnt = *(*TRowcnt)(unsafe.Pointer((*StatSample)(unsafe.Pointer(pNew)).FanEq + uintptr((*StatSample)(unsafe.Pointer(pNew)).FiCol)*4)) var nEqOld TRowcnt = *(*TRowcnt)(unsafe.Pointer((*StatSample)(unsafe.Pointer(pOld)).FanEq + uintptr((*StatSample)(unsafe.Pointer(pOld)).FiCol)*4)) @@ -103794,7 +103838,7 @@ func sampleIsBetter(tls *libc.TLS, pAccum uintptr, pNew uintptr, pOld uintptr) i // Copy the contents of sample *pNew into the p->a[] array. If necessary, // remove the least desirable sample from p->a[] to make room. -func sampleInsert(tls *libc.TLS, p uintptr, pNew uintptr, nEqZero int32) { /* sqlite3.c:109314:13: */ +func sampleInsert(tls *libc.TLS, p uintptr, pNew uintptr, nEqZero int32) { /* sqlite3.c:109325:13: */ var pSample uintptr var i int32 var pOld uintptr @@ -103937,7 +103981,7 @@ __11: // p->current contains a sample that reflects the previous row of the // index. The value of anEq[iChng] and subsequent anEq[] elements are // correct at this point. -func samplePushPrevious(tls *libc.TLS, p uintptr, iChng int32) { /* sqlite3.c:109406:13: */ +func samplePushPrevious(tls *libc.TLS, p uintptr, iChng int32) { /* sqlite3.c:109417:13: */ var i int32 // Check if any samples from the aBest[] array should be pushed @@ -103989,7 +104033,7 @@ func samplePushPrevious(tls *libc.TLS, p uintptr, iChng int32) { /* sqlite3.c:10 // if it wants the byte-code to do special processing. // // The R parameter is only used for STAT4 -func statPush(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109458:13: */ +func statPush(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109469:13: */ var i int32 // The three function arguments @@ -104061,7 +104105,7 @@ var statPushFuncdef = FuncDef{ FnArg: (int8(2 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 14148 /* "stat_push" */} /* sqlite3.c:109533:22 */ + FzName: ts + 14148 /* "stat_push" */} /* sqlite3.c:109544:22 */ // Implementation of the stat_get(P,J) SQL function. This routine is // used to query statistical information that has been gathered into @@ -104080,7 +104124,7 @@ var statPushFuncdef = FuncDef{ // STAT_GET_STAT1 and is hence omitted and this routine becomes // a one-parameter function, stat_get(P), that always returns the // stat1 table entry information. -func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109570:13: */ +func statGet(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:109581:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -104195,9 +104239,9 @@ var statGetFuncdef = FuncDef{ FnArg: (int8(1 + IsStat4)), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 14175 /* "stat_get" */} /* sqlite3.c:109685:22 */ + FzName: ts + 14175 /* "stat_get" */} /* sqlite3.c:109696:22 */ -func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, regOut int32) { /* sqlite3.c:109697:13: */ +func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, regOut int32) { /* sqlite3.c:109708:13: */ Xsqlite3VdbeAddOp2(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_Integer, iParam, (regStat + 1)) Xsqlite3VdbeAddFunctionCall(tls, pParse, 0, regStat, regOut, (1 + IsStat4), @@ -104206,7 +104250,7 @@ func callStatGet(tls *libc.TLS, pParse uintptr, regStat int32, iParam int32, reg // Add a comment to the most recent VDBE opcode that is the name // of the k-th column of the pIdx index. -func analyzeVdbeCommentIndexWithColumnName(tls *libc.TLS, v uintptr, pIdx uintptr, k int32) { /* sqlite3.c:109714:13: */ +func analyzeVdbeCommentIndexWithColumnName(tls *libc.TLS, v uintptr, pIdx uintptr, k int32) { /* sqlite3.c:109725:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -104224,7 +104268,7 @@ func analyzeVdbeCommentIndexWithColumnName(tls *libc.TLS, v uintptr, pIdx uintpt // Generate code to do an analysis of all indices associated with // a single table. -func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr, iStatCur int32, iMem int32, iTab int32) { /* sqlite3.c:109738:13: */ +func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr, iStatCur int32, iMem int32, iTab int32) { /* sqlite3.c:109749:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -104589,7 +104633,7 @@ func analyzeOneTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintp // Generate code that will cause the most recent index analysis to // be loaded into internal hash tables where is can be used. -func loadAnalysis(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110100:13: */ +func loadAnalysis(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110111:13: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) if v != 0 { Xsqlite3VdbeAddOp1(tls, v, OP_LoadAnalysis, iDb) @@ -104597,7 +104641,7 @@ func loadAnalysis(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:11010 } // Generate code that will do an analysis of an entire database -func analyzeDatabase(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110110:13: */ +func analyzeDatabase(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:110121:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pSchema uintptr = (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb + uintptr(iDb)*32)).FpSchema // Schema of database iDb var k uintptr @@ -104622,7 +104666,7 @@ func analyzeDatabase(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:11 // Generate code that will do an analysis of a single table in // a database. If pOnlyIdx is not NULL then it is a single index // in pTab that should be analyzed. -func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) { /* sqlite3.c:110137:13: */ +func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) { /* sqlite3.c:110148:13: */ var iDb int32 var iStatCur int32 @@ -104649,7 +104693,7 @@ func analyzeTable(tls *libc.TLS, pParse uintptr, pTab uintptr, pOnlyIdx uintptr) // Form 1 causes all indices in all attached databases to be analyzed. // Form 2 analyzes all indices the single database named. // Form 3 analyzes all indices associated with the named table. -func Xsqlite3Analyze(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:110168:21: */ +func Xsqlite3Analyze(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:110179:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -104712,16 +104756,16 @@ func Xsqlite3Analyze(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintp type analysisInfo = struct { Fdb uintptr FzDatabase uintptr -} /* sqlite3.c:110220:9 */ +} /* sqlite3.c:110231:9 */ // Used to pass information from the analyzer reader through to the // callback routine. -type AnalysisInfo = analysisInfo /* sqlite3.c:110220:29 */ +type AnalysisInfo = analysisInfo /* sqlite3.c:110231:29 */ // The first argument points to a nul-terminated string containing a // list of space separated integers. Read the first nOut of these into // the array aOut[]. -func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, aLog uintptr, pIndex uintptr) { /* sqlite3.c:110231:13: */ +func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, aLog uintptr, pIndex uintptr) { /* sqlite3.c:110242:13: */ var z uintptr = zIntArray var c int32 var i int32 @@ -104780,7 +104824,7 @@ func decodeIntArray(tls *libc.TLS, zIntArray uintptr, nOut int32, aOut uintptr, // // Entries for which argv[1]==NULL simply record the number of rows in // the table. -func analysisLoader(tls *libc.TLS, pData uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:110304:12: */ +func analysisLoader(tls *libc.TLS, pData uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:110315:12: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -104842,7 +104886,7 @@ func analysisLoader(tls *libc.TLS, pData uintptr, argc int32, argv uintptr, NotU // If the Index.aSample variable is not NULL, delete the aSample[] array // and its contents. -func Xsqlite3DeleteIndexSamples(tls *libc.TLS, db uintptr, pIdx uintptr) { /* sqlite3.c:110367:21: */ +func Xsqlite3DeleteIndexSamples(tls *libc.TLS, db uintptr, pIdx uintptr) { /* sqlite3.c:110378:21: */ if (*Index)(unsafe.Pointer(pIdx)).FaSample != 0 { var j int32 for j = 0; j < (*Index)(unsafe.Pointer(pIdx)).FnSample; j++ { @@ -104859,7 +104903,7 @@ func Xsqlite3DeleteIndexSamples(tls *libc.TLS, db uintptr, pIdx uintptr) { /* sq // Populate the pIdx->aAvgEq[] array based on the samples currently // stored in pIdx->aSample[]. -func initAvgEq(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:110392:13: */ +func initAvgEq(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:110403:13: */ if pIdx != 0 { var aSample uintptr = (*Index)(unsafe.Pointer(pIdx)).FaSample var pFinal uintptr = (aSample + uintptr(((*Index)(unsafe.Pointer(pIdx)).FnSample-1))*40) @@ -104917,7 +104961,7 @@ func initAvgEq(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:110392:13: */ // Look up an index by name. Or, if the name of a WITHOUT ROWID table // is supplied instead, find the PRIMARY KEY index for that table. -func findIndexOrPrimaryKey(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:110451:14: */ +func findIndexOrPrimaryKey(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:110462:14: */ var pIdx uintptr = Xsqlite3FindIndex(tls, db, zName, zDb) if pIdx == uintptr(0) { var pTab uintptr = Xsqlite3FindTable(tls, db, zName, zDb) @@ -104938,7 +104982,7 @@ func findIndexOrPrimaryKey(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr // zSql2: SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4 // // where %Q is replaced with the database name before the SQL is executed. -func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb uintptr) int32 { /* sqlite3.c:110476:12: */ +func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb uintptr) int32 { /* sqlite3.c:110487:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -105074,7 +105118,7 @@ func loadStatTbl(tls *libc.TLS, db uintptr, zSql1 uintptr, zSql2 uintptr, zDb ui // Load content from the sqlite_stat4 table into // the Index.aSample[] arrays of all indices. -func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:110597:12: */ +func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:110608:12: */ var rc int32 = SQLITE_OK // Result codes from subroutines if Xsqlite3FindTable(tls, db, ts+14084 /* "sqlite_stat4" */, zDb) != 0 { @@ -105104,7 +105148,7 @@ func loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:1105 // If an OOM error occurs, this function always sets db->mallocFailed. // This means if the caller does not care about other errors, the return // code may be ignored. -func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlite3.c:110632:20: */ +func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlite3.c:110643:20: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -105209,7 +105253,7 @@ func Xsqlite3AnalysisLoad(tls *libc.TLS, db uintptr, iDb int32) int32 { /* sqlit // ATTACH DATABASE abc||def AS 'db2' // // will fail because neither abc or def can be resolved. -func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* sqlite3.c:110737:12: */ +func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* sqlite3.c:110748:12: */ var rc int32 = SQLITE_OK if pExpr != 0 { if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_ID { @@ -105223,7 +105267,7 @@ func resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) int32 { /* s // Return true if zName points to a name that may be used to refer to // database iDb attached to handle db. -func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int32 { /* sqlite3.c:110754:20: */ +func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int32 { /* sqlite3.c:110765:20: */ return (libc.Bool32((Xsqlite3StrICmp(tls, (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+uintptr(iDb)*32)).FzDbSName, zName) == 0) || ((iDb == 0) && (Xsqlite3StrICmp(tls, ts+9606 /* "main" */, zName) == 0)))) } @@ -105241,7 +105285,7 @@ func Xsqlite3DbIsNamed(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) int3 // If the db->init.reopenMemdb flags is set, then instead of attaching a // new database, close the database on db->init.iDb and reopen it as an // empty MemDB. -func attachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110776:13: */ +func attachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110787:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -105534,7 +105578,7 @@ __34: // DETACH DATABASE x // // SELECT sqlite_detach(x) -func detachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110969:13: */ +func detachFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:110980:13: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -105639,7 +105683,7 @@ detach_error: // This procedure generates VDBE code for a single invocation of either the // sqlite_detach() or sqlite_attach() SQL user functions. -func codeAttach(tls *libc.TLS, pParse uintptr, type1 int32, pFunc uintptr, pAuthArg uintptr, pFilename uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111031:13: */ +func codeAttach(tls *libc.TLS, pParse uintptr, type1 int32, pFunc uintptr, pAuthArg uintptr, pFilename uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111042:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -105717,7 +105761,7 @@ attach_end: // Called by the parser to compile a DETACH statement. // // DETACH pDbname -func Xsqlite3Detach(tls *libc.TLS, pParse uintptr, pDbname uintptr) { /* sqlite3.c:111102:21: */ +func Xsqlite3Detach(tls *libc.TLS, pParse uintptr, pDbname uintptr) { /* sqlite3.c:111113:21: */ codeAttach(tls, pParse, SQLITE_DETACH, uintptr(unsafe.Pointer(&detach_func)), pDbname, uintptr(0), uintptr(0), pDbname) } @@ -105725,12 +105769,12 @@ var detach_func = FuncDef{ FnArg: int8(1), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 14681 /* "sqlite_detach" */} /* sqlite3.c:111103:24 */ + FzName: ts + 14681 /* "sqlite_detach" */} /* sqlite3.c:111114:24 */ // Called by the parser to compile an ATTACH statement. // // ATTACH p AS pDbname KEY pKey -func Xsqlite3Attach(tls *libc.TLS, pParse uintptr, p uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111122:21: */ +func Xsqlite3Attach(tls *libc.TLS, pParse uintptr, p uintptr, pDbname uintptr, pKey uintptr) { /* sqlite3.c:111133:21: */ codeAttach(tls, pParse, SQLITE_ATTACH, uintptr(unsafe.Pointer(&attach_func)), p, p, pDbname, pKey) } @@ -105738,10 +105782,10 @@ var attach_func = FuncDef{ FnArg: int8(3), // nArg FfuncFlags: U32(SQLITE_UTF8), // pNext FxSFunc: 0, // xValue, xInverse - FzName: ts + 14695 /* "sqlite_attach" */} /* sqlite3.c:111123:24 */ + FzName: ts + 14695 /* "sqlite_attach" */} /* sqlite3.c:111134:24 */ // Expression callback used by sqlite3FixAAAA() routines. -func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111141:12: */ +func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111152:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -105761,7 +105805,7 @@ func fixExprCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:111 } // Select callback used by sqlite3FixAAAA() routines. -func fixSelectCb(tls *libc.TLS, p uintptr, pSelect uintptr) int32 { /* sqlite3.c:111158:12: */ +func fixSelectCb(tls *libc.TLS, p uintptr, pSelect uintptr) int32 { /* sqlite3.c:111169:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -105819,7 +105863,7 @@ __3: // Initialize a DbFixer structure. This routine must be called prior // to passing the structure to one of the sqliteFixAAAA() routines below. -func Xsqlite3FixInit(tls *libc.TLS, pFix uintptr, pParse uintptr, iDb int32, zType uintptr, pName uintptr) { /* sqlite3.c:111198:21: */ +func Xsqlite3FixInit(tls *libc.TLS, pFix uintptr, pParse uintptr, iDb int32, zType uintptr, pName uintptr) { /* sqlite3.c:111209:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb (*DbFixer)(unsafe.Pointer(pFix)).FpParse = pParse @@ -105853,7 +105897,7 @@ func Xsqlite3FixInit(tls *libc.TLS, pFix uintptr, pParse uintptr, iDb int32, zTy // to an object in a different database, an error message is added to // pParse->zErrMsg and these routines return non-zero. If everything // checks out, these routines return 0. -func Xsqlite3FixSrcList(tls *libc.TLS, pFix uintptr, pList uintptr) int32 { /* sqlite3.c:111236:20: */ +func Xsqlite3FixSrcList(tls *libc.TLS, pFix uintptr, pList uintptr) int32 { /* sqlite3.c:111247:20: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -105868,15 +105912,15 @@ func Xsqlite3FixSrcList(tls *libc.TLS, pFix uintptr, pList uintptr) int32 { /* s return res } -func Xsqlite3FixSelect(tls *libc.TLS, pFix uintptr, pSelect uintptr) int32 { /* sqlite3.c:111250:20: */ +func Xsqlite3FixSelect(tls *libc.TLS, pFix uintptr, pSelect uintptr) int32 { /* sqlite3.c:111261:20: */ return Xsqlite3WalkSelect(tls, (pFix + 8 /* &.w */), pSelect) } -func Xsqlite3FixExpr(tls *libc.TLS, pFix uintptr, pExpr uintptr) int32 { /* sqlite3.c:111256:20: */ +func Xsqlite3FixExpr(tls *libc.TLS, pFix uintptr, pExpr uintptr) int32 { /* sqlite3.c:111267:20: */ return Xsqlite3WalkExpr(tls, (pFix + 8 /* &.w */), pExpr) } -func Xsqlite3FixTriggerStep(tls *libc.TLS, pFix uintptr, pStep uintptr) int32 { /* sqlite3.c:111265:20: */ +func Xsqlite3FixTriggerStep(tls *libc.TLS, pFix uintptr, pStep uintptr) int32 { /* sqlite3.c:111276:20: */ for pStep != 0 { if (((Xsqlite3WalkSelect(tls, (pFix+8 /* &.w */), (*TriggerStep)(unsafe.Pointer(pStep)).FpSelect) != 0) || (Xsqlite3WalkExpr(tls, (pFix+8 /* &.w */), (*TriggerStep)(unsafe.Pointer(pStep)).FpWhere) != 0)) || @@ -105963,7 +106007,7 @@ func Xsqlite3FixTriggerStep(tls *libc.TLS, pFix uintptr, pStep uintptr) int32 { // // Setting the auth function to NULL disables this hook. The default // setting of the auth function is NULL. -func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uintptr) int32 { /* sqlite3.c:111367:16: */ +func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uintptr) int32 { /* sqlite3.c:111378:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FxAuth = xAuth (*Sqlite3)(unsafe.Pointer(db)).FpAuthArg = pArg @@ -105976,7 +106020,7 @@ func Xsqlite3_set_authorizer(tls *libc.TLS, db uintptr, xAuth uintptr, pArg uint // Write an error message into pParse->zErrMsg that explains that the // user-supplied authorization function returned an illegal value. -func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111387:13: */ +func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111398:13: */ Xsqlite3ErrorMsg(tls, pParse, ts+14779 /* "authorizer malfu..." */, 0) (*Parse)(unsafe.Pointer(pParse)).Frc = SQLITE_ERROR } @@ -105988,7 +106032,7 @@ func sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:11138 // If SQLITE_IGNORE is returned and pExpr is not NULL, then pExpr is changed // to an SQL NULL expression. Otherwise, if pExpr is NULL, then SQLITE_IGNORE // is treated as SQLITE_DENY. In this case an error is left in pParse. -func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintptr, iDb int32) int32 { /* sqlite3.c:111401:20: */ +func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintptr, iDb int32) int32 { /* sqlite3.c:111412:20: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -106020,7 +106064,7 @@ func Xsqlite3AuthReadCol(tls *libc.TLS, pParse uintptr, zTab uintptr, zCol uintp // If the auth function returns SQLITE_IGNORE, change the TK_COLUMN // instruction into a TK_NULL. If the auth function returns SQLITE_DENY, // then generate an error. -func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uintptr, pTabList uintptr) { /* sqlite3.c:111437:21: */ +func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uintptr, pTabList uintptr) { /* sqlite3.c:111448:21: */ var pTab uintptr = uintptr(0) // The table being read var zCol uintptr // Name of the column of the table var iSrc int32 // Index in pTabList->a[] of table being read @@ -106069,7 +106113,7 @@ func Xsqlite3AuthRead(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSchema uint // either SQLITE_OK (zero) or SQLITE_IGNORE or SQLITE_DENY. If SQLITE_DENY // is returned, then the error count and error message in pParse are // modified appropriately. -func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, zArg2 uintptr, zArg3 uintptr) int32 { /* sqlite3.c:111494:20: */ +func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, zArg2 uintptr, zArg3 uintptr) int32 { /* sqlite3.c:111505:20: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var rc int32 @@ -106101,7 +106145,7 @@ func Xsqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, // Push an authorization context. After this routine is called, the // zArg3 argument to authorization callbacks will be zContext until // popped. Or if pParse==0, this routine is a no-op. -func Xsqlite3AuthContextPush(tls *libc.TLS, pParse uintptr, pContext uintptr, zContext uintptr) { /* sqlite3.c:111543:21: */ +func Xsqlite3AuthContextPush(tls *libc.TLS, pParse uintptr, pContext uintptr, zContext uintptr) { /* sqlite3.c:111554:21: */ (*AuthContext)(unsafe.Pointer(pContext)).FpParse = pParse (*AuthContext)(unsafe.Pointer(pContext)).FzAuthContext = (*Parse)(unsafe.Pointer(pParse)).FzAuthContext @@ -106110,7 +106154,7 @@ func Xsqlite3AuthContextPush(tls *libc.TLS, pParse uintptr, pContext uintptr, zC // Pop an authorization context that was previously pushed // by sqlite3AuthContextPush -func Xsqlite3AuthContextPop(tls *libc.TLS, pContext uintptr) { /* sqlite3.c:111558:21: */ +func Xsqlite3AuthContextPop(tls *libc.TLS, pContext uintptr) { /* sqlite3.c:111569:21: */ if (*AuthContext)(unsafe.Pointer(pContext)).FpParse != 0 { (*Parse)(unsafe.Pointer((*AuthContext)(unsafe.Pointer(pContext)).FpParse)).FzAuthContext = (*AuthContext)(unsafe.Pointer(pContext)).FzAuthContext (*AuthContext)(unsafe.Pointer(pContext)).FpParse = uintptr(0) @@ -106125,7 +106169,7 @@ func Xsqlite3AuthContextPop(tls *libc.TLS, pContext uintptr) { /* sqlite3.c:1115 // This routine just records the fact that the lock is desired. The // code to make the lock occur is generated by a later call to // codeTableLocks() which occurs during sqlite3FinishCoding(). -func Xsqlite3TableLock(tls *libc.TLS, pParse uintptr, iDb int32, iTab Pgno, isWriteLock U8, zName uintptr) { /* sqlite3.c:111617:21: */ +func Xsqlite3TableLock(tls *libc.TLS, pParse uintptr, iDb int32, iTab Pgno, isWriteLock U8, zName uintptr) { /* sqlite3.c:111628:21: */ var pToplevel uintptr var i int32 var nBytes int32 @@ -106167,7 +106211,7 @@ func Xsqlite3TableLock(tls *libc.TLS, pParse uintptr, iDb int32, iTab Pgno, isWr // Code an OP_TableLock instruction for each table locked by the // statement (configured by calls to sqlite3TableLock()). -func codeTableLocks(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111660:13: */ +func codeTableLocks(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111671:13: */ var i int32 var pVdbe uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe @@ -106191,7 +106235,7 @@ func codeTableLocks(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111660:13: */ // // Note that if an error occurred, it might be the case that // no VDBE code was generated. -func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111699:21: */ +func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111710:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -106335,7 +106379,7 @@ func Xsqlite3FinishCoding(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:111699:2 // Not everything is nestable. This facility is designed to permit // INSERT, UPDATE, and DELETE operations against the schema table. Use // care if you decide to try to use this routine for some other purposes. -func Xsqlite3NestedParse(tls *libc.TLS, pParse uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:111856:21: */ +func Xsqlite3NestedParse(tls *libc.TLS, pParse uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:111867:21: */ bp := tls.Alloc(160) defer tls.Free(160) @@ -106383,7 +106427,7 @@ func Xsqlite3NestedParse(tls *libc.TLS, pParse uintptr, zFormat uintptr, va uint // auxiliary databases added using the ATTACH command. // // See also sqlite3LocateTable(). -func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintptr) uintptr { /* sqlite3.c:111908:22: */ +func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintptr) uintptr { /* sqlite3.c:111919:22: */ var p uintptr = uintptr(0) var i int32 @@ -106459,7 +106503,7 @@ func Xsqlite3FindTable(tls *libc.TLS, db uintptr, zName uintptr, zDatabase uintp // The difference between this routine and sqlite3FindTable() is that this // routine leaves an error message in pParse->zErrMsg where // sqlite3FindTable() does not. -func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr, zDbase uintptr) uintptr { /* sqlite3.c:111986:22: */ +func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr, zDbase uintptr) uintptr { /* sqlite3.c:111997:22: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -106519,7 +106563,7 @@ func Xsqlite3LocateTable(tls *libc.TLS, pParse uintptr, flags U32, zName uintptr // the search to schema (p->pSchema) if it is not NULL. p->pSchema may be // non-NULL if it is part of a view or trigger program definition. See // sqlite3FixSrcList() for details. -func Xsqlite3LocateTableItem(tls *libc.TLS, pParse uintptr, flags U32, p uintptr) uintptr { /* sqlite3.c:112046:22: */ +func Xsqlite3LocateTableItem(tls *libc.TLS, pParse uintptr, flags U32, p uintptr) uintptr { /* sqlite3.c:112057:22: */ var zDb uintptr if (*SrcItem)(unsafe.Pointer(p)).FpSchema != 0 { @@ -106541,7 +106585,7 @@ func Xsqlite3LocateTableItem(tls *libc.TLS, pParse uintptr, flags U32, p uintptr // for duplicate index names is done.) The search order is // TEMP first, then MAIN, then any auxiliary databases added // using the ATTACH command. -func Xsqlite3FindIndex(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:112074:22: */ +func Xsqlite3FindIndex(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) uintptr { /* sqlite3.c:112085:22: */ var p uintptr = uintptr(0) var i int32 // All mutexes are required for schema access. Make sure we hold them. @@ -106568,7 +106612,7 @@ func Xsqlite3FindIndex(tls *libc.TLS, db uintptr, zName uintptr, zDb uintptr) ui } // Reclaim the memory used by an index -func Xsqlite3FreeIndex(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:112094:21: */ +func Xsqlite3FreeIndex(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:112105:21: */ Xsqlite3DeleteIndexSamples(tls, db, p) Xsqlite3ExprDelete(tls, db, (*Index)(unsafe.Pointer(p)).FpPartIdxWhere) Xsqlite3ExprListDelete(tls, db, (*Index)(unsafe.Pointer(p)).FaColExpr) @@ -106584,7 +106628,7 @@ func Xsqlite3FreeIndex(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:1120 // unlike that index from its Table then remove the index from // the index hash table and free all memory structures associated // with the index. -func Xsqlite3UnlinkAndDeleteIndex(tls *libc.TLS, db uintptr, iDb int32, zIdxName uintptr) { /* sqlite3.c:112114:21: */ +func Xsqlite3UnlinkAndDeleteIndex(tls *libc.TLS, db uintptr, iDb int32, zIdxName uintptr) { /* sqlite3.c:112125:21: */ var pIndex uintptr var pHash uintptr @@ -106616,7 +106660,7 @@ func Xsqlite3UnlinkAndDeleteIndex(tls *libc.TLS, db uintptr, iDb int32, zIdxName // // Entry 0 (the "main" database) and entry 1 (the "temp" database) // are never candidates for being collapsed. -func Xsqlite3CollapseDatabaseArray(tls *libc.TLS, db uintptr) { /* sqlite3.c:112147:21: */ +func Xsqlite3CollapseDatabaseArray(tls *libc.TLS, db uintptr) { /* sqlite3.c:112158:21: */ var i int32 var j int32 for i = libc.AssignInt32(&j, 2); i < (*Sqlite3)(unsafe.Pointer(db)).FnDb; i++ { @@ -106642,7 +106686,7 @@ func Xsqlite3CollapseDatabaseArray(tls *libc.TLS, db uintptr) { /* sqlite3.c:112 // Reset the schema for the database at index iDb. Also reset the // TEMP schema. The reset is deferred if db->nSchemaLock is not zero. // Deferred resets may be run by calling with iDb<0. -func Xsqlite3ResetOneSchema(tls *libc.TLS, db uintptr, iDb int32) { /* sqlite3.c:112174:21: */ +func Xsqlite3ResetOneSchema(tls *libc.TLS, db uintptr, iDb int32) { /* sqlite3.c:112185:21: */ var i int32 if iDb >= 0 { @@ -106663,7 +106707,7 @@ func Xsqlite3ResetOneSchema(tls *libc.TLS, db uintptr, iDb int32) { /* sqlite3.c // Erase all schema information from all attached databases (including // "main" and "temp") for a single database connection. -func Xsqlite3ResetAllSchemasOfConnection(tls *libc.TLS, db uintptr) { /* sqlite3.c:112198:21: */ +func Xsqlite3ResetAllSchemasOfConnection(tls *libc.TLS, db uintptr) { /* sqlite3.c:112209:21: */ var i int32 Xsqlite3BtreeEnterAll(tls, db) for i = 0; i < (*Sqlite3)(unsafe.Pointer(db)).FnDb; i++ { @@ -106685,13 +106729,13 @@ func Xsqlite3ResetAllSchemasOfConnection(tls *libc.TLS, db uintptr) { /* sqlite3 } // This routine is called when a commit occurs. -func Xsqlite3CommitInternalChanges(tls *libc.TLS, db uintptr) { /* sqlite3.c:112222:21: */ +func Xsqlite3CommitInternalChanges(tls *libc.TLS, db uintptr) { /* sqlite3.c:112233:21: */ *(*U32)(unsafe.Pointer(db + 44 /* &.mDbFlags */)) &= (libc.Uint32FromInt32(libc.CplInt32(DBFLAG_SchemaChange))) } // Delete memory allocated for the column names of a table or view (the // Table.aCol[] array). -func Xsqlite3DeleteColumnNames(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112230:21: */ +func Xsqlite3DeleteColumnNames(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112241:21: */ var i int32 var pCol uintptr @@ -106733,7 +106777,7 @@ func Xsqlite3DeleteColumnNames(tls *libc.TLS, db uintptr, pTable uintptr) { /* s // lookaside memory, but some ephemeral Table objects do.) Or the // db parameter can be used with db->pnBytesFreed to measure the memory // used by the Table object. -func deleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112260:29: */ +func deleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112271:29: */ var pIndex uintptr var pNext uintptr @@ -106766,7 +106810,7 @@ func deleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:11226 } -func Xsqlite3DeleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112311:21: */ +func Xsqlite3DeleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3.c:112322:21: */ // Do not delete the table until the reference count reaches zero. if !(pTable != 0) { return @@ -106779,7 +106823,7 @@ func Xsqlite3DeleteTable(tls *libc.TLS, db uintptr, pTable uintptr) { /* sqlite3 // Unlink the given table from the hash tables and the delete the // table structure with all its indices and foreign keys. -func Xsqlite3UnlinkAndDeleteTable(tls *libc.TLS, db uintptr, iDb int32, zTabName uintptr) { /* sqlite3.c:112323:21: */ +func Xsqlite3UnlinkAndDeleteTable(tls *libc.TLS, db uintptr, iDb int32, zTabName uintptr) { /* sqlite3.c:112334:21: */ var p uintptr var pDb uintptr @@ -106801,7 +106845,7 @@ func Xsqlite3UnlinkAndDeleteTable(tls *libc.TLS, db uintptr, iDb int32, zTabName // Tokens are often just pointers into the original SQL text and so // are not \000 terminated and are not persistent. The returned string // is \000 terminated and is persistent. -func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { /* sqlite3.c:112351:21: */ +func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { /* sqlite3.c:112362:21: */ var zName uintptr if pName != 0 { zName = Xsqlite3DbStrNDup(tls, db, (*Token)(unsafe.Pointer(pName)).Fz, uint64((*Token)(unsafe.Pointer(pName)).Fn)) @@ -106814,7 +106858,7 @@ func Xsqlite3NameFromToken(tls *libc.TLS, db uintptr, pName uintptr) uintptr { / // Open the sqlite_schema table stored in database number iDb for // writing. The table is opened using cursor 0. -func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c:112366:21: */ +func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c:112377:21: */ var v uintptr = Xsqlite3GetVdbe(tls, p) Xsqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), ts+8814 /* "sqlite_master" */) Xsqlite3VdbeAddOp4Int(tls, v, OP_OpenWrite, 0, SCHEMA_ROOT, iDb, 5) @@ -106827,7 +106871,7 @@ func Xsqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { /* sqlite3.c // of a database ("main", "temp" or the name of an attached db). This // function returns the index of the named database in db->aDb[], or // -1 if the named db cannot be found. -func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:112381:20: */ +func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:112392:20: */ var i int32 = -1 // Database number if zName != 0 { var pDb uintptr @@ -106863,7 +106907,7 @@ func Xsqlite3FindDbName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sql // "temp" or the name of an attached db). This routine returns the // index of the named database in db->aDb[], or -1 if the named db // does not exist. -func Xsqlite3FindDb(tls *libc.TLS, db uintptr, pName uintptr) int32 { /* sqlite3.c:112401:20: */ +func Xsqlite3FindDb(tls *libc.TLS, db uintptr, pName uintptr) int32 { /* sqlite3.c:112412:20: */ var i int32 // Database number var zName uintptr // Name we are searching for zName = Xsqlite3NameFromToken(tls, db, pName) @@ -106887,7 +106931,7 @@ func Xsqlite3FindDb(tls *libc.TLS, db uintptr, pName uintptr) int32 { /* sqlite3 // This routine sets the *ppUnqual pointer to point at the token (pName1 or // pName2) that stores the unqualified table name. The index of the // database "xxx" is returned. -func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pUnqual uintptr) int32 { /* sqlite3.c:112426:20: */ +func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pUnqual uintptr) int32 { /* sqlite3.c:112437:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -106914,7 +106958,7 @@ func Xsqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 u } // True if PRAGMA writable_schema is ON -func Xsqlite3WritableSchema(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:112459:20: */ +func Xsqlite3WritableSchema(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:112470:20: */ return (libc.Bool32(((*Sqlite3)(unsafe.Pointer(db)).Fflags & (uint64(SQLITE_WriteSchema | SQLITE_Defensive))) == uint64(SQLITE_WriteSchema))) } @@ -106928,7 +106972,7 @@ func Xsqlite3WritableSchema(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:1124 // When parsing the sqlite_schema table, this routine also checks to // make sure the "type", "name", and "tbl_name" columns are consistent // with the SQL. -func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType uintptr, zTblName uintptr) int32 { /* sqlite3.c:112481:20: */ +func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType uintptr, zTblName uintptr) int32 { /* sqlite3.c:112492:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -106959,7 +107003,7 @@ func Xsqlite3CheckObjectName(tls *libc.TLS, pParse uintptr, zName uintptr, zType } // Return the PRIMARY KEY index of a table -func Xsqlite3PrimaryKeyIndex(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:112519:22: */ +func Xsqlite3PrimaryKeyIndex(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:112530:22: */ var p uintptr for p = (*Table)(unsafe.Pointer(pTab)).FpIndex; (p != 0) && !((int32(*(*uint16)(unsafe.Pointer((p) + 100 /* &.idxType */)) & 0x3 >> 0)) == SQLITE_IDXTYPE_PRIMARYKEY); p = (*Index)(unsafe.Pointer(p)).FpNext { } @@ -106970,7 +107014,7 @@ func Xsqlite3PrimaryKeyIndex(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c // for the column iCol in the table (as defined by the CREATE TABLE statement) // find the (first) offset of that column in index pIdx. Or return -1 // if column iCol is not used in index pIdx. -func Xsqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol I16) I16 { /* sqlite3.c:112531:20: */ +func Xsqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol I16) I16 { /* sqlite3.c:112542:20: */ var i int32 for i = 0; i < int32((*Index)(unsafe.Pointer(pIdx)).FnColumn); i++ { if int32(iCol) == int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) { @@ -106990,7 +107034,7 @@ func Xsqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol I16) I16 { /* // and only there are VIRTUAL columns to the left. // // If SQLITE_OMIT_GENERATED_COLUMNS, this routine is a no-op macro. -func Xsqlite3StorageColumnToTable(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112551:20: */ +func Xsqlite3StorageColumnToTable(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112562:20: */ if ((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_HasVirtual)) != 0 { var i int32 for i = 0; i <= int32(iCol); i++ { @@ -107037,7 +107081,7 @@ func Xsqlite3StorageColumnToTable(tls *libc.TLS, pTab uintptr, iCol I16) I16 { / // this routine is a no-op macro. If the pTab does not have any virtual // columns, then this routine is no-op that always return iCol. If iCol // is negative (indicating the ROWID column) then this routine return iCol. -func Xsqlite3TableColumnToStorage(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112599:20: */ +func Xsqlite3TableColumnToStorage(tls *libc.TLS, pTab uintptr, iCol I16) I16 { /* sqlite3.c:112610:20: */ var i int32 var n I16 @@ -107075,7 +107119,7 @@ func Xsqlite3TableColumnToStorage(tls *libc.TLS, pTab uintptr, iCol I16) I16 { / // routines will be called to add more information to this record. // At the end of the CREATE TABLE statement, the sqlite3EndTable() routine // is called to complete the construction of the new table record. -func Xsqlite3StartTable(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, isTemp int32, isView int32, isVirtual int32, noErr int32) { /* sqlite3.c:112633:21: */ +func Xsqlite3StartTable(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, isTemp int32, isView int32, isVirtual int32, noErr int32) { /* sqlite3.c:112644:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -107336,8 +107380,8 @@ var aCode = [4]U8{ U8(SQLITE_CREATE_TEMP_TABLE), U8(SQLITE_CREATE_VIEW), U8(SQLITE_CREATE_TEMP_VIEW), -} /* sqlite3.c:112680:21 */ -var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* sqlite3.c:112768:23 */ +} /* sqlite3.c:112691:21 */ +var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* sqlite3.c:112779:23 */ // Set properties of a table column based on the (magical) // name of the column. @@ -107347,7 +107391,7 @@ var nullRow = [6]int8{int8(6), int8(0), int8(0), int8(0), int8(0), int8(0)} /* s // with any application-generated triggers. // Clean up the data structures associated with the RETURNING clause. -func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite3.c:112852:13: */ +func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite3.c:112863:13: */ var pHash uintptr pHash = ((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*32)).FpSchema + 56 /* &.trigHash */) Xsqlite3HashInsert(tls, pHash, ts+15135 /* "sqlite_returning" */, uintptr(0)) @@ -107369,7 +107413,7 @@ func sqlite3DeleteReturning(tls *libc.TLS, db uintptr, pRet uintptr) { /* sqlite // is attached to a DELETE, INSERT, or UPDATE, so construct it as a // RETURNING trigger instead. It will then be converted into the appropriate // type on the first call to sqlite3TriggersExist(). -func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:112876:21: */ +func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:112887:21: */ var pRet uintptr var pHash uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -107418,7 +107462,7 @@ func Xsqlite3AddReturning(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sql // in a CREATE TABLE statement. sqlite3StartTable() gets called // first to get things going. Then this routine is called for each // column. -func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintptr) { /* sqlite3.c:112923:21: */ +func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintptr) { /* sqlite3.c:112934:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -107491,7 +107535,7 @@ func Xsqlite3AddColumn(tls *libc.TLS, pParse uintptr, pName uintptr, pType uintp // parsing a CREATE TABLE statement. A "NOT NULL" constraint has // been seen on a column. This routine sets the notNull flag on // the column currently under construction. -func Xsqlite3AddNotNull(tls *libc.TLS, pParse uintptr, onError int32) { /* sqlite3.c:112995:21: */ +func Xsqlite3AddNotNull(tls *libc.TLS, pParse uintptr, onError int32) { /* sqlite3.c:113006:21: */ var p uintptr var pCol uintptr p = (*Parse)(unsafe.Pointer(pParse)).FpNewTable @@ -107538,7 +107582,7 @@ func Xsqlite3AddNotNull(tls *libc.TLS, pParse uintptr, onError int32) { /* sqlit // // If none of the substrings in the above table are found, // SQLITE_AFF_NUMERIC is returned. -func Xsqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) int8 { /* sqlite3.c:113042:21: */ +func Xsqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) int8 { /* sqlite3.c:113053:21: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -107612,7 +107656,7 @@ func Xsqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) int8 { /* sq // // This routine is called by the parser while in the middle of // parsing a CREATE TABLE statement. -func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113119:21: */ +func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113130:21: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -107664,7 +107708,7 @@ func Xsqlite3AddDefaultValue(tls *libc.TLS, pParse uintptr, pExpr uintptr, zStar // if the expression is just a TK_STRING with an optional COLLATE clause. // If the expression is anything other than TK_STRING, the expression is // unchanged. -func sqlite3StringToId(tls *libc.TLS, p uintptr) { /* sqlite3.c:113178:13: */ +func sqlite3StringToId(tls *libc.TLS, p uintptr) { /* sqlite3.c:113189:13: */ if int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_STRING { (*Expr)(unsafe.Pointer(p)).Fop = U8(TK_ID) } else if (int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_COLLATE) && (int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(p)).FpLeft)).Fop) == TK_STRING) { @@ -107673,7 +107717,7 @@ func sqlite3StringToId(tls *libc.TLS, p uintptr) { /* sqlite3.c:113178:13: */ } // Tag the given column as being part of the PRIMARY KEY -func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { /* sqlite3.c:113189:13: */ +func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { /* sqlite3.c:113200:13: */ *(*U16)(unsafe.Pointer(pCol + 28 /* &.colFlags */)) |= U16((COLFLAG_PRIMKEY)) if (int32((*Column)(unsafe.Pointer(pCol)).FcolFlags) & COLFLAG_GENERATED) != 0 { @@ -107698,7 +107742,7 @@ func makeColumnPartOfPrimaryKey(tls *libc.TLS, pParse uintptr, pCol uintptr) { / // // If the key is not an INTEGER PRIMARY KEY, then create a unique // index for the key. No index is created for INTEGER PRIMARY KEYs. -func Xsqlite3AddPrimaryKey(tls *libc.TLS, pParse uintptr, pList uintptr, onError int32, autoInc int32, sortOrder int32) { /* sqlite3.c:113219:21: */ +func Xsqlite3AddPrimaryKey(tls *libc.TLS, pParse uintptr, pList uintptr, onError int32, autoInc int32, sortOrder int32) { /* sqlite3.c:113230:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -107828,7 +107872,7 @@ primary_key_exit: } // Add a new CHECK constraint to the table currently under construction. -func Xsqlite3AddCheckConstraint(tls *libc.TLS, pParse uintptr, pCheckExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113294:21: */ +func Xsqlite3AddCheckConstraint(tls *libc.TLS, pParse uintptr, pCheckExpr uintptr, zStart uintptr, zEnd uintptr) { /* sqlite3.c:113305:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -107858,7 +107902,7 @@ func Xsqlite3AddCheckConstraint(tls *libc.TLS, pParse uintptr, pCheckExpr uintpt // Set the collation function of the most recently parsed table column // to the CollSeq given. -func Xsqlite3AddCollateType(tls *libc.TLS, pParse uintptr, pToken uintptr) { /* sqlite3.c:113328:21: */ +func Xsqlite3AddCollateType(tls *libc.TLS, pParse uintptr, pToken uintptr) { /* sqlite3.c:113339:21: */ var p uintptr var i int32 var zColl uintptr // Dequoted name of collation sequence @@ -107895,7 +107939,7 @@ func Xsqlite3AddCollateType(tls *libc.TLS, pParse uintptr, pToken uintptr) { /* // Change the most recently parsed column to be a GENERATED ALWAYS AS // column. -func Xsqlite3AddGenerated(tls *libc.TLS, pParse uintptr, pExpr uintptr, pType uintptr) { /* sqlite3.c:113363:21: */ +func Xsqlite3AddGenerated(tls *libc.TLS, pParse uintptr, pExpr uintptr, pType uintptr) { /* sqlite3.c:113374:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -107990,7 +108034,7 @@ generated_done: // // IMPLEMENTATION-OF: R-34230-56049 SQLite automatically increments // the schema-version whenever the schema changes. -func Xsqlite3ChangeCookie(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:113431:21: */ +func Xsqlite3ChangeCookie(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:113442:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe @@ -108004,7 +108048,7 @@ func Xsqlite3ChangeCookie(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3 // // The estimate is conservative. It might be larger that what is // really needed. -func identLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:113447:12: */ +func identLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:113458:12: */ var n int32 n = 0 __1: @@ -108039,7 +108083,7 @@ __3: // characters, does not begin with a digit and is not an SQL keyword, // then it is copied to the output buffer exactly as it is. Otherwise, // it is quoted using double-quotes. -func identPut(tls *libc.TLS, z uintptr, pIdx uintptr, zSignedIdent uintptr) { /* sqlite3.c:113468:13: */ +func identPut(tls *libc.TLS, z uintptr, pIdx uintptr, zSignedIdent uintptr) { /* sqlite3.c:113479:13: */ var zIdent uintptr = zSignedIdent var i int32 var j int32 @@ -108075,7 +108119,7 @@ func identPut(tls *libc.TLS, z uintptr, pIdx uintptr, zSignedIdent uintptr) { /* // Generate a CREATE TABLE statement appropriate for the given // table. Memory to hold the text of the statement is obtained // from sqliteMalloc() and must be freed by the calling function. -func createTableStmt(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:113496:13: */ +func createTableStmt(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:113507:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -108167,11 +108211,11 @@ var azType1 = [5]uintptr{ /* SQLITE_AFF_NUMERIC */ ts + 15601, /* " NUM" */ /* SQLITE_AFF_INTEGER */ ts + 15606, /* " INT" */ /* SQLITE_AFF_REAL */ ts + 15611, /* " REAL" */ -} /* sqlite3.c:113526:23 */ +} /* sqlite3.c:113537:23 */ // Resize an Index object to hold N columns total. Return SQLITE_OK // on success and SQLITE_NOMEM on an OOM error. -func resizeIndexObject(tls *libc.TLS, db uintptr, pIdx uintptr, N int32) int32 { /* sqlite3.c:113564:12: */ +func resizeIndexObject(tls *libc.TLS, db uintptr, pIdx uintptr, N int32) int32 { /* sqlite3.c:113575:12: */ var zExtra uintptr var nByte int32 if int32((*Index)(unsafe.Pointer(pIdx)).FnColumn) >= N { @@ -108200,7 +108244,7 @@ func resizeIndexObject(tls *libc.TLS, db uintptr, pIdx uintptr, N int32) int32 { } // Estimate the total row width for a table. -func estimateTableWidth(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:113591:13: */ +func estimateTableWidth(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:113602:13: */ var wTable uint32 = uint32(0) var pTabCol uintptr var i int32 @@ -108229,7 +108273,7 @@ __3: } // Estimate the average size of a row for an index. -func estimateIndexWidth(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113605:13: */ +func estimateIndexWidth(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113616:13: */ var wIndex uint32 = uint32(0) var i int32 var aCol uintptr = (*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FpTable)).FaCol @@ -108249,7 +108293,7 @@ func estimateIndexWidth(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113605:13: * // Return true if column number x is any of the first nCol entries of aiCol[]. // This is used to determine if the column number x appears in any of the // first nCol entries of an index. -func hasColumn(tls *libc.TLS, aiCol uintptr, nCol int32, x int32) int32 { /* sqlite3.c:113621:12: */ +func hasColumn(tls *libc.TLS, aiCol uintptr, nCol int32, x int32) int32 { /* sqlite3.c:113632:12: */ for libc.PostDecInt32(&nCol, 1) > 0 { if x == int32(*(*I16)(unsafe.Pointer(libc.PostIncUintptr(&aiCol, 2)))) { @@ -108270,7 +108314,7 @@ func hasColumn(tls *libc.TLS, aiCol uintptr, nCol int32, x int32) int32 { /* sql // This routine differs from hasColumn() in that both the column and the // collating sequence must match for this routine, but for hasColumn() only // the column name must match. -func isDupColumn(tls *libc.TLS, pIdx uintptr, nKey int32, pPk uintptr, iCol int32) int32 { /* sqlite3.c:113644:12: */ +func isDupColumn(tls *libc.TLS, pIdx uintptr, nKey int32, pPk uintptr, iCol int32) int32 { /* sqlite3.c:113655:12: */ var i int32 var j int32 @@ -108303,7 +108347,7 @@ func isDupColumn(tls *libc.TLS, pIdx uintptr, nKey int32, pPk uintptr, iCol int3 // // The colNotIdxed mask is AND-ed with the SrcList.a[].colUsed mask // to determine if the index is covering index. -func recomputeColumnsNotIndexed(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113683:13: */ +func recomputeColumnsNotIndexed(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:113694:13: */ var m Bitmask = uint64(0) var j int32 var pTab uintptr = (*Index)(unsafe.Pointer(pIdx)).FpTable @@ -108342,7 +108386,7 @@ func recomputeColumnsNotIndexed(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:1136 // indices with the PRIMARY KEY columns. // // For virtual tables, only (1) is performed. -func convertToWithoutRowidTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:113723:13: */ +func convertToWithoutRowidTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:113734:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -108501,7 +108545,7 @@ func convertToWithoutRowidTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { / // Return true if pTab is a virtual table and zName is a shadow table name // for that virtual table. -func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uintptr) int32 { /* sqlite3.c:113874:20: */ +func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uintptr) int32 { /* sqlite3.c:113885:20: */ var nName int32 // Length of zName var pMod uintptr // Module for the virtual table @@ -108533,7 +108577,7 @@ func Xsqlite3IsShadowTableOf(tls *libc.TLS, db uintptr, pTab uintptr, zName uint // // zName is temporarily modified while this routine is running, but is // restored to its original value prior to this routine returning. -func Xsqlite3ShadowTableName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:113898:20: */ +func Xsqlite3ShadowTableName(tls *libc.TLS, db uintptr, zName uintptr) int32 { /* sqlite3.c:113909:20: */ var zTail uintptr // Pointer to the last "_" in zName var pTab uintptr // Table that zName is a shadow of zTail = libc.Xstrrchr(tls, zName, '_') @@ -108570,7 +108614,7 @@ func Xsqlite3ShadowTableName(tls *libc.TLS, db uintptr, zName uintptr) int32 { / // was called to create a table generated from a // "CREATE TABLE ... AS SELECT ..." statement. The column names of // the new table will match the result set of the SELECT. -func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr, tabOpts U8, pSelect uintptr) { /* sqlite3.c:113959:21: */ +func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr, tabOpts U8, pSelect uintptr) { /* sqlite3.c:113970:21: */ bp := tls.Alloc(144) defer tls.Free(144) @@ -108843,7 +108887,7 @@ func Xsqlite3EndTable(tls *libc.TLS, pParse uintptr, pCons uintptr, pEnd uintptr } // The parser calls this routine in order to create a new VIEW -func Xsqlite3CreateView(tls *libc.TLS, pParse uintptr, pBegin uintptr, pName1 uintptr, pName2 uintptr, pCNames uintptr, pSelect uintptr, isTemp int32, noErr int32) { /* sqlite3.c:114247:21: */ +func Xsqlite3CreateView(tls *libc.TLS, pParse uintptr, pBegin uintptr, pName1 uintptr, pName2 uintptr, pCNames uintptr, pSelect uintptr, isTemp int32, noErr int32) { /* sqlite3.c:114258:21: */ bp := tls.Alloc(120) defer tls.Free(120) @@ -108952,7 +108996,7 @@ __10: // The Table structure pTable is really a VIEW. Fill in the names of // the columns of the view in the pTable structure. Return the number // of errors. If an error is seen leave an error message in pParse->zErrMsg. -func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) int32 { /* sqlite3.c:114328:20: */ +func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) int32 { /* sqlite3.c:114339:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -109072,7 +109116,7 @@ func Xsqlite3ViewGetColumnNames(tls *libc.TLS, pParse uintptr, pTable uintptr) i } // Clear the column names from every VIEW in database idx. -func sqliteViewResetAll(tls *libc.TLS, db uintptr, idx int32) { /* sqlite3.c:114459:13: */ +func sqliteViewResetAll(tls *libc.TLS, db uintptr, idx int32) { /* sqlite3.c:114470:13: */ var i uintptr if !((int32((*Schema)(unsafe.Pointer((*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer((db))).FaDb+uintptr(idx)*32)).FpSchema)).FschemaFlags) & (DB_UnresetViews)) == (DB_UnresetViews)) { @@ -109104,7 +109148,7 @@ func sqliteViewResetAll(tls *libc.TLS, db uintptr, idx int32) { /* sqlite3.c:114 // We must continue looping until all tables and indices with // rootpage==iFrom have been converted to have a rootpage of iTo // in order to be certain that we got the right one. -func Xsqlite3RootPageMoved(tls *libc.TLS, db uintptr, iDb int32, iFrom Pgno, iTo Pgno) { /* sqlite3.c:114495:21: */ +func Xsqlite3RootPageMoved(tls *libc.TLS, db uintptr, iDb int32, iFrom Pgno, iTo Pgno) { /* sqlite3.c:114506:21: */ var pElem uintptr var pHash uintptr var pDb uintptr @@ -109130,7 +109174,7 @@ func Xsqlite3RootPageMoved(tls *libc.TLS, db uintptr, iDb int32, iFrom Pgno, iTo // Also write code to modify the sqlite_schema table and internal schema // if a root-page of another table is moved by the btree-layer whilst // erasing iTable (this can happen with an auto-vacuum database). -func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { /* sqlite3.c:114525:13: */ +func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { /* sqlite3.c:114536:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -109160,7 +109204,7 @@ func destroyRootPage(tls *libc.TLS, pParse uintptr, iTable int32, iDb int32) { / // Code to update the sqlite_schema tables and internal schema definitions // in case a root-page belonging to another table is moved by the btree layer // is also added (this can happen with an auto-vacuum database). -func destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:114555:13: */ +func destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:114566:13: */ // If the database may be auto-vacuum capable (if SQLITE_OMIT_AUTOVACUUM // is not defined), then it is important to call OP_Destroy on the // table and index root-pages in order, starting with the numerically @@ -109206,7 +109250,7 @@ func destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:11 // Remove entries from the sqlite_statN tables (for N in (1,2,3)) // after a DROP INDEX or DROP TABLE command. -func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uintptr, zName uintptr) { /* sqlite3.c:114604:13: */ +func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uintptr, zName uintptr) { /* sqlite3.c:114615:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -109225,7 +109269,7 @@ func sqlite3ClearStatTables(tls *libc.TLS, pParse uintptr, iDb int32, zType uint } // Generate code to drop a table. -func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int32, isView int32) { /* sqlite3.c:114627:21: */ +func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int32, isView int32) { /* sqlite3.c:114638:21: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -109289,7 +109333,7 @@ func Xsqlite3CodeDropTable(tls *libc.TLS, pParse uintptr, pTab uintptr, iDb int3 // Return TRUE if shadow tables should be read-only in the current // context. -func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:114700:20: */ +func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:114711:20: */ if ((((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_Defensive)) != uint64(0)) && ((*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx == uintptr(0))) && ((*Sqlite3)(unsafe.Pointer(db)).FnVdbeExec == 0) { @@ -109299,7 +109343,7 @@ func Xsqlite3ReadOnlyShadowTables(tls *libc.TLS, db uintptr) int32 { /* sqlite3. } // Return true if it is not allowed to drop the given table -func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sqlite3.c:114715:12: */ +func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sqlite3.c:114726:12: */ if Xsqlite3_strnicmp(tls, (*Table)(unsafe.Pointer(pTab)).FzName, ts+11401 /* "sqlite_" */, 7) == 0 { if Xsqlite3_strnicmp(tls, ((*Table)(unsafe.Pointer(pTab)).FzName+uintptr(7)), ts+4525 /* "stat" */, 4) == 0 { return 0 @@ -109317,7 +109361,7 @@ func tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) int32 { /* sq // This routine is called to do the work of a DROP TABLE statement. // pName is the name of the table to be dropped. -func Xsqlite3DropTable(tls *libc.TLS, pParse uintptr, pName uintptr, isView int32, noErr int32) { /* sqlite3.c:114731:21: */ +func Xsqlite3DropTable(tls *libc.TLS, pParse uintptr, pName uintptr, isView int32, noErr int32) { /* sqlite3.c:114742:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -109504,7 +109548,7 @@ exit_drop_table: // // The foreign key is set for IMMEDIATE processing. A subsequent call // to sqlite3DeferForeignKey() might change this to DEFERRED. -func Xsqlite3CreateForeignKey(tls *libc.TLS, pParse uintptr, pFromCol uintptr, pTo uintptr, pToCol uintptr, flags int32) { /* sqlite3.c:114848:21: */ +func Xsqlite3CreateForeignKey(tls *libc.TLS, pParse uintptr, pFromCol uintptr, pTo uintptr, pToCol uintptr, flags int32) { /* sqlite3.c:114859:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -109725,7 +109769,7 @@ fk_end: // parameter is 1 for INITIALLY DEFERRED and 0 for INITIALLY IMMEDIATE. // The behavior of the most recently created foreign key is adjusted // accordingly. -func Xsqlite3DeferForeignKey(tls *libc.TLS, pParse uintptr, isDeferred int32) { /* sqlite3.c:114978:21: */ +func Xsqlite3DeferForeignKey(tls *libc.TLS, pParse uintptr, isDeferred int32) { /* sqlite3.c:114989:21: */ var pTab uintptr var pFKey uintptr if ((libc.AssignUintptr(&pTab, (*Parse)(unsafe.Pointer(pParse)).FpNewTable)) == uintptr(0)) || ((libc.AssignUintptr(&pFKey, (*Table)(unsafe.Pointer(pTab)).FpFKey)) == uintptr(0)) { @@ -109744,7 +109788,7 @@ func Xsqlite3DeferForeignKey(tls *libc.TLS, pParse uintptr, isDeferred int32) { // root page number of the index. If memRootPage is negative, then // the index already exists and must be cleared before being refilled and // the root page number of the index is taken from pIndex->tnum. -func sqlite3RefillIndex(tls *libc.TLS, pParse uintptr, pIndex uintptr, memRootPage int32) { /* sqlite3.c:114999:13: */ +func sqlite3RefillIndex(tls *libc.TLS, pParse uintptr, pIndex uintptr, memRootPage int32) { /* sqlite3.c:115010:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -109856,7 +109900,7 @@ func sqlite3RefillIndex(tls *libc.TLS, pParse uintptr, pIndex uintptr, memRootPa // Increase the allocation size to provide an extra nExtra bytes // of 8-byte aligned space after the Index object and return a // pointer to this extra space in *ppExtra. -func Xsqlite3AllocateIndexObject(tls *libc.TLS, db uintptr, nCol I16, nExtra int32, ppExtra uintptr) uintptr { /* sqlite3.c:115105:22: */ +func Xsqlite3AllocateIndexObject(tls *libc.TLS, db uintptr, nCol I16, nExtra int32, ppExtra uintptr) uintptr { /* sqlite3.c:115116:22: */ var p uintptr // Allocated index object var nByte int32 // Bytes of space for Index object + arrays @@ -109881,7 +109925,7 @@ func Xsqlite3AllocateIndexObject(tls *libc.TLS, db uintptr, nCol I16, nExtra int // If expression list pList contains an expression that was parsed with // an explicit "NULLS FIRST" or "NULLS LAST" clause, leave an error in // pParse and return non-zero. Otherwise, return zero. -func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int32 { /* sqlite3.c:115138:20: */ +func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int32 { /* sqlite3.c:115149:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -109914,7 +109958,7 @@ func Xsqlite3HasExplicitNulls(tls *libc.TLS, pParse uintptr, pList uintptr) int3 // pList is a list of columns to be indexed. pList will be NULL if this // is a primary key or unique-constraint on the most recent column added // to the table currently under construction. -func Xsqlite3CreateIndex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pTblName uintptr, pList uintptr, onError int32, pStart uintptr, pPIWhere uintptr, sortOrder int32, ifNotExist int32, idxType U8) { /* sqlite3.c:115166:21: */ +func Xsqlite3CreateIndex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pTblName uintptr, pList uintptr, onError int32, pStart uintptr, pPIWhere uintptr, sortOrder int32, ifNotExist int32, idxType U8) { /* sqlite3.c:115177:21: */ bp := tls.Alloc(256) defer tls.Free(256) @@ -110680,7 +110724,7 @@ __81: goto __101 } Xsqlite3ErrorMsg(tls, pParse, ts+16874 /* "invalid rootpage" */, 0) - (*Parse)(unsafe.Pointer(pParse)).Frc = Xsqlite3CorruptError(tls, 115618) + (*Parse)(unsafe.Pointer(pParse)).Frc = Xsqlite3CorruptError(tls, 115629) goto exit_create_index __101: ; @@ -110871,7 +110915,7 @@ __113: // Apart from that, we have little to go on besides intuition as to // how aiRowEst[] should be initialized. The numbers generated here // are based on typical values found in actual indices. -func Xsqlite3DefaultRowEst(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:115773:21: */ +func Xsqlite3DefaultRowEst(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:115784:21: */ var a uintptr = (*Index)(unsafe.Pointer(pIdx)).FaiRowLogEst var x LogEst var nCopy int32 = func() int32 { @@ -110915,11 +110959,11 @@ func Xsqlite3DefaultRowEst(tls *libc.TLS, pIdx uintptr) { /* sqlite3.c:115773:21 } } -var aVal = [5]LogEst{int16(33), int16(32), int16(30), int16(28), int16(26)} /* sqlite3.c:115775:23 */ +var aVal = [5]LogEst{int16(33), int16(32), int16(30), int16(28), int16(26)} /* sqlite3.c:115786:23 */ // This routine will drop an existing named index. This routine // implements the DROP INDEX statement. -func Xsqlite3DropIndex(tls *libc.TLS, pParse uintptr, pName uintptr, ifExists int32) { /* sqlite3.c:115817:21: */ +func Xsqlite3DropIndex(tls *libc.TLS, pParse uintptr, pName uintptr, ifExists int32) { /* sqlite3.c:115828:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -111037,7 +111081,7 @@ exit_drop_index: // // Otherwise, if the realloc() fails, *pIdx is set to -1, *pnEntry remains // unchanged and a copy of pArray returned. -func Xsqlite3ArrayAllocate(tls *libc.TLS, db uintptr, pArray uintptr, szEntry int32, pnEntry uintptr, pIdx uintptr) uintptr { /* sqlite3.c:115898:21: */ +func Xsqlite3ArrayAllocate(tls *libc.TLS, db uintptr, pArray uintptr, szEntry int32, pnEntry uintptr, pIdx uintptr) uintptr { /* sqlite3.c:115909:21: */ var z uintptr var n Sqlite3_int64 = Sqlite3_int64(libc.AssignPtrInt32(pIdx, *(*int32)(unsafe.Pointer(pnEntry)))) if (n & (n - int64(1))) == int64(0) { @@ -111064,7 +111108,7 @@ func Xsqlite3ArrayAllocate(tls *libc.TLS, db uintptr, pArray uintptr, szEntry in // need be. // // A new IdList is returned, or NULL if malloc() fails. -func Xsqlite3IdListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pToken uintptr) uintptr { /* sqlite3.c:115928:23: */ +func Xsqlite3IdListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pToken uintptr) uintptr { /* sqlite3.c:115939:23: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -111095,7 +111139,7 @@ func Xsqlite3IdListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pToken u } // Delete an IdList. -func Xsqlite3IdListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:115956:21: */ +func Xsqlite3IdListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:115967:21: */ var i int32 if pList == uintptr(0) { return @@ -111109,7 +111153,7 @@ func Xsqlite3IdListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3 // Return the index in pList of the identifier named zId. Return -1 // if not found. -func Xsqlite3IdListIndex(tls *libc.TLS, pList uintptr, zName uintptr) int32 { /* sqlite3.c:115970:20: */ +func Xsqlite3IdListIndex(tls *libc.TLS, pList uintptr, zName uintptr) int32 { /* sqlite3.c:115981:20: */ var i int32 if pList == uintptr(0) { return -1 @@ -111147,7 +111191,7 @@ func Xsqlite3IdListIndex(tls *libc.TLS, pList uintptr, zName uintptr) int32 { /* // If a memory allocation fails or the SrcList becomes too large, leave // the original SrcList unchanged, return NULL, and leave an error message // in pParse. -func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra int32, iStart int32) uintptr { /* sqlite3.c:116011:24: */ +func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra int32, iStart int32) uintptr { /* sqlite3.c:116022:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -111229,7 +111273,7 @@ func Xsqlite3SrcListEnlarge(tls *libc.TLS, pParse uintptr, pSrc uintptr, nExtra // // Both pTable and pDatabase are assumed to be quoted. They are dequoted // before being added to the SrcList. -func Xsqlite3SrcListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pTable uintptr, pDatabase uintptr) uintptr { /* sqlite3.c:116100:24: */ +func Xsqlite3SrcListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pTable uintptr, pDatabase uintptr) uintptr { /* sqlite3.c:116111:24: */ var pItem uintptr var db uintptr // Cannot have C without B @@ -111268,7 +111312,7 @@ func Xsqlite3SrcListAppend(tls *libc.TLS, pParse uintptr, pList uintptr, pTable } // Assign VdbeCursor index numbers to all tables in a SrcList -func Xsqlite3SrcListAssignCursors(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:116145:21: */ +func Xsqlite3SrcListAssignCursors(tls *libc.TLS, pParse uintptr, pList uintptr) { /* sqlite3.c:116156:21: */ var i int32 var pItem uintptr @@ -111300,7 +111344,7 @@ func Xsqlite3SrcListAssignCursors(tls *libc.TLS, pParse uintptr, pList uintptr) } // Delete an entire SrcList including all its substructure. -func Xsqlite3SrcListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:116163:21: */ +func Xsqlite3SrcListDelete(tls *libc.TLS, db uintptr, pList uintptr) { /* sqlite3.c:116174:21: */ var i int32 var pItem uintptr if pList == uintptr(0) { @@ -111363,7 +111407,7 @@ __3: // // Return a new SrcList which encodes is the FROM with the new // term added. -func Xsqlite3SrcListAppendFromTerm(tls *libc.TLS, pParse uintptr, p uintptr, pTable uintptr, pDatabase uintptr, pAlias uintptr, pSubquery uintptr, pOn uintptr, pUsing uintptr) uintptr { /* sqlite3.c:116197:24: */ +func Xsqlite3SrcListAppendFromTerm(tls *libc.TLS, pParse uintptr, p uintptr, pTable uintptr, pDatabase uintptr, pAlias uintptr, pSubquery uintptr, pOn uintptr, pUsing uintptr) uintptr { /* sqlite3.c:116208:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -111427,7 +111471,7 @@ append_from_error: // Add an INDEXED BY or NOT INDEXED clause to the most recently added // element of the source-list passed as the second argument. -func Xsqlite3SrcListIndexedBy(tls *libc.TLS, pParse uintptr, p uintptr, pIndexedBy uintptr) { /* sqlite3.c:116248:21: */ +func Xsqlite3SrcListIndexedBy(tls *libc.TLS, pParse uintptr, p uintptr, pIndexedBy uintptr) { /* sqlite3.c:116259:21: */ if (p != 0) && ((*Token)(unsafe.Pointer(pIndexedBy)).Fn > uint32(0)) { var pItem uintptr @@ -111448,7 +111492,7 @@ func Xsqlite3SrcListIndexedBy(tls *libc.TLS, pParse uintptr, p uintptr, pIndexed // Append the contents of SrcList p2 to SrcList p1 and return the resulting // SrcList. Or, if an error occurs, return NULL. In all cases, p1 and p2 // are deleted by this function. -func Xsqlite3SrcListAppendList(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr) uintptr { /* sqlite3.c:116273:24: */ +func Xsqlite3SrcListAppendList(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr) uintptr { /* sqlite3.c:116284:24: */ if p2 != 0 { var pNew uintptr = Xsqlite3SrcListEnlarge(tls, pParse, p1, (*SrcList)(unsafe.Pointer(p2)).FnSrc, 1) @@ -111465,7 +111509,7 @@ func Xsqlite3SrcListAppendList(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uin // Add the list of function arguments to the SrcList entry for a // table-valued-function. -func Xsqlite3SrcListFuncArgs(tls *libc.TLS, pParse uintptr, p uintptr, pList uintptr) { /* sqlite3.c:116292:21: */ +func Xsqlite3SrcListFuncArgs(tls *libc.TLS, pParse uintptr, p uintptr, pList uintptr) { /* sqlite3.c:116303:21: */ if p != 0 { var pItem uintptr = ((p + 8 /* &.a */) + uintptr(((*SrcList)(unsafe.Pointer(p)).FnSrc-1))*112) @@ -111489,7 +111533,7 @@ func Xsqlite3SrcListFuncArgs(tls *libc.TLS, pParse uintptr, p uintptr, pList uin // The operator is "natural cross join". The A and B operands are stored // in p->a[0] and p->a[1], respectively. The parser initially stores the // operator with A. This routine shifts that operator over to B. -func Xsqlite3SrcListShiftJoinType(tls *libc.TLS, p uintptr) { /* sqlite3.c:116320:21: */ +func Xsqlite3SrcListShiftJoinType(tls *libc.TLS, p uintptr) { /* sqlite3.c:116331:21: */ if p != 0 { var i int32 for i = ((*SrcList)(unsafe.Pointer(p)).FnSrc - 1); i > 0; i-- { @@ -111500,7 +111544,7 @@ func Xsqlite3SrcListShiftJoinType(tls *libc.TLS, p uintptr) { /* sqlite3.c:11632 } // Generate VDBE code for a BEGIN statement. -func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* sqlite3.c:116333:21: */ +func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* sqlite3.c:116344:21: */ var db uintptr var v uintptr var i int32 @@ -111535,7 +111579,7 @@ func Xsqlite3BeginTransaction(tls *libc.TLS, pParse uintptr, type1 int32) { /* s // Generate VDBE code for a COMMIT or ROLLBACK statement. // Code for ROLLBACK is generated if eType==TK_ROLLBACK. Otherwise // code is generated for a COMMIT. -func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sqlite3.c:116369:21: */ +func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sqlite3.c:116380:21: */ var v uintptr var isRollback int32 @@ -111557,7 +111601,7 @@ func Xsqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { /* sql // This function is called by the parser when it parses a command to create, // release or rollback an SQL savepoint. -func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { /* sqlite3.c:116391:21: */ +func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { /* sqlite3.c:116402:21: */ var zName uintptr = Xsqlite3NameFromToken(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pName) if zName != 0 { var v uintptr = Xsqlite3GetVdbe(tls, pParse) @@ -111570,11 +111614,11 @@ func Xsqlite3Savepoint(tls *libc.TLS, pParse uintptr, op int32, pName uintptr) { } } -var az = [3]uintptr{ts + 17234 /* "BEGIN" */, ts + 17256 /* "RELEASE" */, ts + 17240 /* "ROLLBACK" */} /* sqlite3.c:116396:23 */ +var az = [3]uintptr{ts + 17234 /* "BEGIN" */, ts + 17256 /* "RELEASE" */, ts + 17240 /* "ROLLBACK" */} /* sqlite3.c:116407:23 */ // Make sure the TEMP database is open and available for use. Return // the number of errors. Leave any error messages in the pParse structure. -func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:116411:20: */ +func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:116422:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -111600,13 +111644,13 @@ func Xsqlite3OpenTempDatabase(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3. return 0 } -var flags int32 = ((((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OPEN_EXCLUSIVE) | SQLITE_OPEN_DELETEONCLOSE) | SQLITE_OPEN_TEMP_DB) /* sqlite3.c:116416:22 */ +var flags int32 = ((((SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE) | SQLITE_OPEN_EXCLUSIVE) | SQLITE_OPEN_DELETEONCLOSE) | SQLITE_OPEN_TEMP_DB) /* sqlite3.c:116427:22 */ // Record the fact that the schema cookie will need to be verified // for database iDb. The code to actually verify the schema cookie // will occur at the end of the top-level VDBE and will be generated // later, by sqlite3FinishCoding(). -func sqlite3CodeVerifySchemaAtToplevel(tls *libc.TLS, pToplevel uintptr, iDb int32) { /* sqlite3.c:116446:13: */ +func sqlite3CodeVerifySchemaAtToplevel(tls *libc.TLS, pToplevel uintptr, iDb int32) { /* sqlite3.c:116457:13: */ if (libc.Bool32((((*Parse)(unsafe.Pointer(pToplevel)).FcookieMask) & (YDbMask((YDbMask(1))) << (iDb))) != YDbMask(0))) == 0 { *(*YDbMask)(unsafe.Pointer(pToplevel + 116 /* &.cookieMask */)) |= (YDbMask((YDbMask(1))) << (iDb)) @@ -111616,7 +111660,7 @@ func sqlite3CodeVerifySchemaAtToplevel(tls *libc.TLS, pToplevel uintptr, iDb int } } -func Xsqlite3CodeVerifySchema(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:116458:21: */ +func Xsqlite3CodeVerifySchema(tls *libc.TLS, pParse uintptr, iDb int32) { /* sqlite3.c:116469:21: */ sqlite3CodeVerifySchemaAtToplevel(tls, func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -111627,7 +111671,7 @@ func Xsqlite3CodeVerifySchema(tls *libc.TLS, pParse uintptr, iDb int32) { /* sql // If argument zDb is NULL, then call sqlite3CodeVerifySchema() for each // attached database. Otherwise, invoke it for the database named zDb only. -func Xsqlite3CodeVerifyNamedSchema(tls *libc.TLS, pParse uintptr, zDb uintptr) { /* sqlite3.c:116467:21: */ +func Xsqlite3CodeVerifyNamedSchema(tls *libc.TLS, pParse uintptr, zDb uintptr) { /* sqlite3.c:116478:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var i int32 for i = 0; i < (*Sqlite3)(unsafe.Pointer(db)).FnDb; i++ { @@ -111649,7 +111693,7 @@ func Xsqlite3CodeVerifyNamedSchema(tls *libc.TLS, pParse uintptr, zDb uintptr) { // rollback the whole transaction. For operations where all constraints // can be checked before any changes are made to the database, it is never // necessary to undo a write and the checkpoint should not be set. -func Xsqlite3BeginWriteOperation(tls *libc.TLS, pParse uintptr, setStatement int32, iDb int32) { /* sqlite3.c:116491:21: */ +func Xsqlite3BeginWriteOperation(tls *libc.TLS, pParse uintptr, setStatement int32, iDb int32) { /* sqlite3.c:116502:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -111666,7 +111710,7 @@ func Xsqlite3BeginWriteOperation(tls *libc.TLS, pParse uintptr, setStatement int // inserting multiple rows in a table, or inserting a row and index entries.) // If an abort occurs after some of these writes have completed, then it will // be necessary to undo the completed writes. -func Xsqlite3MultiWrite(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116505:21: */ +func Xsqlite3MultiWrite(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116516:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -111690,7 +111734,7 @@ func Xsqlite3MultiWrite(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116505:21: // particular, it prevents us from writing an effective // implementation of sqlite3AssertMayAbort()) and so we have chosen // to take the safe route and skip the optimization. -func Xsqlite3MayAbort(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116526:21: */ +func Xsqlite3MayAbort(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116537:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -111703,7 +111747,7 @@ func Xsqlite3MayAbort(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:116526:21: * // Code an OP_Halt that causes the vdbe to return an SQLITE_CONSTRAINT // error. The onError parameter determines which (if any) of the statement // and/or current transaction is rolled back. -func Xsqlite3HaltConstraint(tls *libc.TLS, pParse uintptr, errCode int32, onError int32, p4 uintptr, p4type I8, p5Errmsg U8) { /* sqlite3.c:116536:21: */ +func Xsqlite3HaltConstraint(tls *libc.TLS, pParse uintptr, errCode int32, onError int32, p4 uintptr, p4type I8, p5Errmsg U8) { /* sqlite3.c:116547:21: */ var v uintptr v = Xsqlite3GetVdbe(tls, pParse) @@ -111716,7 +111760,7 @@ func Xsqlite3HaltConstraint(tls *libc.TLS, pParse uintptr, errCode int32, onErro } // Code an OP_Halt due to UNIQUE or PRIMARY KEY constraint violation. -func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx uintptr) { /* sqlite3.c:116558:21: */ +func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx uintptr) { /* sqlite3.c:116569:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -111755,7 +111799,7 @@ func Xsqlite3UniqueConstraint(tls *libc.TLS, pParse uintptr, onError int32, pIdx } // Code an OP_Halt due to non-unique rowid. -func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab uintptr) { /* sqlite3.c:116594:21: */ +func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab uintptr) { /* sqlite3.c:116605:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -111775,7 +111819,7 @@ func Xsqlite3RowidConstraint(tls *libc.TLS, pParse uintptr, onError int32, pTab // Check to see if pIndex uses the collating sequence pColl. Return // true if it does and false if it does not. -func collationMatch(tls *libc.TLS, zColl uintptr, pIndex uintptr) int32 { /* sqlite3.c:116618:12: */ +func collationMatch(tls *libc.TLS, zColl uintptr, pIndex uintptr) int32 { /* sqlite3.c:116629:12: */ var i int32 for i = 0; i < int32((*Index)(unsafe.Pointer(pIndex)).FnColumn); i++ { @@ -111790,7 +111834,7 @@ func collationMatch(tls *libc.TLS, zColl uintptr, pIndex uintptr) int32 { /* sql // Recompute all indices of pTab that use the collating sequence pColl. // If pColl==0 then recompute all indices of pTab. -func reindexTable(tls *libc.TLS, pParse uintptr, pTab uintptr, zColl uintptr) { /* sqlite3.c:116637:13: */ +func reindexTable(tls *libc.TLS, pParse uintptr, pTab uintptr, zColl uintptr) { /* sqlite3.c:116648:13: */ if !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { var pIndex uintptr // An index associated with pTab @@ -111807,7 +111851,7 @@ func reindexTable(tls *libc.TLS, pParse uintptr, pTab uintptr, zColl uintptr) { // Recompute all indices of all tables in all databases where the // indices use the collating sequence pColl. If pColl==0 then recompute // all indices everywhere. -func reindexDatabases(tls *libc.TLS, pParse uintptr, zColl uintptr) { /* sqlite3.c:116658:13: */ +func reindexDatabases(tls *libc.TLS, pParse uintptr, zColl uintptr) { /* sqlite3.c:116669:13: */ var pDb uintptr // A single database var iDb int32 // The database index number var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // The database connection @@ -111849,7 +111893,7 @@ __3: // Form 2 rebuilds all indices in all databases that use the named // collating function. Forms 3 and 4 rebuild the named index or all // indices associated with the named table. -func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:116690:21: */ +func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr) { /* sqlite3.c:116701:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -111916,7 +111960,7 @@ func Xsqlite3Reindex(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintp // // The caller should invoke sqlite3KeyInfoUnref() on the returned object // when it has finished using it. -func Xsqlite3KeyInfoOfIndex(tls *libc.TLS, pParse uintptr, pIdx uintptr) uintptr { /* sqlite3.c:116750:24: */ +func Xsqlite3KeyInfoOfIndex(tls *libc.TLS, pParse uintptr, pIdx uintptr) uintptr { /* sqlite3.c:116761:24: */ var i int32 var nCol int32 = int32((*Index)(unsafe.Pointer(pIdx)).FnColumn) var nKey int32 = int32((*Index)(unsafe.Pointer(pIdx)).FnKeyCol) @@ -111962,7 +112006,7 @@ func Xsqlite3KeyInfoOfIndex(tls *libc.TLS, pParse uintptr, pIdx uintptr) uintptr } // Create a new CTE object -func Xsqlite3CteNew(tls *libc.TLS, pParse uintptr, pName uintptr, pArglist uintptr, pQuery uintptr, eM10d U8) uintptr { /* sqlite3.c:116794:20: */ +func Xsqlite3CteNew(tls *libc.TLS, pParse uintptr, pName uintptr, pArglist uintptr, pQuery uintptr, eM10d U8) uintptr { /* sqlite3.c:116805:20: */ var pNew uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -111982,7 +112026,7 @@ func Xsqlite3CteNew(tls *libc.TLS, pParse uintptr, pName uintptr, pArglist uintp // Clear information from a Cte object, but do not deallocate storage // for the object itself. -func cteClear(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116823:13: */ +func cteClear(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116834:13: */ Xsqlite3ExprListDelete(tls, db, (*Cte)(unsafe.Pointer(pCte)).FpCols) Xsqlite3SelectDelete(tls, db, (*Cte)(unsafe.Pointer(pCte)).FpSelect) @@ -111990,7 +112034,7 @@ func cteClear(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116823:13: } // Free the contents of the CTE object passed as the second argument. -func Xsqlite3CteDelete(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116833:21: */ +func Xsqlite3CteDelete(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:116844:21: */ cteClear(tls, db, pCte) Xsqlite3DbFree(tls, db, pCte) @@ -112000,7 +112044,7 @@ func Xsqlite3CteDelete(tls *libc.TLS, db uintptr, pCte uintptr) { /* sqlite3.c:1 // WITH clause. The CTE described by teh third argument is added to // the WITH clause of the second argument. If the second argument is // NULL, then a new WITH argument is created. -func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) uintptr { /* sqlite3.c:116845:21: */ +func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) uintptr { /* sqlite3.c:116856:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -112043,7 +112087,7 @@ func Xsqlite3WithAdd(tls *libc.TLS, pParse uintptr, pWith uintptr, pCte uintptr) } // Free the contents of the With object passed as the second argument. -func Xsqlite3WithDelete(tls *libc.TLS, db uintptr, pWith uintptr) { /* sqlite3.c:116892:21: */ +func Xsqlite3WithDelete(tls *libc.TLS, db uintptr, pWith uintptr) { /* sqlite3.c:116903:21: */ if pWith != 0 { var i int32 for i = 0; i < (*With)(unsafe.Pointer(pWith)).FnCte; i++ { @@ -112073,7 +112117,7 @@ func Xsqlite3WithDelete(tls *libc.TLS, db uintptr, pWith uintptr) { /* sqlite3.c // Invoke the 'collation needed' callback to request a collation sequence // in the encoding enc of name zName, length nName. -func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sqlite3.c:116927:13: */ +func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sqlite3.c:116938:13: */ if (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded != 0 { var zExternal uintptr = Xsqlite3DbStrDup(tls, db, zName) @@ -112100,7 +112144,7 @@ func callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { /* sq // of this collation function (for other text encodings) available. Use one // of these instead if they exist. Avoid a UTF-8 <-> UTF-16 conversion if // possible. -func synthCollSeq(tls *libc.TLS, db uintptr, pColl uintptr) int32 { /* sqlite3.c:116956:12: */ +func synthCollSeq(tls *libc.TLS, db uintptr, pColl uintptr) int32 { /* sqlite3.c:116967:12: */ var pColl2 uintptr var z uintptr = (*CollSeq)(unsafe.Pointer(pColl)).FzName var i int32 @@ -112115,7 +112159,7 @@ func synthCollSeq(tls *libc.TLS, db uintptr, pColl uintptr) int32 { /* sqlite3.c return SQLITE_ERROR } -var aEnc = [3]U8{U8(SQLITE_UTF16BE), U8(SQLITE_UTF16LE), U8(SQLITE_UTF8)} /* sqlite3.c:116960:19 */ +var aEnc = [3]U8{U8(SQLITE_UTF16BE), U8(SQLITE_UTF16LE), U8(SQLITE_UTF8)} /* sqlite3.c:116971:19 */ // This routine is called on a collation sequence before it is used to // check that it is defined. An undefined collation sequence exists when @@ -112126,7 +112170,7 @@ var aEnc = [3]U8{U8(SQLITE_UTF16BE), U8(SQLITE_UTF16LE), U8(SQLITE_UTF8)} /* sql // request a definition of the collating sequence. If this doesn't work, // an equivalent collating sequence that uses a text encoding different // from the main database is substituted, if one is available. -func Xsqlite3CheckCollSeq(tls *libc.TLS, pParse uintptr, pColl uintptr) int32 { /* sqlite3.c:116983:20: */ +func Xsqlite3CheckCollSeq(tls *libc.TLS, pParse uintptr, pColl uintptr) int32 { /* sqlite3.c:116994:20: */ if (pColl != 0) && ((*CollSeq)(unsafe.Pointer(pColl)).FxCmp == uintptr(0)) { var zName uintptr = (*CollSeq)(unsafe.Pointer(pColl)).FzName var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -112150,7 +112194,7 @@ func Xsqlite3CheckCollSeq(tls *libc.TLS, pParse uintptr, pColl uintptr) int32 { // Stored immediately after the three collation sequences is a copy of // the collation sequence name. A pointer to this string is stored in // each collation sequence structure. -func findCollSeqEntry(tls *libc.TLS, db uintptr, zName uintptr, create int32) uintptr { /* sqlite3.c:117011:16: */ +func findCollSeqEntry(tls *libc.TLS, db uintptr, zName uintptr, create int32) uintptr { /* sqlite3.c:117022:16: */ var pColl uintptr pColl = Xsqlite3HashFind(tls, (db + 608 /* &.aCollSeq */), zName) @@ -112195,7 +112239,7 @@ func findCollSeqEntry(tls *libc.TLS, db uintptr, zName uintptr, create int32) ui // cannot be found. // // See also: sqlite3LocateCollSeq(), sqlite3GetCollSeq() -func Xsqlite3FindCollSeq(tls *libc.TLS, db uintptr, enc U8, zName uintptr, create int32) uintptr { /* sqlite3.c:117063:24: */ +func Xsqlite3FindCollSeq(tls *libc.TLS, db uintptr, enc U8, zName uintptr, create int32) uintptr { /* sqlite3.c:117074:24: */ var pColl uintptr if zName != 0 { @@ -112211,7 +112255,7 @@ func Xsqlite3FindCollSeq(tls *libc.TLS, db uintptr, enc U8, zName uintptr, creat // Change the text encoding for a database connection. This means that // the pDfltColl must change as well. -func Xsqlite3SetTextEncoding(tls *libc.TLS, db uintptr, enc U8) { /* sqlite3.c:117085:21: */ +func Xsqlite3SetTextEncoding(tls *libc.TLS, db uintptr, enc U8) { /* sqlite3.c:117096:21: */ (*Sqlite3)(unsafe.Pointer(db)).Fenc = enc // EVIDENCE-OF: R-08308-17224 The default collating function for all @@ -112231,7 +112275,7 @@ func Xsqlite3SetTextEncoding(tls *libc.TLS, db uintptr, enc U8) { /* sqlite3.c:1 // sequence can be found. If no collation is found, leave an error message. // // See also: sqlite3LocateCollSeq(), sqlite3FindCollSeq() -func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zName uintptr) uintptr { /* sqlite3.c:117108:24: */ +func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zName uintptr) uintptr { /* sqlite3.c:117119:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -112277,7 +112321,7 @@ func Xsqlite3GetCollSeq(tls *libc.TLS, pParse uintptr, enc U8, pColl uintptr, zN // and generates an error message. // // See also: sqlite3FindCollSeq(), sqlite3GetCollSeq() -func Xsqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) uintptr { /* sqlite3.c:117159:24: */ +func Xsqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) uintptr { /* sqlite3.c:117170:24: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var enc U8 = (*Sqlite3)(unsafe.Pointer(db)).Fenc var initbusy U8 = (*Sqlite3)(unsafe.Pointer(db)).Finit.Fbusy @@ -112318,7 +112362,7 @@ func Xsqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) uintptr // If nArg==(-2) then any function with a non-null xSFunc is // a perfect match and any function with xSFunc NULL is // a non-match. -func matchQuality(tls *libc.TLS, p uintptr, nArg int32, enc U8) int32 { /* sqlite3.c:117202:12: */ +func matchQuality(tls *libc.TLS, p uintptr, nArg int32, enc U8) int32 { /* sqlite3.c:117213:12: */ var match int32 // Wrong number of arguments means "no match" @@ -112354,7 +112398,7 @@ func matchQuality(tls *libc.TLS, p uintptr, nArg int32, enc U8) int32 { /* sqlit // Search a FuncDefHash for a function with the given name. Return // a pointer to the matching FuncDef if found, or 0 if there is no match. -func Xsqlite3FunctionSearch(tls *libc.TLS, h int32, zFunc uintptr) uintptr { /* sqlite3.c:117238:24: */ +func Xsqlite3FunctionSearch(tls *libc.TLS, h int32, zFunc uintptr) uintptr { /* sqlite3.c:117249:24: */ var p uintptr for p = *(*uintptr)(unsafe.Pointer((uintptr(unsafe.Pointer(&Xsqlite3BuiltinFunctions)) /* &.a */) + uintptr(h)*8)); p != 0; p = *(*uintptr)(unsafe.Pointer(p + 64 /* &.u */)) { if Xsqlite3StrICmp(tls, (*FuncDef)(unsafe.Pointer(p)).FzName, zFunc) == 0 { @@ -112365,7 +112409,7 @@ func Xsqlite3FunctionSearch(tls *libc.TLS, h int32, zFunc uintptr) uintptr { /* } // Insert a new FuncDef into a FuncDefHash hash table. -func Xsqlite3InsertBuiltinFuncs(tls *libc.TLS, aDef uintptr, nDef int32) { /* sqlite3.c:117254:21: */ +func Xsqlite3InsertBuiltinFuncs(tls *libc.TLS, aDef uintptr, nDef int32) { /* sqlite3.c:117265:21: */ var i int32 for i = 0; i < nDef; i++ { var pOther uintptr @@ -112403,7 +112447,7 @@ func Xsqlite3InsertBuiltinFuncs(tls *libc.TLS, aDef uintptr, nDef int32) { /* sq // If createFlag is false, then a function with the required name and // number of arguments may be returned even if the eTextRep flag does not // match that requested. -func Xsqlite3FindFunction(tls *libc.TLS, db uintptr, zName uintptr, nArg int32, enc U8, createFlag U8) uintptr { /* sqlite3.c:117299:24: */ +func Xsqlite3FindFunction(tls *libc.TLS, db uintptr, zName uintptr, nArg int32, enc U8, createFlag U8) uintptr { /* sqlite3.c:117310:24: */ var p uintptr // Iterator variable var pBest uintptr = uintptr(0) // Best match found so far var bestScore int32 = 0 // Score of best match @@ -112483,7 +112527,7 @@ func Xsqlite3FindFunction(tls *libc.TLS, db uintptr, zName uintptr, nArg int32, // of the schema hash tables). // // The Schema.cache_size variable is not cleared. -func Xsqlite3SchemaClear(tls *libc.TLS, p uintptr) { /* sqlite3.c:117391:21: */ +func Xsqlite3SchemaClear(tls *libc.TLS, p uintptr) { /* sqlite3.c:117402:21: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -112518,7 +112562,7 @@ func Xsqlite3SchemaClear(tls *libc.TLS, p uintptr) { /* sqlite3.c:117391:21: */ // Find and return the schema associated with a BTree. Create // a new one if necessary. -func Xsqlite3SchemaGet(tls *libc.TLS, db uintptr, pBt uintptr) uintptr { /* sqlite3.c:117423:23: */ +func Xsqlite3SchemaGet(tls *libc.TLS, db uintptr, pBt uintptr) uintptr { /* sqlite3.c:117434:23: */ var p uintptr if pBt != 0 { p = Xsqlite3BtreeSchema(tls, pBt, int32(unsafe.Sizeof(Schema{})), *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{Xsqlite3SchemaClear}))) @@ -112565,7 +112609,7 @@ func Xsqlite3SchemaGet(tls *libc.TLS, db uintptr, pBt uintptr) uintptr { /* sqli // pSrc->a[0].pTab Pointer to the Table object // pSrc->a[0].pIndex Pointer to the INDEXED BY index, if there is one // -func Xsqlite3SrcListLookup(tls *libc.TLS, pParse uintptr, pSrc uintptr) uintptr { /* sqlite3.c:117474:22: */ +func Xsqlite3SrcListLookup(tls *libc.TLS, pParse uintptr, pSrc uintptr) uintptr { /* sqlite3.c:117485:22: */ var pItem uintptr = pSrc + 8 /* &.a */ var pTab uintptr @@ -112595,7 +112639,7 @@ func Xsqlite3SrcListLookup(tls *libc.TLS, pParse uintptr, pSrc uintptr) uintptr // 3) The table is a shadow table, the database connection is in // defensive mode, and the current sqlite3_prepare() // is for a top-level SQL statement. -func tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:117505:12: */ +func tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:117516:12: */ var db uintptr if (*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0 { return (libc.Bool32((*Sqlite3_module)(unsafe.Pointer((*Module)(unsafe.Pointer((*VTable)(unsafe.Pointer(Xsqlite3GetVTable(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, pTab))).FpMod)).FpModule)).FxUpdate == uintptr(0))) @@ -112614,7 +112658,7 @@ func tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlit // Check to make sure the given table is writable. If it is not // writable, generate an error message and return 1. If it is // writable return 0; -func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int32) int32 { /* sqlite3.c:117524:20: */ +func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int32) int32 { /* sqlite3.c:117535:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -112632,7 +112676,7 @@ func Xsqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, viewOk int3 // Evaluate a view and store its result in an ephemeral table. The // pWhere argument is an optional WHERE clause that restricts the // set of rows in the view that are to be added to the ephemeral table. -func Xsqlite3MaterializeView(tls *libc.TLS, pParse uintptr, pView uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr, iCur int32) { /* sqlite3.c:117545:21: */ +func Xsqlite3MaterializeView(tls *libc.TLS, pParse uintptr, pView uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr, iCur int32) { /* sqlite3.c:117556:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -112664,7 +112708,7 @@ func Xsqlite3MaterializeView(tls *libc.TLS, pParse uintptr, pView uintptr, pWher // DELETE FROM table_wxyz WHERE a<5 AND b NOT NULL; // \________/ \________________/ // pTabList pWhere -func Xsqlite3DeleteFrom(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:117683:21: */ +func Xsqlite3DeleteFrom(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:117694:21: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -113260,7 +113304,7 @@ delete_from_cleanup: // starting at iIdxCur) that already points to the index entry to be deleted. // Except, this optimization is disabled if there are BEFORE triggers since // the trigger body might have moved the cursor. -func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTrigger uintptr, iDataCur int32, iIdxCur int32, iPk int32, nPk I16, count U8, onconf U8, eMode U8, iIdxNoSeek int32) { /* sqlite3.c:118128:21: */ +func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTrigger uintptr, iDataCur int32, iIdxCur int32, iPk int32, nPk I16, count U8, onconf U8, eMode U8, iIdxNoSeek int32) { /* sqlite3.c:118139:21: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // Vdbe var iOld int32 = 0 // First register in OLD.* array var iLabel int32 // Label resolved to end of generated code @@ -113397,7 +113441,7 @@ func Xsqlite3GenerateRowDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, pTri // // 3. The "iDataCur" cursor must be already be positioned on the row // that is to be deleted. -func Xsqlite3GenerateRowIndexDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, aRegIdx uintptr, iIdxNoSeek int32) { /* sqlite3.c:118280:21: */ +func Xsqlite3GenerateRowIndexDelete(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, aRegIdx uintptr, iIdxNoSeek int32) { /* sqlite3.c:118291:21: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -113486,7 +113530,7 @@ __3: // This optimization is helpful when doing a DELETE or an INTEGRITY_CHECK // on a table with multiple indices, and especially with the ROWID or // PRIMARY KEY columns of the index. -func Xsqlite3GenerateIndexKey(tls *libc.TLS, pParse uintptr, pIdx uintptr, iDataCur int32, regOut int32, prefixOnly int32, piPartIdxLabel uintptr, pPrior uintptr, regPrior int32) int32 { /* sqlite3.c:118345:20: */ +func Xsqlite3GenerateIndexKey(tls *libc.TLS, pParse uintptr, pIdx uintptr, iDataCur int32, regOut int32, prefixOnly int32, piPartIdxLabel uintptr, pPrior uintptr, regPrior int32) int32 { /* sqlite3.c:118356:20: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var j int32 var regBase int32 @@ -113540,7 +113584,7 @@ func Xsqlite3GenerateIndexKey(tls *libc.TLS, pParse uintptr, pIdx uintptr, iData // If a prior call to sqlite3GenerateIndexKey() generated a jump-over label // because it was a partial index, then this routine should be called to // resolve that label. -func Xsqlite3ResolvePartIdxLabel(tls *libc.TLS, pParse uintptr, iLabel int32) { /* sqlite3.c:118405:21: */ +func Xsqlite3ResolvePartIdxLabel(tls *libc.TLS, pParse uintptr, iLabel int32) { /* sqlite3.c:118416:21: */ if iLabel != 0 { Xsqlite3VdbeResolveLabel(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, iLabel) } @@ -113568,7 +113612,7 @@ func Xsqlite3ResolvePartIdxLabel(tls *libc.TLS, pParse uintptr, iLabel int32) { // #include "vdbeInt.h" // Return the collating function associated with a function. -func sqlite3GetFuncCollSeq(tls *libc.TLS, context uintptr) uintptr { /* sqlite3.c:118439:16: */ +func sqlite3GetFuncCollSeq(tls *libc.TLS, context uintptr) uintptr { /* sqlite3.c:118450:16: */ var pOp uintptr pOp = ((*Vdbe)(unsafe.Pointer((*Sqlite3_context)(unsafe.Pointer(context)).FpVdbe)).FaOp + uintptr(((*Sqlite3_context)(unsafe.Pointer(context)).FiOp-1))*32) @@ -113578,14 +113622,14 @@ func sqlite3GetFuncCollSeq(tls *libc.TLS, context uintptr) uintptr { /* sqlite3. // Indicate that the accumulator load should be skipped on this // iteration of the aggregate loop. -func sqlite3SkipAccumulatorLoad(tls *libc.TLS, context uintptr) { /* sqlite3.c:118452:13: */ +func sqlite3SkipAccumulatorLoad(tls *libc.TLS, context uintptr) { /* sqlite3.c:118463:13: */ (*Sqlite3_context)(unsafe.Pointer(context)).FisError = -1 (*Sqlite3_context)(unsafe.Pointer(context)).FskipFlag = U8(1) } // Implementation of the non-aggregate min() and max() functions -func minmaxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118461:13: */ +func minmaxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118472:13: */ var i int32 var mask int32 // 0 for min() or 0xffffffff for max() var iBest int32 @@ -113615,7 +113659,7 @@ func minmaxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s } // Return the type of the argument. -func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:118491:13: */ +func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:118502:13: */ var i int32 = (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))) - 1) _ = NotUsed @@ -113626,10 +113670,10 @@ func typeofFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / Xsqlite3_result_text(tls, context, azType2[i], -1, uintptr(0)) } -var azType2 = [5]uintptr{ts + 9126 /* "integer" */, ts + 9121 /* "real" */, ts + 17535 /* "text" */, ts + 17540 /* "blob" */, ts + 9116 /* "null" */} /* sqlite3.c:118496:21 */ +var azType2 = [5]uintptr{ts + 9126 /* "integer" */, ts + 9121 /* "real" */, ts + 17535 /* "text" */, ts + 17540 /* "blob" */, ts + 9116 /* "null" */} /* sqlite3.c:118507:21 */ // Implementation of the length() function -func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118516:13: */ +func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118527:13: */ _ = argc switch Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))) { @@ -113678,7 +113722,7 @@ func lengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // // IMP: R-23979-26855 The abs(X) function returns the absolute value of // the numeric argument X. -func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118558:13: */ +func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118569:13: */ _ = argc switch Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))) { @@ -113732,7 +113776,7 @@ func absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli // If both haystack and needle are BLOBs, then the result is one more than // the number of bytes in haystack prior to the first occurrence of needle, // or 0 if needle never occurs in haystack. -func instrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118607:13: */ +func instrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118618:13: */ var zHaystack uintptr var zNeedle uintptr var nHaystack int32 @@ -113847,7 +113891,7 @@ endInstrOOM: } // Implementation of the printf() function. -func printfFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118675:13: */ +func printfFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118686:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -113882,7 +113926,7 @@ func printfFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // If p1 is negative, then we begin abs(p1) from the end of x[]. // // If p2 is negative, return the p2 characters preceding p1. -func substrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118711:13: */ +func substrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118722:13: */ var z uintptr var z2 uintptr var len int32 @@ -113990,7 +114034,7 @@ func substrFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s } // Implementation of the round() function -func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118806:13: */ +func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118817:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -114044,7 +114088,7 @@ func roundFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // the database handle that malloc() has failed and return NULL. // If nByte is larger than the maximum string or blob length, then // raise an SQLITE_TOOBIG exception and return NULL. -func contextMalloc(tls *libc.TLS, context uintptr, nByte I64) uintptr { /* sqlite3.c:118847:13: */ +func contextMalloc(tls *libc.TLS, context uintptr, nByte I64) uintptr { /* sqlite3.c:118858:13: */ var z uintptr var db uintptr = Xsqlite3_context_db_handle(tls, context) @@ -114061,7 +114105,7 @@ func contextMalloc(tls *libc.TLS, context uintptr, nByte I64) uintptr { /* sqlit } // Implementation of the upper() and lower() SQL functions. -func upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118868:13: */ +func upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118879:13: */ var z1 uintptr var z2 uintptr var i int32 @@ -114082,7 +114126,7 @@ func upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq } } -func lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118887:13: */ +func lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118898:13: */ var z1 uintptr var z2 uintptr var i int32 @@ -114111,7 +114155,7 @@ func lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // is. We might as well use the "version()" function as a substitute. // Implementation of random(). Return a random integer. -func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118920:13: */ +func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118931:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -114135,7 +114179,7 @@ func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) // Implementation of randomblob(N). Return a random blob // that is N bytes long. -func randomBlob(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118946:13: */ +func randomBlob(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:118957:13: */ var n Sqlite3_int64 var p uintptr @@ -114153,7 +114197,7 @@ func randomBlob(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // Implementation of the last_insert_rowid() SQL function. The return // value is the same as the sqlite3_last_insert_rowid() API function. -func last_insert_rowid(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118970:13: */ +func last_insert_rowid(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118981:13: */ var db uintptr = Xsqlite3_context_db_handle(tls, context) _ = NotUsed _ = NotUsed2 @@ -114168,7 +114212,7 @@ func last_insert_rowid(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 u // IMP: R-62073-11209 The changes() SQL function is a wrapper // around the sqlite3_changes() C/C++ function and hence follows the same // rules for counting changes. -func changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:118990:13: */ +func changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119001:13: */ var db uintptr = Xsqlite3_context_db_handle(tls, context) _ = NotUsed _ = NotUsed2 @@ -114177,7 +114221,7 @@ func changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { // Implementation of the total_changes() SQL function. The return value is // the same as the sqlite3_total_changes() API function. -func total_changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119004:13: */ +func total_changes(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119015:13: */ var db uintptr = Xsqlite3_context_db_handle(tls, context) _ = NotUsed _ = NotUsed2 @@ -114192,20 +114236,20 @@ type compareInfo = struct { FmatchOne U8 FmatchSet U8 FnoCase U8 -} /* sqlite3.c:119019:1 */ +} /* sqlite3.c:119030:1 */ // For LIKE and GLOB matching on EBCDIC machines, assume that every // character is exactly one byte in size. Also, provde the Utf8Read() // macro for fast reading of the next character in the common case where // the next character is ASCII. -var globInfo = compareInfo{FmatchAll: U8('*'), FmatchOne: U8('?'), FmatchSet: U8('[')} /* sqlite3.c:119039:33 */ +var globInfo = compareInfo{FmatchAll: U8('*'), FmatchOne: U8('?'), FmatchSet: U8('[')} /* sqlite3.c:119050:33 */ // The correct SQL-92 behavior is for the LIKE operator to ignore // case. Thus 'a' LIKE 'A' would be true. -var likeInfoNorm = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_'), FnoCase: U8(1)} /* sqlite3.c:119042:33 */ +var likeInfoNorm = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_'), FnoCase: U8(1)} /* sqlite3.c:119053:33 */ // If SQLITE_CASE_SENSITIVE_LIKE is defined, then the LIKE operator // is case sensitive causing 'a' LIKE 'A' to be false -var likeInfoAlt = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_')} /* sqlite3.c:119045:33 */ +var likeInfoAlt = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_')} /* sqlite3.c:119056:33 */ // Possible error returns from patternMatch() @@ -114245,7 +114289,7 @@ var likeInfoAlt = compareInfo{FmatchAll: U8('%'), FmatchOne: U8('_')} /* sqlite3 // The comments within this routine usually assume glob matching. // // This routine is usually quick, but can be N**2 in the worst case. -func patternCompare(tls *libc.TLS, zPattern uintptr, zString uintptr, pInfo uintptr, matchOther U32) int32 { /* sqlite3.c:119092:12: */ +func patternCompare(tls *libc.TLS, zPattern uintptr, zString uintptr, pInfo uintptr, matchOther U32) int32 { /* sqlite3.c:119103:12: */ bp := tls.Alloc(19) defer tls.Free(19) *(*uintptr)(unsafe.Pointer(bp)) = zPattern @@ -114431,20 +114475,20 @@ func patternCompare(tls *libc.TLS, zPattern uintptr, zString uintptr, pInfo uint // The sqlite3_strglob() interface. Return 0 on a match (like strcmp()) and // non-zero if there is no match. -func Xsqlite3_strglob(tls *libc.TLS, zGlobPattern uintptr, zString uintptr) int32 { /* sqlite3.c:119225:16: */ +func Xsqlite3_strglob(tls *libc.TLS, zGlobPattern uintptr, zString uintptr) int32 { /* sqlite3.c:119236:16: */ return patternCompare(tls, zGlobPattern, zString, uintptr(unsafe.Pointer(&globInfo)), uint32('[')) } // The sqlite3_strlike() interface. Return 0 on a match and non-zero for // a miss - like strcmp(). -func Xsqlite3_strlike(tls *libc.TLS, zPattern uintptr, zStr uintptr, esc uint32) int32 { /* sqlite3.c:119233:16: */ +func Xsqlite3_strlike(tls *libc.TLS, zPattern uintptr, zStr uintptr, esc uint32) int32 { /* sqlite3.c:119244:16: */ return patternCompare(tls, zPattern, zStr, uintptr(unsafe.Pointer(&likeInfoNorm)), esc) } // Count the number of times that the LIKE operator (or GLOB which is // just a variation of LIKE) gets called. This is used for testing // only. -var Xsqlite3_like_count int32 = 0 /* sqlite3.c:119243:16 */ +var Xsqlite3_like_count int32 = 0 /* sqlite3.c:119254:16 */ // Implementation of the like() SQL function. This function implements // the build-in LIKE operator. The first argument to the function is the @@ -114456,7 +114500,7 @@ var Xsqlite3_like_count int32 = 0 /* sqlite3.c:119243:16 */ // // This same function (with a different compareInfo structure) computes // the GLOB operator. -func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119259:13: */ +func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119270:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -114521,7 +114565,7 @@ func likeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // Implementation of the NULLIF(x,y) function. The result is the first // argument if the arguments are different. The result is NULL if the // arguments are equal to each other. -func nullifFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:119330:13: */ +func nullifFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:119341:13: */ var pColl uintptr = sqlite3GetFuncCollSeq(tls, context) _ = NotUsed if Xsqlite3MemCompare(tls, *(*uintptr)(unsafe.Pointer(argv)), *(*uintptr)(unsafe.Pointer(argv + 1*8)), pColl) != 0 { @@ -114531,7 +114575,7 @@ func nullifFunc(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / // Implementation of the sqlite_version() function. The result is the version // of the SQLite library that is running. -func versionFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119346:13: */ +func versionFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119357:13: */ _ = NotUsed _ = NotUsed2 // IMP: R-48699-48617 This function is an SQL wrapper around the @@ -114542,7 +114586,7 @@ func versionFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr // Implementation of the sqlite_source_id() function. The result is a string // that identifies the particular version of the source code used to build // SQLite. -func sourceidFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119362:13: */ +func sourceidFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:119373:13: */ _ = NotUsed _ = NotUsed2 // IMP: R-24470-31136 This function is an SQL wrapper around the @@ -114553,7 +114597,7 @@ func sourceidFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintpt // Implementation of the sqlite_log() function. This is a wrapper around // sqlite3_log(). The return value is NULL. The function exists purely for // its side-effects. -func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119378:13: */ +func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119389:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -114565,7 +114609,7 @@ func errlogFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s // Implementation of the sqlite_compileoption_used() function. // The result is an integer that identifies if the compiler option // was used to build SQLite. -func compileoptionusedFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119394:13: */ +func compileoptionusedFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119405:13: */ var zOptName uintptr _ = argc @@ -114580,7 +114624,7 @@ func compileoptionusedFunc(tls *libc.TLS, context uintptr, argc int32, argv uint // Implementation of the sqlite_compileoption_get() function. // The result is a string that identifies the compiler options // used to build SQLite. -func compileoptiongetFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119418:13: */ +func compileoptiongetFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119429:13: */ var n int32 _ = argc @@ -114595,14 +114639,14 @@ func compileoptiongetFunc(tls *libc.TLS, context uintptr, argc int32, argv uintp var hexdigits = [16]int8{ int8('0'), int8('1'), int8('2'), int8('3'), int8('4'), int8('5'), int8('6'), int8('7'), int8('8'), int8('9'), int8('A'), int8('B'), int8('C'), int8('D'), int8('E'), int8('F'), -} /* sqlite3.c:119436:19 */ +} /* sqlite3.c:119447:19 */ // Implementation of the QUOTE() function. This function takes a single // argument. If the argument is numeric, the return value is the same as // the argument. If the argument is NULL, the return value is the string // "NULL". Otherwise, the argument is enclosed in single quotes with // single-quote escapes. -func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119448:13: */ +func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119459:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -114702,7 +114746,7 @@ func quoteFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq // The unicode() function. Return the integer unicode code-point value // for the first character of the input string. -func unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119524:13: */ +func unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119535:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -114716,7 +114760,7 @@ func unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // The char() function takes zero or more arguments, each of which is // an integer. It constructs a string where each character of the string // is the unicode character for the corresponding integer argument. -func charFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119539:13: */ +func charFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119550:13: */ var z uintptr var zOut uintptr var i int32 @@ -114754,7 +114798,7 @@ func charFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // The hex() function. Interpret the argument as a blob. Return // a hexadecimal rendering as text. -func hexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119580:13: */ +func hexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119591:13: */ var i int32 var n int32 var pBlob uintptr @@ -114792,7 +114836,7 @@ func hexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli } // The zeroblob(N) function returns a zero-filled blob of size N bytes. -func zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119608:13: */ +func zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119619:13: */ var n I64 var rc int32 @@ -114811,7 +114855,7 @@ func zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // them A, B, and C. The result is also a string which is derived // from A by replacing every occurrence of B with C. The match // must be exact. Collating sequences are not used. -func replaceFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119631:13: */ +func replaceFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119642:13: */ var zStr uintptr // The input string A var zPattern uintptr // The pattern string B var zRep uintptr // The replacement string C @@ -114900,7 +114944,7 @@ func replaceFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* // Implementation of the TRIM(), LTRIM(), and RTRIM() functions. // The userdata is 0x1 for left trim, 0x2 for right trim, 0x3 for both. -func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119724:13: */ +func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119735:13: */ var zIn uintptr // Input string var zCharSet uintptr // Set of characters to trim var nIn int32 // Number of bytes in input @@ -115002,8 +115046,8 @@ func trimFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql Xsqlite3_result_text(tls, context, zIn, nIn, libc.UintptrFromInt32(-1)) } -var lenOne = [1]uint8{uint8(1)} /* sqlite3.c:119746:32 */ -var azOne = [1]uintptr{uintptr(ts + 13667 /* " " */)} /* sqlite3.c:119747:26 */ +var lenOne = [1]uint8{uint8(1)} /* sqlite3.c:119757:32 */ +var azOne = [1]uintptr{uintptr(ts + 13667 /* " " */)} /* sqlite3.c:119758:26 */ // IMP: R-25361-16150 This function is omitted from SQLite by default. It // is only available if the SQLITE_SOUNDEX compile-time option is used @@ -115012,7 +115056,7 @@ var azOne = [1]uintptr{uintptr(ts + 13667 /* " " */)} /* sqlite3.c:119747:26 */ // // IMP: R-59782-00072 The soundex(X) function returns a string that is the // soundex encoding of the string X. -func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119836:13: */ +func soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119847:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -115063,10 +115107,10 @@ var iCode = [128]uint8{ uint8(1), uint8(2), uint8(6), uint8(2), uint8(3), uint8(0), uint8(1), uint8(0), uint8(2), uint8(0), uint8(2), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), uint8(1), uint8(2), uint8(3), uint8(0), uint8(1), uint8(2), uint8(0), uint8(0), uint8(2), uint8(2), uint8(4), uint8(5), uint8(5), uint8(0), uint8(1), uint8(2), uint8(6), uint8(2), uint8(3), uint8(0), uint8(1), uint8(0), uint8(2), uint8(0), uint8(2), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), -} /* sqlite3.c:119844:30 */ +} /* sqlite3.c:119855:30 */ // A function that loads a shared-library extension then returns NULL. -func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119889:13: */ +func loadExt(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119900:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -115102,11 +115146,11 @@ type SumCtx1 = struct { Foverflow U8 Fapprox U8 _ [6]byte -} /* sqlite3.c:119920:9 */ +} /* sqlite3.c:119931:9 */ // An instance of the following structure holds the context of a // sum() or avg() aggregate computation. -type SumCtx = SumCtx1 /* sqlite3.c:119920:23 */ +type SumCtx = SumCtx1 /* sqlite3.c:119931:23 */ // Routines used to compute the sum, average, and total. // @@ -115116,7 +115160,7 @@ type SumCtx = SumCtx1 /* sqlite3.c:119920:23 */ // SUM might return an integer if it never encounters a floating point // value. TOTAL never fails, but SUM might through an exception if // it overflows an integer. -func sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119939:13: */ +func sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119950:13: */ var p uintptr var type1 int32 @@ -115138,7 +115182,7 @@ func sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqli } } -func sumInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119961:13: */ +func sumInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:119972:13: */ var p uintptr var type1 int32 @@ -115161,7 +115205,7 @@ func sumInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* s } } -func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119986:13: */ +func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119997:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) if (p != 0) && ((*SumCtx)(unsafe.Pointer(p)).Fcnt > int64(0)) { @@ -115175,7 +115219,7 @@ func sumFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119986:13: */ } } -func avgFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119999:13: */ +func avgFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120010:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) if (p != 0) && ((*SumCtx)(unsafe.Pointer(p)).Fcnt > int64(0)) { @@ -115183,7 +115227,7 @@ func avgFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:119999:13: */ } } -func totalFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120006:13: */ +func totalFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120017:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) // (double)0 In case of SQLITE_OMIT_FLOATING_POINT... @@ -115197,14 +115241,14 @@ func totalFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120006:13: */ // The following structure keeps track of state information for the // count() aggregate function. -type CountCtx1 = struct{ Fn I64 } /* sqlite3.c:120017:9 */ +type CountCtx1 = struct{ Fn I64 } /* sqlite3.c:120028:9 */ // The following structure keeps track of state information for the // count() aggregate function. -type CountCtx = CountCtx1 /* sqlite3.c:120017:25 */ +type CountCtx = CountCtx1 /* sqlite3.c:120028:25 */ // Routines to implement the count() aggregate function. -func countStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120028:13: */ +func countStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120039:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, int32(unsafe.Sizeof(CountCtx{}))) if ((argc == 0) || (SQLITE_NULL != Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(argv))))) && (p != 0) { @@ -115218,7 +115262,7 @@ func countStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sq } -func countFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120044:13: */ +func countFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120055:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, context, 0) Xsqlite3_result_int64(tls, context, func() int64 { @@ -115229,7 +115273,7 @@ func countFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120044:13: */ }()) } -func countInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:120050:13: */ +func countInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:120061:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, ctx, int32(unsafe.Sizeof(CountCtx{}))) // p is always non-NULL since countStep() will have been called first @@ -115239,7 +115283,7 @@ func countInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sql } // Routines to implement min() and max() aggregate functions. -func minmaxStep(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:120068:13: */ +func minmaxStep(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { /* sqlite3.c:120079:13: */ var pArg uintptr = *(*uintptr)(unsafe.Pointer(argv)) var pBest uintptr _ = NotUsed @@ -115277,7 +115321,7 @@ func minmaxStep(tls *libc.TLS, context uintptr, NotUsed int32, argv uintptr) { / } } -func minMaxValueFinalize(tls *libc.TLS, context uintptr, bValue int32) { /* sqlite3.c:120106:13: */ +func minMaxValueFinalize(tls *libc.TLS, context uintptr, bValue int32) { /* sqlite3.c:120117:13: */ var pRes uintptr pRes = Xsqlite3_aggregate_context(tls, context, 0) if pRes != 0 { @@ -115290,16 +115334,16 @@ func minMaxValueFinalize(tls *libc.TLS, context uintptr, bValue int32) { /* sqli } } -func minMaxValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120117:13: */ +func minMaxValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120128:13: */ minMaxValueFinalize(tls, context, 1) } -func minMaxFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120123:13: */ +func minMaxFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120134:13: */ minMaxValueFinalize(tls, context, 0) } // group_concat(EXPR, ?SEPARATOR?) -func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120130:13: */ +func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120141:13: */ var zVal uintptr var pAccum uintptr var zSep uintptr @@ -115335,7 +115379,7 @@ func groupConcatStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { } } -func groupConcatInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120163:13: */ +func groupConcatInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120174:13: */ var n int32 var pAccum uintptr @@ -115364,7 +115408,7 @@ func groupConcatInverse(tls *libc.TLS, context uintptr, argc int32, argv uintptr } } -func groupConcatFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120194:13: */ +func groupConcatFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120205:13: */ var pAccum uintptr pAccum = Xsqlite3_aggregate_context(tls, context, 0) if pAccum != 0 { @@ -115379,7 +115423,7 @@ func groupConcatFinalize(tls *libc.TLS, context uintptr) { /* sqlite3.c:120194:1 } } -func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120209:13: */ +func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120220:13: */ var pAccum uintptr pAccum = Xsqlite3_aggregate_context(tls, context, 0) if pAccum != 0 { @@ -115397,7 +115441,7 @@ func groupConcatValue(tls *libc.TLS, context uintptr) { /* sqlite3.c:120209:13: // This routine does per-connection function registration. Most // of the built-in functions above are part of the global function set. // This routine only deals with those that are not global. -func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { /* sqlite3.c:120232:21: */ +func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { /* sqlite3.c:120243:21: */ var rc int32 = Xsqlite3_overload_function(tls, db, ts+17657 /* "MATCH" */, 2) if rc == SQLITE_NOMEM { @@ -115408,7 +115452,7 @@ func Xsqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { // Re-register the built-in LIKE functions. The caseSensitive // parameter determines whether or not the LIKE operator is case // sensitive. -func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int32) { /* sqlite3.c:120245:21: */ +func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int32) { /* sqlite3.c:120256:21: */ var pInfo uintptr var flags int32 if caseSensitive != 0 { @@ -115443,7 +115487,7 @@ func Xsqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int3 // the function (default for LIKE). If the function makes the distinction // between uppercase and lowercase (as does GLOB) then *pIsNocase is set to // false. -func Xsqlite3IsLikeFunction(tls *libc.TLS, db uintptr, pExpr uintptr, pIsNocase uintptr, aWc uintptr) int32 { /* sqlite3.c:120278:20: */ +func Xsqlite3IsLikeFunction(tls *libc.TLS, db uintptr, pExpr uintptr, pIsNocase uintptr, aWc uintptr) int32 { /* sqlite3.c:120289:20: */ var pDef uintptr var nExpr int32 @@ -115492,7 +115536,7 @@ func Xsqlite3IsLikeFunction(tls *libc.TLS, db uintptr, pExpr uintptr, pIsNocase // Extra math functions that require linking with -lm // Implementation of sign(X) function. -func signFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120504:13: */ +func signFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:120515:13: */ var type0 int32 var x float64 _ = argc @@ -115520,7 +115564,7 @@ func signFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sql // a consequence of calling sqlite3_initialize()). // // After this routine runs -func Xsqlite3RegisterBuiltinFunctions(tls *libc.TLS) { /* sqlite3.c:120526:21: */ +func Xsqlite3RegisterBuiltinFunctions(tls *libc.TLS) { /* sqlite3.c:120537:21: */ Xsqlite3AlterFunctions(tls) Xsqlite3WindowFunctions(tls) Xsqlite3RegisterDateTimeFunctions(tls) @@ -115599,7 +115643,7 @@ var aBuiltinFunc = [68]FuncDef{ {FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FzName: ts + 18118 /* "coalesce" */}, {FnArg: int8(1), FfuncFlags: (U32((SQLITE_FUNC_CONSTANT | SQLITE_UTF8) | (0 * SQLITE_FUNC_NEEDCOLL))), FxSFunc: 0, FzName: ts + 18127 /* "sign" */}, {FnArg: int8(-1), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FxSFunc: 0, FzName: ts + 18118 /* "coalesce" */}, - {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(int64(INLINEFUNC_iif)), FxSFunc: 0, FzName: ts + 18132 /* "iif" */}} /* sqlite3.c:120537:18 */ + {FnArg: int8(3), FfuncFlags: (U32(((SQLITE_UTF8 | SQLITE_FUNC_INLINE) | SQLITE_FUNC_CONSTANT) | (0))), FpUserData: uintptr(int64(INLINEFUNC_iif)), FxSFunc: 0, FzName: ts + 18132 /* "iif" */}} /* sqlite3.c:120548:18 */ //************* End of func.c *********************************************** //************* Begin file fkey.c ******************************************* @@ -115774,7 +115818,7 @@ var aBuiltinFunc = [68]FuncDef{ // then non-zero is returned, and a "foreign key mismatch" error loaded // into pParse. If an OOM error occurs, non-zero is returned and the // pParse->db->mallocFailed flag is set. -func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey uintptr, ppIdx uintptr, paiCol uintptr) int32 { /* sqlite3.c:120885:20: */ +func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey uintptr, ppIdx uintptr, paiCol uintptr) int32 { /* sqlite3.c:120896:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -115920,7 +115964,7 @@ func Xsqlite3FkLocateIndex(tls *libc.TLS, pParse uintptr, pParent uintptr, pFKey // // These operations are identified in the comment at the top of this file // (fkey.c) as "I.1" and "D.1". -func fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32, isIgnore int32) { /* sqlite3.c:121020:13: */ +func fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32, isIgnore int32) { /* sqlite3.c:121031:13: */ var i int32 // Iterator variable var v uintptr = Xsqlite3GetVdbe(tls, pParse) // Vdbe to add code to var iCur int32 = ((*Parse)(unsafe.Pointer(pParse)).FnTab - 1) // Cursor number to use @@ -116050,7 +116094,7 @@ func fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx // regBase is the first of an array of register that contains the data // for pTab. regBase itself holds the rowid. regBase+1 holds the first // column. regBase+2 holds the second column, and so forth. -func exprTableRegister(tls *libc.TLS, pParse uintptr, pTab uintptr, regBase int32, iCol I16) uintptr { /* sqlite3.c:121173:13: */ +func exprTableRegister(tls *libc.TLS, pParse uintptr, pTab uintptr, regBase int32, iCol I16) uintptr { /* sqlite3.c:121184:13: */ var pExpr uintptr var pCol uintptr var zColl uintptr @@ -116077,7 +116121,7 @@ func exprTableRegister(tls *libc.TLS, pParse uintptr, pTab uintptr, regBase int3 // Return an Expr object that refers to column iCol of table pTab which // has cursor iCur. -func exprTableColumn(tls *libc.TLS, db uintptr, pTab uintptr, iCursor int32, iCol I16) uintptr { /* sqlite3.c:121205:13: */ +func exprTableColumn(tls *libc.TLS, db uintptr, pTab uintptr, iCursor int32, iCol I16) uintptr { /* sqlite3.c:121216:13: */ var pExpr uintptr = Xsqlite3Expr(tls, db, TK_COLUMN, uintptr(0)) if pExpr != 0 { *(*uintptr)(unsafe.Pointer(pExpr + 64 /* &.y */)) = pTab @@ -116117,7 +116161,7 @@ func exprTableColumn(tls *libc.TLS, db uintptr, pTab uintptr, iCursor int32, iCo // // These operations are identified in the comment at the top of this file // (fkey.c) as "I.2" and "D.2". -func fkScanChildren(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32) { /* sqlite3.c:121252:13: */ +func fkScanChildren(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32) { /* sqlite3.c:121263:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -116241,7 +116285,7 @@ func fkScanChildren(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, p // "t2". Calling this function with "t2" as the argument would return a // NULL pointer (as there are no FK constraints for which t2 is the parent // table). -func Xsqlite3FkReferences(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:121381:21: */ +func Xsqlite3FkReferences(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:121392:21: */ return Xsqlite3HashFind(tls, ((*Table)(unsafe.Pointer(pTab)).FpSchema + 80 /* &.fkeyHash */), (*Table)(unsafe.Pointer(pTab)).FzName) } @@ -116251,7 +116295,7 @@ func Xsqlite3FkReferences(tls *libc.TLS, pTab uintptr) uintptr { /* sqlite3.c:12 // // The Trigger structure or any of its sub-components may be allocated from // the lookaside buffer belonging to database handle dbMem. -func fkTriggerDelete(tls *libc.TLS, dbMem uintptr, p uintptr) { /* sqlite3.c:121393:13: */ +func fkTriggerDelete(tls *libc.TLS, dbMem uintptr, p uintptr) { /* sqlite3.c:121404:13: */ if p != 0 { var pStep uintptr = (*Trigger)(unsafe.Pointer(p)).Fstep_list Xsqlite3ExprDelete(tls, dbMem, (*TriggerStep)(unsafe.Pointer(pStep)).FpWhere) @@ -116277,7 +116321,7 @@ func fkTriggerDelete(tls *libc.TLS, dbMem uintptr, p uintptr) { /* sqlite3.c:121 // then the equivalent of "DELETE FROM " is executed before dropping // the table from the database. Triggers are disabled while running this // DELETE, but foreign key actions are not. -func Xsqlite3FkDropTable(tls *libc.TLS, pParse uintptr, pName uintptr, pTab uintptr) { /* sqlite3.c:121421:21: */ +func Xsqlite3FkDropTable(tls *libc.TLS, pParse uintptr, pName uintptr, pTab uintptr) { /* sqlite3.c:121432:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_ForeignKeys)) != 0) && !((*Table)(unsafe.Pointer(pTab)).FnModuleArg != 0) { var iSkip int32 = 0 @@ -116340,7 +116384,7 @@ func Xsqlite3FkDropTable(tls *libc.TLS, pParse uintptr, pName uintptr, pTab uint // // This function returns true if any of the columns that are part of the // child key for FK constraint *p are modified. -func fkChildIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121484:12: */ +func fkChildIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121495:12: */ var i int32 for i = 0; i < (*FKey)(unsafe.Pointer(p)).FnCol; i++ { var iChildKey int32 = (*sColMap)(unsafe.Pointer((p + 64 /* &.aCol */) + uintptr(i)*16)).FiFrom @@ -116364,7 +116408,7 @@ func fkChildIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, // // This function returns true if any of the columns that are part of the // parent key for FK constraint *p are modified. -func fkParentIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121511:12: */ +func fkParentIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, bChngRowid int32) int32 { /* sqlite3.c:121522:12: */ var i int32 for i = 0; i < (*FKey)(unsafe.Pointer(p)).FnCol; i++ { var zKey uintptr = (*sColMap)(unsafe.Pointer((p + 64 /* &.aCol */) + uintptr(i)*16)).FzCol @@ -116388,7 +116432,7 @@ func fkParentIsModified(tls *libc.TLS, pTab uintptr, p uintptr, aChange uintptr, // Return true if the parser passed as the first argument is being // used to code a trigger that is really a "SET NULL" action belonging // to trigger pFKey. -func isSetNullAction(tls *libc.TLS, pParse uintptr, pFKey uintptr) int32 { /* sqlite3.c:121540:12: */ +func isSetNullAction(tls *libc.TLS, pParse uintptr, pFKey uintptr) int32 { /* sqlite3.c:121551:12: */ var pTop uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -116423,7 +116467,7 @@ func isSetNullAction(tls *libc.TLS, pParse uintptr, pFKey uintptr) int32 { /* sq // the original record is deleted from the table using the calling convention // described for DELETE. Then again after the original record is deleted // but before the new record is inserted using the INSERT convention. -func Xsqlite3FkCheck(tls *libc.TLS, pParse uintptr, pTab uintptr, regOld int32, regNew int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:121573:21: */ +func Xsqlite3FkCheck(tls *libc.TLS, pParse uintptr, pTab uintptr, regOld int32, regNew int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:121584:21: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -116622,7 +116666,7 @@ func Xsqlite3FkCheck(tls *libc.TLS, pParse uintptr, pTab uintptr, regOld int32, // This function is called before generating code to update or delete a // row contained in table pTab. -func Xsqlite3FkOldmask(tls *libc.TLS, pParse uintptr, pTab uintptr) U32 { /* sqlite3.c:121775:20: */ +func Xsqlite3FkOldmask(tls *libc.TLS, pParse uintptr, pTab uintptr) U32 { /* sqlite3.c:121786:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -116681,7 +116725,7 @@ func Xsqlite3FkOldmask(tls *libc.TLS, pParse uintptr, pTab uintptr) U32 { /* sql // not "NO ACTION" (i.e. is CASCADE, SET DEFAULT or SET NULL). // // Or, assuming some other foreign key processing is required, 1. -func Xsqlite3FkRequired(tls *libc.TLS, pParse uintptr, pTab uintptr, aChange uintptr, chngRowid int32) int32 { /* sqlite3.c:121825:20: */ +func Xsqlite3FkRequired(tls *libc.TLS, pParse uintptr, pTab uintptr, aChange uintptr, chngRowid int32) int32 { /* sqlite3.c:121836:20: */ var eRet int32 = 1 // Value to return if bHaveFK is true var bHaveFK int32 = 0 // If FK processing is required if ((*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).Fflags & uint64(SQLITE_ForeignKeys)) != 0 { @@ -116749,7 +116793,7 @@ func Xsqlite3FkRequired(tls *libc.TLS, pParse uintptr, pTab uintptr, aChange uin // The returned pointer is cached as part of the foreign key object. It // is eventually freed along with the rest of the foreign key object by // sqlite3FkDelete(). -func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, pChanges uintptr) uintptr { /* sqlite3.c:121893:16: */ +func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, pChanges uintptr) uintptr { /* sqlite3.c:121904:16: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -116951,7 +116995,7 @@ func fkActionTrigger(tls *libc.TLS, pParse uintptr, pTab uintptr, pFKey uintptr, // This function is called when deleting or updating a row to implement // any required CASCADE, SET NULL or SET DEFAULT actions. -func Xsqlite3FkActions(tls *libc.TLS, pParse uintptr, pTab uintptr, pChanges uintptr, regOld int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:122085:21: */ +func Xsqlite3FkActions(tls *libc.TLS, pParse uintptr, pTab uintptr, pChanges uintptr, regOld int32, aChange uintptr, bChngRowid int32) { /* sqlite3.c:122096:21: */ // If foreign-key support is enabled, iterate through all FKs that // refer to table pTab. If there is an action associated with the FK // for this operation (either update or delete), invoke the associated @@ -116972,7 +117016,7 @@ func Xsqlite3FkActions(tls *libc.TLS, pParse uintptr, pTab uintptr, pChanges uin // Free all memory associated with foreign key definitions attached to // table pTab. Remove the deleted foreign keys from the Schema.fkeyHash // hash table. -func Xsqlite3FkDelete(tls *libc.TLS, db uintptr, pTab uintptr) { /* sqlite3.c:122117:21: */ +func Xsqlite3FkDelete(tls *libc.TLS, db uintptr, pTab uintptr) { /* sqlite3.c:122128:21: */ var pFKey uintptr // Iterator variable var pNext uintptr // Copy of pFKey->pNextFrom @@ -117032,7 +117076,7 @@ func Xsqlite3FkDelete(tls *libc.TLS, db uintptr, pTab uintptr) { /* sqlite3.c:12 // // If pTab is a WITHOUT ROWID table, then it is the PRIMARY KEY index // for that table that is actually opened. -func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTab uintptr, opcode int32) { /* sqlite3.c:122183:21: */ +func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTab uintptr, opcode int32) { /* sqlite3.c:122194:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -117077,7 +117121,7 @@ func Xsqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTa // Memory for the buffer containing the column index affinity string // is managed along with the rest of the Index structure. It will be // released when sqlite3DeleteIndex() is called. -func Xsqlite3IndexAffinityStr(tls *libc.TLS, db uintptr, pIdx uintptr) uintptr { /* sqlite3.c:122230:27: */ +func Xsqlite3IndexAffinityStr(tls *libc.TLS, db uintptr, pIdx uintptr) uintptr { /* sqlite3.c:122241:27: */ if !(int32((*Index)(unsafe.Pointer(pIdx)).FzColAff) != 0) { // The first time a column affinity string for a particular index is // required, it is allocated and populated here. It is then stored as @@ -117136,7 +117180,7 @@ func Xsqlite3IndexAffinityStr(tls *libc.TLS, db uintptr, pIdx uintptr) uintptr { // 'C' NUMERIC // 'D' INTEGER // 'E' REAL -func Xsqlite3TableAffinity(tls *libc.TLS, v uintptr, pTab uintptr, iReg int32) { /* sqlite3.c:122289:21: */ +func Xsqlite3TableAffinity(tls *libc.TLS, v uintptr, pTab uintptr, iReg int32) { /* sqlite3.c:122300:21: */ var i int32 var j int32 var zColAff uintptr = (*Table)(unsafe.Pointer(pTab)).FzColAff @@ -117174,7 +117218,7 @@ func Xsqlite3TableAffinity(tls *libc.TLS, v uintptr, pTab uintptr, iReg int32) { // have been opened at any point in the VDBE program. This is used to see if // a statement of the form "INSERT INTO SELECT ..." can // run without using a temporary table for the results of the SELECT. -func readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122328:12: */ +func readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122339:12: */ var v uintptr = Xsqlite3GetVdbe(tls, p) var i int32 var iEnd int32 = Xsqlite3VdbeCurrentAddr(tls, v) @@ -117210,7 +117254,7 @@ func readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) int32 { /* sq // This walker callback will compute the union of colFlags flags for all // referenced columns in a CHECK constraint or generated column expression. -func exprColumnFlagUnion(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:122365:12: */ +func exprColumnFlagUnion(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:122376:12: */ if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN) && (int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) >= 0) { *(*U16)(unsafe.Pointer(pWalker + 36 /* &.eCode */)) |= U16((int32((*Column)(unsafe.Pointer((*Table1)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)))).FaCol + uintptr((*Expr)(unsafe.Pointer(pExpr)).FiColumn)*32)).FcolFlags))) @@ -117223,7 +117267,7 @@ func exprColumnFlagUnion(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { // or VIRTUAL columns have not yet been initialized. This routine goes // back and computes the values for those columns based on the previously // computed normal columns. -func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore int32, pTab uintptr) { /* sqlite3.c:122381:21: */ +func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore int32, pTab uintptr) { /* sqlite3.c:122392:21: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -117329,7 +117373,7 @@ func Xsqlite3ComputeGeneratedColumns(tls *libc.TLS, pParse uintptr, iRegStore in // // The 2nd register is the one that is returned. That is all the // insert routine needs to know about. -func autoIncBegin(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122499:12: */ +func autoIncBegin(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr) int32 { /* sqlite3.c:122510:12: */ var memId int32 = 0 // Register holding maximum rowid if (((*Table)(unsafe.Pointer(pTab)).FtabFlags & U32(TF_Autoincrement)) != U32(0)) && @@ -117383,7 +117427,7 @@ func autoIncBegin(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr) int32 // This routine generates code that will initialize all of the // register used by the autoincrement tracker. -func Xsqlite3AutoincrementBegin(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122550:21: */ +func Xsqlite3AutoincrementBegin(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122561:21: */ var p uintptr // Information about an AUTOINCREMENT var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // The database connection var pDb uintptr // Database only autoinc table @@ -117423,7 +117467,7 @@ func Xsqlite3AutoincrementBegin(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:12 } } -var iLn1 int32 = 0 /* sqlite3.c:122564:22 */ +var iLn1 int32 = 0 /* sqlite3.c:122575:22 */ var autoInc = [12]VdbeOpList{ /* 0 */ {Fopcode: U8(OP_Null)}, /* 1 */ {Fopcode: U8(OP_Rewind), Fp2: int8(10)}, @@ -117437,7 +117481,7 @@ var autoInc = [12]VdbeOpList{ /* 9 */ {Fopcode: U8(OP_Next), Fp2: int8(2)}, /* 10 */ {Fopcode: U8(OP_Integer)}, /* 11 */ {Fopcode: U8(OP_Close)}, -} /* sqlite3.c:122565:29 */ +} /* sqlite3.c:122576:29 */ // Update the maximum rowid for an autoincrement calculation. // @@ -117445,7 +117489,7 @@ var autoInc = [12]VdbeOpList{ // new rowid that is about to be inserted. If that new rowid is // larger than the maximum rowid in the memId memory cell, then the // memory cell is updated. -func autoIncStep(tls *libc.TLS, pParse uintptr, memId int32, regRowid int32) { /* sqlite3.c:122611:13: */ +func autoIncStep(tls *libc.TLS, pParse uintptr, memId int32, regRowid int32) { /* sqlite3.c:122622:13: */ if memId > 0 { Xsqlite3VdbeAddOp2(tls, (*Parse)(unsafe.Pointer(pParse)).FpVdbe, OP_MemMax, memId, regRowid) } @@ -117456,7 +117500,7 @@ func autoIncStep(tls *libc.TLS, pParse uintptr, memId int32, regRowid int32) { / // Every statement that might do an INSERT into an autoincrement // table (either directly or through triggers) needs to call this // routine just before the "exit" code. -func autoIncrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122624:29: */ +func autoIncrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122635:29: */ var p uintptr var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -117487,16 +117531,16 @@ func autoIncrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122624:29: * } } -var iLn2 int32 = 0 /* sqlite3.c:122631:22 */ +var iLn2 int32 = 0 /* sqlite3.c:122642:22 */ var autoIncEnd = [5]VdbeOpList{ /* 0 */ {Fopcode: U8(OP_NotNull), Fp2: int8(2)}, /* 1 */ {Fopcode: U8(OP_NewRowid)}, /* 2 */ {Fopcode: U8(OP_MakeRecord), Fp2: int8(2)}, /* 3 */ {Fopcode: U8(OP_Insert)}, /* 4 */ {Fopcode: U8(OP_Close)}, -} /* sqlite3.c:122632:29 */ +} /* sqlite3.c:122643:29 */ -func Xsqlite3AutoincrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122661:21: */ +func Xsqlite3AutoincrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:122672:21: */ if (*Parse)(unsafe.Pointer(pParse)).FpAinc != 0 { autoIncrementEnd(tls, pParse) } @@ -117597,7 +117641,7 @@ func Xsqlite3AutoincrementEnd(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:1226 // transfer values form intermediate table into
// end loop // D: cleanup -func Xsqlite3Insert(tls *libc.TLS, pParse uintptr, pTabList uintptr, pSelect uintptr, pColumn uintptr, onError int32, pUpsert uintptr) { /* sqlite3.c:122780:21: */ +func Xsqlite3Insert(tls *libc.TLS, pParse uintptr, pTabList uintptr, pSelect uintptr, pColumn uintptr, onError int32, pUpsert uintptr) { /* sqlite3.c:122791:21: */ bp := tls.Alloc(204) defer tls.Free(204) @@ -118639,7 +118683,7 @@ insert_cleanup: // Set bit 0x01 of pWalker->eCode if pWalker->eCode to 0 and if this // expression node references any of the // columns that are being modifed by an UPDATE statement. -func checkConstraintExprNode(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:123520:12: */ +func checkConstraintExprNode(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:123531:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN { if int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) >= 0 { @@ -118666,7 +118710,7 @@ func checkConstraintExprNode(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int3 // The operation of this routine is the same - return true if an only if // the expression uses one or more of columns identified by the second and // third arguments. -func Xsqlite3ExprReferencesUpdatedColumn(tls *libc.TLS, pExpr uintptr, aiChng uintptr, chngRowid int32) int32 { /* sqlite3.c:123549:20: */ +func Xsqlite3ExprReferencesUpdatedColumn(tls *libc.TLS, pExpr uintptr, aiChng uintptr, chngRowid int32) int32 { /* sqlite3.c:123560:20: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -118700,7 +118744,7 @@ type IndexListTerm1 = struct { Fp uintptr Fix int32 _ [4]byte -} /* sqlite3.c:123582:9 */ +} /* sqlite3.c:123593:9 */ // The sqlite3GenerateConstraintChecks() routine usually wants to visit // the indexes of a table in the order provided in the Table->pIndex list. @@ -118711,7 +118755,7 @@ type IndexListTerm1 = struct { // The IndexIterator object is used to walk through all of the indexes // of a table in either Index.pNext order, or in some other order established // by an array of IndexListTerm objects. -type IndexListTerm = IndexListTerm1 /* sqlite3.c:123582:30 */ +type IndexListTerm = IndexListTerm1 /* sqlite3.c:123593:30 */ type IndexIterator1 = struct { FeType int32 Fi int32 @@ -118719,12 +118763,12 @@ type IndexIterator1 = struct { Flx struct{ FpIdx uintptr } _ [8]byte } -} /* sqlite3.c:123583:9 */ +} /* sqlite3.c:123594:9 */ -type IndexIterator = IndexIterator1 /* sqlite3.c:123583:30 */ +type IndexIterator = IndexIterator1 /* sqlite3.c:123594:30 */ // Return the first index on the list -func indexIteratorFirst(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123607:14: */ +func indexIteratorFirst(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123618:14: */ if (*IndexIterator)(unsafe.Pointer(pIter)).FeType != 0 { *(*int32)(unsafe.Pointer(pIx)) = (*IndexListTerm)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer((pIter + 8 /* &.u */ /* &.ax */) + 8 /* &.aIdx */)))).Fix @@ -118737,7 +118781,7 @@ func indexIteratorFirst(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* } // Return the next index from the list. Return NULL when out of indexes -func indexIteratorNext(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123619:14: */ +func indexIteratorNext(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* sqlite3.c:123630:14: */ if (*IndexIterator)(unsafe.Pointer(pIter)).FeType != 0 { var i int32 = libc.PreIncInt32(&(*IndexIterator)(unsafe.Pointer(pIter)).Fi, 1) if i >= *(*int32)(unsafe.Pointer((pIter + 8 /* &.u */ /* &.ax */) /* &.nIdx */)) { @@ -118843,7 +118887,7 @@ func indexIteratorNext(tls *libc.TLS, pIter uintptr, pIx uintptr) uintptr { /* s // Or if overrideError==OE_Default, then the pParse->onError parameter // is used. Or if pParse->onError==OE_Default then the onError value // for the constraint is used. -func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintptr, aRegIdx uintptr, iDataCur int32, iIdxCur int32, regNewData int32, regOldData int32, pkChng U8, overrideError U8, ignoreDest int32, pbMayReplace uintptr, aiChng uintptr, pUpsert uintptr) { /* sqlite3.c:123726:21: */ +func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintptr, aRegIdx uintptr, iDataCur int32, iIdxCur int32, regNewData int32, regOldData int32, pkChng U8, overrideError U8, ignoreDest int32, pbMayReplace uintptr, aiChng uintptr, pUpsert uintptr) { /* sqlite3.c:123737:21: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -119170,6 +119214,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt goto __4 goto __6 __6: + } } @@ -119702,7 +119747,7 @@ func Xsqlite3GenerateConstraintChecks(tls *libc.TLS, pParse uintptr, pTab uintpt // number is iCur, and register regData contains the new record for the // PK index. This function adds code to invoke the pre-update hook, // if one is registered. -func codeWithoutRowidPreupdate(tls *libc.TLS, pParse uintptr, pTab uintptr, iCur int32, regData int32) { /* sqlite3.c:124579:13: */ +func codeWithoutRowidPreupdate(tls *libc.TLS, pParse uintptr, pTab uintptr, iCur int32, regData int32) { /* sqlite3.c:124590:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var r int32 = Xsqlite3GetTempReg(tls, pParse) @@ -119719,7 +119764,7 @@ func codeWithoutRowidPreupdate(tls *libc.TLS, pParse uintptr, pTab uintptr, iCur // // The arguments to this routine should be the same as the first six // arguments to sqlite3GenerateConstraintChecks. -func Xsqlite3CompleteInsertion(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, regNewData int32, aRegIdx uintptr, update_flags int32, appendBias int32, useSeekResult int32) { /* sqlite3.c:124607:21: */ +func Xsqlite3CompleteInsertion(tls *libc.TLS, pParse uintptr, pTab uintptr, iDataCur int32, iIdxCur int32, regNewData int32, aRegIdx uintptr, update_flags int32, appendBias int32, useSeekResult int32) { /* sqlite3.c:124618:21: */ var v uintptr // Prepared statements under construction var pIdx uintptr // An index being inserted or updated var pik_flags U8 // flag values passed to the btree insert @@ -119823,7 +119868,7 @@ __3: // // If pTab is a virtual table, then this routine is a no-op and the // *piDataCur and *piIdxCur values are left uninitialized. -func Xsqlite3OpenTableAndIndices(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, p5 U8, iBase int32, aToOpen uintptr, piDataCur uintptr, piIdxCur uintptr) int32 { /* sqlite3.c:124696:20: */ +func Xsqlite3OpenTableAndIndices(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, p5 U8, iBase int32, aToOpen uintptr, piDataCur uintptr, piIdxCur uintptr) int32 { /* sqlite3.c:124707:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -119898,7 +119943,7 @@ __3: // transfer optimization is used. This is used for testing // purposes only - to make sure the transfer optimization really // is happening when it is supposed to. -var Xsqlite3_xferopt_count int32 /* sqlite3.c:124758:16: */ +var Xsqlite3_xferopt_count int32 /* sqlite3.c:124769:16: */ // Check to see if index pSrc is compatible as a source of data // for index pDest in an insert transfer optimization. The rules @@ -119909,7 +119954,7 @@ var Xsqlite3_xferopt_count int32 /* sqlite3.c:124758:16: */ // * The same onError processing (OE_Abort, OE_Ignore, etc) // * The same collating sequence on each column // * The index has the exact same WHERE clause -func xferCompatibleIndex(tls *libc.TLS, pDest uintptr, pSrc uintptr) int32 { /* sqlite3.c:124774:12: */ +func xferCompatibleIndex(tls *libc.TLS, pDest uintptr, pSrc uintptr) int32 { /* sqlite3.c:124785:12: */ var i int32 if (int32((*Index)(unsafe.Pointer(pDest)).FnKeyCol) != int32((*Index)(unsafe.Pointer(pSrc)).FnKeyCol)) || (int32((*Index)(unsafe.Pointer(pDest)).FnColumn) != int32((*Index)(unsafe.Pointer(pSrc)).FnColumn)) { @@ -119967,7 +120012,7 @@ func xferCompatibleIndex(tls *libc.TLS, pDest uintptr, pSrc uintptr) int32 { /* // is no chance that the xfer optimization can be applied. // // This optimization is particularly useful at making VACUUM run faster. -func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uintptr, onError int32, iDbDest int32) int32 { /* sqlite3.c:124835:12: */ +func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uintptr, onError int32, iDbDest int32) int32 { /* sqlite3.c:124846:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -120351,7 +120396,7 @@ func xferOptimization(tls *libc.TLS, pParse uintptr, pDest uintptr, pSelect uint // the xCallback() function is called. pArg becomes the first // argument to xCallback(). If xCallback=NULL then no callback // is invoked, even for queries. -func Xsqlite3_exec(tls *libc.TLS, db uintptr, zSql uintptr, xCallback Sqlite3_callback, pArg uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:125245:16: */ +func Xsqlite3_exec(tls *libc.TLS, db uintptr, zSql uintptr, xCallback Sqlite3_callback, pArg uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:125256:16: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -120372,7 +120417,7 @@ func Xsqlite3_exec(tls *libc.TLS, db uintptr, zSql uintptr, xCallback Sqlite3_ca if !(!(Xsqlite3SafetyCheckOk(tls, db) != 0)) { goto __1 } - return Xsqlite3MisuseError(tls, 125258) + return Xsqlite3MisuseError(tls, 125269) __1: ; if !(zSql == uintptr(0)) { @@ -120559,7 +120604,7 @@ __26: // This is the function signature used for all extension entry points. It // is also defined in the file "loadext.c". -type Sqlite3_loadext_entry = uintptr /* sqlite3.c:125725:13 */ +type Sqlite3_loadext_entry = uintptr /* sqlite3.c:125736:13 */ // The following macros redefine the API routines so that they are // redirected through the global sqlite3_api structure. @@ -120881,7 +120926,7 @@ var sqlite3Apis = Sqlite3_api_routines{ Fdatabase_file_object: 0, // Version 3.34.0 and later Ftxn_state: 0, -} /* sqlite3.c:126159:35 */ +} /* sqlite3.c:126170:35 */ // True if x is the directory separator character @@ -120895,7 +120940,7 @@ var sqlite3Apis = Sqlite3_api_routines{ // If an error occurs and pzErrMsg is not 0, then fill *pzErrMsg with // error message text. The calling function should free this memory // by calling sqlite3DbFree(db, ). -func sqlite3LoadExtension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126531:12: */ +func sqlite3LoadExtension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126542:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -121036,9 +121081,9 @@ func sqlite3LoadExtension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintpt var azEndings = [1]uintptr{ ts + 18698, /* "dylib" */ -} /* sqlite3.c:126549:21 */ +} /* sqlite3.c:126560:21 */ -func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126672:16: */ +func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:126683:16: */ var rc int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) rc = sqlite3LoadExtension(tls, db, zFile, zProc, pzErrMsg) @@ -121049,7 +121094,7 @@ func Xsqlite3_load_extension(tls *libc.TLS, db uintptr, zFile uintptr, zProc uin // Call this routine when the database connection is closing in order // to clean up loaded extensions -func Xsqlite3CloseExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126690:21: */ +func Xsqlite3CloseExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126701:21: */ var i int32 for i = 0; i < (*Sqlite3)(unsafe.Pointer(db)).FnExtension; i++ { @@ -121060,7 +121105,7 @@ func Xsqlite3CloseExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126690:21 // Enable or disable extension loading. Extension loading is disabled by // default so as not to open security holes in older applications. -func Xsqlite3_enable_load_extension(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:126703:16: */ +func Xsqlite3_enable_load_extension(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:126714:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if onoff != 0 { *(*U64)(unsafe.Pointer(db + 48 /* &.flags */)) |= (uint64(SQLITE_LoadExtension | SQLITE_LoadExtFunc)) @@ -121080,15 +121125,15 @@ type sqlite3AutoExtList = struct { FnExt U32 _ [4]byte FaExt uintptr -} /* sqlite3.c:126723:9 */ +} /* sqlite3.c:126734:9 */ // The following object holds the list of automatically loaded // extensions. // // This list is shared across threads. The SQLITE_MUTEX_STATIC_MAIN // mutex must be held while accessing this list. -type Sqlite3AutoExtList = sqlite3AutoExtList /* sqlite3.c:126723:35 */ -var sqlite3Autoext = sqlite3AutoExtList{} /* sqlite3.c:126727:3 */ +type Sqlite3AutoExtList = sqlite3AutoExtList /* sqlite3.c:126734:35 */ +var sqlite3Autoext = sqlite3AutoExtList{} /* sqlite3.c:126738:3 */ // The "wsdAutoext" macro will resolve to the autoextension // state vector. If writable static data is unsupported on the target, @@ -121098,7 +121143,7 @@ var sqlite3Autoext = sqlite3AutoExtList{} /* sqlite3.c:126727:3 */ // Register a statically linked extension that is automatically // loaded by every new database connection. -func Xsqlite3_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126749:16: */ +func Xsqlite3_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126760:16: */ var rc int32 = SQLITE_OK rc = Xsqlite3_initialize(tls) if rc != 0 { @@ -121139,7 +121184,7 @@ func Xsqlite3_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c: // // Return 1 if xInit was found on the list and removed. Return 0 if xInit // was not on the list. -func Xsqlite3_cancel_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126796:16: */ +func Xsqlite3_cancel_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sqlite3.c:126807:16: */ var mutex uintptr = Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN) var i int32 var n int32 = 0 @@ -121158,7 +121203,7 @@ func Xsqlite3_cancel_auto_extension(tls *libc.TLS, xInit uintptr) int32 { /* sql } // Reset the automatic extension loading mechanism. -func Xsqlite3_reset_auto_extension(tls *libc.TLS) { /* sqlite3.c:126821:17: */ +func Xsqlite3_reset_auto_extension(tls *libc.TLS) { /* sqlite3.c:126832:17: */ if Xsqlite3_initialize(tls) == SQLITE_OK { var mutex uintptr = Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN) @@ -121173,7 +121218,7 @@ func Xsqlite3_reset_auto_extension(tls *libc.TLS) { /* sqlite3.c:126821:17: */ // Load all automatic extensions. // // If anything goes wrong, set an error in the database connection. -func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126843:21: */ +func Xsqlite3AutoLoadExtensions(tls *libc.TLS, db uintptr) { /* sqlite3.c:126854:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -121302,7 +121347,7 @@ var pragCName = [51]uintptr{ /* 49 */ ts + 18952, /* "cache_size" */ // Used by: default_cache_size // module_list pragma_list reuses 9 /* 50 */ ts + 18963, /* "timeout" */ // Used by: busy_timeout -} /* sqlite3.c:126983:19 */ +} /* sqlite3.c:126994:19 */ // Definitions of all built-in pragmas type PragmaName1 = struct { @@ -121313,10 +121358,10 @@ type PragmaName1 = struct { FnPragCName U8 _ [4]byte FiArg U64 -} /* sqlite3.c:127042:9 */ +} /* sqlite3.c:127053:9 */ // Definitions of all built-in pragmas -type PragmaName = PragmaName1 /* sqlite3.c:127049:3 */ +type PragmaName = PragmaName1 /* sqlite3.c:127060:3 */ var aPragmaName = [67]PragmaName{ { /* zName: */ FzName: ts + 18971, /* "analysis_limit" */ /* ePragTyp: */ FePragTyp: U8(PragTyp_ANALYSIS_LIMIT), @@ -121556,7 +121601,7 @@ var aPragmaName = [67]PragmaName{ /* ePragTyp: */ FePragTyp: U8(PragTyp_FLAG), /* ePragFlg: */ FmPragFlg: (U8(PragFlg_Result0 | PragFlg_NoColumns1)), /* iArg: */ FiArg: (uint64(SQLITE_WriteSchema | SQLITE_NoSchemaError))}, -} /* sqlite3.c:127050:25 */ +} /* sqlite3.c:127061:25 */ // Number of pragmas: 67 on by default, 77 total. @@ -121572,7 +121617,7 @@ var aPragmaName = [67]PragmaName{ // should be passed into sqlite3BtreeSetSafetyLevel(). The is done // to support legacy SQL code. The safety level used to be boolean // and older scripts may have used numbers 0 for OFF and 1 for ON. -func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* sqlite3.c:127579:11: */ +func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* sqlite3.c:127590:11: */ // on no off false yes true extra full var i int32 var n int32 @@ -121589,13 +121634,13 @@ func getSafetyLevel(tls *libc.TLS, z uintptr, omitFull int32, dflt U8) U8 { /* s return dflt } -var zText = *(*[25]int8)(unsafe.Pointer(ts + 19955 /* "onoffalseyestrue..." */)) /* sqlite3.c:127581:21 */ -var iOffset = [8]U8{U8(0), U8(1), U8(2), U8(4), U8(9), U8(12), U8(15), U8(20)} /* sqlite3.c:127582:19 */ -var iLength = [8]U8{U8(2), U8(2), U8(3), U8(5), U8(3), U8(4), U8(5), U8(4)} /* sqlite3.c:127583:19 */ -var iValue = [8]U8{U8(1), U8(0), U8(0), U8(0), U8(1), U8(1), U8(3), U8(2)} /* sqlite3.c:127584:19 */ +var zText = *(*[25]int8)(unsafe.Pointer(ts + 19955 /* "onoffalseyestrue..." */)) /* sqlite3.c:127592:21 */ +var iOffset = [8]U8{U8(0), U8(1), U8(2), U8(4), U8(9), U8(12), U8(15), U8(20)} /* sqlite3.c:127593:19 */ +var iLength = [8]U8{U8(2), U8(2), U8(3), U8(5), U8(3), U8(4), U8(5), U8(4)} /* sqlite3.c:127594:19 */ +var iValue = [8]U8{U8(1), U8(0), U8(0), U8(0), U8(1), U8(1), U8(3), U8(2)} /* sqlite3.c:127595:19 */ // Interpret the given string as a boolean value. -func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:127604:19: */ +func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:127615:19: */ return (U8(libc.Bool32(int32(getSafetyLevel(tls, z, 1, dflt)) != 0))) } @@ -121604,7 +121649,7 @@ func Xsqlite3GetBoolean(tls *libc.TLS, z uintptr, dflt U8) U8 { /* sqlite3.c:127 // the rest of the file if PRAGMAs are omitted from the build. // Interpret the given string as a locking mode value. -func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127617:12: */ +func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127628:12: */ if z != 0 { if 0 == Xsqlite3StrICmp(tls, z, ts+19980 /* "exclusive" */) { return PAGER_LOCKINGMODE_EXCLUSIVE @@ -121620,7 +121665,7 @@ func getLockingMode(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127617:12: */ // // The following strings, "none", "full" and "incremental" are // acceptable, as are their numeric equivalents: 0, 1 and 2 respectively. -func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127632:12: */ +func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127643:12: */ var i int32 if 0 == Xsqlite3StrICmp(tls, z, ts+19997 /* "none" */) { return BTREE_AUTOVACUUM_NONE @@ -121643,7 +121688,7 @@ func getAutoVacuum(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127632:12: */ // Interpret the given string as a temp db location. Return 1 for file // backed temporary databases, 2 for the Red-Black tree in memory database // and 0 to use the compile-time default. -func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127648:12: */ +func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127659:12: */ if (int32(*(*int8)(unsafe.Pointer(z))) >= '0') && (int32(*(*int8)(unsafe.Pointer(z))) <= '2') { return (int32(*(*int8)(unsafe.Pointer(z))) - '0') } else if Xsqlite3StrICmp(tls, z, ts+18909 /* "file" */) == 0 { @@ -121658,7 +121703,7 @@ func getTempStore(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:127648:12: */ // Invalidate temp storage, either when the temp storage is changed // from default, or when 'file' and the temp_store_directory has changed -func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:127666:12: */ +func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:127677:12: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (*Db)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaDb+1*32)).FpBt != uintptr(0) { if !(int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) != 0) || @@ -121677,7 +121722,7 @@ func invalidateTempStorage(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:1 // If the TEMP database is open, close it and mark the database schema // as needing reloading. This must be done when using the SQLITE_TEMP_STORE // or DEFAULT_TEMP_STORE pragmas. -func changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) int32 { /* sqlite3.c:127690:12: */ +func changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) int32 { /* sqlite3.c:127701:12: */ var ts int32 = getTempStore(tls, zStorageType) var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if int32((*Sqlite3)(unsafe.Pointer(db)).Ftemp_store) == ts { @@ -121691,7 +121736,7 @@ func changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) int3 } // Set result column names for a pragma. -func setPragmaResultColumnNames(tls *libc.TLS, v uintptr, pPragma uintptr) { /* sqlite3.c:127705:13: */ +func setPragmaResultColumnNames(tls *libc.TLS, v uintptr, pPragma uintptr) { /* sqlite3.c:127716:13: */ var n U8 = (*PragmaName)(unsafe.Pointer(pPragma)).FnPragCName Xsqlite3VdbeSetNumCols(tls, v, func() int32 { if int32(n) == 0 { @@ -121725,7 +121770,7 @@ func setPragmaResultColumnNames(tls *libc.TLS, v uintptr, pPragma uintptr) { /* } // Generate code to return a single integer value. -func returnSingleInt(tls *libc.TLS, v uintptr, value I64) { /* sqlite3.c:127724:13: */ +func returnSingleInt(tls *libc.TLS, v uintptr, value I64) { /* sqlite3.c:127735:13: */ bp := tls.Alloc(8) defer tls.Free(8) *(*I64)(unsafe.Pointer(bp)) = value @@ -121735,7 +121780,7 @@ func returnSingleInt(tls *libc.TLS, v uintptr, value I64) { /* sqlite3.c:127724: } // Generate code to return a single text value. -func returnSingleText(tls *libc.TLS, v uintptr, zValue uintptr) { /* sqlite3.c:127732:13: */ +func returnSingleText(tls *libc.TLS, v uintptr, zValue uintptr) { /* sqlite3.c:127743:13: */ if zValue != 0 { Xsqlite3VdbeLoadString(tls, v, 1, zValue) Xsqlite3VdbeAddOp2(tls, v, OP_ResultRow, 1, 1) @@ -121744,7 +121789,7 @@ func returnSingleText(tls *libc.TLS, v uintptr, zValue uintptr) { /* sqlite3.c:1 // Set the safety_level and pager flags for pager iDb. Or if iDb<0 // set these values for all pagers. -func setAllPagerFlags(tls *libc.TLS, db uintptr) { /* sqlite3.c:127748:13: */ +func setAllPagerFlags(tls *libc.TLS, db uintptr) { /* sqlite3.c:127759:13: */ if (*Sqlite3)(unsafe.Pointer(db)).FautoCommit != 0 { var pDb uintptr = (*Sqlite3)(unsafe.Pointer(db)).FaDb var n int32 = (*Sqlite3)(unsafe.Pointer(db)).FnDb @@ -121760,7 +121805,7 @@ func setAllPagerFlags(tls *libc.TLS, db uintptr) { /* sqlite3.c:127748:13: */ } // Return a human-readable name for a constraint resolution action. -func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:127776:19: */ +func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:127787:19: */ var zName uintptr switch int32(action) { case OE_SetNull: @@ -121785,7 +121830,7 @@ func actionName(tls *libc.TLS, action U8) uintptr { /* sqlite3.c:127776:19: */ // Parameter eMode must be one of the PAGER_JOURNALMODE_XXX constants // defined in pager.h. This function returns the associated lowercase // journal-mode name. -func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c:127796:27: */ +func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c:127807:27: */ if eMode == (int32(uint64(unsafe.Sizeof(azModeName)) / uint64(unsafe.Sizeof(uintptr(0))))) { return uintptr(0) @@ -121795,10 +121840,10 @@ func Xsqlite3JournalModename(tls *libc.TLS, eMode int32) uintptr { /* sqlite3.c: var azModeName = [6]uintptr{ ts + 20136 /* "delete" */, ts + 20143 /* "persist" */, ts + 20151 /* "off" */, ts + 20155 /* "truncate" */, ts + 20019 /* "memory" */, ts + 20164, /* "wal" */ -} /* sqlite3.c:127797:15 */ +} /* sqlite3.c:127808:15 */ // Locate a pragma in the aPragmaName[] array. -func pragmaLocate(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:127818:25: */ +func pragmaLocate(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:127829:25: */ var upr int32 var lwr int32 var mid int32 = 0 @@ -121825,7 +121870,7 @@ func pragmaLocate(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:127818:25 // Create zero or more entries in the output for the SQL functions // defined by FuncDef p. -func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, showInternFuncs int32) { /* sqlite3.c:127839:13: */ +func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, showInternFuncs int32) { /* sqlite3.c:127850:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -121854,15 +121899,15 @@ func pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, sh } } -var mask U32 = (U32((((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS) | SQLITE_FUNC_INTERNAL)) /* sqlite3.c:127847:22 */ -var azEnc = [4]uintptr{uintptr(0), ts + 20181 /* "utf8" */, ts + 20186 /* "utf16le" */, ts + 20194 /* "utf16be" */} /* sqlite3.c:127854:23 */ +var mask U32 = (U32((((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS) | SQLITE_FUNC_INTERNAL)) /* sqlite3.c:127858:22 */ +var azEnc = [4]uintptr{uintptr(0), ts + 20181 /* "utf8" */, ts + 20186 /* "utf16le" */, ts + 20194 /* "utf16be" */} /* sqlite3.c:127865:23 */ // Helper subroutine for PRAGMA integrity_check: // // Generate code to output a single-column result row with a value of the // string held in register 3. Decrement the result count in register 1 // and halt if the maximum number of result rows have been issued. -func integrityCheckResultRow(tls *libc.TLS, v uintptr) int32 { /* sqlite3.c:127891:12: */ +func integrityCheckResultRow(tls *libc.TLS, v uintptr) int32 { /* sqlite3.c:127902:12: */ var addr int32 Xsqlite3VdbeAddOp2(tls, v, OP_ResultRow, 3, 1) addr = Xsqlite3VdbeAddOp3(tls, v, OP_IfPos, 1, (Xsqlite3VdbeCurrentAddr(tls, v) + 2), 1) @@ -121884,7 +121929,7 @@ func integrityCheckResultRow(tls *libc.TLS, v uintptr) int32 { /* sqlite3.c:1278 // If the left side is "database.id" then pId1 is the database name // and pId2 is the id. If the left side is just "id" then pId1 is the // id and pId2 is any empty string. -func Xsqlite3Pragma(tls *libc.TLS, pParse uintptr, pId1 uintptr, pId2 uintptr, pValue uintptr, minusFlag int32) { /* sqlite3.c:127915:21: */ +func Xsqlite3Pragma(tls *libc.TLS, pParse uintptr, pId1 uintptr, pId2 uintptr, pValue uintptr, minusFlag int32) { /* sqlite3.c:127926:21: */ bp := tls.Alloc(556) defer tls.Free(556) @@ -125147,9 +125192,9 @@ type EncName = struct { FzName uintptr Fenc U8 _ [7]byte -} /* sqlite3.c:129364:18 */ +} /* sqlite3.c:129375:18 */ -var iLn3 int32 = 0 /* sqlite3.c:128040:22 */ +var iLn3 int32 = 0 /* sqlite3.c:128051:22 */ var getCacheSize = [9]VdbeOpList{ {Fopcode: U8(OP_Transaction)}, // 0 {Fopcode: U8(OP_ReadCookie), Fp2: int8(1), Fp3: int8(BTREE_DEFAULT_CACHE_SIZE)}, // 1 @@ -125160,16 +125205,16 @@ var getCacheSize = [9]VdbeOpList{ {Fopcode: U8(OP_Integer), Fp2: int8(1)}, // 6 {Fopcode: U8(OP_Noop)}, {Fopcode: U8(OP_ResultRow), Fp1: int8(1), Fp2: int8(1)}, -} /* sqlite3.c:128041:29 */ -var iLn4 int32 = 0 /* sqlite3.c:128309:26 */ +} /* sqlite3.c:128052:29 */ +var iLn4 int32 = 0 /* sqlite3.c:128320:26 */ var setMeta6 = [5]VdbeOpList{ {Fopcode: U8(OP_Transaction), Fp2: int8(1)}, // 0 {Fopcode: U8(OP_ReadCookie), Fp2: int8(1), Fp3: int8(BTREE_LARGEST_ROOT_PAGE)}, {Fopcode: U8(OP_If), Fp1: int8(1)}, // 2 {Fopcode: U8(OP_Halt), Fp2: int8(OE_Abort)}, // 3 {Fopcode: U8(OP_SetCookie), Fp2: int8(BTREE_INCR_VACUUM)}, // 4 -} /* sqlite3.c:128310:33 */ -var iLn5 int32 = 0 /* sqlite3.c:129314:24 */ +} /* sqlite3.c:128321:33 */ +var iLn5 int32 = 0 /* sqlite3.c:129325:24 */ var endCode = [7]VdbeOpList{ {Fopcode: U8(OP_AddImm), Fp1: int8(1)}, // 0 {Fopcode: U8(OP_IfNotZero), Fp1: int8(1), Fp2: int8(4)}, // 1 @@ -125178,7 +125223,7 @@ var endCode = [7]VdbeOpList{ {Fopcode: U8(OP_Halt)}, // 4 {Fopcode: U8(OP_String8), Fp2: int8(3)}, // 5 {Fopcode: U8(OP_Goto), Fp2: int8(3)}, // 6 -} /* sqlite3.c:129315:31 */ +} /* sqlite3.c:129326:31 */ var encnames1 = [9]EncName{ {FzName: ts + 20599 /* "UTF8" */, Fenc: U8(SQLITE_UTF8)}, {FzName: ts + 20604 /* "UTF-8" */, Fenc: U8(SQLITE_UTF8)}, // Must be element [1] @@ -125189,19 +125234,19 @@ var encnames1 = [9]EncName{ {FzName: ts + 20644 /* "UTF-16" */}, // SQLITE_UTF16NATIVE {FzName: ts + 20651 /* "UTF16" */}, // SQLITE_UTF16NATIVE {}, -} /* sqlite3.c:129367:7 */ +} /* sqlite3.c:129378:7 */ var setCookie = [2]VdbeOpList{ {Fopcode: U8(OP_Transaction), Fp2: int8(1)}, // 0 {Fopcode: U8(OP_SetCookie)}, // 1 -} /* sqlite3.c:129447:31 */ +} /* sqlite3.c:129458:31 */ var readCookie = [3]VdbeOpList{ {Fopcode: U8(OP_Transaction)}, // 0 {Fopcode: U8(OP_ReadCookie), Fp2: int8(1)}, // 1 {Fopcode: U8(OP_ResultRow), Fp1: int8(1), Fp2: int8(1)}, -} /* sqlite3.c:129462:31 */ +} /* sqlite3.c:129473:31 */ var azLockName = [5]uintptr{ ts + 20657 /* "unlocked" */, ts + 20666 /* "shared" */, ts + 20673 /* "reserved" */, ts + 20682 /* "pending" */, ts + 19980, /* "exclusive" */ -} /* sqlite3.c:129770:23 */ +} /* sqlite3.c:129781:23 */ // **************************************************************************** // // Implementation of an eponymous virtual table that runs a pragma. @@ -125213,24 +125258,24 @@ type PragmaVtab1 = struct { FnHidden U8 FiHidden U8 _ [6]byte -} /* sqlite3.c:129822:9 */ +} /* sqlite3.c:129833:9 */ // **************************************************************************** // // Implementation of an eponymous virtual table that runs a pragma. // -type PragmaVtab = PragmaVtab1 /* sqlite3.c:129822:27 */ +type PragmaVtab = PragmaVtab1 /* sqlite3.c:129833:27 */ type PragmaVtabCursor1 = struct { Fbase Sqlite3_vtab_cursor FpPragma uintptr FiRowid Sqlite_int64 FazArg [2]uintptr -} /* sqlite3.c:129823:9 */ +} /* sqlite3.c:129834:9 */ -type PragmaVtabCursor = PragmaVtabCursor1 /* sqlite3.c:129823:33 */ +type PragmaVtabCursor = PragmaVtabCursor1 /* sqlite3.c:129834:33 */ // Pragma virtual table module xConnect method. -func pragmaVtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:129841:12: */ +func pragmaVtabConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:129852:12: */ bp := tls.Alloc(264) defer tls.Free(264) @@ -125304,7 +125349,7 @@ __3: } // Pragma virtual table module xDisconnect method. -func pragmaVtabDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:129903:12: */ +func pragmaVtabDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:129914:12: */ var pTab uintptr = pVtab Xsqlite3_free(tls, pTab) return SQLITE_OK @@ -125316,7 +125361,7 @@ func pragmaVtabDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:129 // query planner to give == constraints on as many hidden parameters as // possible, and especially on the first hidden parameter. So return a // high cost if hidden parameters are unconstrained. -func pragmaVtabBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:129916:12: */ +func pragmaVtabBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:129927:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -125381,7 +125426,7 @@ __3: } // Create a new cursor for the pragma virtual table -func pragmaVtabOpen(tls *libc.TLS, pVtab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:129953:12: */ +func pragmaVtabOpen(tls *libc.TLS, pVtab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:129964:12: */ var pCsr uintptr pCsr = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(PragmaVtabCursor{}))) if pCsr == uintptr(0) { @@ -125394,7 +125439,7 @@ func pragmaVtabOpen(tls *libc.TLS, pVtab uintptr, ppCursor uintptr) int32 { /* s } // Clear all content from pragma virtual table cursor. -func pragmaVtabCursorClear(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:129964:13: */ +func pragmaVtabCursorClear(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:129975:13: */ var i int32 Xsqlite3_finalize(tls, (*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FpPragma) (*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FpPragma = uintptr(0) @@ -125405,7 +125450,7 @@ func pragmaVtabCursorClear(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:129964:13 } // Close a pragma virtual table cursor -func pragmaVtabClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:129975:12: */ +func pragmaVtabClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:129986:12: */ var pCsr uintptr = cur pragmaVtabCursorClear(tls, pCsr) Xsqlite3_free(tls, pCsr) @@ -125413,7 +125458,7 @@ func pragmaVtabClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:129975:12: } // Advance the pragma virtual table cursor to the next row -func pragmaVtabNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:129983:12: */ +func pragmaVtabNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:129994:12: */ var pCsr uintptr = pVtabCursor var rc int32 = SQLITE_OK @@ -125429,7 +125474,7 @@ func pragmaVtabNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:129 } // Pragma virtual table module xFilter method. -func pragmaVtabFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:130001:12: */ +func pragmaVtabFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:130012:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -125497,14 +125542,14 @@ __3: } // Pragma virtual table module xEof method. -func pragmaVtabEof(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:130051:12: */ +func pragmaVtabEof(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:130062:12: */ var pCsr uintptr = pVtabCursor return (libc.Bool32((*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FpPragma == uintptr(0))) } // The xColumn method simply returns the corresponding column from // the PRAGMA. -func pragmaVtabColumn(tls *libc.TLS, pVtabCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:130059:12: */ +func pragmaVtabColumn(tls *libc.TLS, pVtabCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:130070:12: */ var pCsr uintptr = pVtabCursor var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pVtabCursor)).FpVtab if i < int32((*PragmaVtab)(unsafe.Pointer(pTab)).FiHidden) { @@ -125516,7 +125561,7 @@ func pragmaVtabColumn(tls *libc.TLS, pVtabCursor uintptr, ctx uintptr, i int32) } // Pragma virtual table module xRowid method. -func pragmaVtabRowid(tls *libc.TLS, pVtabCursor uintptr, p uintptr) int32 { /* sqlite3.c:130077:12: */ +func pragmaVtabRowid(tls *libc.TLS, pVtabCursor uintptr, p uintptr) int32 { /* sqlite3.c:130088:12: */ var pCsr uintptr = pVtabCursor *(*Sqlite_int64)(unsafe.Pointer(p)) = (*PragmaVtabCursor)(unsafe.Pointer(pCsr)).FiRowid return SQLITE_OK @@ -125534,12 +125579,12 @@ var pragmaVtabModule = Sqlite3_module{ // xCreate - create a table FxEof: 0, // xEof FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:130084:29 */ +} /* sqlite3.c:130095:29 */ // Check to see if zTabName is really the name of a pragma. If it is, // then register an eponymous virtual table for that pragma and return // a pointer to the Module object for the new virtual table. -func Xsqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) uintptr { /* sqlite3.c:130116:23: */ +func Xsqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) uintptr { /* sqlite3.c:130127:23: */ var pName uintptr pName = pragmaLocate(tls, (zName + uintptr(7))) @@ -125572,7 +125617,7 @@ func Xsqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) uintpt // Fill the InitData structure with an error message that indicates // that the database is corrupt. -func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) { /* sqlite3.c:130153:13: */ +func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) { /* sqlite3.c:130164:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -125593,7 +125638,7 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) zExtra)) (*InitData)(unsafe.Pointer(pData)).Frc = SQLITE_ERROR } else if ((*Sqlite3)(unsafe.Pointer(db)).Fflags & uint64(SQLITE_WriteSchema)) != 0 { - (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130171) + (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130182) } else { var z uintptr var zObj uintptr @@ -125607,14 +125652,14 @@ func corruptSchema(tls *libc.TLS, pData uintptr, azObj uintptr, zExtra uintptr) z = Xsqlite3MPrintf(tls, db, ts+20839 /* "%z - %s" */, libc.VaList(bp+40, z, zExtra)) } *(*uintptr)(unsafe.Pointer((*InitData)(unsafe.Pointer(pData)).FpzErrMsg)) = z - (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130178) + (*InitData)(unsafe.Pointer(pData)).Frc = Xsqlite3CorruptError(tls, 130189) } } // Check to see if any sibling index (another index on the same table) // of pIndex has the same root page number, and if it does, return true. // This would indicate a corrupt schema. -func Xsqlite3IndexHasDuplicateRootPage(tls *libc.TLS, pIndex uintptr) int32 { /* sqlite3.c:130187:20: */ +func Xsqlite3IndexHasDuplicateRootPage(tls *libc.TLS, pIndex uintptr) int32 { /* sqlite3.c:130198:20: */ var p uintptr for p = (*Table)(unsafe.Pointer((*Index)(unsafe.Pointer(pIndex)).FpTable)).FpIndex; p != 0; p = (*Index)(unsafe.Pointer(p)).FpNext { if ((*Index)(unsafe.Pointer(p)).Ftnum == (*Index)(unsafe.Pointer(pIndex)).Ftnum) && (p != pIndex) { @@ -125636,7 +125681,7 @@ func Xsqlite3IndexHasDuplicateRootPage(tls *libc.TLS, pIndex uintptr) int32 { /* // argv[3] = root page number for table or index. 0 for trigger or view. // argv[4] = SQL text for the CREATE statement. // -func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:130221:20: */ +func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr, NotUsed uintptr) int32 { /* sqlite3.c:130232:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -125737,7 +125782,7 @@ func Xsqlite3InitCallback(tls *libc.TLS, pInit uintptr, argc int32, argv uintptr // database. iDb==1 should never be used. iDb>=2 is used for // auxiliary databases. Return one of the SQLITE_ error codes to // indicate success or failure. -func Xsqlite3InitOne(tls *libc.TLS, db uintptr, iDb int32, pzErrMsg uintptr, mFlags U32) int32 { /* sqlite3.c:130323:20: */ +func Xsqlite3InitOne(tls *libc.TLS, db uintptr, iDb int32, pzErrMsg uintptr, mFlags U32) int32 { /* sqlite3.c:130334:20: */ bp := tls.Alloc(124) defer tls.Free(124) @@ -126033,7 +126078,7 @@ __24: // // After a database is initialized, the DB_SchemaLoaded bit is set // bit is set in the flags field of the Db structure. -func Xsqlite3Init(tls *libc.TLS, db uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:130558:20: */ +func Xsqlite3Init(tls *libc.TLS, db uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:130569:20: */ var i int32 var rc int32 var commit_internal int32 = libc.BoolInt32(!(((*Sqlite3)(unsafe.Pointer(db)).FmDbFlags & U32(DBFLAG_SchemaChange)) != 0)) @@ -126065,7 +126110,7 @@ func Xsqlite3Init(tls *libc.TLS, db uintptr, pzErrMsg uintptr) int32 { /* sqlite // This routine is a no-op if the database schema is already initialized. // Otherwise, the schema is loaded. An error code is returned. -func Xsqlite3ReadSchema(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:130590:20: */ +func Xsqlite3ReadSchema(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:130601:20: */ var rc int32 = SQLITE_OK var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -126084,7 +126129,7 @@ func Xsqlite3ReadSchema(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:1305 // Check schema cookies in all databases. If any cookie is out // of date set pParse->rc to SQLITE_SCHEMA. If all schema cookies // make no changes to pParse->rc. -func schemaIsValid(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130612:13: */ +func schemaIsValid(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130623:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -126136,7 +126181,7 @@ func schemaIsValid(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130612:13: */ // // If the same database is attached more than once, the first // attached database is returned. -func Xsqlite3SchemaToIndex(tls *libc.TLS, db uintptr, pSchema uintptr) int32 { /* sqlite3.c:130661:20: */ +func Xsqlite3SchemaToIndex(tls *libc.TLS, db uintptr, pSchema uintptr) int32 { /* sqlite3.c:130672:20: */ var i int32 = -32768 // If pSchema is NULL, then return -32768. This happens when code in @@ -126163,7 +126208,7 @@ func Xsqlite3SchemaToIndex(tls *libc.TLS, db uintptr, pSchema uintptr) int32 { / } // Free all memory allocations in the pParse object -func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130691:21: */ +func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130702:21: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb for (*Parse)(unsafe.Pointer(pParse)).FpCleanup != 0 { var pCleanup uintptr = (*Parse)(unsafe.Pointer(pParse)).FpCleanup @@ -126214,7 +126259,7 @@ func Xsqlite3ParserReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:130691:21 // return value thereafter. Something like this: // // pObj = sqlite3ParserAddCleanup(pParse, destructor, pObj); -func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, pPtr uintptr) uintptr { /* sqlite3.c:130739:21: */ +func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, pPtr uintptr) uintptr { /* sqlite3.c:130750:21: */ var pCleanup uintptr = Xsqlite3DbMallocRaw(tls, (*Parse)(unsafe.Pointer(pParse)).Fdb, uint64(unsafe.Sizeof(ParseCleanup{}))) if pCleanup != 0 { (*ParseCleanup)(unsafe.Pointer(pCleanup)).FpNext = (*Parse)(unsafe.Pointer(pParse)).FpCleanup @@ -126229,7 +126274,7 @@ func Xsqlite3ParserAddCleanup(tls *libc.TLS, pParse uintptr, xCleanup uintptr, p } // Compile the UTF-8 encoded SQL statement zSql into a statement handle. -func sqlite3Prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pReprepare uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130763:12: */ +func sqlite3Prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pReprepare uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130774:12: */ bp := tls.Alloc(432) defer tls.Free(432) @@ -126429,13 +126474,13 @@ end_prepare: return rc } -func sqlite3LockAndPrepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pOld uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130903:12: */ +func sqlite3LockAndPrepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, pOld uintptr, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130914:12: */ var rc int32 var cnt int32 = 0 *(*uintptr)(unsafe.Pointer(ppStmt)) = uintptr(0) if !(Xsqlite3SafetyCheckOk(tls, db) != 0) || (zSql == uintptr(0)) { - return Xsqlite3MisuseError(tls, 130920) + return Xsqlite3MisuseError(tls, 130931) } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) Xsqlite3BtreeEnterAll(tls, db) @@ -126461,7 +126506,7 @@ func sqlite3LockAndPrepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32 // if the statement cannot be recompiled because another connection has // locked the sqlite3_schema table, return SQLITE_LOCKED. If any other error // occurs, return SQLITE_SCHEMA. -func Xsqlite3Reprepare(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:130949:20: */ +func Xsqlite3Reprepare(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:130960:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -126500,14 +126545,14 @@ func Xsqlite3Reprepare(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:130949:20: // sqlite3_step(). In the new version, the original SQL text is retained // and the statement is automatically recompiled if an schema change // occurs. -func Xsqlite3_prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130988:16: */ +func Xsqlite3_prepare(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:130999:16: */ var rc int32 rc = sqlite3LockAndPrepare(tls, db, zSql, nBytes, uint32(0), uintptr(0), ppStmt, pzTail) // VERIFY: F13021 return rc } -func Xsqlite3_prepare_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131000:16: */ +func Xsqlite3_prepare_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131011:16: */ var rc int32 // EVIDENCE-OF: R-37923-12173 The sqlite3_prepare_v2() interface works // exactly the same as sqlite3_prepare_v3() with a zero prepFlags @@ -126520,7 +126565,7 @@ func Xsqlite3_prepare_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, return rc } -func Xsqlite3_prepare_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131018:16: */ +func Xsqlite3_prepare_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131029:16: */ var rc int32 // EVIDENCE-OF: R-56861-42673 sqlite3_prepare_v3() differs from // sqlite3_prepare_v2() only in having the extra prepFlags parameter, @@ -126537,7 +126582,7 @@ func Xsqlite3_prepare_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, } // Compile the UTF-16 encoded SQL statement zSql into a statement handle. -func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131046:12: */ +func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags U32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131057:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -126550,7 +126595,7 @@ func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, pre *(*uintptr)(unsafe.Pointer(ppStmt)) = uintptr(0) if !(Xsqlite3SafetyCheckOk(tls, db) != 0) || (zSql == uintptr(0)) { - return Xsqlite3MisuseError(tls, 131067) + return Xsqlite3MisuseError(tls, 131078) } if nBytes >= 0 { var sz int32 @@ -126585,21 +126630,21 @@ func sqlite3Prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, pre // sqlite3_step(). In the new version, the original SQL text is retained // and the statement is automatically recompiled if an schema change // occurs. -func Xsqlite3_prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131104:16: */ +func Xsqlite3_prepare16(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131115:16: */ var rc int32 rc = sqlite3Prepare16(tls, db, zSql, nBytes, uint32(0), ppStmt, pzTail) // VERIFY: F13021 return rc } -func Xsqlite3_prepare16_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131116:16: */ +func Xsqlite3_prepare16_v2(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131127:16: */ var rc int32 rc = sqlite3Prepare16(tls, db, zSql, nBytes, uint32(SQLITE_PREPARE_SAVESQL), ppStmt, pzTail) // VERIFY: F13021 return rc } -func Xsqlite3_prepare16_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131128:16: */ +func Xsqlite3_prepare16_v3(tls *libc.TLS, db uintptr, zSql uintptr, nBytes int32, prepFlags uint32, ppStmt uintptr, pzTail uintptr) int32 { /* sqlite3.c:131139:16: */ var rc int32 rc = sqlite3Prepare16(tls, db, zSql, nBytes, (uint32(SQLITE_PREPARE_SAVESQL) | (prepFlags & uint32(SQLITE_PREPARE_MASK))), @@ -126633,7 +126678,7 @@ type DistinctCtx1 = struct { _ [2]byte FtabTnct int32 FaddrTnct int32 -} /* sqlite3.c:131169:9 */ +} /* sqlite3.c:131180:9 */ //************* End of prepare.c ******************************************** //************* Begin file select.c ***************************************** @@ -126654,7 +126699,7 @@ type DistinctCtx1 = struct { // An instance of the following object is used to record information about // how to process the DISTINCT keyword, to simplify passing that information // into the selectInnerLoop() routine. -type DistinctCtx = DistinctCtx1 /* sqlite3.c:131169:28 */ +type DistinctCtx = DistinctCtx1 /* sqlite3.c:131180:28 */ // An instance of the following object is used to record information about // the ORDER BY (or GROUP BY) clause of query is being coded. @@ -126684,7 +126729,7 @@ type SortCtx1 = struct { FsortFlags U8 _ [3]byte FpDeferredRowLoad uintptr -} /* sqlite3.c:131195:9 */ +} /* sqlite3.c:131206:9 */ // An instance of the following object is used to record information about // the ORDER BY (or GROUP BY) clause of query is being coded. @@ -126702,19 +126747,19 @@ type SortCtx1 = struct { // When the sorter-reference optimization is used, there is one entry in the // aDefer[] array for each database table that may be read as values are // extracted from the sorter. -type SortCtx = SortCtx1 /* sqlite3.c:131195:24 */ +type SortCtx = SortCtx1 /* sqlite3.c:131206:24 */ type RowLoadInfo1 = struct { FregResult int32 FecelFlags U8 _ [3]byte -} /* sqlite3.c:131195:9 */ +} /* sqlite3.c:131206:9 */ // Delete all the content of a Select structure. Deallocate the structure // itself depending on the value of bFree // // If bFree==1, call sqlite3DbFree() on the p object. // If bFree==0, Leave the first Select object unfreed -func clearSelect(tls *libc.TLS, db uintptr, p uintptr, bFree int32) { /* sqlite3.c:131225:13: */ +func clearSelect(tls *libc.TLS, db uintptr, p uintptr, bFree int32) { /* sqlite3.c:131236:13: */ for p != 0 { var pPrior uintptr = (*Select)(unsafe.Pointer(p)).FpPrior Xsqlite3ExprListDelete(tls, db, (*Select)(unsafe.Pointer(p)).FpEList) @@ -126743,7 +126788,7 @@ func clearSelect(tls *libc.TLS, db uintptr, p uintptr, bFree int32) { /* sqlite3 } // Initialize a SelectDest structure. -func Xsqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int32) { /* sqlite3.c:131254:21: */ +func Xsqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int32) { /* sqlite3.c:131265:21: */ (*SelectDest)(unsafe.Pointer(pDest)).FeDest = U8(eDest) (*SelectDest)(unsafe.Pointer(pDest)).FiSDParm = iParm (*SelectDest)(unsafe.Pointer(pDest)).FiSDParm2 = 0 @@ -126754,7 +126799,7 @@ func Xsqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int // Allocate a new Select structure and return a pointer to that // structure. -func Xsqlite3SelectNew(tls *libc.TLS, pParse uintptr, pEList uintptr, pSrc uintptr, pWhere uintptr, pGroupBy uintptr, pHaving uintptr, pOrderBy uintptr, selFlags U32, pLimit uintptr) uintptr { /* sqlite3.c:131268:23: */ +func Xsqlite3SelectNew(tls *libc.TLS, pParse uintptr, pEList uintptr, pSrc uintptr, pWhere uintptr, pGroupBy uintptr, pHaving uintptr, pOrderBy uintptr, selFlags U32, pLimit uintptr) uintptr { /* sqlite3.c:131279:23: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -126804,14 +126849,14 @@ func Xsqlite3SelectNew(tls *libc.TLS, pParse uintptr, pEList uintptr, pSrc uintp } // Delete the given Select structure and all of its substructures. -func Xsqlite3SelectDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:131326:21: */ +func Xsqlite3SelectDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:131337:21: */ if p != 0 { clearSelect(tls, db, p, 1) } } // Return a pointer to the right-most SELECT statement in a compound. -func findRightmost(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:131333:15: */ +func findRightmost(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:131344:15: */ for (*Select)(unsafe.Pointer(p)).FpNext != 0 { p = (*Select)(unsafe.Pointer(p)).FpNext } @@ -126833,7 +126878,7 @@ func findRightmost(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:131333:15: * // // If an illegal or unsupported join type is seen, then still return // a join type, but put an error in the pParse structure. -func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC uintptr) int32 { /* sqlite3.c:131355:20: */ +func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC uintptr) int32 { /* sqlite3.c:131366:20: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -126887,7 +126932,7 @@ func Xsqlite3JoinType(tls *libc.TLS, pParse uintptr, pA uintptr, pB uintptr, pC return jointype } -var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 21138 /* "naturaleftouteri..." */)) /* sqlite3.c:131360:21 */ +var zKeyText = *(*[34]int8)(unsafe.Pointer(ts + 21138 /* "naturaleftouteri..." */)) /* sqlite3.c:131371:21 */ var aKeyword = [7]struct { Fi U8 FnChar U8 @@ -126900,11 +126945,11 @@ var aKeyword = [7]struct { /* full */ {Fi: U8(19), FnChar: U8(4), Fcode: (U8((JT_LEFT | JT_RIGHT) | JT_OUTER))}, /* inner */ {Fi: U8(23), FnChar: U8(5), Fcode: U8(JT_INNER)}, /* cross */ {Fi: U8(28), FnChar: U8(5), Fcode: (U8(JT_INNER | JT_CROSS))}, -} /* sqlite3.c:131365:5 */ +} /* sqlite3.c:131376:5 */ // Return the index of a column in a table. Return -1 if the column // is not contained in the table. -func Xsqlite3ColumnIndex(tls *libc.TLS, pTab uintptr, zCol uintptr) int32 { /* sqlite3.c:131416:20: */ +func Xsqlite3ColumnIndex(tls *libc.TLS, pTab uintptr, zCol uintptr) int32 { /* sqlite3.c:131427:20: */ var i int32 var h U8 = Xsqlite3StrIHash(tls, zCol) var pCol uintptr @@ -126938,7 +126983,7 @@ __3: // of the matching column and return TRUE. // // If not found, return FALSE. -func tableAndColumnIndex(tls *libc.TLS, pSrc uintptr, N int32, zCol uintptr, piTab uintptr, piCol uintptr, bIgnoreHidden int32) int32 { /* sqlite3.c:131435:12: */ +func tableAndColumnIndex(tls *libc.TLS, pSrc uintptr, N int32, zCol uintptr, piTab uintptr, piCol uintptr, bIgnoreHidden int32) int32 { /* sqlite3.c:131446:12: */ var i int32 // For looping over tables in pSrc var iCol int32 // Index of column matching zCol @@ -126966,7 +127011,7 @@ func tableAndColumnIndex(tls *libc.TLS, pSrc uintptr, N int32, zCol uintptr, piT // where tab1 is the iSrc'th table in SrcList pSrc and tab2 is the // (iSrc+1)'th. Column col1 is column iColLeft of tab1, and col2 is // column iColRight of tab2. -func addWhereTerm(tls *libc.TLS, pParse uintptr, pSrc uintptr, iLeft int32, iColLeft int32, iRight int32, iColRight int32, isOuterJoin int32, ppWhere uintptr) { /* sqlite3.c:131473:13: */ +func addWhereTerm(tls *libc.TLS, pParse uintptr, pSrc uintptr, iLeft int32, iColLeft int32, iRight int32, iColRight int32, isOuterJoin int32, ppWhere uintptr) { /* sqlite3.c:131484:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pE1 uintptr var pE2 uintptr @@ -127008,7 +127053,7 @@ func addWhereTerm(tls *libc.TLS, pParse uintptr, pSrc uintptr, iLeft int32, iCol // defer the handling of t1.x=5, it will be processed immediately // after the t1 loop and rows with t1.x!=5 will never appear in // the output, which is incorrect. -func Xsqlite3SetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131532:21: */ +func Xsqlite3SetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131543:21: */ for p != 0 { *(*U32)(unsafe.Pointer(p + 4 /* &.flags */)) |= (U32(EP_FromJoin)) @@ -127029,7 +127074,7 @@ func Xsqlite3SetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c: // an ordinary term that omits the EP_FromJoin mark. // // This happens when a LEFT JOIN is simplified into an ordinary JOIN. -func unsetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131555:13: */ +func unsetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131566:13: */ for p != 0 { if (((*Expr)(unsafe.Pointer((p))).Fflags & (U32(EP_FromJoin))) != U32(0)) && ((iTable < 0) || ((*Expr)(unsafe.Pointer(p)).FiRightJoinTable == iTable)) { @@ -127061,7 +127106,7 @@ func unsetJoinExpr(tls *libc.TLS, p uintptr, iTable int32) { /* sqlite3.c:131555 // also attached to the left entry. // // This routine returns the number of errors encountered. -func sqliteProcessJoin(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:131589:12: */ +func sqliteProcessJoin(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:131600:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -127175,11 +127220,11 @@ __3: // An instance of this object holds information (beyond pParse and pSelect) // needed to load the next result row that is to be added to the sorter. -type RowLoadInfo = RowLoadInfo1 /* sqlite3.c:131681:28 */ +type RowLoadInfo = RowLoadInfo1 /* sqlite3.c:131692:28 */ // This routine does the work of loading query data into an array of // registers so that it can be added to the sorter. -func innerLoopLoadRow(tls *libc.TLS, pParse uintptr, pSelect uintptr, pInfo uintptr) { /* sqlite3.c:131695:13: */ +func innerLoopLoadRow(tls *libc.TLS, pParse uintptr, pSelect uintptr, pInfo uintptr) { /* sqlite3.c:131706:13: */ Xsqlite3ExprCodeExprList(tls, pParse, (*Select)(unsafe.Pointer(pSelect)).FpEList, (*RowLoadInfo)(unsafe.Pointer(pInfo)).FregResult, 0, (*RowLoadInfo)(unsafe.Pointer(pInfo)).FecelFlags) } @@ -127188,7 +127233,7 @@ func innerLoopLoadRow(tls *libc.TLS, pParse uintptr, pSelect uintptr, pInfo uint // added into the sorter. // // Return the register in which the result is stored. -func makeSorterRecord(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regBase int32, nBase int32) int32 { /* sqlite3.c:131716:12: */ +func makeSorterRecord(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regBase int32, nBase int32) int32 { /* sqlite3.c:131727:12: */ var nOBSat int32 = (*SortCtx)(unsafe.Pointer(pSort)).FnOBSat var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var regOut int32 = libc.PreIncInt32(&(*Parse)(unsafe.Pointer(pParse)).FnMem, 1) @@ -127201,7 +127246,7 @@ func makeSorterRecord(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uint // Generate code that will push the record in registers regData // through regData+nData-1 onto the sorter. -func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regData int32, regOrigData int32, nData int32, nPrefixReg int32) { /* sqlite3.c:131737:13: */ +func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintptr, regData int32, regOrigData int32, nData int32, nPrefixReg int32) { /* sqlite3.c:131748:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // Stmt under construction var bSeq int32 = (libc.Bool32((int32((*SortCtx)(unsafe.Pointer(pSort)).FsortFlags) & SORTFLAG_UseSorter) == 0)) var nExpr int32 = (*ExprList)(unsafe.Pointer((*SortCtx)(unsafe.Pointer(pSort)).FpOrderBy)).FnExpr // No. of ORDER BY terms @@ -127344,7 +127389,7 @@ func pushOntoSorter(tls *libc.TLS, pParse uintptr, pSort uintptr, pSelect uintpt } // Add code to implement the OFFSET -func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* sqlite3.c:131879:13: */ +func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* sqlite3.c:131890:13: */ if iOffset > 0 { Xsqlite3VdbeAddOp3(tls, v, OP_IfPos, iOffset, iContinue, 1) Xsqlite3VdbeComment(tls, v, ts+21341 /* "OFFSET" */, 0) @@ -127358,7 +127403,7 @@ func codeOffset(tls *libc.TLS, v uintptr, iOffset int32, iContinue int32) { /* s // // A jump to addrRepeat is made and the N+1 values are popped from the // stack if the top N elements are not distinct. -func codeDistinct(tls *libc.TLS, pParse uintptr, iTab int32, addrRepeat int32, N int32, iMem int32) { /* sqlite3.c:131899:13: */ +func codeDistinct(tls *libc.TLS, pParse uintptr, iTab int32, addrRepeat int32, N int32, iMem int32) { /* sqlite3.c:131910:13: */ var v uintptr var r1 int32 @@ -127378,7 +127423,7 @@ func codeDistinct(tls *libc.TLS, pParse uintptr, iTab int32, addrRepeat int32, N // are evaluated in order to get the data for this row. If srcTab is // zero or more, then data is pulled from srcTab and p->pEList is used only // to get the number of columns and the collation sequence for each column. -func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSort uintptr, pDistinct uintptr, pDest uintptr, iContinue int32, iBreak int32) { /* sqlite3.c:132008:13: */ +func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSort uintptr, pDistinct uintptr, pDest uintptr, iContinue int32, iBreak int32) { /* sqlite3.c:132019:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -127789,7 +127834,7 @@ func selectInnerLoop(tls *libc.TLS, pParse uintptr, p uintptr, srcTab int32, pSo // Allocate a KeyInfo object sufficient for an index of N key columns and // X extra columns. -func Xsqlite3KeyInfoAlloc(tls *libc.TLS, db uintptr, N int32, X int32) uintptr { /* sqlite3.c:132450:24: */ +func Xsqlite3KeyInfoAlloc(tls *libc.TLS, db uintptr, N int32, X int32) uintptr { /* sqlite3.c:132461:24: */ var nExtra int32 = (int32(((uint64(N + X)) * (uint64(unsafe.Sizeof(uintptr(0))) + uint64(1))) - uint64(unsafe.Sizeof(uintptr(0))))) var p uintptr = Xsqlite3DbMallocRawNN(tls, db, (uint64(uint64(unsafe.Sizeof(KeyInfo{})) + uint64(nExtra)))) if p != 0 { @@ -127807,7 +127852,7 @@ func Xsqlite3KeyInfoAlloc(tls *libc.TLS, db uintptr, N int32, X int32) uintptr { } // Deallocate a KeyInfo object -func Xsqlite3KeyInfoUnref(tls *libc.TLS, p uintptr) { /* sqlite3.c:132470:21: */ +func Xsqlite3KeyInfoUnref(tls *libc.TLS, p uintptr) { /* sqlite3.c:132481:21: */ if p != 0 { (*KeyInfo)(unsafe.Pointer(p)).FnRef-- @@ -127818,7 +127863,7 @@ func Xsqlite3KeyInfoUnref(tls *libc.TLS, p uintptr) { /* sqlite3.c:132470:21: */ } // Make a new pointer to a KeyInfo object -func Xsqlite3KeyInfoRef(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:132481:24: */ +func Xsqlite3KeyInfoRef(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:132492:24: */ if p != 0 { (*KeyInfo)(unsafe.Pointer(p)).FnRef++ @@ -127838,7 +127883,7 @@ func Xsqlite3KeyInfoRef(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:132481: // Space to hold the KeyInfo structure is obtained from malloc. The calling // function is responsible for seeing that this structure is eventually // freed. -func Xsqlite3KeyInfoFromExprList(tls *libc.TLS, pParse uintptr, pList uintptr, iStart int32, nExtra int32) uintptr { /* sqlite3.c:132513:24: */ +func Xsqlite3KeyInfoFromExprList(tls *libc.TLS, pParse uintptr, pList uintptr, iStart int32, nExtra int32) uintptr { /* sqlite3.c:132524:24: */ var nExpr int32 var pInfo uintptr var pItem uintptr @@ -127872,7 +127917,7 @@ func Xsqlite3KeyInfoFromExprList(tls *libc.TLS, pParse uintptr, pList uintptr, i } // Name of the connection operator, used for error messages. -func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:132540:27: */ +func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:132551:27: */ var z uintptr switch id { case TK_ALL: @@ -127899,7 +127944,7 @@ func Xsqlite3SelectOpName(tls *libc.TLS, id int32) uintptr { /* sqlite3.c:132540 // // where xxx is one of "DISTINCT", "ORDER BY" or "GROUP BY". Exactly which // is determined by the zUsage argument. -func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite3.c:132562:13: */ +func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite3.c:132573:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -127916,7 +127961,7 @@ func explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { /* sqlite // then the results were placed in a sorter. After the loop is terminated // we need to run the sorter and output the results. The following // routine generates the code needed to do that. -func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, nColumn int32, pDest uintptr) { /* sqlite3.c:132588:13: */ +func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, nColumn int32, pDest uintptr) { /* sqlite3.c:132599:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -128096,7 +128141,7 @@ func generateSortTail(tls *libc.TLS, pParse uintptr, p uintptr, pSort uintptr, n // // This routine has either 3 or 6 parameters depending on whether or not // the SQLITE_ENABLE_COLUMN_METADATA compile-time option is used. -func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, pzOrigTab uintptr, pzOrigCol uintptr) uintptr { /* sqlite3.c:132813:19: */ +func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, pzOrigTab uintptr, pzOrigCol uintptr) uintptr { /* sqlite3.c:132824:19: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -128217,7 +128262,7 @@ func columnTypeImpl(tls *libc.TLS, pNC uintptr, pExpr uintptr, pzOrigDb uintptr, // Generate code that will tell the VDBE the declaration types of columns // in the result set. -func generateColumnTypes(tls *libc.TLS, pParse uintptr, pTabList uintptr, pEList uintptr) { /* sqlite3.c:132956:13: */ +func generateColumnTypes(tls *libc.TLS, pParse uintptr, pTabList uintptr, pEList uintptr) { /* sqlite3.c:132967:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -128274,7 +128319,7 @@ func generateColumnTypes(tls *libc.TLS, pParse uintptr, pTabList uintptr, pEList // full=ON, short=ANY: If the result refers directly to a table column, // then the result column name with the table name // prefix, ex: TABLE.COLUMN. Otherwise use zSpan. -func generateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:133023:13: */ +func generateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:133034:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -128370,7 +128415,7 @@ func generateColumnNames(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sq // when modifying this routine to avoid breaking legacy. // // See Also: generateColumnNames() -func Xsqlite3ColumnsFromExprList(tls *libc.TLS, pParse uintptr, pEList uintptr, pnCol uintptr, paCol uintptr) int32 { /* sqlite3.c:133115:20: */ +func Xsqlite3ColumnsFromExprList(tls *libc.TLS, pParse uintptr, pEList uintptr, pnCol uintptr, paCol uintptr) int32 { /* sqlite3.c:133126:20: */ bp := tls.Alloc(60) defer tls.Free(60) @@ -128500,7 +128545,7 @@ __3: // // This routine requires that all identifiers in the SELECT // statement be resolved. -func Xsqlite3SelectAddColumnTypeAndCollation(tls *libc.TLS, pParse uintptr, pTab uintptr, pSelect uintptr, aff int8) { /* sqlite3.c:133219:21: */ +func Xsqlite3SelectAddColumnTypeAndCollation(tls *libc.TLS, pParse uintptr, pTab uintptr, pSelect uintptr, aff int8) { /* sqlite3.c:133230:21: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -128565,7 +128610,7 @@ __3: // Given a SELECT statement, generate a Table structure that describes // the result set of that SELECT. -func Xsqlite3ResultSetOfSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, aff int8) uintptr { /* sqlite3.c:133270:22: */ +func Xsqlite3ResultSetOfSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, aff int8) uintptr { /* sqlite3.c:133281:22: */ var pTab uintptr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var savedFlags U64 @@ -128600,7 +128645,7 @@ func Xsqlite3ResultSetOfSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, a // Get a VDBE for the given parser context. Create a new one if necessary. // If an error occurs, return NULL and leave a message in pParse. -func Xsqlite3GetVdbe(tls *libc.TLS, pParse uintptr) uintptr { /* sqlite3.c:133303:21: */ +func Xsqlite3GetVdbe(tls *libc.TLS, pParse uintptr) uintptr { /* sqlite3.c:133314:21: */ if (*Parse)(unsafe.Pointer(pParse)).FpVdbe != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpVdbe } @@ -128632,7 +128677,7 @@ func Xsqlite3GetVdbe(tls *libc.TLS, pParse uintptr) uintptr { /* sqlite3.c:13330 // redefined. The UNION ALL operator uses this property to force // the reuse of the same limit and offset registers across multiple // SELECT statements. -func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int32) { /* sqlite3.c:133339:13: */ +func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int32) { /* sqlite3.c:133350:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -128689,7 +128734,7 @@ func computeLimitRegisters(tls *libc.TLS, pParse uintptr, p uintptr, iBreak int3 // // The collating sequence for the compound select is taken from the // left-most term of the select that has a collating sequence. -func multiSelectCollSeq(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:133396:16: */ +func multiSelectCollSeq(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:133407:16: */ var pRet uintptr if (*Select)(unsafe.Pointer(p)).FpPrior != 0 { pRet = multiSelectCollSeq(tls, pParse, (*Select)(unsafe.Pointer(p)).FpPrior, iCol) @@ -128713,7 +128758,7 @@ func multiSelectCollSeq(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) ui // Space to hold the KeyInfo structure is obtained from malloc. The calling // function is responsible for ensuring that this structure is eventually // freed. -func multiSelectOrderByKeyInfo(tls *libc.TLS, pParse uintptr, p uintptr, nExtra int32) uintptr { /* sqlite3.c:133422:16: */ +func multiSelectOrderByKeyInfo(tls *libc.TLS, pParse uintptr, p uintptr, nExtra int32) uintptr { /* sqlite3.c:133433:16: */ var pOrderBy uintptr = (*Select)(unsafe.Pointer(p)).FpOrderBy var nOrderBy int32 = (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer(p)).FpOrderBy)).FnExpr var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb @@ -128777,7 +128822,7 @@ func multiSelectOrderByKeyInfo(tls *libc.TLS, pParse uintptr, p uintptr, nExtra // with a positive value, then the first OFFSET outputs are discarded rather // than being sent to pDest. The LIMIT count does not begin until after OFFSET // rows have been skipped. -func generateWithRecursiveQuery(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) { /* sqlite3.c:133488:13: */ +func generateWithRecursiveQuery(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) { /* sqlite3.c:133499:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -129020,7 +129065,7 @@ end_of_recursive_query: // clause occurs within scalar expression (ex: "SELECT (VALUES(1),(2),(3))"). // The sqlite3CodeSubselect will have added the LIMIT 1 clause in tht case. // Since the limit is exactly 1, we only need to evalutes the left-most VALUES. -func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133665:12: */ +func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133676:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -129060,7 +129105,7 @@ func multiSelectValues(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) // Return true if the SELECT statement which is known to be the recursive // part of a recursive CTE still has its anchor terms attached. If the // anchor terms have already been removed, then return false. -func hasAnchor(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:133702:12: */ +func hasAnchor(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:133713:12: */ for (p != 0) && (((*Select)(unsafe.Pointer(p)).FselFlags & U32(SF_Recursive)) != U32(0)) { p = (*Select)(unsafe.Pointer(p)).FpPrior } @@ -129096,7 +129141,7 @@ func hasAnchor(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:133702:12: */ // // Notice that because of the way SQLite parses compound SELECTs, the // individual selects always group from left to right. -func multiSelect(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133738:12: */ +func multiSelect(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:133749:12: */ bp := tls.Alloc(144) defer tls.Free(144) @@ -129543,7 +129588,7 @@ multi_select_end: // Error message for when two or more terms of a compound select have different // size result sets. -func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:134083:21: */ +func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:134094:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -129574,7 +129619,7 @@ func Xsqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) // // If the LIMIT found in p->iLimit is reached, jump immediately to // iBreak. -func generateOutputSubroutine(tls *libc.TLS, pParse uintptr, p uintptr, pIn uintptr, pDest uintptr, regReturn int32, regPrev int32, pKeyInfo uintptr, iBreak int32) int32 { /* sqlite3.c:134113:12: */ +func generateOutputSubroutine(tls *libc.TLS, pParse uintptr, p uintptr, pIn uintptr, pDest uintptr, regReturn int32, regPrev int32, pKeyInfo uintptr, iBreak int32) int32 { /* sqlite3.c:134124:12: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var iContinue int32 var addr int32 @@ -129770,7 +129815,7 @@ func generateOutputSubroutine(tls *libc.TLS, pParse uintptr, p uintptr, pIn uint // actually called using Gosub and they do not Return. EofA and EofB loop // until all data is exhausted then jump to the "end" labe. AltB, AeqB, // and AgtB jump to either L2 or to one of EofA or EofB. -func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:134321:12: */ +func multiSelectOrderBy(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:134332:12: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -130103,14 +130148,14 @@ type SubstContext1 = struct { FisLeftJoin int32 _ [4]byte FpEList uintptr -} /* sqlite3.c:134628:9 */ +} /* sqlite3.c:134639:9 */ // An instance of the SubstContext object describes an substitution edit // to be performed on a parse tree. // // All references to columns in table iTable are to be replaced by corresponding // expressions in pEList. -type SubstContext = SubstContext1 /* sqlite3.c:134634:3 */ +type SubstContext = SubstContext1 /* sqlite3.c:134645:3 */ // Scan through the expression pExpr. Replace every reference to // a column in table number iTable with a copy of the iColumn-th @@ -130123,7 +130168,7 @@ type SubstContext = SubstContext1 /* sqlite3.c:134634:3 */ // FORM clause entry is iTable. This routine makes the necessary // changes to pExpr so that it refers directly to the source table // of the subquery rather the result set of the subquery. -func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite3.c:134653:13: */ +func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite3.c:134664:13: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -130205,7 +130250,7 @@ func substExpr(tls *libc.TLS, pSubst uintptr, pExpr uintptr) uintptr { /* sqlite return pExpr } -func substExprList(tls *libc.TLS, pSubst uintptr, pList uintptr) { /* sqlite3.c:134733:13: */ +func substExprList(tls *libc.TLS, pSubst uintptr, pList uintptr) { /* sqlite3.c:134744:13: */ var i int32 if pList == uintptr(0) { return @@ -130215,7 +130260,7 @@ func substExprList(tls *libc.TLS, pSubst uintptr, pList uintptr) { /* sqlite3.c: } } -func substSelect(tls *libc.TLS, pSubst uintptr, p uintptr, doPrior int32) { /* sqlite3.c:134743:13: */ +func substSelect(tls *libc.TLS, pSubst uintptr, p uintptr, doPrior int32) { /* sqlite3.c:134754:13: */ var pSrc uintptr var pItem uintptr var i int32 @@ -130258,7 +130303,7 @@ func substSelect(tls *libc.TLS, pSubst uintptr, p uintptr, doPrior int32) { /* s // // This routine scans the entire SELECT statement and recomputes the // pSrcItem->colUsed mask. -func recomputeColumnsUsedExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134778:12: */ +func recomputeColumnsUsedExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134789:12: */ var pItem uintptr if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_COLUMN { return WRC_Continue @@ -130274,7 +130319,7 @@ func recomputeColumnsUsedExpr(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int return WRC_Continue } -func recomputeColumnsUsed(tls *libc.TLS, pSelect uintptr, pSrcItem uintptr) { /* sqlite3.c:134787:13: */ +func recomputeColumnsUsed(tls *libc.TLS, pSelect uintptr, pSrcItem uintptr) { /* sqlite3.c:134798:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -130306,7 +130351,7 @@ func recomputeColumnsUsed(tls *libc.TLS, pSelect uintptr, pSrcItem uintptr) { /* // // If pSrc contains any sub-selects, call this routine recursively // on the FROM clause of each such sub-select, with iExcept set to -1. -func srclistRenumberCursors(tls *libc.TLS, pParse uintptr, aCsrMap uintptr, pSrc uintptr, iExcept int32) { /* sqlite3.c:134816:13: */ +func srclistRenumberCursors(tls *libc.TLS, pParse uintptr, aCsrMap uintptr, pSrc uintptr, iExcept int32) { /* sqlite3.c:134827:13: */ var i int32 var pItem uintptr i = 0 @@ -130336,7 +130381,7 @@ __3: // Expression walker callback used by renumberCursors() to update // Expr objects to match newly assigned cursor numbers. -func renumberCursorsCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134839:12: */ +func renumberCursorsCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:134850:12: */ var aCsrMap uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) var op int32 = int32((*Expr)(unsafe.Pointer(pExpr)).Fop) if ((op == TK_COLUMN) || (op == TK_IF_NULL_ROW)) && (*(*int32)(unsafe.Pointer(aCsrMap + uintptr((*Expr)(unsafe.Pointer(pExpr)).FiTable)*4)) != 0) { @@ -130364,7 +130409,7 @@ func renumberCursorsCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* // * the array entries for all cursor numbers that do *not* appear in // FROM clauses of the select statement as described above are // initialized to zero. -func renumberCursors(tls *libc.TLS, pParse uintptr, p uintptr, iExcept int32, aCsrMap uintptr) { /* sqlite3.c:134869:13: */ +func renumberCursors(tls *libc.TLS, pParse uintptr, p uintptr, iExcept int32, aCsrMap uintptr) { /* sqlite3.c:134880:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -130534,7 +130579,7 @@ func renumberCursors(tls *libc.TLS, pParse uintptr, p uintptr, iExcept int32, aC // // All of the expression analysis must occur on both the outer query and // the subquery before this routine runs. -func flattenSubquery(tls *libc.TLS, pParse uintptr, p uintptr, iFrom int32, isAgg int32) int32 { /* sqlite3.c:135040:12: */ +func flattenSubquery(tls *libc.TLS, pParse uintptr, p uintptr, iFrom int32, isAgg int32) int32 { /* sqlite3.c:135051:12: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -130956,7 +131001,7 @@ __3: // A structure to keep track of all of the column values that are fixed to // a known value due to WHERE clause constraints of the form COLUMN=VALUE. -type WhereConst = WhereConst1 /* sqlite3.c:135463:27 */ +type WhereConst = WhereConst1 /* sqlite3.c:135474:27 */ // Add a new entry to the pConst object. Except, do not add duplicate // pColumn entires. Also, do not add if doing so would not be appropriate. @@ -130964,7 +131009,7 @@ type WhereConst = WhereConst1 /* sqlite3.c:135463:27 */ // The caller guarantees the pColumn is a column and pValue is a constant. // This routine has to do some additional checks before completing the // insert. -func constInsert(tls *libc.TLS, pConst uintptr, pColumn uintptr, pValue uintptr, pExpr uintptr) { /* sqlite3.c:135479:13: */ +func constInsert(tls *libc.TLS, pConst uintptr, pColumn uintptr, pValue uintptr, pExpr uintptr) { /* sqlite3.c:135490:13: */ var i int32 if ((*Expr)(unsafe.Pointer((pColumn))).Fflags & (U32(EP_FixedCol))) != U32(0) { @@ -131003,7 +131048,7 @@ func constInsert(tls *libc.TLS, pConst uintptr, pColumn uintptr, pValue uintptr, // is a constant expression and where the term must be true because it // is part of the AND-connected terms of the expression. For each term // found, add it to the pConst structure. -func findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { /* sqlite3.c:135524:13: */ +func findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { /* sqlite3.c:135535:13: */ var pRight uintptr var pLeft uintptr if pExpr == uintptr(0) { @@ -131035,7 +131080,7 @@ func findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { /* sqlite3 // to be replaced by a value. If pExpr is equivalent to one of the // columns named in pWalker->u.pConst, then overwrite it with its // corresponding value. -func propagateConstantExprRewrite(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:135552:12: */ +func propagateConstantExprRewrite(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:135563:12: */ var i int32 var pConst uintptr if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_COLUMN { @@ -131102,7 +131147,7 @@ func propagateConstantExprRewrite(tls *libc.TLS, pWalker uintptr, pExpr uintptr) // routines know to generate the constant "123" instead of looking up the // column value. Also, to avoid collation problems, this optimization is // only attempted if the "a=123" term uses the default BINARY collation. -func propagateConstants(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:135614:12: */ +func propagateConstants(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:135625:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -131153,7 +131198,7 @@ func propagateConstants(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sql // // * the sub-query uses only one distinct window frame, and // * that the window frame has a PARTITION BY clase. -func pushDownWindowCheck(tls *libc.TLS, pParse uintptr, pSubq uintptr, pExpr uintptr) int32 { /* sqlite3.c:135663:12: */ +func pushDownWindowCheck(tls *libc.TLS, pParse uintptr, pSubq uintptr, pExpr uintptr) int32 { /* sqlite3.c:135674:12: */ return Xsqlite3ExprIsConstantOrGroupBy(tls, pParse, pExpr, (*Window)(unsafe.Pointer((*Select)(unsafe.Pointer(pSubq)).FpWin)).FpPartition) } @@ -131224,7 +131269,7 @@ func pushDownWindowCheck(tls *libc.TLS, pParse uintptr, pSubq uintptr, pExpr uin // // Return 0 if no changes are made and non-zero if one or more WHERE clause // terms are duplicated into the subquery. -func pushDownWhereTerms(tls *libc.TLS, pParse uintptr, pSubq uintptr, pWhere uintptr, iCursor int32, isLeftJoin int32) int32 { /* sqlite3.c:135741:12: */ +func pushDownWhereTerms(tls *libc.TLS, pParse uintptr, pSubq uintptr, pWhere uintptr, iCursor int32, isLeftJoin int32) int32 { /* sqlite3.c:135752:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -131311,7 +131356,7 @@ func pushDownWhereTerms(tls *libc.TLS, pParse uintptr, pSubq uintptr, pWhere uin // This routine must be called after aggregate functions have been // located but before their arguments have been subjected to aggregate // analysis. -func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 { /* sqlite3.c:135843:11: */ +func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 { /* sqlite3.c:135854:11: */ var eRet int32 = WHERE_ORDERBY_NORMAL // Return value var pEList uintptr = *(*uintptr)(unsafe.Pointer(pFunc + 32 /* &.x */)) // Arguments to agg function var zFunc uintptr // Name of aggregate function pFunc @@ -131353,7 +131398,7 @@ func minMaxQuery(tls *libc.TLS, db uintptr, pFunc uintptr, ppMinMax uintptr) U8 // where table is a database table, not a sub-select or view. If the query // does match this pattern, then a pointer to the Table object representing // is returned. Otherwise, 0 is returned. -func isSimpleCount(tls *libc.TLS, p uintptr, pAggInfo uintptr) uintptr { /* sqlite3.c:135889:14: */ +func isSimpleCount(tls *libc.TLS, p uintptr, pAggInfo uintptr) uintptr { /* sqlite3.c:135900:14: */ var pTab uintptr var pExpr uintptr @@ -131388,7 +131433,7 @@ func isSimpleCount(tls *libc.TLS, p uintptr, pAggInfo uintptr) uintptr { /* sqli // was such a clause and the named index cannot be found, return // SQLITE_ERROR and leave an error in pParse. Otherwise, populate // pFrom->pIndex and return SQLITE_OK. -func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:135920:20: */ +func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:135931:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -131426,7 +131471,7 @@ func Xsqlite3IndexedByLookup(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 // This transformation is only needed for EXCEPT, INTERSECT, and UNION. // The UNION ALL operator works fine with multiSelectOrderBy() even when // there are COLLATE terms in the ORDER BY. -func convertCompoundSelectToSubquery(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:135961:12: */ +func convertCompoundSelectToSubquery(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:135972:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -131505,7 +131550,7 @@ func convertCompoundSelectToSubquery(tls *libc.TLS, pWalker uintptr, p uintptr) // Check to see if the FROM clause term pFrom has table-valued function // arguments. If it does, leave an error message in pParse and return // non-zero, since pFrom is not allowed to be a table-valued function. -func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136026:12: */ +func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136037:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -131524,7 +131569,7 @@ func cannotBeFunction(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* s // // If a non-NULL value is returned, set *ppContext to point to the With // object that the returned CTE belongs to. -func searchWith(tls *libc.TLS, pWith uintptr, pItem uintptr, ppContext uintptr) uintptr { /* sqlite3.c:136045:19: */ +func searchWith(tls *libc.TLS, pWith uintptr, pItem uintptr, ppContext uintptr) uintptr { /* sqlite3.c:136056:19: */ var zName uintptr = (*SrcItem)(unsafe.Pointer(pItem)).FzName var p uintptr @@ -131549,7 +131594,7 @@ func searchWith(tls *libc.TLS, pWith uintptr, pItem uintptr, ppContext uintptr) // should be freed along with the Parse object. In other cases, when // bFree==0, the With object will be freed along with the SELECT // statement with which it is associated. -func Xsqlite3WithPush(tls *libc.TLS, pParse uintptr, pWith uintptr, bFree U8) { /* sqlite3.c:136076:21: */ +func Xsqlite3WithPush(tls *libc.TLS, pParse uintptr, pWith uintptr, bFree U8) { /* sqlite3.c:136087:21: */ if pWith != 0 { (*With)(unsafe.Pointer(pWith)).FpOuter = (*Parse)(unsafe.Pointer(pParse)).FpWith @@ -131577,7 +131622,7 @@ func Xsqlite3WithPush(tls *libc.TLS, pParse uintptr, pWith uintptr, bFree U8) { // Return 0 if no match is found. // Return 1 if a match is found. // Return 2 if an error condition is detected. -func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom uintptr) int32 { /* sqlite3.c:136104:12: */ +func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom uintptr) int32 { /* sqlite3.c:136115:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -131742,7 +131787,7 @@ func resolveFromTermToCte(tls *libc.TLS, pParse uintptr, pWalker uintptr, pFrom // This function is used as the xSelectCallback2() callback by // sqlite3SelectExpand() when walking a SELECT tree to resolve table // names and other FROM clause elements. -func selectPopWith(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136270:13: */ +func selectPopWith(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136281:13: */ var pParse uintptr = (*Walker)(unsafe.Pointer(pWalker)).FpParse if ((*Parse)(unsafe.Pointer(pParse)).FpWith != 0) && ((*Select)(unsafe.Pointer(p)).FpPrior == uintptr(0)) { var pWith uintptr = (*Select)(unsafe.Pointer(findRightmost(tls, p))).FpWith @@ -131758,7 +131803,7 @@ func selectPopWith(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136 // allocates and populates the SrcList_item.pTab object. If successful, // SQLITE_OK is returned. Otherwise, if an OOM error is encountered, // SQLITE_NOMEM. -func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136291:20: */ +func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 { /* sqlite3.c:136302:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -131811,7 +131856,7 @@ func Xsqlite3ExpandSubquery(tls *libc.TLS, pParse uintptr, pFrom uintptr) int32 // If found, expand each "*" to be every column in every table // and TABLE.* to be every column in TABLE. // -func selectExpander(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:136337:12: */ +func selectExpander(tls *libc.TLS, pWalker uintptr, p uintptr) int32 { /* sqlite3.c:136348:12: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -132149,7 +132194,7 @@ __3: // If anything goes wrong, an error message is written into pParse. // The calling function can detect the problem by looking at pParse->nErr // and/or pParse->db->mallocFailed. -func sqlite3SelectExpand(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136652:13: */ +func sqlite3SelectExpand(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136663:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -132187,7 +132232,7 @@ func sqlite3SelectExpand(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sq // by selectExpander() but the type and collation information was omitted // at that point because identifiers had not yet been resolved. This // routine is called after identifier resolution. -func selectAddSubqueryTypeInfo(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136682:13: */ +func selectAddSubqueryTypeInfo(tls *libc.TLS, pWalker uintptr, p uintptr) { /* sqlite3.c:136693:13: */ var pParse uintptr var i int32 var pTabList uintptr @@ -132235,7 +132280,7 @@ __3: // SELECT statement. // // Use this routine after name resolution. -func sqlite3SelectAddTypeInfo(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136717:13: */ +func sqlite3SelectAddTypeInfo(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:136728:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -132264,7 +132309,7 @@ func sqlite3SelectAddTypeInfo(tls *libc.TLS, pParse uintptr, pSelect uintptr) { // * Identifiers in expression are matched to tables. // // This routine acts recursively on all subqueries within the SELECT. -func Xsqlite3SelectPrep(tls *libc.TLS, pParse uintptr, p uintptr, pOuterNC uintptr) { /* sqlite3.c:136741:21: */ +func Xsqlite3SelectPrep(tls *libc.TLS, pParse uintptr, p uintptr, pOuterNC uintptr) { /* sqlite3.c:136752:21: */ if (*Sqlite3)(unsafe.Pointer((*Parse)(unsafe.Pointer(pParse)).Fdb)).FmallocFailed != 0 { return @@ -132289,7 +132334,7 @@ func Xsqlite3SelectPrep(tls *libc.TLS, pParse uintptr, p uintptr, pOuterNC uintp // intermediate results while calculating an aggregate. This // routine generates code that stores NULLs in all of those memory // cells. -func resetAccumulator(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136764:13: */ +func resetAccumulator(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136775:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 var pFunc uintptr @@ -132334,7 +132379,7 @@ __3: // Invoke the OP_AggFinalize opcode for every aggregate function // in the AggInfo structure. -func finalizeAggFunctions(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136806:13: */ +func finalizeAggFunctions(tls *libc.TLS, pParse uintptr, pAggInfo uintptr) { /* sqlite3.c:136817:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 var pF uintptr @@ -132372,7 +132417,7 @@ __3: // in pAggInfo, then only populate the pAggInfo->nAccumulator accumulator // registers if register regAcc contains 0. The caller will take care // of setting and clearing regAcc. -func updateAccumulator(tls *libc.TLS, pParse uintptr, regAcc int32, pAggInfo uintptr) { /* sqlite3.c:136828:13: */ +func updateAccumulator(tls *libc.TLS, pParse uintptr, regAcc int32, pAggInfo uintptr) { /* sqlite3.c:136839:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var i int32 var regHit int32 = 0 @@ -132513,7 +132558,7 @@ __9: // Add a single OP_Explain instruction to the VDBE to explain a simple // count(*) query ("SELECT count(*) FROM pTab"). -func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintptr) { /* sqlite3.c:136925:13: */ +func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintptr) { /* sqlite3.c:136936:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -132545,7 +132590,7 @@ func explainSimpleCount(tls *libc.TLS, pParse uintptr, pTab uintptr, pIdx uintpt // sub-expression matches the criteria for being moved to the WHERE // clause. If so, add it to the WHERE clause and replace the sub-expression // within the HAVING expression with a constant "1". -func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:136954:12: */ +func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:136965:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) != TK_AND { var pS uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) if (Xsqlite3ExprIsConstantOrGroupBy(tls, (*Walker)(unsafe.Pointer(pWalker)).FpParse, pExpr, (*Select)(unsafe.Pointer(pS)).FpGroupBy) != 0) && @@ -132583,7 +132628,7 @@ func havingToWhereExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { // A term of the HAVING expression is eligible for transfer if it consists // entirely of constants and expressions that are also GROUP BY terms that // use the "BINARY" collation sequence. -func havingToWhere(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:136990:13: */ +func havingToWhere(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:137001:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -132601,7 +132646,7 @@ func havingToWhere(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:1369 // Check to see if the pThis entry of pTabList is a self-join of a prior view. // If it is, then return the SrcList_item for the prior view. If it is not, // then return 0. -func isSelfJoinView(tls *libc.TLS, pTabList uintptr, pThis uintptr) uintptr { /* sqlite3.c:137010:16: */ +func isSelfJoinView(tls *libc.TLS, pTabList uintptr, pThis uintptr) uintptr { /* sqlite3.c:137021:16: */ var pItem uintptr if ((*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(pThis)).FpSelect)).FselFlags & U32(SF_PushDown)) != 0 { @@ -132642,7 +132687,7 @@ func isSelfJoinView(tls *libc.TLS, pTabList uintptr, pThis uintptr) uintptr { /* } // Deallocate a single AggInfo object -func agginfoFree(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:137045:13: */ +func agginfoFree(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:137056:13: */ Xsqlite3DbFree(tls, db, (*AggInfo)(unsafe.Pointer(p)).FaCol) Xsqlite3DbFree(tls, db, (*AggInfo)(unsafe.Pointer(p)).FaFunc) Xsqlite3DbFreeNN(tls, db, p) @@ -132659,7 +132704,7 @@ func agginfoFree(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:137045:13: // // This routine does NOT free the Select structure passed in. The // calling function needs to do that. -func Xsqlite3Select(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:137151:20: */ +func Xsqlite3Select(tls *libc.TLS, pParse uintptr, p uintptr, pDest uintptr) int32 { /* sqlite3.c:137162:20: */ bp := tls.Alloc(248) defer tls.Free(248) @@ -134156,7 +134201,7 @@ type TabResult1 = struct { FnData U32 Frc int32 _ [4]byte -} /* sqlite3.c:138337:9 */ +} /* sqlite3.c:138348:9 */ //************* End of select.c ********************************************* //************* Begin file table.c ****************************************** @@ -134180,12 +134225,12 @@ type TabResult1 = struct { // This structure is used to pass data from sqlite3_get_table() through // to the callback function is uses to build the result. -type TabResult = TabResult1 /* sqlite3.c:138345:3 */ +type TabResult = TabResult1 /* sqlite3.c:138356:3 */ // This routine is called once for each row in the result table. Its job // is to fill in the TabResult structure appropriately, allocating new // memory as necessary. -func sqlite3_get_table_cb(tls *libc.TLS, pArg uintptr, nCol int32, argv uintptr, colv uintptr) int32 { /* sqlite3.c:138352:12: */ +func sqlite3_get_table_cb(tls *libc.TLS, pArg uintptr, nCol int32, argv uintptr, colv uintptr) int32 { /* sqlite3.c:138363:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -134316,7 +134361,7 @@ malloc_failed: // from malloc(). But the caller cannot free this memory directly. // Instead, the entire table should be passed to sqlite3_free_table() when // the calling procedure is finished using it. -func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintptr, pnRow uintptr, pnColumn uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:138426:16: */ +func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintptr, pnRow uintptr, pnColumn uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:138437:16: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -134388,7 +134433,7 @@ func Xsqlite3_get_table(tls *libc.TLS, db uintptr, zSql uintptr, pazResult uintp } // This routine frees the space the sqlite3_get_table() malloced. -func Xsqlite3_free_table(tls *libc.TLS, azResult uintptr) { /* sqlite3.c:138495:17: */ +func Xsqlite3_free_table(tls *libc.TLS, azResult uintptr) { /* sqlite3.c:138506:17: */ if azResult != 0 { var i int32 var n int32 @@ -134419,7 +134464,7 @@ func Xsqlite3_free_table(tls *libc.TLS, azResult uintptr) { /* sqlite3.c:138495: // #include "sqliteInt.h" // Delete a linked list of TriggerStep structures. -func Xsqlite3DeleteTriggerStep(tls *libc.TLS, db uintptr, pTriggerStep uintptr) { /* sqlite3.c:138530:21: */ +func Xsqlite3DeleteTriggerStep(tls *libc.TLS, db uintptr, pTriggerStep uintptr) { /* sqlite3.c:138541:21: */ for pTriggerStep != 0 { var pTmp uintptr = pTriggerStep pTriggerStep = (*TriggerStep)(unsafe.Pointer(pTriggerStep)).FpNext @@ -134448,7 +134493,7 @@ func Xsqlite3DeleteTriggerStep(tls *libc.TLS, db uintptr, pTriggerStep uintptr) // To state it another way: This routine returns a list of all triggers // that fire off of pTab. The list will include any TEMP triggers on // pTab as well as the triggers lised in pTab->pTrigger. -func Xsqlite3TriggerList(tls *libc.TLS, pParse uintptr, pTab uintptr) uintptr { /* sqlite3.c:138561:24: */ +func Xsqlite3TriggerList(tls *libc.TLS, pParse uintptr, pTab uintptr) uintptr { /* sqlite3.c:138572:24: */ var pTmpSchema uintptr // Schema of the pTab table var pList uintptr // List of triggers to return var p uintptr // Loop variable for TEMP triggers @@ -134488,7 +134533,7 @@ func Xsqlite3TriggerList(tls *libc.TLS, pParse uintptr, pTab uintptr) uintptr { // in pParse->pNewTrigger. After the trigger actions have been parsed, the // sqlite3FinishTrigger() function is called to complete the trigger // construction process. -func Xsqlite3BeginTrigger(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, tr_tm int32, op int32, pColumns uintptr, pTableName uintptr, pWhen uintptr, isTemp int32, noErr int32) { /* sqlite3.c:138605:21: */ +func Xsqlite3BeginTrigger(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, tr_tm int32, op int32, pColumns uintptr, pTableName uintptr, pWhen uintptr, isTemp int32, noErr int32) { /* sqlite3.c:138616:21: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -134795,7 +134840,7 @@ __31: // This routine is called after all of the trigger actions have been parsed // in order to complete the process of building the trigger. -func Xsqlite3FinishTrigger(tls *libc.TLS, pParse uintptr, pStepList uintptr, pAll uintptr) { /* sqlite3.c:138812:21: */ +func Xsqlite3FinishTrigger(tls *libc.TLS, pParse uintptr, pStepList uintptr, pAll uintptr) { /* sqlite3.c:138823:21: */ bp := tls.Alloc(152) defer tls.Free(152) @@ -134919,7 +134964,7 @@ triggerfinish_cleanup: // Duplicate a range of text from an SQL statement, then convert all // whitespace characters into ordinary space characters. -func triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138900:13: */ +func triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138911:13: */ var z uintptr = Xsqlite3DbSpanDup(tls, db, zStart, zEnd) var i int32 if z != 0 { @@ -134937,7 +134982,7 @@ func triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) uin // // The parser calls this routine when it finds a SELECT statement in // body of a TRIGGER. -func Xsqlite3TriggerSelectStep(tls *libc.TLS, db uintptr, pSelect uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138914:28: */ +func Xsqlite3TriggerSelectStep(tls *libc.TLS, db uintptr, pSelect uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138925:28: */ var pTriggerStep uintptr = Xsqlite3DbMallocZero(tls, db, uint64(unsafe.Sizeof(TriggerStep{}))) if pTriggerStep == uintptr(0) { Xsqlite3SelectDelete(tls, db, pSelect) @@ -134954,7 +134999,7 @@ func Xsqlite3TriggerSelectStep(tls *libc.TLS, db uintptr, pSelect uintptr, zStar // holds both the TriggerStep object and the TriggerStep.target.z string. // // If an OOM error occurs, NULL is returned and db->mallocFailed is set. -func triggerStepAllocate(tls *libc.TLS, pParse uintptr, op U8, pName uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138938:20: */ +func triggerStepAllocate(tls *libc.TLS, pParse uintptr, op U8, pName uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138949:20: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -134978,7 +135023,7 @@ func triggerStepAllocate(tls *libc.TLS, pParse uintptr, op U8, pName uintptr, zS // // The parser calls this routine when it sees an INSERT inside the // body of a trigger. -func Xsqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pColumn uintptr, pSelect uintptr, orconf U8, pUpsert uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138970:28: */ +func Xsqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pColumn uintptr, pSelect uintptr, orconf U8, pUpsert uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:138981:28: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -135010,7 +135055,7 @@ func Xsqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTableName uintptr // Construct a trigger step that implements an UPDATE statement and return // a pointer to that trigger step. The parser calls this routine when it // sees an UPDATE statement inside the body of a CREATE TRIGGER. -func Xsqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pFrom uintptr, pEList uintptr, pWhere uintptr, orconf U8, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139015:28: */ +func Xsqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pFrom uintptr, pEList uintptr, pWhere uintptr, orconf U8, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139026:28: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -135039,7 +135084,7 @@ func Xsqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTableName uintptr // Construct a trigger step that implements a DELETE statement and return // a pointer to that trigger step. The parser calls this routine when it // sees a DELETE statement inside the body of a CREATE TRIGGER. -func Xsqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pWhere uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139055:28: */ +func Xsqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTableName uintptr, pWhere uintptr, zStart uintptr, zEnd uintptr) uintptr { /* sqlite3.c:139066:28: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pTriggerStep uintptr @@ -135058,7 +135103,7 @@ func Xsqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTableName uintptr } // Recursively delete a Trigger structure -func Xsqlite3DeleteTrigger(tls *libc.TLS, db uintptr, pTrigger uintptr) { /* sqlite3.c:139082:21: */ +func Xsqlite3DeleteTrigger(tls *libc.TLS, db uintptr, pTrigger uintptr) { /* sqlite3.c:139093:21: */ if (pTrigger == uintptr(0)) || ((*Trigger)(unsafe.Pointer(pTrigger)).FbReturning != 0) { return } @@ -135078,7 +135123,7 @@ func Xsqlite3DeleteTrigger(tls *libc.TLS, db uintptr, pTrigger uintptr) { /* sql // same job as this routine except it takes a pointer to the trigger // instead of the trigger name. // -func Xsqlite3DropTrigger(tls *libc.TLS, pParse uintptr, pName uintptr, noErr int32) { /* sqlite3.c:139100:21: */ +func Xsqlite3DropTrigger(tls *libc.TLS, pParse uintptr, pName uintptr, noErr int32) { /* sqlite3.c:139111:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -135162,12 +135207,12 @@ drop_trigger_cleanup: // Return a pointer to the Table structure for the table that a trigger // is set on. -func tableOfTrigger(tls *libc.TLS, pTrigger uintptr) uintptr { /* sqlite3.c:139142:14: */ +func tableOfTrigger(tls *libc.TLS, pTrigger uintptr) uintptr { /* sqlite3.c:139153:14: */ return Xsqlite3HashFind(tls, ((*Trigger)(unsafe.Pointer(pTrigger)).FpTabSchema + 8 /* &.tblHash */), (*Trigger)(unsafe.Pointer(pTrigger)).Ftable) } // Drop a trigger given a pointer to that trigger. -func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { /* sqlite3.c:139150:21: */ +func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { /* sqlite3.c:139161:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -135208,7 +135253,7 @@ func Xsqlite3DropTriggerPtr(tls *libc.TLS, pParse uintptr, pTrigger uintptr) { / } // Remove a trigger from the hash tables of the sqlite* pointer. -func Xsqlite3UnlinkAndDeleteTrigger(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) { /* sqlite3.c:139188:21: */ +func Xsqlite3UnlinkAndDeleteTrigger(tls *libc.TLS, db uintptr, iDb int32, zName uintptr) { /* sqlite3.c:139199:21: */ var pTrigger uintptr var pHash uintptr @@ -135239,7 +135284,7 @@ func Xsqlite3UnlinkAndDeleteTrigger(tls *libc.TLS, db uintptr, iDb int32, zName // wildcard that matches anything. Likewise if pEList==NULL then // it matches anything so always return true. Return false only // if there is no match. -func checkColumnOverlap(tls *libc.TLS, pIdList uintptr, pEList uintptr) int32 { /* sqlite3.c:139222:12: */ +func checkColumnOverlap(tls *libc.TLS, pIdList uintptr, pEList uintptr) int32 { /* sqlite3.c:139233:12: */ var e int32 if (pIdList == uintptr(0)) || (pEList == uintptr(0)) { return 1 @@ -135256,7 +135301,7 @@ func checkColumnOverlap(tls *libc.TLS, pIdList uintptr, pEList uintptr) int32 { // one trigger that must be fired when an operation of type 'op' is // performed on the table, and, if that operation is an UPDATE, if at // least one of the columns in pChanges is being modified. -func Xsqlite3TriggersExist(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, pChanges uintptr, pMask uintptr) uintptr { /* sqlite3.c:139237:24: */ +func Xsqlite3TriggersExist(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, pChanges uintptr, pMask uintptr) uintptr { /* sqlite3.c:139248:24: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -135383,7 +135428,7 @@ __17: // referring to a target in another database. An exception is when the // trigger is in TEMP in which case it can refer to any other database it // wants. -func Xsqlite3TriggerStepSrc(tls *libc.TLS, pParse uintptr, pStep uintptr) uintptr { /* sqlite3.c:139311:24: */ +func Xsqlite3TriggerStepSrc(tls *libc.TLS, pParse uintptr, pStep uintptr) uintptr { /* sqlite3.c:139322:24: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pSrc uintptr // SrcList to be returned var zName uintptr = Xsqlite3DbStrDup(tls, db, (*TriggerStep)(unsafe.Pointer(pStep)).FzTarget) @@ -135408,7 +135453,7 @@ func Xsqlite3TriggerStepSrc(tls *libc.TLS, pParse uintptr, pStep uintptr) uintpt // Return true if the pExpr term from the RETURNING clause argument // list is of the form "*". Raise an error if the terms if of the // form "table.*". -func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sqlite3.c:139342:12: */ +func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sqlite3.c:139353:12: */ if int32((*Expr)(unsafe.Pointer(pTerm)).Fop) == TK_ASTERISK { return 1 @@ -135429,7 +135474,7 @@ func isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) int32 { /* sql // // This routine makes a copy of the pList, and at the same time expands // any "*" wildcards to be the complete set of columns from pTab. -func sqlite3ExpandReturning(tls *libc.TLS, pParse uintptr, pList uintptr, pTab uintptr) uintptr { /* sqlite3.c:139362:17: */ +func sqlite3ExpandReturning(tls *libc.TLS, pParse uintptr, pList uintptr, pTab uintptr) uintptr { /* sqlite3.c:139373:17: */ var pNew uintptr = uintptr(0) var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var i int32 @@ -135479,7 +135524,7 @@ func sqlite3ExpandReturning(tls *libc.TLS, pParse uintptr, pList uintptr, pTab u // Generate code for the RETURNING trigger. Unlike other triggers // that invoke a subprogram in the bytecode, the code for RETURNING // is generated in-line. -func codeReturningTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, regIn int32) { /* sqlite3.c:139414:13: */ +func codeReturningTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, regIn int32) { /* sqlite3.c:139425:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -135524,7 +135569,7 @@ func codeReturningTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab // Generate VDBE code for the statements inside the body of a single // trigger. -func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf int32) int32 { /* sqlite3.c:139466:12: */ +func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf int32) int32 { /* sqlite3.c:139477:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -135610,7 +135655,7 @@ func codeTriggerProgram(tls *libc.TLS, pParse uintptr, pStepList uintptr, orconf // This function is used to add VdbeComment() annotations to a VDBE // program. It is not used in production code, only for debugging. -func onErrorText(tls *libc.TLS, onError int32) uintptr { /* sqlite3.c:139552:19: */ +func onErrorText(tls *libc.TLS, onError int32) uintptr { /* sqlite3.c:139563:19: */ switch onError { case OE_Abort: return ts + 23592 /* "abort" */ @@ -135631,7 +135676,7 @@ func onErrorText(tls *libc.TLS, onError int32) uintptr { /* sqlite3.c:139552:19: // Parse context structure pFrom has just been used to create a sub-vdbe // (trigger program). If an error has occurred, transfer error information // from pFrom to pTo. -func transferParseError(tls *libc.TLS, pTo uintptr, pFrom uintptr) { /* sqlite3.c:139570:13: */ +func transferParseError(tls *libc.TLS, pTo uintptr, pFrom uintptr) { /* sqlite3.c:139581:13: */ if (*Parse)(unsafe.Pointer(pTo)).FnErr == 0 { (*Parse)(unsafe.Pointer(pTo)).FzErrMsg = (*Parse)(unsafe.Pointer(pFrom)).FzErrMsg @@ -135644,7 +135689,7 @@ func transferParseError(tls *libc.TLS, pTo uintptr, pFrom uintptr) { /* sqlite3. // Create and populate a new TriggerPrg object with a sub-program // implementing trigger pTrigger with ON CONFLICT policy orconf. -func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139586:19: */ +func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139597:19: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -135772,7 +135817,7 @@ func codeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintpt // trigger pTrigger with default ON CONFLICT algorithm orconf. If no such // TriggerPrg object exists, a new object is allocated and populated before // being returned. -func getRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139701:19: */ +func getRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr, orconf int32) uintptr { /* sqlite3.c:139712:19: */ var pRoot uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -135800,7 +135845,7 @@ func getRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pTab uintptr // table pTab. The reg, orconf and ignoreJump parameters passed to this // function are the same as those described in the header function for // sqlite3CodeRowTrigger() -func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139735:21: */ +func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139746:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -135869,7 +135914,7 @@ func Xsqlite3CodeRowTriggerDirect(tls *libc.TLS, pParse uintptr, p uintptr, pTab // trigger program to use (REPLACE, IGNORE etc.). Parameter ignoreJump // is the instruction that control should jump to if a trigger program // raises an IGNORE exception. -func Xsqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op int32, pChanges uintptr, tr_tm int32, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139807:21: */ +func Xsqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op int32, pChanges uintptr, tr_tm int32, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { /* sqlite3.c:139818:21: */ var p uintptr // Used to iterate through pTrigger list for p = pTrigger; p != 0; p = (*Trigger)(unsafe.Pointer(p)).FpNext { @@ -135917,7 +135962,7 @@ func Xsqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op // included in the returned mask if the TRIGGER_BEFORE bit is set in the // tr_tm parameter. Similarly, values accessed by AFTER triggers are only // included in the returned mask if the TRIGGER_AFTER bit is set in tr_tm. -func Xsqlite3TriggerColmask(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pChanges uintptr, isNew int32, tr_tm int32, pTab uintptr, orconf int32) U32 { /* sqlite3.c:139877:20: */ +func Xsqlite3TriggerColmask(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pChanges uintptr, isNew int32, tr_tm int32, pTab uintptr, orconf int32) U32 { /* sqlite3.c:139888:20: */ var op int32 if pChanges != 0 { op = TK_UPDATE @@ -135974,7 +136019,7 @@ func Xsqlite3TriggerColmask(tls *libc.TLS, pParse uintptr, pTrigger uintptr, pCh // (not a virtual table) then the value might have been stored as an // integer. In that case, add an OP_RealAffinity opcode to make sure // it has been converted into REAL. -func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg int32) { /* sqlite3.c:139975:21: */ +func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg int32) { /* sqlite3.c:139986:21: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -136004,7 +136049,7 @@ func Xsqlite3ColumnDefault(tls *libc.TLS, v uintptr, pTab uintptr, i int32, iReg // aXRef[j] will be non-negative if column j of the original table is // being updated. chngRowid will be true if the rowid of the table is // being updated. -func indexColumnIsBeingUpdated(tls *libc.TLS, pIdx uintptr, iCol int32, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140007:12: */ +func indexColumnIsBeingUpdated(tls *libc.TLS, pIdx uintptr, iCol int32, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140018:12: */ var iIdxCol I16 = *(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(iCol)*2)) // Cannot index rowid if int32(iIdxCol) >= 0 { @@ -136025,7 +136070,7 @@ func indexColumnIsBeingUpdated(tls *libc.TLS, pIdx uintptr, iCol int32, aXRef ui // aXRef[j] will be non-negative if column j of the original table is // being updated. chngRowid will be true if the rowid of the table is // being updated. -func indexWhereClauseMightChange(tls *libc.TLS, pIdx uintptr, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140037:12: */ +func indexWhereClauseMightChange(tls *libc.TLS, pIdx uintptr, aXRef uintptr, chngRowid int32) int32 { /* sqlite3.c:140048:12: */ if (*Index)(unsafe.Pointer(pIdx)).FpPartIdxWhere == uintptr(0) { return 0 } @@ -136037,7 +136082,7 @@ func indexWhereClauseMightChange(tls *libc.TLS, pIdx uintptr, aXRef uintptr, chn // Expr.iColumn set to value (iCol+1). The resolver will modify the // expression to be a TK_COLUMN reading column iCol of the first // table in the source-list (pSrc->a[0]). -func exprRowColumn(tls *libc.TLS, pParse uintptr, iCol int32) uintptr { /* sqlite3.c:140053:13: */ +func exprRowColumn(tls *libc.TLS, pParse uintptr, iCol int32) uintptr { /* sqlite3.c:140064:13: */ var pRet uintptr = Xsqlite3PExpr(tls, pParse, TK_ROW, uintptr(0), uintptr(0)) if pRet != 0 { (*Expr)(unsafe.Pointer(pRet)).FiColumn = (YnVar(iCol + 1)) @@ -136081,7 +136126,7 @@ func exprRowColumn(tls *libc.TLS, pParse uintptr, iCol int32) uintptr { /* sqlit // records with automatically assigned integer keys For intkey tables, the // rowid value in is used as the integer key, and the // remaining fields make up the table record. -func updateFromSelect(tls *libc.TLS, pParse uintptr, iEph int32, pPk uintptr, pChanges uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:140097:13: */ +func updateFromSelect(tls *libc.TLS, pParse uintptr, iEph int32, pPk uintptr, pChanges uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pLimit uintptr) { /* sqlite3.c:140108:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -136159,7 +136204,7 @@ func updateFromSelect(tls *libc.TLS, pParse uintptr, iEph int32, pPk uintptr, pC // onError | pChanges | pWhere // \_______________________/ // pTabList -func Xsqlite3Update(tls *libc.TLS, pParse uintptr, pTabList uintptr, pChanges uintptr, pWhere uintptr, onError int32, pOrderBy uintptr, pLimit uintptr, pUpsert uintptr) { /* sqlite3.c:140191:21: */ +func Xsqlite3Update(tls *libc.TLS, pParse uintptr, pTabList uintptr, pChanges uintptr, pWhere uintptr, onError int32, pOrderBy uintptr, pLimit uintptr, pUpsert uintptr) { /* sqlite3.c:140202:21: */ bp := tls.Alloc(108) defer tls.Free(108) @@ -137545,7 +137590,7 @@ update_cleanup: // The "onepass" strategy does not use an ephemeral table. Instead, it // stores the same values (A, B and C above) in a register array and // makes a single invocation of VUpdate. -func updateVirtualTable(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pChanges uintptr, pRowid uintptr, aXRef uintptr, pWhere uintptr, onError int32) { /* sqlite3.c:141073:13: */ +func updateVirtualTable(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintptr, pChanges uintptr, pRowid uintptr, aXRef uintptr, pWhere uintptr, onError int32) { /* sqlite3.c:141084:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -137717,7 +137762,7 @@ func updateVirtualTable(tls *libc.TLS, pParse uintptr, pSrc uintptr, pTab uintpt // #include "sqliteInt.h" // Free a list of Upsert objects -func upsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141259:29: */ +func upsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141270:29: */ for ok := true; ok; ok = p != 0 { var pNext uintptr = (*Upsert)(unsafe.Pointer(p)).FpNextUpsert Xsqlite3ExprListDelete(tls, db, (*Upsert)(unsafe.Pointer(p)).FpUpsertTarget) @@ -137730,14 +137775,14 @@ func upsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141259:29 } } -func Xsqlite3UpsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141271:21: */ +func Xsqlite3UpsertDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:141282:21: */ if p != 0 { upsertDelete(tls, db, p) } } // Duplicate an Upsert object. -func Xsqlite3UpsertDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:141279:23: */ +func Xsqlite3UpsertDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:141290:23: */ if p == uintptr(0) { return uintptr(0) } @@ -137750,7 +137795,7 @@ func Xsqlite3UpsertDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite } // Create a new Upsert object. -func Xsqlite3UpsertNew(tls *libc.TLS, db uintptr, pTarget uintptr, pTargetWhere uintptr, pSet uintptr, pWhere uintptr, pNext uintptr) uintptr { /* sqlite3.c:141293:23: */ +func Xsqlite3UpsertNew(tls *libc.TLS, db uintptr, pTarget uintptr, pTargetWhere uintptr, pSet uintptr, pWhere uintptr, pNext uintptr) uintptr { /* sqlite3.c:141304:23: */ var pNew uintptr pNew = Xsqlite3DbMallocZero(tls, db, uint64(unsafe.Sizeof(Upsert{}))) if pNew == uintptr(0) { @@ -137776,7 +137821,7 @@ func Xsqlite3UpsertNew(tls *libc.TLS, db uintptr, pTarget uintptr, pTargetWhere // // Return SQLITE_OK if everything works, or an error code is something // is wrong. -func Xsqlite3UpsertAnalyzeTarget(tls *libc.TLS, pParse uintptr, pTabList uintptr, pUpsert uintptr) int32 { /* sqlite3.c:141328:20: */ +func Xsqlite3UpsertAnalyzeTarget(tls *libc.TLS, pParse uintptr, pTabList uintptr, pUpsert uintptr) int32 { /* sqlite3.c:141339:20: */ bp := tls.Alloc(232) defer tls.Free(232) @@ -137918,7 +137963,7 @@ __3: // Return true if pUpsert is the last ON CONFLICT clause with a // conflict target, or if pUpsert is followed by another ON CONFLICT // clause that targets the INTEGER PRIMARY KEY. -func Xsqlite3UpsertNextIsIPK(tls *libc.TLS, pUpsert uintptr) int32 { /* sqlite3.c:141455:20: */ +func Xsqlite3UpsertNextIsIPK(tls *libc.TLS, pUpsert uintptr) int32 { /* sqlite3.c:141466:20: */ var pNext uintptr if pUpsert == uintptr(0) { return 0 @@ -137940,7 +137985,7 @@ func Xsqlite3UpsertNextIsIPK(tls *libc.TLS, pUpsert uintptr) int32 { /* sqlite3. // a particular index pIdx, return a pointer to the particular ON CONFLICT // clause that applies to the index. Or, if the index is not subject to // any ON CONFLICT clause, return NULL. -func Xsqlite3UpsertOfIndex(tls *libc.TLS, pUpsert uintptr, pIdx uintptr) uintptr { /* sqlite3.c:141471:23: */ +func Xsqlite3UpsertOfIndex(tls *libc.TLS, pUpsert uintptr, pIdx uintptr) uintptr { /* sqlite3.c:141482:23: */ for ((pUpsert != 0) && ((*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertTarget != uintptr(0))) && ((*Upsert)(unsafe.Pointer(pUpsert)).FpUpsertIdx != pIdx) { @@ -137956,7 +138001,7 @@ func Xsqlite3UpsertOfIndex(tls *libc.TLS, pUpsert uintptr, pIdx uintptr) uintptr // currently points to the conflicting table row. Otherwise, if pIdx // is not NULL, then pIdx is the constraint that failed and iCur is a // cursor points to the conflicting row. -func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab uintptr, pIdx uintptr, iCur int32) { /* sqlite3.c:141491:21: */ +func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab uintptr, pIdx uintptr, iCur int32) { /* sqlite3.c:141502:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -138039,7 +138084,7 @@ func Xsqlite3UpsertDoUpdate(tls *libc.TLS, pParse uintptr, pUpsert uintptr, pTab // // The execSqlF() routine does the same thing, except it accepts // a format string as its third argument -func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { /* sqlite3.c:141588:12: */ +func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { /* sqlite3.c:141599:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -138079,7 +138124,7 @@ func execSql(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr) int32 { return rc } -func execSqlF(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr, va uintptr) int32 { /* sqlite3.c:141618:12: */ +func execSqlF(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr, va uintptr) int32 { /* sqlite3.c:141629:12: */ var z uintptr var ap Va_list _ = ap @@ -138123,7 +138168,7 @@ func execSqlF(tls *libc.TLS, db uintptr, pzErrMsg uintptr, zSql uintptr, va uint // And a power loss in between deleting the original and renaming the // transient would cause the database file to appear to be deleted // following reboot. -func Xsqlite3Vacuum(tls *libc.TLS, pParse uintptr, pNm uintptr, pInto uintptr) { /* sqlite3.c:141661:21: */ +func Xsqlite3Vacuum(tls *libc.TLS, pParse uintptr, pNm uintptr, pInto uintptr) { /* sqlite3.c:141672:21: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = pNm @@ -138180,7 +138225,7 @@ build_vacuum_end: } // This routine implements the OP_Vacuum opcode of the VDBE. -func Xsqlite3RunVacuum(tls *libc.TLS, pzErrMsg uintptr, db uintptr, iDb int32, pOut uintptr) int32 { /* sqlite3.c:141699:36: */ +func Xsqlite3RunVacuum(tls *libc.TLS, pzErrMsg uintptr, db uintptr, iDb int32, pOut uintptr) int32 { /* sqlite3.c:141710:36: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -138517,7 +138562,7 @@ var aCopy = [10]uint8{ uint8(BTREE_TEXT_ENCODING), uint8(0), // Preserve the text encoding uint8(BTREE_USER_VERSION), uint8(0), // Preserve the user version uint8(BTREE_APPLICATION_ID), uint8(0), // Preserve the application id -} /* sqlite3.c:141890:32 */ +} /* sqlite3.c:141901:32 */ // Construct and install a Module object for a virtual table. When this // routine is called, it is guaranteed that all appropriate locks are held @@ -138525,7 +138570,7 @@ var aCopy = [10]uint8{ // // If there already exists a module with zName, replace it with the new one. // If pModule==0, then delete the module zName if it exists. -func Xsqlite3VtabCreateModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) uintptr { /* sqlite3.c:142002:23: */ +func Xsqlite3VtabCreateModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) uintptr { /* sqlite3.c:142013:23: */ var pMod uintptr var pDel uintptr var zCopy uintptr @@ -138565,7 +138610,7 @@ func Xsqlite3VtabCreateModule(tls *libc.TLS, db uintptr, zName uintptr, pModule // The actual function that does the work of creating a new module. // This function implements the sqlite3_create_module() and // sqlite3_create_module_v2() interfaces. -func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142050:12: */ +func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142061:12: */ var rc int32 = SQLITE_OK Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -138579,18 +138624,18 @@ func createModule(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAu } // External API function used to create a new virtual-table module. -func Xsqlite3_create_module(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr) int32 { /* sqlite3.c:142071:16: */ +func Xsqlite3_create_module(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr) int32 { /* sqlite3.c:142082:16: */ return createModule(tls, db, zName, pModule, pAux, uintptr(0)) } // External API function used to create a new virtual-table module. -func Xsqlite3_create_module_v2(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142086:16: */ +func Xsqlite3_create_module_v2(tls *libc.TLS, db uintptr, zName uintptr, pModule uintptr, pAux uintptr, xDestroy uintptr) int32 { /* sqlite3.c:142097:16: */ return createModule(tls, db, zName, pModule, pAux, xDestroy) } // External API to drop all virtual-table modules, except those named // on the azNames list. -func Xsqlite3_drop_modules(tls *libc.TLS, db uintptr, azNames uintptr) int32 { /* sqlite3.c:142103:16: */ +func Xsqlite3_drop_modules(tls *libc.TLS, db uintptr, azNames uintptr) int32 { /* sqlite3.c:142114:16: */ var pThis uintptr var pNext uintptr for pThis = (*Hash)(unsafe.Pointer((db + 536 /* &.aModule */))).Ffirst; pThis != 0; pThis = pNext { @@ -138611,7 +138656,7 @@ func Xsqlite3_drop_modules(tls *libc.TLS, db uintptr, azNames uintptr) int32 { / // Decrement the reference count on a Module object. Destroy the // module when the reference count reaches zero. -func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:142125:21: */ +func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:142136:21: */ (*Module)(unsafe.Pointer(pMod)).FnRefModule-- if (*Module)(unsafe.Pointer(pMod)).FnRefModule == 0 { @@ -138629,14 +138674,14 @@ func Xsqlite3VtabModuleUnref(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlit // // If a disconnect is attempted while a virtual table is locked, // the disconnect is deferred until all locks have been removed. -func Xsqlite3VtabLock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142145:21: */ +func Xsqlite3VtabLock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142156:21: */ (*VTable)(unsafe.Pointer(pVTab)).FnRef++ } // pTab is a pointer to a Table structure representing a virtual-table. // Return a pointer to the VTable object used by connection db to access // this virtual-table, if one has been created, or NULL otherwise. -func Xsqlite3GetVTable(tls *libc.TLS, db uintptr, pTab uintptr) uintptr { /* sqlite3.c:142155:23: */ +func Xsqlite3GetVTable(tls *libc.TLS, db uintptr, pTab uintptr) uintptr { /* sqlite3.c:142166:23: */ var pVtab uintptr for pVtab = (*Table)(unsafe.Pointer(pTab)).FpVTable; (pVtab != 0) && ((*VTable)(unsafe.Pointer(pVtab)).Fdb != db); pVtab = (*VTable)(unsafe.Pointer(pVtab)).FpNext { @@ -138646,7 +138691,7 @@ func Xsqlite3GetVTable(tls *libc.TLS, db uintptr, pTab uintptr) uintptr { /* sql // Decrement the ref-count on a virtual table object. When the ref-count // reaches zero, call the xDisconnect() method to delete the object. -func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142166:21: */ +func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142177:21: */ var db uintptr = (*VTable)(unsafe.Pointer(pVTab)).Fdb (*VTable)(unsafe.Pointer(pVTab)).FnRef-- @@ -138665,7 +138710,7 @@ func Xsqlite3VtabUnlock(tls *libc.TLS, pVTab uintptr) { /* sqlite3.c:142166:21: // database connections to be disconnected at the next opportunity. // Except, if argument db is not NULL, then the entry associated with // connection db is left in the p->pVTable list. -func vtabDisconnectAll(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:142191:15: */ +func vtabDisconnectAll(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:142202:15: */ var pRet uintptr = uintptr(0) var pVTable uintptr = (*Table)(unsafe.Pointer(p)).FpVTable (*Table)(unsafe.Pointer(p)).FpVTable = uintptr(0) @@ -138700,7 +138745,7 @@ func vtabDisconnectAll(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite // used when closing database connection db to free all of its VTable // objects without disturbing the rest of the Schema object (which may // be being used by other shared-cache connections). -func Xsqlite3VtabDisconnect(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142231:21: */ +func Xsqlite3VtabDisconnect(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142242:21: */ var ppVTab uintptr for ppVTab = (p + 96 /* &.pVTable */); *(*uintptr)(unsafe.Pointer(ppVTab)) != 0; ppVTab = (*(*uintptr)(unsafe.Pointer(ppVTab)) + 40 /* &.pNext */) { @@ -138731,7 +138776,7 @@ func Xsqlite3VtabDisconnect(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c // // As a result, a sqlite3.pDisconnect cannot be accessed simultaneously // by multiple threads. It is thread-safe. -func Xsqlite3VtabUnlockList(tls *libc.TLS, db uintptr) { /* sqlite3.c:142269:21: */ +func Xsqlite3VtabUnlockList(tls *libc.TLS, db uintptr) { /* sqlite3.c:142280:21: */ var p uintptr = (*Sqlite3)(unsafe.Pointer(db)).FpDisconnect if p != 0 { @@ -138757,7 +138802,7 @@ func Xsqlite3VtabUnlockList(tls *libc.TLS, db uintptr) { /* sqlite3.c:142269:21: // structure being xDisconnected and free). Any other VTable structures // in the list are moved to the sqlite3.pDisconnect list of the associated // database connection. -func Xsqlite3VtabClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142300:21: */ +func Xsqlite3VtabClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:142311:21: */ if !(db != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FpnBytesFreed == uintptr(0)) { vtabDisconnectAll(tls, uintptr(0), p) } @@ -138776,7 +138821,7 @@ func Xsqlite3VtabClear(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:1423 // The string is not copied - the pointer is stored. The // string will be freed automatically when the table is // deleted. -func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintptr) { /* sqlite3.c:142317:13: */ +func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintptr) { /* sqlite3.c:142328:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -138800,7 +138845,7 @@ func addModuleArgument(tls *libc.TLS, pParse uintptr, pTable uintptr, zArg uintp // The parser calls this routine when it first sees a CREATE VIRTUAL TABLE // statement. The module name has been parsed, but the optional list // of parameters that follow the module name are still pending. -func Xsqlite3VtabBeginParse(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pModuleName uintptr, ifNotExists int32) { /* sqlite3.c:142340:21: */ +func Xsqlite3VtabBeginParse(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pModuleName uintptr, ifNotExists int32) { /* sqlite3.c:142351:21: */ var pTable uintptr // The new virtual table var db uintptr // Database connection @@ -138833,7 +138878,7 @@ func Xsqlite3VtabBeginParse(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName // This routine takes the module argument that has been accumulating // in pParse->zArg[] and appends it to the list of arguments on the // virtual table currently under construction in pParse->pTable. -func addArgumentToVtab(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142388:13: */ +func addArgumentToVtab(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142399:13: */ if ((*Parse)(unsafe.Pointer(pParse)).FsArg.Fz != 0) && ((*Parse)(unsafe.Pointer(pParse)).FpNewTable != 0) { var z uintptr = (*Parse)(unsafe.Pointer(pParse)).FsArg.Fz var n int32 = int32((*Parse)(unsafe.Pointer(pParse)).FsArg.Fn) @@ -138844,7 +138889,7 @@ func addArgumentToVtab(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142388:13: // The parser calls this routine after the CREATE VIRTUAL TABLE statement // has been completely parsed. -func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* sqlite3.c:142401:21: */ +func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* sqlite3.c:142412:21: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -138924,7 +138969,7 @@ func Xsqlite3VtabFinishParse(tls *libc.TLS, pParse uintptr, pEnd uintptr) { /* s // The parser calls this routine when it sees the first token // of an argument to the module name in a CREATE VIRTUAL TABLE statement. -func Xsqlite3VtabArgInit(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142487:21: */ +func Xsqlite3VtabArgInit(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142498:21: */ addArgumentToVtab(tls, pParse) (*Parse)(unsafe.Pointer(pParse)).FsArg.Fz = uintptr(0) (*Parse)(unsafe.Pointer(pParse)).FsArg.Fn = uint32(0) @@ -138932,7 +138977,7 @@ func Xsqlite3VtabArgInit(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:142487:21 // The parser calls this routine for each token after the first token // in an argument to the module name in a CREATE VIRTUAL TABLE statement. -func Xsqlite3VtabArgExtend(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:142497:21: */ +func Xsqlite3VtabArgExtend(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:142508:21: */ var pArg uintptr = (pParse + 352 /* &.sArg */) if (*Token)(unsafe.Pointer(pArg)).Fz == uintptr(0) { (*Token)(unsafe.Pointer(pArg)).Fz = (*Token)(unsafe.Pointer(p)).Fz @@ -138946,7 +138991,7 @@ func Xsqlite3VtabArgExtend(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite // Invoke a virtual table constructor (either xCreate or xConnect). The // pointer to the function to invoke is passed as the fourth parameter // to this procedure. -func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, xConstruct uintptr, pzErr uintptr) int32 { /* sqlite3.c:142513:12: */ +func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, xConstruct uintptr, pzErr uintptr) int32 { /* sqlite3.c:142524:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -139078,7 +139123,7 @@ func vtabCallConstructor(tls *libc.TLS, db uintptr, pTab uintptr, pMod uintptr, // and an error left in pParse. // // This call is a no-op if table pTab is not a virtual table. -func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:142646:20: */ +func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 { /* sqlite3.c:142657:20: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -139114,7 +139159,7 @@ func Xsqlite3VtabCallConnect(tls *libc.TLS, pParse uintptr, pTab uintptr) int32 // Grow the db->aVTrans[] array so that there is room for at least one // more v-table. Return SQLITE_NOMEM if a malloc fails, or SQLITE_OK otherwise. -func growVTrans(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142681:12: */ +func growVTrans(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142692:12: */ var ARRAY_INCR int32 = 5 // Grow the sqlite3.aVTrans array if required @@ -139134,7 +139179,7 @@ func growVTrans(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142681:12: */ // Add the virtual table pVTab to the array sqlite3.aVTrans[]. Space should // have already been reserved using growVTrans(). -func addToVTrans(tls *libc.TLS, db uintptr, pVTab uintptr) { /* sqlite3.c:142704:13: */ +func addToVTrans(tls *libc.TLS, db uintptr, pVTab uintptr) { /* sqlite3.c:142715:13: */ // Add pVtab to the end of sqlite3.aVTrans *(*uintptr)(unsafe.Pointer((*Sqlite3)(unsafe.Pointer(db)).FaVTrans + uintptr(libc.PostIncInt32(&(*Sqlite3)(unsafe.Pointer(db)).FnVTrans, 1))*8)) = pVTab Xsqlite3VtabLock(tls, pVTab) @@ -139146,7 +139191,7 @@ func addToVTrans(tls *libc.TLS, db uintptr, pVTab uintptr) { /* sqlite3.c:142704 // If an error occurs, *pzErr is set to point to an English language // description of the error and an SQLITE_XXX error code is returned. // In this case the caller must call sqlite3DbFree(db, ) on *pzErr. -func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:142718:20: */ +func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:142729:20: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -139186,7 +139231,7 @@ func Xsqlite3VtabCallCreate(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr, // This function is used to set the schema of a virtual table. It is only // valid to call this function from within the xCreate() or xConnect() of a // virtual table module. -func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int32 { /* sqlite3.c:142759:16: */ +func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int32 { /* sqlite3.c:142770:16: */ bp := tls.Alloc(424) defer tls.Free(424) @@ -139201,7 +139246,7 @@ func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int3 if !(pCtx != 0) || ((*VtabCtx)(unsafe.Pointer(pCtx)).FbDeclared != 0) { Xsqlite3Error(tls, db, SQLITE_MISUSE) Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) - return Xsqlite3MisuseError(tls, 142776) + return Xsqlite3MisuseError(tls, 142787) } pTab = (*VtabCtx)(unsafe.Pointer(pCtx)).FpTab @@ -139267,7 +139312,7 @@ func Xsqlite3_declare_vtab(tls *libc.TLS, db uintptr, zCreateTable uintptr) int3 // when a DROP TABLE is mentioned. // // This call is a no-op if zTab is not a virtual table. -func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) int32 { /* sqlite3.c:142844:20: */ +func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) int32 { /* sqlite3.c:142855:20: */ var rc int32 = SQLITE_OK var pTab uintptr @@ -139308,7 +139353,7 @@ func Xsqlite3VtabCallDestroy(tls *libc.TLS, db uintptr, iDb int32, zTab uintptr) // the offset of the method to call in the sqlite3_module structure. // // The array is cleared after invoking the callbacks. -func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:142885:13: */ +func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:142896:13: */ var i int32 if (*Sqlite3)(unsafe.Pointer(db)).FaVTrans != 0 { var aVTrans uintptr = (*Sqlite3)(unsafe.Pointer(db)).FaVTrans @@ -139336,7 +139381,7 @@ func callFinaliser(tls *libc.TLS, db uintptr, offset int32) { /* sqlite3.c:14288 // SQLITE_OK if all xSync operations are successful. // // If an error message is available, leave it in p->zErrMsg. -func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:142913:20: */ +func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c:142924:20: */ var i int32 var rc int32 = SQLITE_OK var aVTrans uintptr = (*Sqlite3)(unsafe.Pointer(db)).FaVTrans @@ -139356,14 +139401,14 @@ func Xsqlite3VtabSync(tls *libc.TLS, db uintptr, p uintptr) int32 { /* sqlite3.c // Invoke the xRollback method of all virtual tables in the // sqlite3.aVTrans array. Then clear the array itself. -func Xsqlite3VtabRollback(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142935:20: */ +func Xsqlite3VtabRollback(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142946:20: */ callFinaliser(tls, db, int32((uintptr(0) + 136 /* &.xRollback */))) return SQLITE_OK } // Invoke the xCommit method of all virtual tables in the // sqlite3.aVTrans array. Then clear the array itself. -func Xsqlite3VtabCommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142944:20: */ +func Xsqlite3VtabCommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142955:20: */ callFinaliser(tls, db, int32((uintptr(0) + 128 /* &.xCommit */))) return SQLITE_OK } @@ -139374,7 +139419,7 @@ func Xsqlite3VtabCommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:142944:2 // // If the xBegin call is successful, place the sqlite3_vtab pointer // in the sqlite3.aVTrans array. -func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqlite3.c:142957:20: */ +func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqlite3.c:142968:20: */ var rc int32 = SQLITE_OK var pModule uintptr @@ -139431,7 +139476,7 @@ func Xsqlite3VtabBegin(tls *libc.TLS, db uintptr, pVTab uintptr) int32 { /* sqli // processing is abandoned and the error returned to the caller of this // function immediately. If all calls to virtual table methods are successful, // SQLITE_OK is returned. -func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32) int32 { /* sqlite3.c:143017:20: */ +func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32) int32 { /* sqlite3.c:143028:20: */ var rc int32 = SQLITE_OK if (*Sqlite3)(unsafe.Pointer(db)).FaVTrans != 0 { @@ -139477,7 +139522,7 @@ func Xsqlite3VtabSavepoint(tls *libc.TLS, db uintptr, op int32, iSavepoint int32 // Return either the pDef argument (indicating no change) or a // new FuncDef structure that is marked as ephemeral using the // SQLITE_FUNC_EPHEM flag. -func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg int32, pExpr uintptr) uintptr { /* sqlite3.c:143065:24: */ +func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg int32, pExpr uintptr) uintptr { /* sqlite3.c:143076:24: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -139541,7 +139586,7 @@ func Xsqlite3VtabOverloadFunction(tls *libc.TLS, db uintptr, pDef uintptr, nArg // array so that an OP_VBegin will get generated for it. Add pTab to the // array if it is missing. If pTab is already in the array, this routine // is a no-op. -func Xsqlite3VtabMakeWritable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:143134:21: */ +func Xsqlite3VtabMakeWritable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* sqlite3.c:143145:21: */ var pToplevel uintptr = func() uintptr { if (*Parse)(unsafe.Pointer(pParse)).FpToplevel != 0 { return (*Parse)(unsafe.Pointer(pParse)).FpToplevel @@ -139579,7 +139624,7 @@ func Xsqlite3VtabMakeWritable(tls *libc.TLS, pParse uintptr, pTab uintptr) { /* // // Any virtual table module for which xConnect and xCreate are the same // method can have an eponymous virtual table instance. -func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) int32 { /* sqlite3.c:143167:20: */ +func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) int32 { /* sqlite3.c:143178:20: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -139623,7 +139668,7 @@ func Xsqlite3VtabEponymousTableInit(tls *libc.TLS, pParse uintptr, pMod uintptr) // Erase the eponymous virtual table instance associated with // virtual table module pMod, if it exists. -func Xsqlite3VtabEponymousTableClear(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:143204:21: */ +func Xsqlite3VtabEponymousTableClear(tls *libc.TLS, db uintptr, pMod uintptr) { /* sqlite3.c:143215:21: */ var pTab uintptr = (*Module)(unsafe.Pointer(pMod)).FpEpoTab if pTab != uintptr(0) { // Mark the table as Ephemeral prior to deleting it, so that the @@ -139640,19 +139685,19 @@ func Xsqlite3VtabEponymousTableClear(tls *libc.TLS, db uintptr, pMod uintptr) { // // The results of this routine are undefined unless it is called from // within an xUpdate method. -func Xsqlite3_vtab_on_conflict(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:143223:16: */ +func Xsqlite3_vtab_on_conflict(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:143234:16: */ return int32(aMap1[(int32((*Sqlite3)(unsafe.Pointer(db)).FvtabOnConflict) - 1)]) } var aMap1 = [5]uint8{ uint8(SQLITE_ROLLBACK), uint8(SQLITE_ABORT), uint8(SQLITE_FAIL), uint8(SQLITE_IGNORE), uint8(SQLITE_REPLACE), -} /* sqlite3.c:143224:30 */ +} /* sqlite3.c:143235:30 */ // Call from within the xCreate() or xConnect() methods to provide // the SQLite core with additional information about the behavior // of the virtual table being implemented. -func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:143241:16: */ +func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:143252:16: */ var ap Va_list _ = ap var rc int32 = SQLITE_OK @@ -139661,7 +139706,7 @@ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) p = (*Sqlite3)(unsafe.Pointer(db)).FpVtabCtx if !(p != 0) { - rc = Xsqlite3MisuseError(tls, 143252) + rc = Xsqlite3MisuseError(tls, 143263) } else { ap = va @@ -139689,7 +139734,7 @@ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 fallthrough default: { - rc = Xsqlite3MisuseError(tls, 143270) + rc = Xsqlite3MisuseError(tls, 143281) break } @@ -139793,23 +139838,23 @@ type WhereClause1 = struct { // a separate source file for easier editing. // Forward references -type WhereClause = WhereClause1 /* sqlite3.c:143330:28 */ +type WhereClause = WhereClause1 /* sqlite3.c:143341:28 */ type WhereMaskSet1 = struct { FbVarSelect int32 Fn int32 Fix [64]int32 } /* sqlite3.c:14827:9 */ -type WhereMaskSet = WhereMaskSet1 /* sqlite3.c:143331:29 */ +type WhereMaskSet = WhereMaskSet1 /* sqlite3.c:143342:29 */ type WhereOrInfo1 = struct { Fwc WhereClause Findexable Bitmask -} /* sqlite3.c:143332:9 */ +} /* sqlite3.c:143343:9 */ -type WhereOrInfo = WhereOrInfo1 /* sqlite3.c:143332:28 */ -type WhereAndInfo1 = struct{ Fwc WhereClause } /* sqlite3.c:143333:9 */ +type WhereOrInfo = WhereOrInfo1 /* sqlite3.c:143343:28 */ +type WhereAndInfo1 = struct{ Fwc WhereClause } /* sqlite3.c:143344:9 */ -type WhereAndInfo = WhereAndInfo1 /* sqlite3.c:143333:29 */ +type WhereAndInfo = WhereAndInfo1 /* sqlite3.c:143344:29 */ type WhereLevel1 = struct { FiLeftJoin int32 FiTabCur int32 @@ -139839,7 +139884,7 @@ type WhereLevel1 = struct { FnotReady Bitmask } /* sqlite3.c:14827:9 */ -type WhereLevel = WhereLevel1 /* sqlite3.c:143334:27 */ +type WhereLevel = WhereLevel1 /* sqlite3.c:143345:27 */ type WhereLoop1 = struct { Fprereq Bitmask FmaskSelf Bitmask @@ -139867,7 +139912,7 @@ type WhereLoop1 = struct { FaLTermSpace [3]uintptr } /* sqlite3.c:14827:9 */ -type WhereLoop = WhereLoop1 /* sqlite3.c:143335:26 */ +type WhereLoop = WhereLoop1 /* sqlite3.c:143346:26 */ type WherePath1 = struct { FmaskLoop Bitmask FrevLoop Bitmask @@ -139877,9 +139922,9 @@ type WherePath1 = struct { FisOrdered I8 _ [1]byte FaLoop uintptr -} /* sqlite3.c:143336:9 */ +} /* sqlite3.c:143347:9 */ -type WherePath = WherePath1 /* sqlite3.c:143336:26 */ +type WherePath = WherePath1 /* sqlite3.c:143347:26 */ type WhereTerm1 = struct { FpExpr uintptr FpWC uintptr @@ -139901,7 +139946,7 @@ type WhereTerm1 = struct { FprereqAll Bitmask } /* sqlite3.c:14827:9 */ -type WhereTerm = WhereTerm1 /* sqlite3.c:143337:26 */ +type WhereTerm = WhereTerm1 /* sqlite3.c:143348:26 */ type WhereLoopBuilder1 = struct { FpWInfo uintptr FpWC uintptr @@ -139915,9 +139960,9 @@ type WhereLoopBuilder1 = struct { _ [2]byte FiPlanLimit uint32 _ [4]byte -} /* sqlite3.c:143338:9 */ +} /* sqlite3.c:143349:9 */ -type WhereLoopBuilder = WhereLoopBuilder1 /* sqlite3.c:143338:33 */ +type WhereLoopBuilder = WhereLoopBuilder1 /* sqlite3.c:143349:33 */ type WhereScan1 = struct { FpOrigWC uintptr FpWC uintptr @@ -139932,24 +139977,24 @@ type WhereScan1 = struct { FaiCur [11]int32 FaiColumn [11]I16 _ [2]byte -} /* sqlite3.c:143339:9 */ +} /* sqlite3.c:143350:9 */ -type WhereScan = WhereScan1 /* sqlite3.c:143339:26 */ +type WhereScan = WhereScan1 /* sqlite3.c:143350:26 */ type WhereOrCost1 = struct { Fprereq Bitmask FrRun LogEst FnOut LogEst _ [4]byte -} /* sqlite3.c:143338:9 */ +} /* sqlite3.c:143349:9 */ -type WhereOrCost = WhereOrCost1 /* sqlite3.c:143340:28 */ +type WhereOrCost = WhereOrCost1 /* sqlite3.c:143351:28 */ type WhereOrSet1 = struct { Fn U16 _ [6]byte Fa [3]WhereOrCost -} /* sqlite3.c:143338:9 */ +} /* sqlite3.c:143349:9 */ -type WhereOrSet = WhereOrSet1 /* sqlite3.c:143341:27 */ +type WhereOrSet = WhereOrSet1 /* sqlite3.c:143352:27 */ // This object contains information needed to implement a single nested // loop in WHERE clause. @@ -139971,7 +140016,7 @@ type InLoop = struct { FnPrefix int32 FeEndLoopOp U8 _ [3]byte -} /* sqlite3.c:143380:7 */ +} /* sqlite3.c:143391:7 */ // Allowed values for WhereLoopBuider.bldFlags @@ -140019,7 +140064,7 @@ type WhereExprMod1 = struct { // of an index rather than an expression or a virtual column. All // such transformations need to be undone at the end of WHERE clause // processing. -type WhereExprMod = WhereExprMod1 /* sqlite3.c:143744:29 */ +type WhereExprMod = WhereExprMod1 /* sqlite3.c:143755:29 */ // Bitmasks for the operators on WhereTerm objects. These are all // operators that are of interest to the query planner. An @@ -140041,7 +140086,7 @@ type WhereExprMod = WhereExprMod1 /* sqlite3.c:143744:29 */ //************* Continuing where we left off in wherecode.c ***************** // Return the name of the i-th column of the pIdx index. -func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* sqlite3.c:143924:19: */ +func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* sqlite3.c:143935:19: */ i = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) if i == (-2) { return ts + 24787 /* "" */ @@ -140058,7 +140103,7 @@ func explainIndexColumnName(tls *libc.TLS, pIdx uintptr, i int32) uintptr { /* s // at a time. This routine adds a new term to the end of the expression. // Terms are separated by AND so add the "AND" text for second and subsequent // terms only. -func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, iTerm int32, bAnd int32, zOp uintptr) { /* sqlite3.c:143939:13: */ +func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, iTerm int32, bAnd int32, zOp uintptr) { /* sqlite3.c:143950:13: */ var i int32 if bAnd != 0 { @@ -140106,7 +140151,7 @@ func explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, i // string similar to: // // "a=? AND b>?" -func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3.c:143983:13: */ +func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3.c:143994:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -140151,7 +140196,7 @@ func explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { /* sqlite3. // // If an OP_Explain opcode is added to the VM, its address is returned. // Otherwise, if no OP_Explain is coded, zero is returned. -func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr, pLevel uintptr, wctrlFlags U16) int32 { /* sqlite3.c:144017:20: */ +func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr, pLevel uintptr, wctrlFlags U16) int32 { /* sqlite3.c:144028:20: */ bp := tls.Alloc(188) defer tls.Free(188) @@ -140290,7 +140335,7 @@ func Xsqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr // The TERM_LIKECOND marking indicates that the term should be coded inside // a conditional such that is only evaluated on the second pass of a // LIKE-optimization loop, when scanning BLOBs instead of strings. -func disableTerm(tls *libc.TLS, pLevel uintptr, pTerm uintptr) { /* sqlite3.c:144192:13: */ +func disableTerm(tls *libc.TLS, pLevel uintptr, pTerm uintptr) { /* sqlite3.c:144203:13: */ var nLoop int32 = 0 for (((int32((*WhereTerm)(unsafe.Pointer(pTerm)).FwtFlags) & TERM_CODED) == 0) && @@ -140323,7 +140368,7 @@ func disableTerm(tls *libc.TLS, pLevel uintptr, pTerm uintptr) { /* sqlite3.c:14 // // This routine makes its own copy of zAff so that the caller is free // to modify zAff after this routine returns. -func codeApplyAffinity(tls *libc.TLS, pParse uintptr, base int32, n int32, zAff uintptr) { /* sqlite3.c:144224:13: */ +func codeApplyAffinity(tls *libc.TLS, pParse uintptr, base int32, n int32, zAff uintptr) { /* sqlite3.c:144235:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe if zAff == uintptr(0) { @@ -140356,7 +140401,7 @@ func codeApplyAffinity(tls *libc.TLS, pParse uintptr, base int32, n int32, zAff // // * the comparison will be performed with no affinity, or // * the affinity change in zAff is guaranteed not to change the value. -func updateRangeAffinityStr(tls *libc.TLS, pRight uintptr, n int32, zAff uintptr) { /* sqlite3.c:144261:13: */ +func updateRangeAffinityStr(tls *libc.TLS, pRight uintptr, n int32, zAff uintptr) { /* sqlite3.c:144272:13: */ var i int32 for i = 0; i < n; i++ { var p uintptr = Xsqlite3VectorFieldSubexpr(tls, pRight, i) @@ -140394,7 +140439,7 @@ func updateRangeAffinityStr(tls *libc.TLS, pRight uintptr, n int32, zAff uintptr // The reduced pX is different from the original (obviously) and thus is // only used for indexing, to improve performance. The original unaltered // IN expression must also be run on each output row for correctness. -func removeUnindexableInClauseTerms(tls *libc.TLS, pParse uintptr, iEq int32, pLoop uintptr, pX uintptr) uintptr { /* sqlite3.c:144307:13: */ +func removeUnindexableInClauseTerms(tls *libc.TLS, pParse uintptr, iEq int32, pLoop uintptr, pX uintptr) uintptr { /* sqlite3.c:144318:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb var pNew uintptr pNew = Xsqlite3ExprDup(tls, db, pX, 0) @@ -140464,7 +140509,7 @@ func removeUnindexableInClauseTerms(tls *libc.TLS, pParse uintptr, iEq int32, pL // For a constraint of the form X=expr, the expression is evaluated in // straight-line code. For constraints of the form X IN (...) // this routine sets up a loop that will iterate over all values of X. -func codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintptr, iEq int32, bRev int32, iTarget int32) int32 { /* sqlite3.c:144389:12: */ +func codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintptr, iEq int32, bRev int32, iTarget int32) int32 { /* sqlite3.c:144400:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -140644,7 +140689,7 @@ func codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintp // no conversion should be attempted before using a t2.b value as part of // a key to search the index. Hence the first byte in the returned affinity // string in this example would be set to SQLITE_AFF_BLOB. -func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev int32, nExtraReg int32, pzAff uintptr) int32 { /* sqlite3.c:144570:12: */ +func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev int32, nExtraReg int32, pzAff uintptr) int32 { /* sqlite3.c:144581:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -140764,7 +140809,7 @@ func codeAllEqualityTerms(tls *libc.TLS, pParse uintptr, pLevel uintptr, bRev in // on. For each table column, if the column is the i'th column of the // index, then the corresponding array entry is set to (i+1). If the column // does not appear in the index at all, the array entry is set to 0. -func codeDeferredSeek(tls *libc.TLS, pWInfo uintptr, pIdx uintptr, iCur int32, iIdxCur int32) { /* sqlite3.c:144942:13: */ +func codeDeferredSeek(tls *libc.TLS, pWInfo uintptr, pIdx uintptr, iCur int32, iIdxCur int32) { /* sqlite3.c:144953:13: */ var pParse uintptr = (*WhereInfo)(unsafe.Pointer(pWInfo)).FpParse // Parse context var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe // Vdbe to generate code within @@ -140805,7 +140850,7 @@ func codeDeferredSeek(tls *libc.TLS, pWInfo uintptr, pIdx uintptr, iCur int32, i // If the expression is not a vector, then nReg must be passed 1. In // this case, generate code to evaluate the expression and leave the // result in register iReg. -func codeExprOrVector(tls *libc.TLS, pParse uintptr, p uintptr, iReg int32, nReg int32) { /* sqlite3.c:144986:13: */ +func codeExprOrVector(tls *libc.TLS, pParse uintptr, p uintptr, iReg int32, nReg int32) { /* sqlite3.c:144997:13: */ if (p != 0) && (Xsqlite3ExprIsVector(tls, p) != 0) { if ((*Expr)(unsafe.Pointer(p)).Fflags & U32(EP_xIsSelect)) != 0 { @@ -140831,10 +140876,10 @@ func codeExprOrVector(tls *libc.TLS, pParse uintptr, p uintptr, iReg int32, nReg // An instance of the IdxExprTrans object carries information about a // mapping from an expression on table columns into a column in an index // down through the Walker. -type IdxExprTrans = IdxExprTrans1 /* sqlite3.c:145024:3 */ +type IdxExprTrans = IdxExprTrans1 /* sqlite3.c:145035:3 */ // Preserve pExpr on the WhereETrans list of the WhereInfo. -func preserveExpr(tls *libc.TLS, pTrans uintptr, pExpr uintptr) { /* sqlite3.c:145029:13: */ +func preserveExpr(tls *libc.TLS, pTrans uintptr, pExpr uintptr) { /* sqlite3.c:145040:13: */ var pNew uintptr pNew = Xsqlite3DbMallocRaw(tls, (*IdxExprTrans)(unsafe.Pointer(pTrans)).Fdb, uint64(unsafe.Sizeof(WhereExprMod{}))) if pNew == uintptr(0) { @@ -140851,7 +140896,7 @@ func preserveExpr(tls *libc.TLS, pTrans uintptr, pExpr uintptr) { /* sqlite3.c:1 // // If pExpr matches, then transform it into a reference to the index column // that contains the value of pExpr. -func whereIndexExprTransNode(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145045:12: */ +func whereIndexExprTransNode(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145056:12: */ var pX uintptr = *(*uintptr)(unsafe.Pointer(p + 40 /* &.u */)) if Xsqlite3ExprCompare(tls, uintptr(0), pExpr, (*IdxExprTrans)(unsafe.Pointer(pX)).FpIdxExpr, (*IdxExprTrans)(unsafe.Pointer(pX)).FiTabCur) == 0 { preserveExpr(tls, pX, pExpr) @@ -140871,7 +140916,7 @@ func whereIndexExprTransNode(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* // A walker node callback that translates a column reference to a table // into a corresponding column reference of an index. -func whereIndexExprTransColumn(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145067:12: */ +func whereIndexExprTransColumn(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:145078:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN { var pX uintptr = *(*uintptr)(unsafe.Pointer(p + 40 /* &.u */)) if ((*Expr)(unsafe.Pointer(pExpr)).FiTable == (*IdxExprTrans)(unsafe.Pointer(pX)).FiTabCur) && (int32((*Expr)(unsafe.Pointer(pExpr)).FiColumn) == (*IdxExprTrans)(unsafe.Pointer(pX)).FiTabCol) { @@ -140893,7 +140938,7 @@ func whereIndexExprTransColumn(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { // 2019-10-24: Updated to also translate references to a VIRTUAL column in // the table into references to the corresponding (stored) column of the // index. -func whereIndexExprTrans(tls *libc.TLS, pIdx uintptr, iTabCur int32, iIdxCur int32, pWInfo uintptr) { /* sqlite3.c:145092:13: */ +func whereIndexExprTrans(tls *libc.TLS, pIdx uintptr, iTabCur int32, iIdxCur int32, pWInfo uintptr) { /* sqlite3.c:145103:13: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -140957,7 +141002,7 @@ func whereIndexExprTrans(tls *libc.TLS, pIdx uintptr, iTabCur int32, iIdxCur int // WHERE clause terms on the query, and if any of those terms must be // true because pTruth is true, then mark those WHERE clause terms as // coded. -func whereApplyPartialIndexConstraints(tls *libc.TLS, pTruth uintptr, iTabCur int32, pWC uintptr) { /* sqlite3.c:145155:13: */ +func whereApplyPartialIndexConstraints(tls *libc.TLS, pTruth uintptr, iTabCur int32, pWC uintptr) { /* sqlite3.c:145166:13: */ var i int32 var pTerm uintptr for int32((*Expr)(unsafe.Pointer(pTruth)).Fop) == TK_AND { @@ -140992,7 +141037,7 @@ __3: // Generate code for the start of the iLevel-th loop in the WHERE clause // implementation described by pWInfo. -func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWInfo uintptr, iLevel int32, pLevel uintptr, notReady Bitmask) Bitmask { /* sqlite3.c:145180:24: */ +func Xsqlite3WhereCodeOneLoopStart(tls *libc.TLS, pParse uintptr, v uintptr, pWInfo uintptr, iLevel int32, pLevel uintptr, notReady Bitmask) Bitmask { /* sqlite3.c:145191:24: */ bp := tls.Alloc(104) defer tls.Free(104) @@ -142149,24 +142194,24 @@ var aStartOp = [8]U8{ U8(OP_SeekLT), // 5: (start_constraints && !startEq && bRev) U8(OP_SeekGE), // 6: (start_constraints && startEq && !bRev) U8(OP_SeekLE), // 7: (start_constraints && startEq && bRev) -} /* sqlite3.c:145527:21 */ +} /* sqlite3.c:145538:21 */ var aEndOp = [4]U8{ U8(OP_IdxGE), // 0: (end_constraints && !bRev && !endEq) U8(OP_IdxGT), // 1: (end_constraints && !bRev && endEq) U8(OP_IdxLE), // 2: (end_constraints && bRev && !endEq) U8(OP_IdxLT), // 3: (end_constraints && bRev && endEq) -} /* sqlite3.c:145537:21 */ -var aStep = [2]U8{U8(OP_Next), U8(OP_Prev)} /* sqlite3.c:146213:21 */ -var aStart = [2]U8{U8(OP_Rewind), U8(OP_Last)} /* sqlite3.c:146214:21 */ +} /* sqlite3.c:145548:21 */ +var aStep = [2]U8{U8(OP_Next), U8(OP_Prev)} /* sqlite3.c:146224:21 */ +var aStart = [2]U8{U8(OP_Rewind), U8(OP_Last)} /* sqlite3.c:146225:21 */ // Deallocate all memory associated with a WhereOrInfo object. -func whereOrInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146421:13: */ +func whereOrInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146432:13: */ Xsqlite3WhereClauseClear(tls, (p /* &.wc */)) Xsqlite3DbFree(tls, db, p) } // Deallocate all memory associated with a WhereAndInfo object. -func whereAndInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146429:13: */ +func whereAndInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146440:13: */ Xsqlite3WhereClauseClear(tls, (p /* &.wc */)) Xsqlite3DbFree(tls, db, p) } @@ -142188,7 +142233,7 @@ func whereAndInfoDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:146 // WhereTerms. All pointers to WhereTerms should be invalidated after // calling this routine. Such pointers may be reinitialized by referencing // the pWC->a[] array. -func whereClauseInsert(tls *libc.TLS, pWC uintptr, p uintptr, wtFlags U16) int32 { /* sqlite3.c:146453:12: */ +func whereClauseInsert(tls *libc.TLS, pWC uintptr, p uintptr, wtFlags U16) int32 { /* sqlite3.c:146464:12: */ var pTerm uintptr var idx int32 @@ -142226,14 +142271,14 @@ func whereClauseInsert(tls *libc.TLS, pWC uintptr, p uintptr, wtFlags U16) int32 // Return TRUE if the given operator is one of the operators that is // allowed for an indexable WHERE clause term. The allowed operators are // "=", "<", ">", "<=", ">=", "IN", "IS", and "IS NULL" -func allowedOp(tls *libc.TLS, op int32) int32 { /* sqlite3.c:146494:12: */ +func allowedOp(tls *libc.TLS, op int32) int32 { /* sqlite3.c:146505:12: */ return (libc.Bool32((((op == TK_IN) || ((op >= TK_EQ) && (op <= TK_GE))) || (op == TK_ISNULL)) || (op == TK_IS))) } // Commute a comparison operator. Expressions of the form "X op Y" // are converted into "Y op X". -func exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) U16 { /* sqlite3.c:146506:12: */ +func exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) U16 { /* sqlite3.c:146517:12: */ if ((int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(pExpr)).FpLeft)).Fop) == TK_VECTOR) || (int32((*Expr)(unsafe.Pointer((*Expr)(unsafe.Pointer(pExpr)).FpRight)).Fop) == TK_VECTOR)) || (Xsqlite3BinaryCompareCollSeq(tls, pParse, (*Expr)(unsafe.Pointer(pExpr)).FpLeft, (*Expr)(unsafe.Pointer(pExpr)).FpRight) != Xsqlite3BinaryCompareCollSeq(tls, pParse, (*Expr)(unsafe.Pointer(pExpr)).FpRight, (*Expr)(unsafe.Pointer(pExpr)).FpLeft)) { @@ -142253,7 +142298,7 @@ func exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) U16 { /* sqlite3. } // Translate from TK_xx operator to WO_xx bitmask. -func operatorMask(tls *libc.TLS, op int32) U16 { /* sqlite3.c:146529:12: */ +func operatorMask(tls *libc.TLS, op int32) U16 { /* sqlite3.c:146540:12: */ var c U16 if op == TK_IN { @@ -142280,7 +142325,7 @@ func operatorMask(tls *libc.TLS, op int32) U16 { /* sqlite3.c:146529:12: */ // that virtual tables cannot participate in the LIKE optimization.) The // collating sequence for the column on the LHS must be appropriate for // the operator. -func isLikeOrGlob(tls *libc.TLS, pParse uintptr, pExpr uintptr, ppPrefix uintptr, pisComplete uintptr, pnoCase uintptr) int32 { /* sqlite3.c:146567:12: */ +func isLikeOrGlob(tls *libc.TLS, pParse uintptr, pExpr uintptr, ppPrefix uintptr, pisComplete uintptr, pnoCase uintptr) int32 { /* sqlite3.c:146578:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -142445,7 +142490,7 @@ func isLikeOrGlob(tls *libc.TLS, pParse uintptr, pExpr uintptr, ppPrefix uintptr // of virtual table in forms (5) or (7) then return 2. // // If the expression matches none of the patterns above, return 0. -func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uintptr, ppLeft uintptr, ppRight uintptr) int32 { /* sqlite3.c:146739:12: */ +func isAuxiliaryVtabOperator(tls *libc.TLS, db uintptr, pExpr uintptr, peOp2 uintptr, ppLeft uintptr, ppRight uintptr) int32 { /* sqlite3.c:146750:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -142547,18 +142592,18 @@ type Op2 = struct { FzOp uintptr FeOp2 uint8 _ [7]byte -} /* sqlite3.c:146747:18 */ +} /* sqlite3.c:146758:18 */ var aOp = [4]Op2{ {FzOp: ts + 18775 /* "match" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_MATCH)}, {FzOp: ts + 18113 /* "glob" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_GLOB)}, {FzOp: ts + 17663 /* "like" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_LIKE)}, {FzOp: ts + 25212 /* "regexp" */, FeOp2: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP)}, -} /* sqlite3.c:146750:7 */ +} /* sqlite3.c:146761:7 */ // If the pBase expression originated in the ON or USING clause of // a join, then transfer the appropriate markings over to derived. -func transferJoinMarkings(tls *libc.TLS, pDerived uintptr, pBase uintptr) { /* sqlite3.c:146844:13: */ +func transferJoinMarkings(tls *libc.TLS, pDerived uintptr, pBase uintptr) { /* sqlite3.c:146855:13: */ if pDerived != 0 { *(*U32)(unsafe.Pointer(pDerived + 4 /* &.flags */)) |= ((*Expr)(unsafe.Pointer(pBase)).Fflags & U32(EP_FromJoin)) (*Expr)(unsafe.Pointer(pDerived)).FiRightJoinTable = (*Expr)(unsafe.Pointer(pBase)).FiRightJoinTable @@ -142566,7 +142611,7 @@ func transferJoinMarkings(tls *libc.TLS, pDerived uintptr, pBase uintptr) { /* s } // Mark term iChild as being a child of term iParent -func markTermAsChild(tls *libc.TLS, pWC uintptr, iChild int32, iParent int32) { /* sqlite3.c:146854:13: */ +func markTermAsChild(tls *libc.TLS, pWC uintptr, iChild int32, iParent int32) { /* sqlite3.c:146865:13: */ (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa + uintptr(iChild)*56)).FiParent = iParent (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa + uintptr(iChild)*56)).FtruthProb = (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa + uintptr(iParent)*56)).FtruthProb (*WhereTerm)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).Fa+uintptr(iParent)*56)).FnChild++ @@ -142575,7 +142620,7 @@ func markTermAsChild(tls *libc.TLS, pWC uintptr, iChild int32, iParent int32) { // Return the N-th AND-connected subterm of pTerm. Or if pTerm is not // a conjunction, then return just pTerm when N==0. If N is exceeds // the number of available subterms, return NULL. -func whereNthSubterm(tls *libc.TLS, pTerm uintptr, N int32) uintptr { /* sqlite3.c:146865:18: */ +func whereNthSubterm(tls *libc.TLS, pTerm uintptr, N int32) uintptr { /* sqlite3.c:146876:18: */ if int32((*WhereTerm)(unsafe.Pointer(pTerm)).FeOperator) != WO_AND { if N == 0 { return pTerm @@ -142606,13 +142651,16 @@ func whereNthSubterm(tls *libc.TLS, pTerm uintptr, N int32) uintptr { /* sqlite3 // The following is NOT generated: // // xy --> x!=y -func whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintptr, pTwo uintptr) { /* sqlite3.c:146895:13: */ +func whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintptr, pTwo uintptr) { /* sqlite3.c:146906:13: */ var eOp U16 = (U16(int32((*WhereTerm)(unsafe.Pointer(pOne)).FeOperator) | int32((*WhereTerm)(unsafe.Pointer(pTwo)).FeOperator))) var db uintptr // Database connection (for malloc) var pNew uintptr // New virtual expression var op int32 // Operator for the combined expression var idxNew int32 // Index in pWC of the next virtual term + if ((int32((*WhereTerm)(unsafe.Pointer(pOne)).FwtFlags) | int32((*WhereTerm)(unsafe.Pointer(pTwo)).FwtFlags)) & TERM_VNULL) != 0 { + return + } if (int32((*WhereTerm)(unsafe.Pointer(pOne)).FeOperator) & ((((WO_EQ | (int32(WO_EQ) << (TK_LT - TK_EQ))) | (int32(WO_EQ) << (TK_LE - TK_EQ))) | (int32(WO_EQ) << (TK_GT - TK_EQ))) | (int32(WO_EQ) << (TK_GE - TK_EQ)))) == 0 { return } @@ -142736,7 +142784,7 @@ func whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintpt // // If none of cases 1, 2, or 3 apply, then leave the eOperator set to // zero. This term is not useful for search. -func exprAnalyzeOrTerm(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147021:13: */ +func exprAnalyzeOrTerm(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147033:13: */ var pWInfo uintptr = (*WhereClause)(unsafe.Pointer(pWC)).FpWInfo // WHERE clause processing context var pParse uintptr = (*WhereInfo)(unsafe.Pointer(pWInfo)).FpParse // Parser context var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb // Database connection @@ -143054,7 +143102,7 @@ __3: // for the LHS anyplace else in the WHERE clause where the LHS column occurs. // This is an optimization. No harm comes from returning 0. But if 1 is // returned when it should not be, then incorrect answers might result. -func termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:147292:12: */ +func termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:147304:12: */ var aff1 int8 var aff2 int8 var pColl uintptr @@ -143083,7 +143131,7 @@ func termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* // Recursively walk the expressions of a SELECT statement and generate // a bitmask indicating which tables are used in that expression // tree. -func exprSelectUsage(tls *libc.TLS, pMaskSet uintptr, pS uintptr) Bitmask { /* sqlite3.c:147315:16: */ +func exprSelectUsage(tls *libc.TLS, pMaskSet uintptr, pS uintptr) Bitmask { /* sqlite3.c:147327:16: */ var mask Bitmask = uint64(0) for pS != 0 { var pSrc uintptr = (*Select)(unsafe.Pointer(pS)).FpSrc @@ -143118,7 +143166,7 @@ func exprSelectUsage(tls *libc.TLS, pMaskSet uintptr, pS uintptr) Bitmask { /* s // If pExpr is a TK_COLUMN column reference, then this routine always returns // true even if that particular column is not indexed, because the column // might be added to an automatic index later. -func exprMightBeIndexed2(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr) int32 { /* sqlite3.c:147352:28: */ +func exprMightBeIndexed2(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr) int32 { /* sqlite3.c:147364:28: */ var pIdx uintptr var i int32 var iCur int32 @@ -143156,7 +143204,7 @@ __3: return 0 } -func exprMightBeIndexed(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr, op int32) int32 { /* sqlite3.c:147376:12: */ +func exprMightBeIndexed(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol uintptr, pExpr uintptr, op int32) int32 { /* sqlite3.c:147388:12: */ // If this expression is a vector to the left or right of a // inequality constraint (>, <, >= or <=), perform the processing // on the first element of the vector. @@ -143180,7 +143228,7 @@ func exprMightBeIndexed(tls *libc.TLS, pFrom uintptr, mPrereq Bitmask, aiCurCol } // Expression callback for exprUsesSrclist(). -func exprUsesSrclistCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:147406:12: */ +func exprUsesSrclistCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlite3.c:147418:12: */ if int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_COLUMN { var pSrc uintptr = *(*uintptr)(unsafe.Pointer(p + 40 /* &.u */)) var iCsr int32 = (*Expr)(unsafe.Pointer(pExpr)).FiTable @@ -143202,7 +143250,7 @@ func exprUsesSrclistCb(tls *libc.TLS, p uintptr, pExpr uintptr) int32 { /* sqlit } // Select callback for exprUsesSrclist(). -func exprUsesSrclistSelectCb(tls *libc.TLS, NotUsed1 uintptr, NotUsed2 uintptr) int32 { /* sqlite3.c:147424:12: */ +func exprUsesSrclistSelectCb(tls *libc.TLS, NotUsed1 uintptr, NotUsed2 uintptr) int32 { /* sqlite3.c:147436:12: */ _ = NotUsed1 _ = NotUsed2 return WRC_Abort @@ -143231,7 +143279,7 @@ func exprUsesSrclistSelectCb(tls *libc.TLS, NotUsed1 uintptr, NotUsed2 uintptr) // // bUses==0 false pExpr contains no sub-selects and all TK_COLUMN // nodes reference pSrc -func exprUsesSrclist(tls *libc.TLS, pSrc uintptr, pExpr uintptr, bUses int32) int32 { /* sqlite3.c:147455:12: */ +func exprUsesSrclist(tls *libc.TLS, pSrc uintptr, pExpr uintptr, bUses int32) int32 { /* sqlite3.c:147467:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -143257,7 +143305,7 @@ type ExistsToInCtx = struct { FpEq uintptr FppAnd uintptr FppParent uintptr -} /* sqlite3.c:147469:1 */ +} /* sqlite3.c:147481:1 */ // Iterate through all AND connected nodes in the expression tree // headed by (*ppExpr), populating the structure passed as the first @@ -143266,7 +143314,7 @@ type ExistsToInCtx = struct { // This function returns non-zero if the expression tree does not meet // the two conditions described by the header comment for // exprAnalyzeExistsFindEq(), or zero if it does. -func exprExistsToInIter(tls *libc.TLS, p uintptr, ppExpr uintptr) int32 { /* sqlite3.c:147486:12: */ +func exprExistsToInIter(tls *libc.TLS, p uintptr, ppExpr uintptr) int32 { /* sqlite3.c:147498:12: */ var pExpr uintptr = *(*uintptr)(unsafe.Pointer(ppExpr)) switch int32((*Expr)(unsafe.Pointer(pExpr)).Fop) { case TK_AND: @@ -143334,7 +143382,7 @@ func exprExistsToInIter(tls *libc.TLS, p uintptr, ppExpr uintptr) int32 { /* sql // the == node is not the root of the WHERE clause, then *pppAnd is set // to point to the pointer to the AND node that is the parent of the == // node within the WHERE expression tree. -func exprAnalyzeExistsFindEq(tls *libc.TLS, pSel uintptr, ppEq uintptr, pppAnd uintptr) uintptr { /* sqlite3.c:147541:13: */ +func exprAnalyzeExistsFindEq(tls *libc.TLS, pSel uintptr, ppEq uintptr, pppAnd uintptr) uintptr { /* sqlite3.c:147553:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -143381,7 +143429,7 @@ func exprAnalyzeExistsFindEq(tls *libc.TLS, pSel uintptr, ppEq uintptr, pppAnd u // In other words, once has been removed, the inner query // must not be correlated. // -func exprAnalyzeExists(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147586:13: */ +func exprAnalyzeExists(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147598:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -143491,7 +143539,7 @@ func exprAnalyzeExists(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) // needs to be freed with the WhereClause) and TERM_VIRTUAL (because it // is a commuted copy of a prior term.) The original term has nChild=1 // and the copy has idxParent set to the index of the original term. -func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147692:13: */ +func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* sqlite3.c:147704:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -143846,7 +143894,7 @@ func exprAnalyze(tls *libc.TLS, pSrc uintptr, pWC uintptr, idxTerm int32) { /* s *(*Bitmask)(unsafe.Pointer(pTerm + 40 /* &.prereqRight */)) |= (extraRight) } -var ops = [2]U8{U8(TK_GE), U8(TK_LE)} /* sqlite3.c:147835:21 */ +var ops = [2]U8{U8(TK_GE), U8(TK_LE)} /* sqlite3.c:147847:21 */ // ************************************************************************** // @@ -143869,7 +143917,7 @@ var ops = [2]U8{U8(TK_GE), U8(TK_LE)} /* sqlite3.c:147835:21 */ // In the previous sentence and in the diagram, "slot[]" refers to // the WhereClause.a[] array. The slot[] array grows as needed to contain // all terms of the WHERE clause. -func Xsqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op U8) { /* sqlite3.c:148131:21: */ +func Xsqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op U8) { /* sqlite3.c:148143:21: */ var pE2 uintptr = Xsqlite3ExprSkipCollateAndLikely(tls, pExpr) (*WhereClause)(unsafe.Pointer(pWC)).Fop = op @@ -143885,7 +143933,7 @@ func Xsqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op U8) { /* s } // Initialize a preallocated WhereClause structure. -func Xsqlite3WhereClauseInit(tls *libc.TLS, pWC uintptr, pWInfo uintptr) { /* sqlite3.c:148147:21: */ +func Xsqlite3WhereClauseInit(tls *libc.TLS, pWC uintptr, pWInfo uintptr) { /* sqlite3.c:148159:21: */ (*WhereClause)(unsafe.Pointer(pWC)).FpWInfo = pWInfo (*WhereClause)(unsafe.Pointer(pWC)).FhasOr = U8(0) (*WhereClause)(unsafe.Pointer(pWC)).FpOuter = uintptr(0) @@ -143897,7 +143945,7 @@ func Xsqlite3WhereClauseInit(tls *libc.TLS, pWC uintptr, pWInfo uintptr) { /* sq // Deallocate a WhereClause structure. The WhereClause structure // itself is not freed. This routine is the inverse of // sqlite3WhereClauseInit(). -func Xsqlite3WhereClauseClear(tls *libc.TLS, pWC uintptr) { /* sqlite3.c:148164:21: */ +func Xsqlite3WhereClauseClear(tls *libc.TLS, pWC uintptr) { /* sqlite3.c:148176:21: */ var i int32 var a uintptr var db uintptr = (*Parse)(unsafe.Pointer((*WhereInfo)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).FpWInfo)).FpParse)).Fdb @@ -143934,7 +143982,7 @@ __3: // These routines walk (recursively) an expression tree and generate // a bitmask indicating which tables are used in that expression // tree. -func Xsqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148189:24: */ +func Xsqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148201:24: */ var mask Bitmask if (int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_COLUMN) && !(((*Expr)(unsafe.Pointer((p))).Fflags & (U32(EP_FixedCol))) != U32(0)) { return Xsqlite3WhereGetMask(tls, pMaskSet, (*Expr)(unsafe.Pointer(p)).FiTable) @@ -143969,14 +144017,14 @@ func Xsqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmas return mask } -func Xsqlite3WhereExprUsage(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148217:24: */ +func Xsqlite3WhereExprUsage(tls *libc.TLS, pMaskSet uintptr, p uintptr) Bitmask { /* sqlite3.c:148229:24: */ if p != 0 { return Xsqlite3WhereExprUsageNN(tls, pMaskSet, p) } return uint64(0) } -func Xsqlite3WhereExprListUsage(tls *libc.TLS, pMaskSet uintptr, pList uintptr) Bitmask { /* sqlite3.c:148220:24: */ +func Xsqlite3WhereExprListUsage(tls *libc.TLS, pMaskSet uintptr, pList uintptr) Bitmask { /* sqlite3.c:148232:24: */ var i int32 var mask Bitmask = uint64(0) if pList != 0 { @@ -143993,7 +144041,7 @@ func Xsqlite3WhereExprListUsage(tls *libc.TLS, pMaskSet uintptr, pList uintptr) // end of the WHERE clause. We do not want to analyze these new // virtual terms, so start analyzing at the end and work forward // so that the added virtual terms are never processed. -func Xsqlite3WhereExprAnalyze(tls *libc.TLS, pTabList uintptr, pWC uintptr) { /* sqlite3.c:148240:21: */ +func Xsqlite3WhereExprAnalyze(tls *libc.TLS, pTabList uintptr, pWC uintptr) { /* sqlite3.c:148252:21: */ var i int32 for i = ((*WhereClause)(unsafe.Pointer(pWC)).FnTerm - 1); i >= 0; i-- { exprAnalyze(tls, pTabList, pWC, i) @@ -144005,7 +144053,7 @@ func Xsqlite3WhereExprAnalyze(tls *libc.TLS, pTabList uintptr, pWC uintptr) { /* // // Each function argument translates into an equality constraint against // a HIDDEN column in the table. -func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC uintptr) { /* sqlite3.c:148257:21: */ +func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC uintptr) { /* sqlite3.c:148269:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -144082,7 +144130,7 @@ func Xsqlite3WhereTabFuncArgs(tls *libc.TLS, pParse uintptr, pItem uintptr, pWC type HiddenIndexInfo1 = struct { FpWC uintptr FpParse uintptr -} /* sqlite3.c:148327:9 */ +} /* sqlite3.c:148339:9 */ //************* End of whereexpr.c ****************************************** //************* Begin file where.c ****************************************** @@ -144112,16 +144160,16 @@ type HiddenIndexInfo1 = struct { // This object is not an API and can be changed from one release to the // next. As long as allocateIndexInfo() and sqlite3_vtab_collation() // agree on the structure, all will be well. -type HiddenIndexInfo = HiddenIndexInfo1 /* sqlite3.c:148327:32 */ +type HiddenIndexInfo = HiddenIndexInfo1 /* sqlite3.c:148339:32 */ // Return the estimated number of output rows from a WHERE clause -func Xsqlite3WhereOutputRowCount(tls *libc.TLS, pWInfo uintptr) LogEst { /* sqlite3.c:148339:23: */ +func Xsqlite3WhereOutputRowCount(tls *libc.TLS, pWInfo uintptr) LogEst { /* sqlite3.c:148351:23: */ return (*WhereInfo)(unsafe.Pointer(pWInfo)).FnRowOut } // Return one of the WHERE_DISTINCT_xxxxx values to indicate how this // WHERE clause returns outputs for DISTINCT processing. -func Xsqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148347:20: */ +func Xsqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148359:20: */ return int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FeDistinct) } @@ -144131,7 +144179,7 @@ func Xsqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c // terms means that no sorting is needed at all. A return that // is positive but less than the number of ORDER BY terms means that // block sorting is required. -func Xsqlite3WhereIsOrdered(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148359:20: */ +func Xsqlite3WhereIsOrdered(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148371:20: */ return int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FnOBSat) } @@ -144156,7 +144204,7 @@ func Xsqlite3WhereIsOrdered(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c: // Returning the continuation the second inner loop is an optimization // that might make the code run a little faster, but should not change // the final answer. -func Xsqlite3WhereOrderByLimitOptLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148386:20: */ +func Xsqlite3WhereOrderByLimitOptLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148398:20: */ var pInner uintptr if !((int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.bOrderedInnerLoop */)) & 0x4 >> 2)) != 0) { // The ORDER BY LIMIT optimization does not apply. Jump to the @@ -144177,7 +144225,7 @@ func Xsqlite3WhereOrderByLimitOptLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* // Any extra OP_Goto that is coded here is an optimization. The // correct answer should be obtained regardless. This OP_Goto just // makes the answer appear faster. -func Xsqlite3WhereMinMaxOptEarlyOut(tls *libc.TLS, v uintptr, pWInfo uintptr) { /* sqlite3.c:148409:21: */ +func Xsqlite3WhereMinMaxOptEarlyOut(tls *libc.TLS, v uintptr, pWInfo uintptr) { /* sqlite3.c:148421:21: */ var pInner uintptr var i int32 if !((int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.bOrderedInnerLoop */)) & 0x4 >> 2)) != 0) { @@ -144198,14 +144246,14 @@ func Xsqlite3WhereMinMaxOptEarlyOut(tls *libc.TLS, v uintptr, pWInfo uintptr) { // Return the VDBE address or label to jump to in order to continue // immediately with the next row of a WHERE clause. -func Xsqlite3WhereContinueLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148428:20: */ +func Xsqlite3WhereContinueLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148440:20: */ return (*WhereInfo)(unsafe.Pointer(pWInfo)).FiContinue } // Return the VDBE address or label to jump to in order to break // out of a WHERE loop. -func Xsqlite3WhereBreakLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148437:20: */ +func Xsqlite3WhereBreakLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148449:20: */ return (*WhereInfo)(unsafe.Pointer(pWInfo)).FiBreak } @@ -144224,19 +144272,19 @@ func Xsqlite3WhereBreakLabel(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c // // aiCur[0] and aiCur[1] both get -1 if the where-clause logic is // unable to use the ONEPASS optimization. -func Xsqlite3WhereOkOnePass(tls *libc.TLS, pWInfo uintptr, aiCur uintptr) int32 { /* sqlite3.c:148458:20: */ +func Xsqlite3WhereOkOnePass(tls *libc.TLS, pWInfo uintptr, aiCur uintptr) int32 { /* sqlite3.c:148470:20: */ libc.X__builtin___memcpy_chk(tls, aiCur, pWInfo+40 /* &.aiCurOnePass */, (uint64(unsafe.Sizeof(int32(0))) * uint64(2)), libc.X__builtin_object_size(tls, aiCur, 0)) return int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FeOnePass) } // Return TRUE if the WHERE loop uses the OP_DeferredSeek opcode to move // the data cursor to the row selected by the index cursor. -func Xsqlite3WhereUsesDeferredSeek(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148474:20: */ +func Xsqlite3WhereUsesDeferredSeek(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:148486:20: */ return (int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.bDeferredSeek */)) & 0x1 >> 0)) } // Move the content of pSrc into pDest -func whereOrMove(tls *libc.TLS, pDest uintptr, pSrc uintptr) { /* sqlite3.c:148481:13: */ +func whereOrMove(tls *libc.TLS, pDest uintptr, pSrc uintptr) { /* sqlite3.c:148493:13: */ (*WhereOrSet)(unsafe.Pointer(pDest)).Fn = (*WhereOrSet)(unsafe.Pointer(pSrc)).Fn libc.X__builtin___memcpy_chk(tls, pDest+8 /* &.a */, pSrc+8 /* &.a */, (uint64((*WhereOrSet)(unsafe.Pointer(pDest)).Fn) * uint64(unsafe.Sizeof(WhereOrCost{}))), libc.X__builtin_object_size(tls, pDest+8 /* &.a */, 0)) } @@ -144246,7 +144294,7 @@ func whereOrMove(tls *libc.TLS, pDest uintptr, pSrc uintptr) { /* sqlite3.c:1484 // The new entry might overwrite an existing entry, or it might be // appended, or it might be discarded. Do whatever is the right thing // so that pSet keeps the N_OR_COST best entries seen so far. -func whereOrInsert(tls *libc.TLS, pSet uintptr, prereq Bitmask, rRun LogEst, nOut LogEst) int32 { /* sqlite3.c:148493:12: */ +func whereOrInsert(tls *libc.TLS, pSet uintptr, prereq Bitmask, rRun LogEst, nOut LogEst) int32 { /* sqlite3.c:148505:12: */ var i U16 var p uintptr i = (*WhereOrSet)(unsafe.Pointer(pSet)).Fn @@ -144323,7 +144371,7 @@ __13: // Return the bitmask for the given cursor number. Return 0 if // iCursor is not in the set. -func Xsqlite3WhereGetMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) Bitmask { /* sqlite3.c:148530:24: */ +func Xsqlite3WhereGetMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) Bitmask { /* sqlite3.c:148542:24: */ var i int32 for i = 0; i < (*WhereMaskSet)(unsafe.Pointer(pMaskSet)).Fn; i++ { @@ -144340,14 +144388,14 @@ func Xsqlite3WhereGetMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) Bitmas // tables in the FROM clause is limited by a test early in the // sqlite3WhereBegin() routine. So we know that the pMaskSet->ix[] // array will never overflow. -func createMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) { /* sqlite3.c:148549:13: */ +func createMask(tls *libc.TLS, pMaskSet uintptr, iCursor int32) { /* sqlite3.c:148561:13: */ *(*int32)(unsafe.Pointer((pMaskSet + 8 /* &.ix */) + uintptr(libc.PostIncInt32(&(*WhereMaskSet)(unsafe.Pointer(pMaskSet)).Fn, 1))*4)) = iCursor } // If the right-hand branch of the expression is a TK_COLUMN, then return // a pointer to the right-hand branch. Otherwise, return NULL. -func whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:148558:13: */ +func whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:148570:13: */ p = Xsqlite3ExprSkipCollateAndLikely(tls, (*Expr)(unsafe.Pointer(p)).FpRight) if (p != uintptr(0)) && (int32((*Expr)(unsafe.Pointer(p)).Fop) == TK_COLUMN) { return p @@ -144358,7 +144406,7 @@ func whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c: // Advance to the next WhereTerm that matches according to the criteria // established when the pScan object was initialized by whereScanInit(). // Return NULL if there are no more matching WhereTerms. -func whereScanNext(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148569:18: */ +func whereScanNext(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148581:18: */ var iCur int32 // The cursor on the LHS of the term var iColumn I16 // The column on the LHS of the term. -1 for IPK var pX uintptr // An expression being tested @@ -144457,7 +144505,7 @@ func whereScanNext(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148569:1 // It is factored out into a separate tail-recursion subroutine so that // the normal whereScanInit() routine, which is a high-runner, does not // need to push registers onto the stack as part of its prologue. -func whereScanInitIndexExpr(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148656:34: */ +func whereScanInitIndexExpr(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c:148668:34: */ (*WhereScan)(unsafe.Pointer(pScan)).Fidxaff = Xsqlite3ExprAffinity(tls, (*WhereScan)(unsafe.Pointer(pScan)).FpIdxExpr) return whereScanNext(tls, pScan) } @@ -144479,7 +144527,7 @@ func whereScanInitIndexExpr(tls *libc.TLS, pScan uintptr) uintptr { /* sqlite3.c // // If X is not the INTEGER PRIMARY KEY then X must be compatible with // index pIdx. -func whereScanInit(tls *libc.TLS, pScan uintptr, pWC uintptr, iCur int32, iColumn int32, opMask U32, pIdx uintptr) uintptr { /* sqlite3.c:148680:18: */ +func whereScanInit(tls *libc.TLS, pScan uintptr, pWC uintptr, iCur int32, iColumn int32, opMask U32, pIdx uintptr) uintptr { /* sqlite3.c:148692:18: */ (*WhereScan)(unsafe.Pointer(pScan)).FpOrigWC = pWC (*WhereScan)(unsafe.Pointer(pScan)).FpWC = pWC (*WhereScan)(unsafe.Pointer(pScan)).FpIdxExpr = uintptr(0) @@ -144534,7 +144582,7 @@ func whereScanInit(tls *libc.TLS, pScan uintptr, pWC uintptr, iCur int32, iColum // the form "X Y" where Y is a column in another table if no terms of // the form "X " exist. If no terms with a constant RHS // exist, try to return a term that does not use WO_EQUIV. -func Xsqlite3WhereFindTerm(tls *libc.TLS, pWC uintptr, iCur int32, iColumn int32, notReady Bitmask, op U32, pIdx uintptr) uintptr { /* sqlite3.c:148744:26: */ +func Xsqlite3WhereFindTerm(tls *libc.TLS, pWC uintptr, iCur int32, iColumn int32, notReady Bitmask, op U32, pIdx uintptr) uintptr { /* sqlite3.c:148756:26: */ bp := tls.Alloc(112) defer tls.Free(112) @@ -144564,7 +144612,7 @@ func Xsqlite3WhereFindTerm(tls *libc.TLS, pWC uintptr, iCur int32, iColumn int32 // // If such an expression is found, its index in pList->a[] is returned. If // no expression is found, -1 is returned. -func findIndexCol(tls *libc.TLS, pParse uintptr, pList uintptr, iBase int32, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148778:12: */ +func findIndexCol(tls *libc.TLS, pParse uintptr, pList uintptr, iBase int32, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148790:12: */ var i int32 var zColl uintptr = *(*uintptr)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FazColl + uintptr(iCol)*8)) @@ -144585,7 +144633,7 @@ func findIndexCol(tls *libc.TLS, pParse uintptr, pList uintptr, iBase int32, pId } // Return TRUE if the iCol-th column of index pIdx is NOT NULL -func indexColumnNotNull(tls *libc.TLS, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148808:12: */ +func indexColumnNotNull(tls *libc.TLS, pIdx uintptr, iCol int32) int32 { /* sqlite3.c:148820:12: */ var j int32 j = int32(*(*I16)(unsafe.Pointer((*Index)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(iCol)*2))) @@ -144606,7 +144654,7 @@ func indexColumnNotNull(tls *libc.TLS, pIdx uintptr, iCol int32) int32 { /* sqli // // A DISTINCT list is redundant if any subset of the columns in the // DISTINCT list are collectively unique and individually non-null. -func isDistinctRedundant(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWC uintptr, pDistinct uintptr) int32 { /* sqlite3.c:148831:12: */ +func isDistinctRedundant(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWC uintptr, pDistinct uintptr) int32 { /* sqlite3.c:148843:12: */ var pTab uintptr var pIdx uintptr var i int32 @@ -144670,7 +144718,7 @@ func isDistinctRedundant(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWC ui } // Estimate the logarithm of the input value to base 2. -func estLog(tls *libc.TLS, N LogEst) LogEst { /* sqlite3.c:148893:15: */ +func estLog(tls *libc.TLS, N LogEst) LogEst { /* sqlite3.c:148905:15: */ if int32(N) <= 10 { return int16(0) } @@ -144687,7 +144735,7 @@ func estLog(tls *libc.TLS, N LogEst) LogEst { /* sqlite3.c:148893:15: */ // cursor iTabCur are transformed into OP_Sequence opcode for the // iAutoidxCur cursor, in order to generate unique rowids for the // automatic index being generated. -func translateColumnToCopy(tls *libc.TLS, pParse uintptr, iStart int32, iTabCur int32, iRegister int32, iAutoidxCur int32) { /* sqlite3.c:148909:13: */ +func translateColumnToCopy(tls *libc.TLS, pParse uintptr, iStart int32, iTabCur int32, iRegister int32, iAutoidxCur int32) { /* sqlite3.c:148921:13: */ var v uintptr = (*Parse)(unsafe.Pointer(pParse)).FpVdbe var pOp uintptr = Xsqlite3VdbeGetOp(tls, v, iStart) var iEnd int32 = Xsqlite3VdbeCurrentAddr(tls, v) @@ -144736,7 +144784,7 @@ __3: // Return TRUE if the WHERE clause term pTerm is of a form where it // could be used with an index to access pSrc, assuming an appropriate // index existed. -func termCanDriveIndex(tls *libc.TLS, pTerm uintptr, pSrc uintptr, notReady Bitmask) int32 { /* sqlite3.c:148991:12: */ +func termCanDriveIndex(tls *libc.TLS, pTerm uintptr, pSrc uintptr, notReady Bitmask) int32 { /* sqlite3.c:149003:12: */ var aff int8 if (*WhereTerm)(unsafe.Pointer(pTerm)).FleftCursor != (*SrcItem)(unsafe.Pointer(pSrc)).FiCursor { return 0 @@ -144769,7 +144817,7 @@ func termCanDriveIndex(tls *libc.TLS, pTerm uintptr, pSrc uintptr, notReady Bitm // Generate code to construct the Index object for an automatic index // and to set up the WhereLevel object pLevel so that the code generator // makes use of the automatic index. -func constructAutomaticIndex(tls *libc.TLS, pParse uintptr, pWC uintptr, pSrc uintptr, notReady Bitmask, pLevel uintptr) { /* sqlite3.c:149024:13: */ +func constructAutomaticIndex(tls *libc.TLS, pParse uintptr, pWC uintptr, pSrc uintptr, notReady Bitmask, pLevel uintptr) { /* sqlite3.c:149036:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -145096,7 +145144,7 @@ end_auto_index_create: // Allocate and populate an sqlite3_index_info structure. It is the // responsibility of the caller to eventually release the structure // by passing the pointer returned by this function to sqlite3_free(). -func allocateIndexInfo(tls *libc.TLS, pParse uintptr, pWC uintptr, mUnusable Bitmask, pSrc uintptr, pOrderBy uintptr, pmNoOmit uintptr) uintptr { /* sqlite3.c:149231:27: */ +func allocateIndexInfo(tls *libc.TLS, pParse uintptr, pWC uintptr, mUnusable Bitmask, pSrc uintptr, pOrderBy uintptr, pmNoOmit uintptr) uintptr { /* sqlite3.c:149243:27: */ var i int32 var j int32 var nTerm int32 @@ -145283,7 +145331,7 @@ __6: // Whether or not an error is returned, it is the responsibility of the // caller to eventually free p->idxStr if p->needToFreeIdxStr indicates // that this is required. -func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 { /* sqlite3.c:149386:12: */ +func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 { /* sqlite3.c:149398:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -145317,7 +145365,7 @@ func vtabBestIndex(tls *libc.TLS, pParse uintptr, pTab uintptr, p uintptr) int32 // into the aSample[] array - it is an index into a virtual set of samples // based on the contents of aSample[] and the number of fields in record // pRec. -func whereKeyStats(tls *libc.TLS, pParse uintptr, pIdx uintptr, pRec uintptr, roundUp int32, aStat uintptr) int32 { /* sqlite3.c:149423:12: */ +func whereKeyStats(tls *libc.TLS, pParse uintptr, pIdx uintptr, pRec uintptr, roundUp int32, aStat uintptr) int32 { /* sqlite3.c:149435:12: */ var aSample uintptr = (*Index)(unsafe.Pointer(pIdx)).FaSample var iCol int32 // Index of required stats in anEq[] etc. var i int32 // Index of first sample >= pRec @@ -145456,7 +145504,7 @@ func whereKeyStats(tls *libc.TLS, pParse uintptr, pIdx uintptr, pRec uintptr, ro // then the return value is the likelihood multiplied by the number of // input rows. Otherwise, this function assumes that an "IS NOT NULL" term // has a likelihood of 0.50, and any other term a likelihood of 0.25. -func whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew LogEst) LogEst { /* sqlite3.c:149615:15: */ +func whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew LogEst) LogEst { /* sqlite3.c:149627:15: */ var nRet LogEst = nNew if pTerm != 0 { if int32((*WhereTerm)(unsafe.Pointer(pTerm)).FtruthProb) <= 0 { @@ -145469,7 +145517,7 @@ func whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew LogEst) LogEst { /* sql } // Return the affinity for a single column of an index. -func Xsqlite3IndexColumnAffinity(tls *libc.TLS, db uintptr, pIdx uintptr, iCol int32) int8 { /* sqlite3.c:149632:21: */ +func Xsqlite3IndexColumnAffinity(tls *libc.TLS, db uintptr, pIdx uintptr, iCol int32) int8 { /* sqlite3.c:149644:21: */ if !(int32((*Index)(unsafe.Pointer(pIdx)).FzColAff) != 0) { if Xsqlite3IndexAffinityStr(tls, db, pIdx) == uintptr(0) { @@ -145513,7 +145561,7 @@ func Xsqlite3IndexColumnAffinity(tls *libc.TLS, db uintptr, pIdx uintptr, iCol i // // If an error occurs, an SQLite error code is returned. Otherwise, // SQLITE_OK. -func whereRangeSkipScanEst(tls *libc.TLS, pParse uintptr, pLower uintptr, pUpper uintptr, pLoop uintptr, pbDone uintptr) int32 { /* sqlite3.c:149679:12: */ +func whereRangeSkipScanEst(tls *libc.TLS, pParse uintptr, pLower uintptr, pUpper uintptr, pLoop uintptr, pbDone uintptr) int32 { /* sqlite3.c:149691:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -145628,7 +145676,7 @@ func whereRangeSkipScanEst(tls *libc.TLS, pParse uintptr, pLower uintptr, pUpper // used, a single range inequality reduces the search space by a factor of 4. // and a pair of constraints (x>? AND xaLTerm[] to be at least n. -func whereLoopResize(tls *libc.TLS, db uintptr, p uintptr, n int32) int32 { /* sqlite3.c:150218:12: */ +func whereLoopResize(tls *libc.TLS, db uintptr, p uintptr, n int32) int32 { /* sqlite3.c:150230:12: */ var paNew uintptr if int32((*WhereLoop)(unsafe.Pointer(p)).FnLSlot) >= n { return SQLITE_OK @@ -145965,7 +146013,7 @@ func whereLoopResize(tls *libc.TLS, db uintptr, p uintptr, n int32) int32 { /* s } // Transfer content from the second pLoop into the first. -func whereLoopXfer(tls *libc.TLS, db uintptr, pTo uintptr, pFrom uintptr) int32 { /* sqlite3.c:150234:12: */ +func whereLoopXfer(tls *libc.TLS, db uintptr, pTo uintptr, pFrom uintptr) int32 { /* sqlite3.c:150246:12: */ whereLoopClearUnion(tls, db, pTo) if whereLoopResize(tls, db, pTo, int32((*WhereLoop)(unsafe.Pointer(pFrom)).FnLTerm)) != 0 { libc.X__builtin___memset_chk(tls, (pTo + 24 /* &.u */), 0, uint64(unsafe.Sizeof(struct { @@ -145990,13 +146038,13 @@ func whereLoopXfer(tls *libc.TLS, db uintptr, pTo uintptr, pFrom uintptr) int32 } // Delete a WhereLoop object -func whereLoopDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:150253:13: */ +func whereLoopDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:150265:13: */ whereLoopClear(tls, db, p) Xsqlite3DbFreeNN(tls, db, p) } // Free a WhereInfo structure -func whereInfoFree(tls *libc.TLS, db uintptr, pWInfo uintptr) { /* sqlite3.c:150261:13: */ +func whereInfoFree(tls *libc.TLS, db uintptr, pWInfo uintptr) { /* sqlite3.c:150273:13: */ var i int32 for i = 0; i < int32((*WhereInfo)(unsafe.Pointer(pWInfo)).FnLevel); i++ { @@ -146031,7 +146079,7 @@ func whereInfoFree(tls *libc.TLS, db uintptr, pWInfo uintptr) { /* sqlite3.c:150 // deserve a lower cost even if it is a proper subset of Y. Constraint (5) // was added because a covering index probably deserves to have a lower cost // than a non-covering index even if it is a proper subset. -func whereLoopCheaperProperSubset(tls *libc.TLS, pX uintptr, pY uintptr) int32 { /* sqlite3.c:150298:12: */ +func whereLoopCheaperProperSubset(tls *libc.TLS, pX uintptr, pY uintptr) int32 { /* sqlite3.c:150310:12: */ var i int32 var j int32 if (int32((*WhereLoop)(unsafe.Pointer(pX)).FnLTerm) - int32((*WhereLoop)(unsafe.Pointer(pX)).FnSkip)) >= (int32((*WhereLoop)(unsafe.Pointer(pY)).FnLTerm) - int32((*WhereLoop)(unsafe.Pointer(pY)).FnSkip)) { @@ -146080,7 +146128,7 @@ func whereLoopCheaperProperSubset(tls *libc.TLS, pX uintptr, pY uintptr) int32 { // To say "WhereLoop X is a proper subset of Y" means that X uses fewer // WHERE clause terms than Y and that every WHERE clause term used by X is // also used by Y. -func whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { /* sqlite3.c:150339:13: */ +func whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { /* sqlite3.c:150351:13: */ if ((*WhereLoop)(unsafe.Pointer(pTemplate)).FwsFlags & U32(WHERE_INDEXED)) == U32(0) { return } @@ -146119,7 +146167,7 @@ func whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { /* sqlit // If pTemplate cannot replace any existing element of the list but needs // to be added to the list as a new entry, then return a pointer to the // tail of the list. -func whereLoopFindLesser(tls *libc.TLS, ppPrev uintptr, pTemplate uintptr) uintptr { /* sqlite3.c:150376:18: */ +func whereLoopFindLesser(tls *libc.TLS, ppPrev uintptr, pTemplate uintptr) uintptr { /* sqlite3.c:150388:18: */ var p uintptr p = *(*uintptr)(unsafe.Pointer(ppPrev)) __1: @@ -146208,7 +146256,7 @@ __3: // (2) They have the same iSortIdx. // (3) The template has same or fewer dependencies than the current loop // (4) The template has the same or lower cost than the current loop -func whereLoopInsert(tls *libc.TLS, pBuilder uintptr, pTemplate uintptr) int32 { /* sqlite3.c:150464:12: */ +func whereLoopInsert(tls *libc.TLS, pBuilder uintptr, pTemplate uintptr) int32 { /* sqlite3.c:150476:12: */ var ppPrev uintptr var p uintptr var pWInfo uintptr = (*WhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpWInfo @@ -146315,7 +146363,7 @@ func whereLoopInsert(tls *libc.TLS, pBuilder uintptr, pTemplate uintptr) int32 { // "x" column is boolean or else -1 or 0 or 1 is a common default value // on the "x" column and so in that case only cap the output row estimate // at 1/2 instead of 1/4. -func whereLoopOutputAdjust(tls *libc.TLS, pWC uintptr, pLoop uintptr, nRow LogEst) { /* sqlite3.c:150601:13: */ +func whereLoopOutputAdjust(tls *libc.TLS, pWC uintptr, pLoop uintptr, nRow LogEst) { /* sqlite3.c:150613:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -146411,7 +146459,7 @@ __3: // // then this function would be invoked with nEq=1. The value returned in // this case is 3. -func whereRangeVectorLen(tls *libc.TLS, pParse uintptr, iCur int32, pIdx uintptr, nEq int32, pTerm uintptr) int32 { /* sqlite3.c:150671:12: */ +func whereRangeVectorLen(tls *libc.TLS, pParse uintptr, iCur int32, pIdx uintptr, nEq int32, pTerm uintptr) int32 { /* sqlite3.c:150683:12: */ var nCmp int32 = Xsqlite3ExprVectorSize(tls, (*Expr)(unsafe.Pointer((*WhereTerm)(unsafe.Pointer(pTerm)).FpExpr)).FpLeft) var i int32 @@ -146476,7 +146524,7 @@ func whereRangeVectorLen(tls *libc.TLS, pParse uintptr, iCur int32, pIdx uintptr // // If pProbe->idxType==SQLITE_IDXTYPE_IPK, that means pIndex is // a fake index used for the INTEGER PRIMARY KEY. -func whereLoopAddBtreeIndex(tls *libc.TLS, pBuilder uintptr, pSrc uintptr, pProbe uintptr, nInMul LogEst) int32 { /* sqlite3.c:150742:12: */ +func whereLoopAddBtreeIndex(tls *libc.TLS, pBuilder uintptr, pSrc uintptr, pProbe uintptr, nInMul LogEst) int32 { /* sqlite3.c:150754:12: */ bp := tls.Alloc(116) defer tls.Free(116) @@ -146830,7 +146878,7 @@ func whereLoopAddBtreeIndex(tls *libc.TLS, pBuilder uintptr, pSrc uintptr, pProb // Return False if pBuilder does not contain an ORDER BY clause or // if there is no way for pIndex to be useful in implementing that // ORDER BY clause. -func indexMightHelpWithOrderBy(tls *libc.TLS, pBuilder uintptr, pIndex uintptr, iCursor int32) int32 { /* sqlite3.c:151128:12: */ +func indexMightHelpWithOrderBy(tls *libc.TLS, pBuilder uintptr, pIndex uintptr, iCursor int32) int32 { /* sqlite3.c:151140:12: */ var pOB uintptr var aColExpr uintptr var ii int32 @@ -146872,7 +146920,7 @@ func indexMightHelpWithOrderBy(tls *libc.TLS, pBuilder uintptr, pIndex uintptr, // Check to see if a partial index with pPartIndexWhere can be used // in the current query. Return true if it can be and false if not. -func whereUsablePartialIndex(tls *libc.TLS, iTab int32, isLeft int32, pWC uintptr, pWhere uintptr) int32 { /* sqlite3.c:151162:12: */ +func whereUsablePartialIndex(tls *libc.TLS, iTab int32, isLeft int32, pWC uintptr, pWhere uintptr) int32 { /* sqlite3.c:151174:12: */ var i int32 var pTerm uintptr var pParse uintptr = (*WhereInfo)(unsafe.Pointer((*WhereClause)(unsafe.Pointer(pWC)).FpWInfo)).FpParse @@ -146946,7 +146994,7 @@ __3: // bias the scoring in favor of using an index, since the worst-case // performance of using an index is far better than the worst-case performance // of a full table scan. -func whereLoopAddBtree(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask) int32 { /* sqlite3.c:151225:12: */ +func whereLoopAddBtree(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask) int32 { /* sqlite3.c:151237:12: */ bp := tls.Alloc(158) defer tls.Free(158) @@ -147247,7 +147295,7 @@ __3: // // Output parameter *pbIn is set to true if the plan added to pBuilder // uses one or more WO_IN terms, or false otherwise. -func whereLoopAddVirtualOne(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUsable Bitmask, mExclude U16, pIdxInfo uintptr, mNoOmit U16, pbIn uintptr) int32 { /* sqlite3.c:151499:12: */ +func whereLoopAddVirtualOne(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUsable Bitmask, mExclude U16, pIdxInfo uintptr, mNoOmit U16, pbIn uintptr) int32 { /* sqlite3.c:151511:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -147426,7 +147474,7 @@ __6: // sequence associated with element iCons of the sqlite3_index_info.aConstraint // array. Or, if iCons is out of range or there is no active xBestIndex // call, return NULL. -func Xsqlite3_vtab_collation(tls *libc.TLS, pIdxInfo uintptr, iCons int32) uintptr { /* sqlite3.c:151659:23: */ +func Xsqlite3_vtab_collation(tls *libc.TLS, pIdxInfo uintptr, iCons int32) uintptr { /* sqlite3.c:151671:23: */ var pHidden uintptr = (pIdxInfo + 1*96) var zRet uintptr = uintptr(0) if (iCons >= 0) && (iCons < (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { @@ -147469,7 +147517,7 @@ func Xsqlite3_vtab_collation(tls *libc.TLS, pIdxInfo uintptr, iCons int32) uintp // Conversely, all tables in mUnusable must be scanned after the current // virtual table, so any terms for which the prerequisites overlap with // mUnusable should always be configured as "not-usable" for xBestIndex. -func whereLoopAddVirtual(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151699:12: */ +func whereLoopAddVirtual(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151711:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -147598,7 +147646,7 @@ func whereLoopAddVirtual(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnus // Add WhereLoop entries to handle OR terms. This works for either // btrees or virtual tables. -func whereLoopAddOr(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151822:12: */ +func whereLoopAddOr(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable Bitmask) int32 { /* sqlite3.c:151834:12: */ bp := tls.Alloc(720) defer tls.Free(720) @@ -147722,7 +147770,7 @@ func whereLoopAddOr(tls *libc.TLS, pBuilder uintptr, mPrereq Bitmask, mUnusable } // Add all WhereLoop objects for all tables -func whereLoopAddAll(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:151946:12: */ +func whereLoopAddAll(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:151958:12: */ var pWInfo uintptr = (*WhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpWInfo var mPrereq Bitmask = uint64(0) var mPrior Bitmask = uint64(0) @@ -147810,7 +147858,7 @@ __3: // as equivalent rows are grouped together. Thus for GROUP BY and DISTINCT // the pOrderBy terms can be matched in any order. With ORDER BY, the // pOrderBy terms must be matched in strict left-to-right order. -func wherePathSatisfiesOrderBy(tls *libc.TLS, pWInfo uintptr, pOrderBy uintptr, pPath uintptr, wctrlFlags U16, nLoop U16, pLast uintptr, pRevMask uintptr) I8 { /* sqlite3.c:152024:11: */ +func wherePathSatisfiesOrderBy(tls *libc.TLS, pWInfo uintptr, pOrderBy uintptr, pPath uintptr, wctrlFlags U16, nLoop U16, pLast uintptr, pRevMask uintptr) I8 { /* sqlite3.c:152036:11: */ var revSet U8 // True if rev is known var rev U8 // Composite sort order var revIdx U8 // Index sort order @@ -148165,7 +148213,7 @@ func wherePathSatisfiesOrderBy(tls *libc.TLS, pWInfo uintptr, pOrderBy uintptr, // // SELECT * FROM t1 GROUP BY x,y ORDER BY x,y; -- IsSorted()==1 // SELECT * FROM t1 GROUP BY y,x ORDER BY y,x; -- IsSorted()==0 -func Xsqlite3WhereIsSorted(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:152361:20: */ +func Xsqlite3WhereIsSorted(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:152373:20: */ return (int32(*(*uint8)(unsafe.Pointer(pWInfo + 68 /* &.sorted */)) & 0x8 >> 3)) } @@ -148173,7 +148221,7 @@ func Xsqlite3WhereIsSorted(tls *libc.TLS, pWInfo uintptr) int32 { /* sqlite3.c:1 // Return the cost of sorting nRow rows, assuming that the keys have // nOrderby columns and that the first nSorted columns are already in // order. -func whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow LogEst, nOrderBy int32, nSorted int32) LogEst { /* sqlite3.c:152384:15: */ +func whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow LogEst, nOrderBy int32, nSorted int32) LogEst { /* sqlite3.c:152396:15: */ // TUNING: Estimated cost of a full external sort, where N is // the number of rows to sort is: // @@ -148220,7 +148268,7 @@ func whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow LogEst, nOrderBy int32 // // Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation // error occurs. -func wherePathSolver(tls *libc.TLS, pWInfo uintptr, nRowEst LogEst) int32 { /* sqlite3.c:152437:12: */ +func wherePathSolver(tls *libc.TLS, pWInfo uintptr, nRowEst LogEst) int32 { /* sqlite3.c:152449:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -148627,7 +148675,7 @@ __3: // Return non-zero on success, if this query can be handled by this // no-frills query planner. Return zero if this query needs the // general-purpose query planner. -func whereShortCut(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:152829:12: */ +func whereShortCut(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:152841:12: */ var pWInfo uintptr var pItem uintptr var pWC uintptr @@ -148721,7 +148769,7 @@ func whereShortCut(tls *libc.TLS, pBuilder uintptr) int32 { /* sqlite3.c:152829: } // Helper function for exprIsDeterministic(). -func exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:152911:12: */ +func exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:152923:12: */ if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_FUNCTION) && ((libc.Bool32(((*Expr)(unsafe.Pointer((pExpr))).Fflags & (U32(EP_ConstFunc))) != U32(0))) == 0) { (*Walker)(unsafe.Pointer(pWalker)).FeCode = U16(0) return WRC_Abort @@ -148732,7 +148780,7 @@ func exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int3 // Return true if the expression contains no non-deterministic SQL // functions. Do not consider non-deterministic SQL functions that are // part of sub-select statements. -func exprIsDeterministic(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:152924:12: */ +func exprIsDeterministic(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:152936:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -148836,7 +148884,7 @@ func exprIsDeterministic(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:152924:1 // the first cursor in an array of cursors for all indices. iIdxCur should // be used to compute the appropriate cursor depending on which index is // used. -func Xsqlite3WhereBegin(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pResultSet uintptr, wctrlFlags U16, iAuxArg int32) uintptr { /* sqlite3.c:153044:26: */ +func Xsqlite3WhereBegin(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, pOrderBy uintptr, pResultSet uintptr, wctrlFlags U16, iAuxArg int32) uintptr { /* sqlite3.c:153056:26: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -149606,7 +149654,7 @@ __91: // Generate the end of the WHERE loop. See comments on // sqlite3WhereBegin() for additional information. -func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:153640:21: */ +func Xsqlite3WhereEnd(tls *libc.TLS, pWInfo uintptr) { /* sqlite3.c:153652:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -150000,7 +150048,7 @@ __6: // window frame has been coerced to: // // ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -func row_numberStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154072:13: */ +func row_numberStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154084:13: */ var p uintptr = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(I64(0)))) if p != 0 { (*(*I64)(unsafe.Pointer(p)))++ @@ -150009,7 +150057,7 @@ func row_numberStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) _ = apArg } -func row_numberValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154082:13: */ +func row_numberValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154094:13: */ var p uintptr = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(I64(0)))) Xsqlite3_result_int64(tls, pCtx, func() int64 { if p != 0 { @@ -150025,13 +150073,13 @@ type CallCount = struct { FnValue I64 FnStep I64 FnTotal I64 -} /* sqlite3.c:154091:1 */ +} /* sqlite3.c:154103:1 */ // Implementation of built-in window function dense_rank(). Assumes that // the window frame has been set to: // // RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -func dense_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154103:13: */ +func dense_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154115:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -150041,7 +150089,7 @@ func dense_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) _ = apArg } -func dense_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154114:13: */ +func dense_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154126:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -150059,9 +150107,9 @@ func dense_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154114:13: type NthValueCtx = struct { FnStep I64 FpValue uintptr -} /* sqlite3.c:154131:1 */ +} /* sqlite3.c:154143:1 */ -func nth_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154135:13: */ +func nth_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154147:13: */ var p uintptr var fVal float64 var iVal I64 @@ -150127,7 +150175,7 @@ error_out: pCtx, ts+25486 /* "second argument ..." */, -1) } -func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154176:13: */ +func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154188:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, 0) if (p != 0) && ((*NthValueCtx)(unsafe.Pointer(p)).FpValue != 0) { @@ -150137,7 +150185,7 @@ func nth_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154176:13 } } -func first_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154188:13: */ +func first_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154200:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NthValueCtx{}))) if (p != 0) && ((*NthValueCtx)(unsafe.Pointer(p)).FpValue == uintptr(0)) { @@ -150150,7 +150198,7 @@ func first_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) _ = apArg } -func first_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154204:13: */ +func first_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154216:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NthValueCtx{}))) if (p != 0) && ((*NthValueCtx)(unsafe.Pointer(p)).FpValue != 0) { @@ -150164,7 +150212,7 @@ func first_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154204: // the window frame has been set to: // // RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -func rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154222:13: */ +func rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154234:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -150177,7 +150225,7 @@ func rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s _ = apArg } -func rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154238:13: */ +func rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154250:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -150190,7 +150238,7 @@ func rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154238:13: */ // the window frame has been set to: // // GROUPS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING -func percent_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154253:13: */ +func percent_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154265:13: */ var p uintptr _ = nArg _ = apArg @@ -150200,7 +150248,7 @@ func percent_rankStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr } } -func percent_rankInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154266:13: */ +func percent_rankInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154278:13: */ var p uintptr _ = nArg _ = apArg @@ -150208,7 +150256,7 @@ func percent_rankInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) (*CallCount)(unsafe.Pointer(p)).FnStep++ } -func percent_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154277:13: */ +func percent_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154289:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(CallCount{}))) if p != 0 { @@ -150226,7 +150274,7 @@ func percent_rankValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154277:13 // the window frame has been set to: // // GROUPS BETWEEN 1 FOLLOWING AND UNBOUNDED FOLLOWING -func cume_distStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154298:13: */ +func cume_distStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154310:13: */ var p uintptr _ = nArg _ = apArg @@ -150236,7 +150284,7 @@ func cume_distStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { } } -func cume_distInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154311:13: */ +func cume_distInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154323:13: */ var p uintptr _ = nArg _ = apArg @@ -150244,7 +150292,7 @@ func cume_distInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { (*CallCount)(unsafe.Pointer(p)).FnStep++ } -func cume_distValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154322:13: */ +func cume_distValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154334:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, 0) if p != 0 { @@ -150258,13 +150306,13 @@ type NtileCtx = struct { FnTotal I64 FnParam I64 FiRow I64 -} /* sqlite3.c:154335:1 */ +} /* sqlite3.c:154347:1 */ // Implementation of ntile(). This assumes that the window frame has // been coerced to: // // ROWS CURRENT ROW AND UNBOUNDED FOLLOWING -func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154347:13: */ +func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154359:13: */ var p uintptr _ = nArg p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NtileCtx{}))) @@ -150280,7 +150328,7 @@ func ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* } } -func ntileInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154367:13: */ +func ntileInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154379:13: */ var p uintptr _ = nArg _ = apArg @@ -150288,7 +150336,7 @@ func ntileInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s (*NtileCtx)(unsafe.Pointer(p)).FiRow++ } -func ntileValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154378:13: */ +func ntileValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154390:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(NtileCtx{}))) if (p != 0) && ((*NtileCtx)(unsafe.Pointer(p)).FnParam > int64(0)) { @@ -150314,10 +150362,10 @@ type LastValueCtx = struct { FpVal uintptr FnVal int32 _ [4]byte -} /* sqlite3.c:154405:1 */ +} /* sqlite3.c:154417:1 */ // Implementation of last_value(). -func last_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154413:13: */ +func last_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154425:13: */ var p uintptr _ = nArg p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(LastValueCtx{}))) @@ -150332,7 +150380,7 @@ func last_valueStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) } } -func last_valueInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154431:13: */ +func last_valueInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:154443:13: */ var p uintptr _ = nArg _ = apArg @@ -150346,7 +150394,7 @@ func last_valueInvFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { } } -func last_valueValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154448:13: */ +func last_valueValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154460:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, 0) if (p != 0) && ((*LastValueCtx)(unsafe.Pointer(p)).FpVal != 0) { @@ -150354,7 +150402,7 @@ func last_valueValueFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154448:13: } } -func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154455:13: */ +func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154467:13: */ var p uintptr p = Xsqlite3_aggregate_context(tls, pCtx, int32(unsafe.Sizeof(LastValueCtx{}))) if (p != 0) && ((*LastValueCtx)(unsafe.Pointer(p)).FpVal != 0) { @@ -150370,17 +150418,17 @@ func last_valueFinalizeFunc(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:154455:1 // comparison of the zName pointer. Example: // // if( pFuncDef->zName==row_valueName ){ ... } -var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 25587 /* "row_number" */)) /* sqlite3.c:154473:19 */ -var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 25598 /* "dense_rank" */)) /* sqlite3.c:154474:19 */ -var rankName = *(*[5]int8)(unsafe.Pointer(ts + 25609 /* "rank" */)) /* sqlite3.c:154475:19 */ -var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 25614 /* "percent_rank" */)) /* sqlite3.c:154476:19 */ -var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 25627 /* "cume_dist" */)) /* sqlite3.c:154477:19 */ -var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 25637 /* "ntile" */)) /* sqlite3.c:154478:19 */ -var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 25643 /* "last_value" */)) /* sqlite3.c:154479:19 */ -var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 25654 /* "nth_value" */)) /* sqlite3.c:154480:19 */ -var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 25664 /* "first_value" */)) /* sqlite3.c:154481:19 */ -var leadName = *(*[5]int8)(unsafe.Pointer(ts + 25676 /* "lead" */)) /* sqlite3.c:154482:19 */ -var lagName = *(*[4]int8)(unsafe.Pointer(ts + 25681 /* "lag" */)) /* sqlite3.c:154483:19 */ +var row_numberName = *(*[11]int8)(unsafe.Pointer(ts + 25587 /* "row_number" */)) /* sqlite3.c:154485:19 */ +var dense_rankName = *(*[11]int8)(unsafe.Pointer(ts + 25598 /* "dense_rank" */)) /* sqlite3.c:154486:19 */ +var rankName = *(*[5]int8)(unsafe.Pointer(ts + 25609 /* "rank" */)) /* sqlite3.c:154487:19 */ +var percent_rankName = *(*[13]int8)(unsafe.Pointer(ts + 25614 /* "percent_rank" */)) /* sqlite3.c:154488:19 */ +var cume_distName = *(*[10]int8)(unsafe.Pointer(ts + 25627 /* "cume_dist" */)) /* sqlite3.c:154489:19 */ +var ntileName = *(*[6]int8)(unsafe.Pointer(ts + 25637 /* "ntile" */)) /* sqlite3.c:154490:19 */ +var last_valueName = *(*[11]int8)(unsafe.Pointer(ts + 25643 /* "last_value" */)) /* sqlite3.c:154491:19 */ +var nth_valueName = *(*[10]int8)(unsafe.Pointer(ts + 25654 /* "nth_value" */)) /* sqlite3.c:154492:19 */ +var first_valueName = *(*[12]int8)(unsafe.Pointer(ts + 25664 /* "first_value" */)) /* sqlite3.c:154493:19 */ +var leadName = *(*[5]int8)(unsafe.Pointer(ts + 25676 /* "lead" */)) /* sqlite3.c:154494:19 */ +var lagName = *(*[4]int8)(unsafe.Pointer(ts + 25681 /* "lag" */)) /* sqlite3.c:154495:19 */ // No-op implementations of xStep() and xFinalize(). Used as place-holders // for built-in window functions that never call those interfaces. @@ -150389,7 +150437,7 @@ var lagName = *(*[4]int8)(unsafe.Pointer(ts + 25681 /* "lag" */)) // noopStepFunc() is never called, and so it is marked with NO_TEST to // let the test coverage routine know not to expect this function to be // invoked. -func noopStepFunc(tls *libc.TLS, p uintptr, n int32, a uintptr) { /* sqlite3.c:154494:13: */ //NO_TEST +func noopStepFunc(tls *libc.TLS, p uintptr, n int32, a uintptr) { /* sqlite3.c:154506:13: */ //NO_TEST _ = p //NO_TEST _ = n //NO_TEST _ = a //NO_TEST @@ -150397,7 +150445,7 @@ func noopStepFunc(tls *libc.TLS, p uintptr, n int32, a uintptr) { /* sqlite3.c:1 } //NO_TEST -func noopValueFunc(tls *libc.TLS, p uintptr) { /* sqlite3.c:154504:13: */ +func noopValueFunc(tls *libc.TLS, p uintptr) { /* sqlite3.c:154516:13: */ _ = p /*no-op*/ } @@ -150412,7 +150460,7 @@ func noopValueFunc(tls *libc.TLS, p uintptr) { /* sqlite3.c:154504:13: */ // xInverse. // Register those built-in window functions that are not also aggregates. -func Xsqlite3WindowFunctions(tls *libc.TLS) { /* sqlite3.c:154535:21: */ +func Xsqlite3WindowFunctions(tls *libc.TLS) { /* sqlite3.c:154547:21: */ Xsqlite3InsertBuiltinFuncs(tls, uintptr(unsafe.Pointer(&aWindowFuncs)), (int32(uint64(unsafe.Sizeof(aWindowFuncs)) / uint64(unsafe.Sizeof(FuncDef{}))))) } @@ -150431,9 +150479,9 @@ var aWindowFuncs = [15]FuncDef{ {FnArg: int8(3), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}, {FnArg: int8(1), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}, {FnArg: int8(2), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}, - {FnArg: int8(3), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}} /* sqlite3.c:154536:18 */ + {FnArg: int8(3), FfuncFlags: (U32((SQLITE_UTF8 | SQLITE_FUNC_WINDOW) | 0)), FxSFunc: 0, FxFinalize: 0, FxValue: 0, FxInverse: 0, FzName: 0}} /* sqlite3.c:154548:18 */ -func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uintptr { /* sqlite3.c:154556:15: */ +func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uintptr { /* sqlite3.c:154568:15: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -150464,7 +150512,7 @@ func windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) uin // * If the function is a built-in window function that requires the // window to be coerced (see "BUILT-IN WINDOW FUNCTIONS" at the top // of this file), pWin is updated here. -func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uintptr, pFunc uintptr) { /* sqlite3.c:154584:21: */ +func Xsqlite3WindowUpdate(tls *libc.TLS, pParse uintptr, pList uintptr, pWin uintptr, pFunc uintptr) { /* sqlite3.c:154596:21: */ bp := tls.Alloc(192) defer tls.Free(192) @@ -150532,16 +150580,16 @@ type WindowUpdate = struct { FeStart int32 FeEnd int32 _ [4]byte -} /* sqlite3.c:154619:7 */ +} /* sqlite3.c:154631:7 */ // Context object passed through sqlite3WalkExprList() to // selectWindowRewriteExprCb() by selectWindowRewriteEList(). -type WindowRewrite = WindowRewrite1 /* sqlite3.c:154659:30 */ +type WindowRewrite = WindowRewrite1 /* sqlite3.c:154671:30 */ // Callback function used by selectWindowRewriteEList(). If necessary, // this function appends to the output expression-list and updates // expression (*ppExpr) in place. -func selectWindowRewriteExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154673:12: */ +func selectWindowRewriteExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154685:12: */ var p uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) var pParse uintptr = (*Walker)(unsafe.Pointer(pWalker)).FpParse @@ -150637,7 +150685,7 @@ func selectWindowRewriteExprCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) in return WRC_Continue } -func selectWindowRewriteSelectCb(tls *libc.TLS, pWalker uintptr, pSelect uintptr) int32 { /* sqlite3.c:154754:12: */ +func selectWindowRewriteSelectCb(tls *libc.TLS, pWalker uintptr, pSelect uintptr) int32 { /* sqlite3.c:154766:12: */ var p uintptr = *(*uintptr)(unsafe.Pointer(pWalker + 40 /* &.u */)) var pSave uintptr = (*WindowRewrite1)(unsafe.Pointer(p)).FpSubSelect if pSave == pSelect { @@ -150661,7 +150709,7 @@ func selectWindowRewriteSelectCb(tls *libc.TLS, pWalker uintptr, pSelect uintptr // with a TK_COLUMN that reads the (N-1)th element of table // pWin->iEphCsr, where N is the number of elements in (*ppSub) after // appending the new one. -func selectWindowRewriteEList(tls *libc.TLS, pParse uintptr, pWin uintptr, pSrc uintptr, pEList uintptr, pTab uintptr, ppSub uintptr) { /* sqlite3.c:154781:13: */ +func selectWindowRewriteEList(tls *libc.TLS, pParse uintptr, pWin uintptr, pSrc uintptr, pEList uintptr, pTab uintptr, ppSub uintptr) { /* sqlite3.c:154793:13: */ bp := tls.Alloc(88) defer tls.Free(88) @@ -150693,7 +150741,7 @@ func selectWindowRewriteEList(tls *libc.TLS, pParse uintptr, pWin uintptr, pSrc // Append a copy of each expression in expression-list pAppend to // expression list pList. Return a pointer to the result list. -func exprListAppendList(tls *libc.TLS, pParse uintptr, pList uintptr, pAppend uintptr, bIntToNull int32) uintptr { /* sqlite3.c:154815:17: */ +func exprListAppendList(tls *libc.TLS, pParse uintptr, pList uintptr, pAppend uintptr, bIntToNull int32) uintptr { /* sqlite3.c:154827:17: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -150736,7 +150784,7 @@ func exprListAppendList(tls *libc.TLS, pParse uintptr, pList uintptr, pAppend ui // due to the extra subquery layer that was added. // // See also the incrAggDepth() routine in resolve.c -func sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154854:12: */ +func sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintptr) int32 { /* sqlite3.c:154866:12: */ if (int32((*Expr)(unsafe.Pointer(pExpr)).Fop) == TK_AGG_FUNCTION) && (int32((*Expr)(unsafe.Pointer(pExpr)).Fop2) >= (*Walker)(unsafe.Pointer(pWalker)).FwalkerDepth) { (*Expr)(unsafe.Pointer(pExpr)).Fop2++ @@ -150749,7 +150797,7 @@ func sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintpt // rewrites the SELECT statement so that window function xStep functions // are invoked in the correct order as described under "SELECT REWRITING" // at the top of this file. -func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:154870:20: */ +func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* sqlite3.c:154882:20: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -150918,7 +150966,7 @@ func Xsqlite3WindowRewrite(tls *libc.TLS, pParse uintptr, p uintptr) int32 { /* // Unlink the Window object from the Select to which it is attached, // if it is attached. -func Xsqlite3WindowUnlinkFromSelect(tls *libc.TLS, p uintptr) { /* sqlite3.c:155020:21: */ +func Xsqlite3WindowUnlinkFromSelect(tls *libc.TLS, p uintptr) { /* sqlite3.c:155032:21: */ if (*Window)(unsafe.Pointer(p)).FppThis != 0 { *(*uintptr)(unsafe.Pointer((*Window)(unsafe.Pointer(p)).FppThis)) = (*Window)(unsafe.Pointer(p)).FpNextWin if (*Window)(unsafe.Pointer(p)).FpNextWin != 0 { @@ -150929,7 +150977,7 @@ func Xsqlite3WindowUnlinkFromSelect(tls *libc.TLS, p uintptr) { /* sqlite3.c:155 } // Free the Window object passed as the second argument. -func Xsqlite3WindowDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155031:21: */ +func Xsqlite3WindowDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155043:21: */ if p != 0 { Xsqlite3WindowUnlinkFromSelect(tls, p) Xsqlite3ExprDelete(tls, db, (*Window)(unsafe.Pointer(p)).FpFilter) @@ -150944,7 +150992,7 @@ func Xsqlite3WindowDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:1 } // Free the linked list of Window objects starting at the second argument. -func Xsqlite3WindowListDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155048:21: */ +func Xsqlite3WindowListDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:155060:21: */ for p != 0 { var pNext uintptr = (*Window)(unsafe.Pointer(p)).FpNextWin Xsqlite3WindowDelete(tls, db, p) @@ -150957,7 +151005,7 @@ func Xsqlite3WindowListDelete(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3 // constant, change it to NULL. The fact that it is then a non-negative // integer will be caught later. But it is important not to leave // variable values in the expression tree. -func sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) uintptr { /* sqlite3.c:155063:13: */ +func sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) uintptr { /* sqlite3.c:155075:13: */ if 0 == Xsqlite3ExprIsConstant(tls, pExpr) { if int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME { Xsqlite3RenameExprUnmap(tls, pParse, pExpr) @@ -150969,7 +151017,7 @@ func sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) uintp } // Allocate and return a new Window object describing a Window Definition. -func Xsqlite3WindowAlloc(tls *libc.TLS, pParse uintptr, eType int32, eStart int32, pStart uintptr, eEnd int32, pEnd uintptr, eExclude U8) uintptr { /* sqlite3.c:155075:23: */ +func Xsqlite3WindowAlloc(tls *libc.TLS, pParse uintptr, eType int32, eStart int32, pStart uintptr, eEnd int32, pEnd uintptr, eExclude U8) uintptr { /* sqlite3.c:155087:23: */ var pWin uintptr var bImplicitFrame int32 pWin = uintptr(0) @@ -151038,7 +151086,7 @@ windowAllocErr: // Attach PARTITION and ORDER BY clauses pPartition and pOrderBy to window // pWin. Also, if parameter pBase is not NULL, set pWin->zBase to the // equivalent nul-terminated string. -func Xsqlite3WindowAssemble(tls *libc.TLS, pParse uintptr, pWin uintptr, pPartition uintptr, pOrderBy uintptr, pBase uintptr) uintptr { /* sqlite3.c:155147:23: */ +func Xsqlite3WindowAssemble(tls *libc.TLS, pParse uintptr, pWin uintptr, pPartition uintptr, pOrderBy uintptr, pBase uintptr) uintptr { /* sqlite3.c:155159:23: */ if pWin != 0 { (*Window)(unsafe.Pointer(pWin)).FpPartition = pPartition (*Window)(unsafe.Pointer(pWin)).FpOrderBy = pOrderBy @@ -151057,7 +151105,7 @@ func Xsqlite3WindowAssemble(tls *libc.TLS, pParse uintptr, pWin uintptr, pPartit // stored in the linked list starting at pWin->pNextWin. This function // either updates *pWin according to the base specification, or else // leaves an error in pParse. -func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uintptr) { /* sqlite3.c:155174:21: */ +func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uintptr) { /* sqlite3.c:155186:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -151091,7 +151139,7 @@ func Xsqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uint } // Attach window object pWin to expression p. -func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr) { /* sqlite3.c:155208:21: */ +func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr) { /* sqlite3.c:155220:21: */ if p != 0 { *(*uintptr)(unsafe.Pointer(p + 64 /* &.y */)) = pWin @@ -151110,7 +151158,7 @@ func Xsqlite3WindowAttach(tls *libc.TLS, pParse uintptr, p uintptr, pWin uintptr // to be processed as part of SELECT statement pSel). The window is linked // in if either (a) there are no other windows already linked to this // SELECT, or (b) the windows already linked use a compatible window frame. -func Xsqlite3WindowLink(tls *libc.TLS, pSel uintptr, pWin uintptr) { /* sqlite3.c:155231:21: */ +func Xsqlite3WindowLink(tls *libc.TLS, pSel uintptr, pWin uintptr) { /* sqlite3.c:155243:21: */ if pSel != 0 { if (uintptr(0) == (*Select)(unsafe.Pointer(pSel)).FpWin) || (0 == Xsqlite3WindowCompare(tls, uintptr(0), (*Select)(unsafe.Pointer(pSel)).FpWin, pWin, 0)) { (*Window)(unsafe.Pointer(pWin)).FpNextWin = (*Select)(unsafe.Pointer(pSel)).FpWin @@ -151130,7 +151178,7 @@ func Xsqlite3WindowLink(tls *libc.TLS, pSel uintptr, pWin uintptr) { /* sqlite3. // Return 0 if the two window objects are identical, 1 if they are // different, or 2 if it cannot be determined if the objects are identical // or not. Identical window objects can be processed in a single scan. -func Xsqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr, bFilter int32) int32 { /* sqlite3.c:155253:20: */ +func Xsqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr, bFilter int32) int32 { /* sqlite3.c:155265:20: */ var res int32 if (p1 == uintptr(0)) || (p2 == uintptr(0)) { return 1 @@ -151170,7 +151218,7 @@ func Xsqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr // This is called by code in select.c before it calls sqlite3WhereBegin() // to begin iterating through the sub-query results. It is used to allocate // and initialize registers and cursors used by sqlite3WindowCodeStep(). -func Xsqlite3WindowCodeInit(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:155282:21: */ +func Xsqlite3WindowCodeInit(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* sqlite3.c:155294:21: */ var nEphExpr int32 = (*ExprList)(unsafe.Pointer((*Select)(unsafe.Pointer((*SrcItem)(unsafe.Pointer(((*Select)(unsafe.Pointer(pSelect)).FpSrc + 8 /* &.a */))).FpSelect)).FpEList)).FnExpr var pMWin uintptr = (*Select)(unsafe.Pointer(pSelect)).FpWin var pWin uintptr @@ -151243,7 +151291,7 @@ func Xsqlite3WindowCodeInit(tls *libc.TLS, pParse uintptr, pSelect uintptr) { /* // evaluated and the result left in register reg. This function generates VM // code to check that the value is a non-negative integer and throws an // exception if it is not. -func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { /* sqlite3.c:155366:13: */ +func windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { /* sqlite3.c:155378:13: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) var regZero int32 = Xsqlite3GetTempReg(tls, pParse) @@ -151277,12 +151325,12 @@ var azErr = [5]uintptr{ ts + 25486, /* "second argument ..." */ ts + 26107, /* "frame starting o..." */ ts + 26159, /* "frame ending off..." */ -} /* sqlite3.c:155367:21 */ -var aOp1 = [5]int32{OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge} /* sqlite3.c:155374:14 */ +} /* sqlite3.c:155379:21 */ +var aOp1 = [5]int32{OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge} /* sqlite3.c:155386:14 */ // Return the number of arguments passed to the window-function associated // with the object passed as the only argument to this function. -func windowArgCount(tls *libc.TLS, pWin uintptr) int32 { /* sqlite3.c:155413:12: */ +func windowArgCount(tls *libc.TLS, pWin uintptr) int32 { /* sqlite3.c:155425:12: */ var pList uintptr = *(*uintptr)(unsafe.Pointer((*Window)(unsafe.Pointer(pWin)).FpOwner + 32 /* &.x */)) return func() int32 { if pList != 0 { @@ -151303,19 +151351,19 @@ type WindowCodeArg1 = struct { Fstart WindowCsrAndReg Fcurrent WindowCsrAndReg Fend WindowCsrAndReg -} /* sqlite3.c:155418:9 */ +} /* sqlite3.c:155430:9 */ -type WindowCodeArg = WindowCodeArg1 /* sqlite3.c:155418:30 */ +type WindowCodeArg = WindowCodeArg1 /* sqlite3.c:155430:30 */ type WindowCsrAndReg1 = struct { Fcsr int32 Freg int32 -} /* sqlite3.c:155418:9 */ +} /* sqlite3.c:155430:9 */ -type WindowCsrAndReg = WindowCsrAndReg1 /* sqlite3.c:155419:32 */ +type WindowCsrAndReg = WindowCsrAndReg1 /* sqlite3.c:155431:32 */ // Generate VM code to read the window frames peer values from cursor csr into // an array of registers starting at reg. -func windowReadPeerValues(tls *libc.TLS, p uintptr, csr int32, reg int32) { /* sqlite3.c:155502:13: */ +func windowReadPeerValues(tls *libc.TLS, p uintptr, csr int32, reg int32) { /* sqlite3.c:155514:13: */ var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin var pOrderBy uintptr = (*Window)(unsafe.Pointer(pMWin)).FpOrderBy if pOrderBy != 0 { @@ -151351,7 +151399,7 @@ func windowReadPeerValues(tls *libc.TLS, p uintptr, csr int32, reg int32) { /* s // // If argument regPartSize is non-zero, then it is a register containing the // number of rows in the current partition. -func windowAggStep(tls *libc.TLS, p uintptr, pMWin uintptr, csr int32, bInverse int32, reg int32) { /* sqlite3.c:155539:13: */ +func windowAggStep(tls *libc.TLS, p uintptr, pMWin uintptr, csr int32, bInverse int32, reg int32) { /* sqlite3.c:155551:13: */ var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var v uintptr = Xsqlite3GetVdbe(tls, pParse) var pWin uintptr @@ -151459,7 +151507,7 @@ func windowAggStep(tls *libc.TLS, p uintptr, pMWin uintptr, csr int32, bInverse // (bFin==1) for each window function in the linked list starting at // pMWin. Or, for built-in window-functions that do not use the standard // API, generate the equivalent VM code. -func windowAggFinal(tls *libc.TLS, p uintptr, bFin int32) { /* sqlite3.c:155653:13: */ +func windowAggFinal(tls *libc.TLS, p uintptr, bFin int32) { /* sqlite3.c:155665:13: */ var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin var v uintptr = Xsqlite3GetVdbe(tls, pParse) @@ -151495,7 +151543,7 @@ func windowAggFinal(tls *libc.TLS, p uintptr, bFin int32) { /* sqlite3.c:155653: // p->pMWin list by doing a full scan of the current window frame. Store the // results in the Window.regResult registers, ready to return the upper // layer. -func windowFullScan(tls *libc.TLS, p uintptr) { /* sqlite3.c:155692:13: */ +func windowFullScan(tls *libc.TLS, p uintptr) { /* sqlite3.c:155704:13: */ var pWin uintptr var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin @@ -151602,7 +151650,7 @@ func windowFullScan(tls *libc.TLS, p uintptr) { /* sqlite3.c:155692:13: */ // first_value() // lag() // lead() -func windowReturnOneRow(tls *libc.TLS, p uintptr) { /* sqlite3.c:155798:13: */ +func windowReturnOneRow(tls *libc.TLS, p uintptr) { /* sqlite3.c:155810:13: */ var pMWin uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpMWin var v uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpVdbe @@ -151684,7 +151732,7 @@ func windowReturnOneRow(tls *libc.TLS, p uintptr) { /* sqlite3.c:155798:13: */ // in the linked list passed as the second argument to NULL. And perform // any equivalent initialization required by any built-in window functions // in the list. -func windowInitAccum(tls *libc.TLS, pParse uintptr, pMWin uintptr) int32 { /* sqlite3.c:155874:12: */ +func windowInitAccum(tls *libc.TLS, pParse uintptr, pMWin uintptr) int32 { /* sqlite3.c:155886:12: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) var regArg int32 var nArg int32 = 0 @@ -151719,7 +151767,7 @@ func windowInitAccum(tls *libc.TLS, pParse uintptr, pMWin uintptr) int32 { /* sq // Return true if the current frame should be cached in the ephemeral table, // even if there are no xInverse() calls required. -func windowCacheFrame(tls *libc.TLS, pMWin uintptr) int32 { /* sqlite3.c:155906:12: */ +func windowCacheFrame(tls *libc.TLS, pMWin uintptr) int32 { /* sqlite3.c:155918:12: */ var pWin uintptr if (*Window)(unsafe.Pointer(pMWin)).FregStartRowid != 0 { return 1 @@ -151744,7 +151792,7 @@ func windowCacheFrame(tls *libc.TLS, pMWin uintptr) int32 { /* sqlite3.c:155906: // If the two arrays are not equal, the contents of regNew is copied to // regOld and control falls through. Otherwise, if the contents of the arrays // are equal, an OP_Goto is executed. The address of the OP_Goto is returned. -func windowIfNewPeer(tls *libc.TLS, pParse uintptr, pOrderBy uintptr, regNew int32, regOld int32, addr int32) { /* sqlite3.c:155932:13: */ +func windowIfNewPeer(tls *libc.TLS, pParse uintptr, pOrderBy uintptr, regNew int32, regOld int32, addr int32) { /* sqlite3.c:155944:13: */ var v uintptr = Xsqlite3GetVdbe(tls, pParse) if pOrderBy != 0 { var nVal int32 = (*ExprList)(unsafe.Pointer(pOrderBy)).FnExpr @@ -151781,7 +151829,7 @@ func windowIfNewPeer(tls *libc.TLS, pParse uintptr, pOrderBy uintptr, regNew int // A special type of arithmetic is used such that if csr1.peerVal is not // a numeric type (real or integer), then the result of the addition addition // or subtraction is a a copy of csr1.peerVal. -func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal int32, csr2 int32, lbl int32) { /* sqlite3.c:155978:13: */ +func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal int32, csr2 int32, lbl int32) { /* sqlite3.c:155990:13: */ var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse var v uintptr = Xsqlite3GetVdbe(tls, pParse) var pOrderBy uintptr = (*Window)(unsafe.Pointer((*WindowCodeArg)(unsafe.Pointer(p)).FpMWin)).FpOrderBy // ORDER BY clause for window @@ -151899,7 +151947,7 @@ func windowCodeRangeTest(tls *libc.TLS, p uintptr, op int32, csr1 int32, regVal // generates VM code for a single RETURN_ROW, AGGSTEP or AGGINVERSE // operation. Refer to the header comment for sqlite3WindowCodeStep() for // details. -func windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOnEof int32) int32 { /* sqlite3.c:156106:12: */ +func windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOnEof int32) int32 { /* sqlite3.c:156118:12: */ var csr int32 var reg int32 var pParse uintptr = (*WindowCodeArg)(unsafe.Pointer(p)).FpParse @@ -152039,7 +152087,7 @@ func windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOn // Allocate and return a duplicate of the Window object indicated by the // third argument. Set the Window.pOwner field of the new object to // pOwner. -func Xsqlite3WindowDup(tls *libc.TLS, db uintptr, pOwner uintptr, p uintptr) uintptr { /* sqlite3.c:156247:23: */ +func Xsqlite3WindowDup(tls *libc.TLS, db uintptr, pOwner uintptr, p uintptr) uintptr { /* sqlite3.c:156259:23: */ var pNew uintptr = uintptr(0) if p != 0 { pNew = Xsqlite3DbMallocZero(tls, db, uint64(unsafe.Sizeof(Window{}))) @@ -152070,7 +152118,7 @@ func Xsqlite3WindowDup(tls *libc.TLS, db uintptr, pOwner uintptr, p uintptr) uin // Return a copy of the linked list of Window objects passed as the // second argument. -func Xsqlite3WindowListDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:156280:23: */ +func Xsqlite3WindowListDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sqlite3.c:156292:23: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -152095,7 +152143,7 @@ func Xsqlite3WindowListDup(tls *libc.TLS, db uintptr, p uintptr) uintptr { /* sq // // If an OOM error occurs, this function sets the Parse.db.mallocFailed // flag and returns zero. -func windowExprGtZero(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:156302:12: */ +func windowExprGtZero(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* sqlite3.c:156314:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -152443,7 +152491,7 @@ func windowExprGtZero(tls *libc.TLS, pParse uintptr, pExpr uintptr) int32 { /* s // // The text above leaves out many details. Refer to the code and comments // below for a more complete picture. -func Xsqlite3WindowCodeStep(tls *libc.TLS, pParse uintptr, p uintptr, pWInfo uintptr, regGosub int32, addrGosub int32) { /* sqlite3.c:156649:21: */ +func Xsqlite3WindowCodeStep(tls *libc.TLS, pParse uintptr, p uintptr, pWInfo uintptr, regGosub int32, addrGosub int32) { /* sqlite3.c:156661:21: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -152840,17 +152888,17 @@ type TrigEvent = struct { Fa int32 _ [4]byte Fb uintptr -} /* sqlite3.c:157049:1 */ +} /* sqlite3.c:157061:1 */ type FrameBound = struct { FeType int32 _ [4]byte FpExpr uintptr -} /* sqlite3.c:157051:1 */ +} /* sqlite3.c:157063:1 */ // Disable lookaside memory allocation for objects that might be // shared across database connections. -func disableLookaside(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:157057:13: */ +func disableLookaside(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:157069:13: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb (*Parse)(unsafe.Pointer(pParse)).FdisableLookaside++ (*Sqlite3)(unsafe.Pointer(db)).Flookaside.FbDisable++ @@ -152860,7 +152908,7 @@ func disableLookaside(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:157057:13: * // For a compound SELECT statement, make sure p->pPrior->pNext==p for // all elements in the list. And make sure list length does not exceed // SQLITE_LIMIT_COMPOUND_SELECT. -func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:157090:15: */ +func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:157102:15: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -152899,7 +152947,7 @@ func parserDoubleLinkSelect(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlit // Attach a With object describing the WITH clause to a Select // object describing the query for which the WITH clause is a prefix. -func attachWithToSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, pWith uintptr) uintptr { /* sqlite3.c:157121:17: */ +func attachWithToSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, pWith uintptr) uintptr { /* sqlite3.c:157133:17: */ if pSelect != 0 { (*Select)(unsafe.Pointer(pSelect)).FpWith = pWith parserDoubleLinkSelect(tls, pParse, pSelect) @@ -152913,7 +152961,7 @@ func attachWithToSelect(tls *libc.TLS, pParse uintptr, pSelect uintptr, pWith ui // Construct a new Expr object from a single identifier. Use the // new Expr to populate pOut. Set the span of pOut to be the identifier // that created the expression. -func tokenExpr(tls *libc.TLS, pParse uintptr, op int32, t Token) uintptr { /* sqlite3.c:157136:15: */ +func tokenExpr(tls *libc.TLS, pParse uintptr, op int32, t Token) uintptr { /* sqlite3.c:157148:15: */ bp := tls.Alloc(16) defer tls.Free(16) *(*Token)(unsafe.Pointer(bp)) = t @@ -152950,7 +152998,7 @@ func tokenExpr(tls *libc.TLS, pParse uintptr, op int32, t Token) uintptr { /* sq // A routine to convert a binary TK_IS or TK_ISNOT expression into a // unary TK_ISNULL or TK_NOTNULL expression. -func binaryToUnaryIfNull(tls *libc.TLS, pParse uintptr, pY uintptr, pA uintptr, op int32) { /* sqlite3.c:157171:15: */ +func binaryToUnaryIfNull(tls *libc.TLS, pParse uintptr, pY uintptr, pA uintptr, op int32) { /* sqlite3.c:157183:15: */ var db uintptr = (*Parse)(unsafe.Pointer(pParse)).Fdb if (((pA != 0) && (pY != 0)) && (int32((*Expr)(unsafe.Pointer(pY)).Fop) == TK_NULL)) && !(int32((*Parse)(unsafe.Pointer(pParse)).FeParseMode) >= PARSE_MODE_RENAME) { (*Expr)(unsafe.Pointer(pA)).Fop = U8(op) @@ -152964,7 +153012,7 @@ func binaryToUnaryIfNull(tls *libc.TLS, pParse uintptr, pY uintptr, pA uintptr, // list of identifiers. Report an error if the ID list contains // a COLLATE clause or an ASC or DESC keyword, except ignore the // error while parsing a legacy schema. -func parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdToken uintptr, hasCollate int32, sortOrder int32) uintptr { /* sqlite3.c:157185:19: */ +func parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdToken uintptr, hasCollate int32, sortOrder int32) uintptr { /* sqlite3.c:157197:19: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -153039,7 +153087,7 @@ type YYMINORTYPE = struct { _ [0]uint64 Fyyinit int32 _ [12]byte -} /* sqlite3.c:157474:3 */ +} /* sqlite3.c:157486:3 */ //************ End control #defines ****************************************** // Define the yytestcase() macro to be a no-op if is not already defined @@ -153303,7 +153351,7 @@ var yy_action = [2020]uint16{ /* 1990 */ uint16(1040), uint16(1044), uint16(1098), uint16(1045), uint16(1097), uint16(256), uint16(255), uint16(28), uint16(40), uint16(387), /* 2000 */ uint16(1010), uint16(851), uint16(109), uint16(29), uint16(1167), uint16(559), uint16(384), uint16(257), uint16(913), uint16(258), /* 2010 */ uint16(1166), uint16(1579), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1225), uint16(1578), -} /* sqlite3.c:157568:27 */ +} /* sqlite3.c:157580:27 */ var yy_lookahead = [2203]uint16{ /* 0 */ uint16(191), uint16(220), uint16(191), uint16(222), uint16(191), uint16(191), uint16(271), uint16(272), uint16(273), uint16(216), /* 10 */ uint16(191), uint16(230), uint16(216), uint16(191), uint16(191), uint16(191), uint16(271), uint16(272), uint16(273), uint16(19), @@ -153526,7 +153574,7 @@ var yy_lookahead = [2203]uint16{ /* 2180 */ uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), /* 2190 */ uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), uint16(316), /* 2200 */ uint16(316), uint16(316), uint16(316), -} /* sqlite3.c:157772:25 */ +} /* sqlite3.c:157784:25 */ var yy_shift_ofst = [570]uint16{ /* 0 */ uint16(1423), uint16(1409), uint16(1454), uint16(1192), uint16(1192), uint16(36), uint16(1252), uint16(1410), uint16(1517), uint16(1684), /* 10 */ uint16(1684), uint16(1684), uint16(292), uint16(0), uint16(0), uint16(180), uint16(1015), uint16(1684), uint16(1684), uint16(1684), @@ -153585,7 +153633,7 @@ var yy_shift_ofst = [570]uint16{ /* 540 */ uint16(1961), uint16(1953), uint16(1960), uint16(1954), uint16(1964), uint16(1943), uint16(1966), uint16(1967), uint16(1968), uint16(1969), /* 550 */ uint16(1970), uint16(1971), uint16(1973), uint16(1982), uint16(1975), uint16(1976), uint16(1977), uint16(1978), uint16(1980), uint16(1981), /* 560 */ uint16(1979), uint16(1874), uint16(1867), uint16(1869), uint16(1871), uint16(1879), uint16(1983), uint16(1984), uint16(2003), uint16(2009), -} /* sqlite3.c:157998:33 */ +} /* sqlite3.c:158010:33 */ var yy_reduce_ofst = [406]int16{ /* 0 */ int16(111), int16(168), int16(386), int16(761), int16(-176), int16(-174), int16(-191), int16(-189), int16(-181), int16(-178), /* 10 */ int16(176), int16(263), int16(44), int16(-207), int16(-204), int16(-265), int16(-139), int16(-114), int16(158), int16(504), @@ -153628,7 +153676,7 @@ var yy_reduce_ofst = [406]int16{ /* 380 */ int16(1618), int16(1621), int16(1611), int16(1624), int16(1648), int16(1652), int16(1676), int16(1677), int16(1687), int16(1688), /* 390 */ int16(1689), int16(1613), int16(1614), int16(1615), int16(1668), int16(1663), int16(1665), int16(1666), int16(1670), int16(1678), /* 400 */ int16(1655), int16(1662), int16(1672), int16(1673), int16(1675), int16(1690), -} /* sqlite3.c:158060:20 */ +} /* sqlite3.c:158072:20 */ var yy_default = [570]uint16{ /* 0 */ uint16(1623), uint16(1623), uint16(1623), uint16(1453), uint16(1223), uint16(1332), uint16(1223), uint16(1223), uint16(1223), uint16(1453), /* 10 */ uint16(1453), uint16(1453), uint16(1223), uint16(1362), uint16(1362), uint16(1506), uint16(1254), uint16(1223), uint16(1223), uint16(1223), @@ -153687,7 +153735,7 @@ var yy_default = [570]uint16{ /* 540 */ uint16(1223), uint16(1556), uint16(1357), uint16(1223), uint16(1223), uint16(1602), uint16(1223), uint16(1223), uint16(1223), uint16(1223), /* 550 */ uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), uint16(1223), /* 560 */ uint16(1596), uint16(1313), uint16(1404), uint16(1223), uint16(1403), uint16(1407), uint16(1223), uint16(1235), uint16(1223), uint16(1223), -} /* sqlite3.c:158103:27 */ +} /* sqlite3.c:158115:27 */ //********* End of lemon-generated parsing tables **************************** // The next table maps tokens (terminal symbols) into fallback tokens. @@ -153887,7 +153935,7 @@ var yyFallback = [183]uint16{ uint16(0), // SPAN => nothing uint16(0), // SPACE => nothing uint16(0), // ILLEGAL => nothing -} /* sqlite3.c:158179:25 */ +} /* sqlite3.c:158191:25 */ // The following structure represents a single element of the // parser's stack. Information stored includes: @@ -153909,9 +153957,9 @@ type yyStackEntry = struct { Fmajor uint16 _ [4]byte Fminor YYMINORTYPE -} /* sqlite3.c:158382:1 */ +} /* sqlite3.c:158394:1 */ -type YyStackEntry = yyStackEntry /* sqlite3.c:158389:29 */ +type YyStackEntry = yyStackEntry /* sqlite3.c:158401:29 */ // The state of the parser is completely contained in an instance of // the following structure @@ -153920,9 +153968,9 @@ type yyParser = struct { FpParse uintptr Fyystack [100]YyStackEntry FyystackEnd uintptr -} /* sqlite3.c:158393:1 */ +} /* sqlite3.c:158405:1 */ -type YyParser = yyParser /* sqlite3.c:158412:25 */ +type YyParser = yyParser /* sqlite3.c:158424:25 */ // Datatype of the argument to the memory allocated passed as the // second argument to sqlite3ParserAlloc() below. This can be changed by @@ -153930,7 +153978,7 @@ type YyParser = yyParser /* sqlite3.c:158412:25 */ // grammar. // Initialize a new parser that has already been allocated. -func Xsqlite3ParserInit(tls *libc.TLS, yypRawParser uintptr, pParse uintptr) { /* sqlite3.c:159220:21: */ +func Xsqlite3ParserInit(tls *libc.TLS, yypRawParser uintptr, pParse uintptr) { /* sqlite3.c:159232:21: */ var yypParser uintptr = yypRawParser (*YyParser)(unsafe.Pointer(yypParser)).FpParse = pParse (*YyParser)(unsafe.Pointer(yypParser)).Fyytos = yypParser + 16 /* &.yystack */ @@ -153945,7 +153993,7 @@ func Xsqlite3ParserInit(tls *libc.TLS, yypRawParser uintptr, pParse uintptr) { / // a pointer to the value to be deleted. The code used to do the // deletions is derived from the %destructor and/or %token_destructor // directives of the input grammar. -func yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor uintptr) { /* sqlite3.c:159278:13: */ +func yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor uintptr) { /* sqlite3.c:159290:13: */ var pParse uintptr = (*YyParser)(unsafe.Pointer(yypParser)).FpParse switch int32(yymajor) { @@ -154104,7 +154152,7 @@ func yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor ui // // If there is a destructor routine associated with the token which // is popped from the stack, then call it. -func yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:159403:13: */ +func yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:159415:13: */ var yytos uintptr yytos = libc.PostDecUintptr(&(*YyParser)(unsafe.Pointer(pParser)).Fyytos, 24) @@ -154112,7 +154160,7 @@ func yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:159403:1 } // Clear all secondary memory allocations from the parser -func Xsqlite3ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:159421:21: */ +func Xsqlite3ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:159433:21: */ var pParser uintptr = p for (*YyParser)(unsafe.Pointer(pParser)).Fyytos > pParser+16 /* &.yystack */ { yy_pop_parser_stack(tls, pParser) @@ -154135,7 +154183,7 @@ func Xsqlite3ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:159421:21: // Find the appropriate action for a parser given the terminal // look-ahead token iLookAhead. -func yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) uint16 { /* sqlite3.c:159501:21: */ +func yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) uint16 { /* sqlite3.c:159513:21: */ var i int32 if int32(stateno) > YY_MAX_SHIFT { @@ -154175,7 +154223,7 @@ func yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) uint // Find the appropriate action for a parser given the non-terminal // look-ahead token iLookAhead. -func yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) uint16 { /* sqlite3.c:159566:21: */ +func yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) uint16 { /* sqlite3.c:159578:21: */ var i int32 i = int32(yy_reduce_ofst[stateno]) @@ -154186,7 +154234,7 @@ func yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) uin } // The following routine is called if the stack overflows. -func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:159595:13: */ +func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:159607:13: */ var pParse uintptr = (*YyParser)(unsafe.Pointer(yypParser)).FpParse for (*YyParser)(unsafe.Pointer(yypParser)).Fyytos > yypParser+16 /* &.yystack */ { @@ -154205,7 +154253,7 @@ func yyStackOverflow(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:159595:13: // Print tracing information for a SHIFT action // Perform a shift action. -func yy_shift(tls *libc.TLS, yypParser uintptr, yyNewState uint16, yyMajor uint16, yyMinor Token) { /* sqlite3.c:159638:13: */ +func yy_shift(tls *libc.TLS, yypParser uintptr, yyNewState uint16, yyMajor uint16, yyMinor Token) { /* sqlite3.c:159650:13: */ var yytos uintptr (*YyParser)(unsafe.Pointer(yypParser)).Fyytos += 24 if (*YyParser)(unsafe.Pointer(yypParser)).Fyytos > (*YyParser)(unsafe.Pointer(yypParser)).FyystackEnd { @@ -154624,7 +154672,7 @@ var yyRuleInfoLhs = [398]uint16{ uint16(300), // (395) anylist ::= anylist LP anylist RP uint16(300), // (396) anylist ::= anylist ANY uint16(263), // (397) with ::= -} /* sqlite3.c:159679:25 */ +} /* sqlite3.c:159691:25 */ // For rule J, yyRuleInfoNRhs[J] contains the negative of the number // of symbols on the right-hand side of that rule. @@ -155027,7 +155075,7 @@ var yyRuleInfoNRhs = [398]int8{ int8(-4), // (395) anylist ::= anylist LP anylist RP int8(-2), // (396) anylist ::= anylist ANY int8(0), // (397) with ::= -} /* sqlite3.c:160082:26 */ +} /* sqlite3.c:160094:26 */ // Forward Declaration @@ -155039,7 +155087,7 @@ var yyRuleInfoNRhs = [398]int8{ // if the lookahead token has already been consumed. As this procedure is // only called from one place, optimizing compilers will in-line it, which // means that the extra parameters have no performance impact. -func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead int32, yyLookaheadToken Token, pParse uintptr) uint16 { /* sqlite3.c:160495:21: */ +func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead int32, yyLookaheadToken Token, pParse uintptr) uint16 { /* sqlite3.c:160507:21: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -156994,7 +157042,7 @@ func yy_reduce(tls *libc.TLS, yypParser uintptr, yyruleno uint32, yyLookahead in // The following code executes when the parse fails // The following code executes when a syntax error first occurs. -func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162015:13: */ +func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162027:13: */ bp := tls.Alloc(24) defer tls.Free(24) *(*Token)(unsafe.Pointer(bp + 8)) = yyminor @@ -157014,7 +157062,7 @@ func yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, yyminor To } // The following is executed when the parser accepts -func yy_accept(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:162039:13: */ +func yy_accept(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:162051:13: */ var pParse uintptr = (*YyParser)(unsafe.Pointer(yypParser)).FpParse @@ -157044,7 +157092,7 @@ func yy_accept(tls *libc.TLS, yypParser uintptr) { /* sqlite3.c:162039:13: */ // // Outputs: // None. -func Xsqlite3Parser(tls *libc.TLS, yyp uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162080:21: */ +func Xsqlite3Parser(tls *libc.TLS, yyp uintptr, yymajor int32, yyminor Token) { /* sqlite3.c:162092:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -157098,7 +157146,7 @@ func Xsqlite3Parser(tls *libc.TLS, yyp uintptr, yymajor int32, yyminor Token) { // Return the fallback token corresponding to canonical token iToken, or // 0 if iToken has no fallback. -func Xsqlite3ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:162298:20: */ +func Xsqlite3ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:162310:20: */ return int32(yyFallback[iToken]) } @@ -157149,7 +157197,7 @@ var aiClass = [256]uint8{ /* Dx */ uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), /* Ex */ uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), /* Fx */ uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), uint8(2), -} /* sqlite3.c:162369:28 */ +} /* sqlite3.c:162381:28 */ // The charMap() macro maps alphabetic characters (only) into their // lower-case ASCII equivalent. On ASCII machines, this is just @@ -157235,7 +157283,7 @@ var zKWText = [666]int8{ int8('W'), int8('S'), int8('U'), int8('N'), int8('B'), int8('O'), int8('U'), int8('N'), int8('D'), int8('E'), int8('D'), int8('U'), int8('N'), int8('I'), int8('O'), int8('N'), int8('U'), int8('S'), int8('I'), int8('N'), int8('G'), int8('V'), int8('A'), int8('C'), int8('U'), int8('U'), int8('M'), int8('V'), int8('I'), int8('E'), int8('W'), int8('I'), int8('N'), int8('D'), int8('O'), int8('W'), int8('B'), int8('Y'), int8('I'), int8('N'), int8('I'), int8('T'), int8('I'), int8('A'), int8('L'), int8('L'), int8('Y'), int8('P'), int8('R'), int8('I'), int8('M'), int8('A'), int8('R'), int8('Y'), -} /* sqlite3.c:162485:19 */ +} /* sqlite3.c:162497:19 */ // aKWHash[i] is the hash value for the i-th keyword var aKWHash = [127]uint8{ uint8(84), uint8(92), uint8(134), uint8(82), uint8(105), uint8(29), uint8(0), uint8(0), uint8(94), uint8(0), uint8(85), uint8(72), uint8(0), @@ -157248,7 +157296,7 @@ var aKWHash = [127]uint8{ uint8(50), uint8(124), uint8(0), uint8(100), uint8(0), uint8(18), uint8(121), uint8(144), uint8(56), uint8(130), uint8(139), uint8(88), uint8(83), uint8(37), uint8(30), uint8(126), uint8(0), uint8(0), uint8(108), uint8(51), uint8(131), uint8(128), uint8(0), uint8(34), uint8(0), uint8(0), uint8(132), uint8(0), uint8(98), uint8(38), uint8(39), uint8(0), uint8(20), uint8(45), uint8(117), uint8(93), -} /* sqlite3.c:162525:28 */ +} /* sqlite3.c:162537:28 */ // aKWNext[] forms the hash collision chain. If aKWHash[i]==0 // then the i-th keyword has no more hash collisions. Otherwise, // the next keyword with the same hash is aKWHash[i]-1. @@ -157265,7 +157313,7 @@ var aKWNext = [147]uint8{ uint8(112), uint8(21), uint8(7), uint8(67), uint8(0), uint8(79), uint8(96), uint8(118), uint8(0), uint8(0), uint8(68), uint8(0), uint8(0), uint8(99), uint8(44), uint8(0), uint8(55), uint8(0), uint8(76), uint8(0), uint8(95), uint8(32), uint8(33), uint8(57), uint8(25), uint8(0), uint8(102), uint8(0), uint8(0), uint8(87), -} /* sqlite3.c:162540:28 */ +} /* sqlite3.c:162552:28 */ // aKWLen[i] is the length (in bytes) of the i-th keyword var aKWLen = [147]uint8{ uint8(7), uint8(7), uint8(5), uint8(4), uint8(6), uint8(4), uint8(5), uint8(3), uint8(6), uint8(7), uint8(3), uint8(6), uint8(6), @@ -157280,7 +157328,7 @@ var aKWLen = [147]uint8{ uint8(4), uint8(4), uint8(6), uint8(7), uint8(5), uint8(9), uint8(4), uint8(4), uint8(5), uint8(2), uint8(5), uint8(8), uint8(6), uint8(4), uint8(9), uint8(5), uint8(8), uint8(4), uint8(3), uint8(9), uint8(5), uint8(5), uint8(6), uint8(4), uint8(6), uint8(2), uint8(2), uint8(9), uint8(3), uint8(7), -} /* sqlite3.c:162555:28 */ +} /* sqlite3.c:162567:28 */ // aKWOffset[i] is the index into zKWText[] of the start of // the text for the i-th keyword. var aKWOffset = [147]uint16{ @@ -157296,7 +157344,7 @@ var aKWOffset = [147]uint16{ uint16(520), uint16(523), uint16(527), uint16(532), uint16(539), uint16(544), uint16(553), uint16(557), uint16(560), uint16(565), uint16(567), uint16(571), uint16(579), uint16(585), uint16(588), uint16(597), uint16(602), uint16(610), uint16(610), uint16(614), uint16(623), uint16(628), uint16(633), uint16(639), uint16(642), uint16(645), uint16(648), uint16(650), uint16(655), uint16(659), -} /* sqlite3.c:162571:33 */ +} /* sqlite3.c:162583:33 */ // aKWCode[i] is the parser symbol code for the i-th keyword var aKWCode = [147]uint8{ uint8(TK_REINDEX), uint8(TK_INDEXED), uint8(TK_INDEX), uint8(TK_DESC), uint8(TK_ESCAPE), @@ -157329,7 +157377,7 @@ var aKWCode = [147]uint8{ uint8(TK_ROW), uint8(TK_UNBOUNDED), uint8(TK_UNION), uint8(TK_USING), uint8(TK_VACUUM), uint8(TK_VIEW), uint8(TK_WINDOW), uint8(TK_DO), uint8(TK_BY), uint8(TK_INITIALLY), uint8(TK_ALL), uint8(TK_PRIMARY), -} /* sqlite3.c:162586:28 */ +} /* sqlite3.c:162598:28 */ // Hash table decoded: // 0: INSERT @@ -157462,7 +157510,7 @@ var aKWCode = [147]uint8{ // Check to see if z[0..n-1] is a keyword. If it is, write the // parser symbol code for that keyword into *pType. Always // return the integer n (the length of the token). -func keywordCode(tls *libc.TLS, z uintptr, n int32, pType uintptr) int32 { /* sqlite3.c:162750:12: */ +func keywordCode(tls *libc.TLS, z uintptr, n int32, pType uintptr) int32 { /* sqlite3.c:162762:12: */ var i int32 var j int32 var zKW uintptr @@ -157640,7 +157688,7 @@ func keywordCode(tls *libc.TLS, z uintptr, n int32, pType uintptr) int32 { /* sq return n } -func Xsqlite3KeywordCode(tls *libc.TLS, z uintptr, n int32) int32 { /* sqlite3.c:162924:20: */ +func Xsqlite3KeywordCode(tls *libc.TLS, z uintptr, n int32) int32 { /* sqlite3.c:162936:20: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -157649,7 +157697,7 @@ func Xsqlite3KeywordCode(tls *libc.TLS, z uintptr, n int32) int32 { /* sqlite3.c return *(*int32)(unsafe.Pointer(bp /* id */)) } -func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintptr) int32 { /* sqlite3.c:162930:16: */ +func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintptr) int32 { /* sqlite3.c:162942:16: */ if (i < 0) || (i >= SQLITE_N_KEYWORD) { return SQLITE_ERROR } @@ -157658,11 +157706,11 @@ func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintpt return SQLITE_OK } -func Xsqlite3_keyword_count(tls *libc.TLS) int32 { /* sqlite3.c:162936:16: */ +func Xsqlite3_keyword_count(tls *libc.TLS) int32 { /* sqlite3.c:162948:16: */ return SQLITE_N_KEYWORD } -func Xsqlite3_keyword_check(tls *libc.TLS, zName uintptr, nName int32) int32 { /* sqlite3.c:162937:16: */ +func Xsqlite3_keyword_check(tls *libc.TLS, zName uintptr, nName int32) int32 { /* sqlite3.c:162949:16: */ return (libc.Bool32(TK_ID != Xsqlite3KeywordCode(tls, zName, nName))) } @@ -157685,13 +157733,13 @@ func Xsqlite3_keyword_check(tls *libc.TLS, zName uintptr, nName int32) int32 { / // But the feature is undocumented. // Make the IdChar function accessible from ctime.c and alter.c -func Xsqlite3IsIdChar(tls *libc.TLS, c U8) int32 { /* sqlite3.c:162984:20: */ +func Xsqlite3IsIdChar(tls *libc.TLS, c U8) int32 { /* sqlite3.c:162996:20: */ return (libc.Bool32((int32(Xsqlite3CtypeMap[c]) & 0x46) != 0)) } // Return the id of the next token in string (*pz). Before returning, set // (*pz) to point to the byte following the parsed token. -func getToken(tls *libc.TLS, pz uintptr) int32 { /* sqlite3.c:162991:12: */ +func getToken(tls *libc.TLS, pz uintptr) int32 { /* sqlite3.c:163003:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -157741,7 +157789,7 @@ func getToken(tls *libc.TLS, pz uintptr) int32 { /* sqlite3.c:162991:12: */ // // * the previous token was TK_RP, and // * the next token is TK_LP. -func analyzeWindowKeyword(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:163040:12: */ +func analyzeWindowKeyword(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:163052:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = z @@ -157758,7 +157806,7 @@ func analyzeWindowKeyword(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:163040: return TK_WINDOW } -func analyzeOverKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163048:12: */ +func analyzeOverKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163060:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = z @@ -157772,7 +157820,7 @@ func analyzeOverKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sq return TK_ID } -func analyzeFilterKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163055:12: */ +func analyzeFilterKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* sqlite3.c:163067:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = z @@ -157785,7 +157833,7 @@ func analyzeFilterKeyword(tls *libc.TLS, z uintptr, lastToken int32) int32 { /* // Return the length (in bytes) of the token that begins at z[0]. // Store the token type in *tokenType before returning. -func Xsqlite3GetToken(tls *libc.TLS, z uintptr, tokenType uintptr) int32 { /* sqlite3.c:163067:20: */ +func Xsqlite3GetToken(tls *libc.TLS, z uintptr, tokenType uintptr) int32 { /* sqlite3.c:163079:20: */ var i int32 var c int32 switch int32(aiClass[*(*uint8)(unsafe.Pointer(z))]) { // Switch on the character-class of the first byte @@ -158138,7 +158186,7 @@ func Xsqlite3GetToken(tls *libc.TLS, z uintptr, tokenType uintptr) int32 { /* sq // then an and attempt is made to write an error message into // memory obtained from sqlite3_malloc() and to make *pzErrMsg point to that // error message. -func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:163354:20: */ +func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:163366:20: */ bp := tls.Alloc(2468) defer tls.Free(2468) @@ -158337,7 +158385,7 @@ func Xsqlite3RunParser(tls *libc.TLS, pParse uintptr, zSql uintptr, pzErrMsg uin // If we compile with SQLITE_OMIT_TRIGGER, all of the computation needed // to recognize the end of a trigger can be omitted. All we have to do // is look for a semicolon that is not part of an string or comment. -func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163758:16: */ +func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163770:16: */ var state U8 = U8(0) // Current state, using numbers defined in header comment var token U8 @@ -158514,12 +158562,12 @@ var trans = [8][8]U8{ /* 5 TRIGGER: */ {U8(6), U8(5), U8(5), U8(5), U8(5), U8(5), U8(5), U8(5)}, /* 6 SEMI: */ {U8(6), U8(6), U8(5), U8(5), U8(5), U8(5), U8(5), U8(7)}, /* 7 END: */ {U8(1), U8(7), U8(5), U8(5), U8(5), U8(5), U8(5), U8(5)}, -} /* sqlite3.c:163766:19 */ +} /* sqlite3.c:163778:19 */ // This routine is the same as the sqlite3_complete() routine described // above, except that the parameter is required to be UTF-16 encoded, not // UTF-8. -func Xsqlite3_complete16(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163923:16: */ +func Xsqlite3_complete16(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:163935:16: */ var pVal uintptr var zSql8 uintptr var rc int32 @@ -158546,7 +158594,7 @@ func Xsqlite3_complete16(tls *libc.TLS, zSql uintptr) int32 { /* sqlite3.c:16392 // This is an extension initializer that is a no-op and always // succeeds, except that it fails if the fault-simulation is set // to 500. -func sqlite3TestExtInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164075:12: */ +func sqlite3TestExtInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164087:12: */ _ = db return Xsqlite3FaultSim(tls, 500) } @@ -158562,11 +158610,11 @@ var sqlite3BuiltinExtensions = [8]uintptr{ 0, 0, 0, -} /* sqlite3.c:164105:12 */ +} /* sqlite3.c:164117:12 */ // IMPLEMENTATION-OF: R-53536-42575 The sqlite3_libversion() function returns // a pointer to the to the sqlite3_version[] string constant. -func Xsqlite3_libversion(tls *libc.TLS) uintptr { /* sqlite3.c:164152:23: */ +func Xsqlite3_libversion(tls *libc.TLS) uintptr { /* sqlite3.c:164164:23: */ return uintptr(unsafe.Pointer(&Xsqlite3_version)) } @@ -158579,35 +158627,35 @@ func Xsqlite3_libversion(tls *libc.TLS) uintptr { /* sqlite3.c:164152:23: */ // IMPLEMENTATION-OF: R-35210-63508 The sqlite3_libversion_number() function // returns an integer equal to SQLITE_VERSION_NUMBER. -func Xsqlite3_libversion_number(tls *libc.TLS) int32 { /* sqlite3.c:164165:16: */ +func Xsqlite3_libversion_number(tls *libc.TLS) int32 { /* sqlite3.c:164177:16: */ return SQLITE_VERSION_NUMBER } // IMPLEMENTATION-OF: R-20790-14025 The sqlite3_threadsafe() function returns // zero if and only if SQLite was compiled with mutexing code omitted due to // the SQLITE_THREADSAFE compile-time option being set to 0. -func Xsqlite3_threadsafe(tls *libc.TLS) int32 { /* sqlite3.c:164171:16: */ +func Xsqlite3_threadsafe(tls *libc.TLS) int32 { /* sqlite3.c:164183:16: */ return SQLITE_THREADSAFE } // When compiling the test fixture or with debugging enabled (on Win32), // this variable being set to non-zero will cause OSTRACE macros to emit // extra diagnostic information. -var Xsqlite3OSTrace int32 = SQLITE_DEBUG_OS_TRACE /* sqlite3.c:164182:7 */ +var Xsqlite3OSTrace int32 = SQLITE_DEBUG_OS_TRACE /* sqlite3.c:164194:7 */ // If the following global variable points to a string which is the // name of a directory, then that directory will be used to store // temporary files. // // See also the "PRAGMA temp_store_directory" SQL command. -var Xsqlite3_temp_directory uintptr = uintptr(0) /* sqlite3.c:164202:17 */ +var Xsqlite3_temp_directory uintptr = uintptr(0) /* sqlite3.c:164214:17 */ // If the following global variable points to a string which is the // name of a directory, then that directory will be used to store // all database files specified with a relative pathname. // // See also the "PRAGMA data_store_directory" SQL command. -var Xsqlite3_data_directory uintptr = uintptr(0) /* sqlite3.c:164211:17 */ +var Xsqlite3_data_directory uintptr = uintptr(0) /* sqlite3.c:164223:17 */ // Initialize SQLite. // @@ -158638,7 +158686,7 @@ var Xsqlite3_data_directory uintptr = uintptr(0) /* sqlite3.c:164211:17 */ // // * Recursive calls to this routine from thread X return immediately // without blocking. -func Xsqlite3_initialize(tls *libc.TLS) int32 { /* sqlite3.c:164244:16: */ +func Xsqlite3_initialize(tls *libc.TLS) int32 { /* sqlite3.c:164256:16: */ var pMainMtx uintptr // The main static mutex var rc int32 // Result code @@ -158764,7 +158812,7 @@ func Xsqlite3_initialize(tls *libc.TLS) int32 { /* sqlite3.c:164244:16: */ // routine is not threadsafe. But it is safe to invoke this routine // on when SQLite is already shut down. If SQLite is already shut down // when this routine is invoked, then this routine is a harmless no-op. -func Xsqlite3_shutdown(tls *libc.TLS) int32 { /* sqlite3.c:164419:16: */ +func Xsqlite3_shutdown(tls *libc.TLS) int32 { /* sqlite3.c:164431:16: */ if Xsqlite3Config.FisInit != 0 { Xsqlite3_os_end(tls) @@ -158803,7 +158851,7 @@ func Xsqlite3_shutdown(tls *libc.TLS) int32 { /* sqlite3.c:164419:16: */ // database connections or memory allocations. This routine is not // threadsafe. Failure to heed these warnings can lead to unpredictable // behavior. -func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:164473:16: */ +func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:164485:16: */ var ap Va_list _ = ap var rc int32 = SQLITE_OK @@ -158811,7 +158859,7 @@ func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:1 // sqlite3_config() shall return SQLITE_MISUSE if it is invoked while // the SQLite library is in use. if Xsqlite3Config.FisInit != 0 { - return Xsqlite3MisuseError(tls, 164479) + return Xsqlite3MisuseError(tls, 164491) } ap = va @@ -159081,7 +159129,7 @@ func Xsqlite3_config(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:1 // space for the lookaside memory is obtained from sqlite3_malloc(). // If pStart is not NULL then it is sz*cnt bytes of memory to use for // the lookaside memory. -func setupLookaside(tls *libc.TLS, db uintptr, pBuf uintptr, sz int32, cnt int32) int32 { /* sqlite3.c:164791:12: */ +func setupLookaside(tls *libc.TLS, db uintptr, pBuf uintptr, sz int32, cnt int32) int32 { /* sqlite3.c:164803:12: */ var pStart uintptr var szAlloc Sqlite3_int64 = (Sqlite3_int64(sz) * Sqlite3_int64(cnt)) var nBig int32 // Number of full-size slots @@ -159179,13 +159227,13 @@ func setupLookaside(tls *libc.TLS, db uintptr, pBuf uintptr, sz int32, cnt int32 } // Return the mutex associated with a database connection. -func Xsqlite3_db_mutex(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:164891:26: */ +func Xsqlite3_db_mutex(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:164903:26: */ return (*Sqlite3)(unsafe.Pointer(db)).Fmutex } // Free up as much memory as we can from the given database // connection. -func Xsqlite3_db_release_memory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164905:16: */ +func Xsqlite3_db_release_memory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164917:16: */ var i int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -159204,7 +159252,7 @@ func Xsqlite3_db_release_memory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c: // Flush any dirty pages in the pager-cache for any attached database // to disk. -func Xsqlite3_db_cacheflush(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164929:16: */ +func Xsqlite3_db_cacheflush(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:164941:16: */ var i int32 var rc int32 = SQLITE_OK var bSeenBusy int32 = 0 @@ -159233,7 +159281,7 @@ func Xsqlite3_db_cacheflush(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:1649 } // Configuration settings for an individual database connection -func Xsqlite3_db_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:164958:16: */ +func Xsqlite3_db_config(tls *libc.TLS, db uintptr, op int32, va uintptr) int32 { /* sqlite3.c:164970:16: */ var ap Va_list _ = ap var rc int32 @@ -159312,11 +159360,11 @@ var aFlagOp = [16]struct { {Fop: SQLITE_DBCONFIG_DQS_DML, Fmask: U32(SQLITE_DqsDML)}, {Fop: SQLITE_DBCONFIG_LEGACY_FILE_FORMAT, Fmask: U32(SQLITE_LegacyFileFmt)}, {Fop: SQLITE_DBCONFIG_TRUSTED_SCHEMA, Fmask: U32(SQLITE_TrustedSchema)}, -} /* sqlite3.c:164981:9 */ +} /* sqlite3.c:164993:9 */ // This is the default collating function named "BINARY" which is always // available. -func binCollFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165033:12: */ +func binCollFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165045:12: */ var rc int32 var n int32 _ = NotUsed @@ -159338,7 +159386,7 @@ func binCollFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKe // This is the collating function named "RTRIM" which is always // available. Ignore trailing spaces. -func rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165056:12: */ +func rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165068:12: */ var pK1 uintptr = pKey1 var pK2 uintptr = pKey2 for (nKey1 != 0) && (int32(*(*U8)(unsafe.Pointer(pK1 + uintptr((nKey1 - 1))))) == ' ') { @@ -159351,7 +159399,7 @@ func rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKe } // Return true if CollSeq is the default built-in BINARY. -func Xsqlite3IsBinary(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165071:20: */ +func Xsqlite3IsBinary(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165083:20: */ return (libc.Bool32((p == uintptr(0)) || ((*CollSeq)(unsafe.Pointer(p)).FxCmp == *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32 @@ -159365,7 +159413,7 @@ func Xsqlite3IsBinary(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165071:20: // extends only to the 26 characters used in the English language. // // At the moment there is only a UTF-8 implementation. -func nocaseCollatingFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165085:12: */ +func nocaseCollatingFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) int32 { /* sqlite3.c:165097:12: */ var r int32 = Xsqlite3_strnicmp(tls, pKey1, pKey2, func() int32 { if nKey1 < nKey2 { @@ -159381,31 +159429,31 @@ func nocaseCollatingFunc(tls *libc.TLS, NotUsed uintptr, nKey1 int32, pKey1 uint } // Return the ROWID of the most recent insert -func Xsqlite3_last_insert_rowid(tls *libc.TLS, db uintptr) Sqlite_int64 { /* sqlite3.c:165102:25: */ +func Xsqlite3_last_insert_rowid(tls *libc.TLS, db uintptr) Sqlite_int64 { /* sqlite3.c:165114:25: */ return (*Sqlite3)(unsafe.Pointer(db)).FlastRowid } // Set the value returned by the sqlite3_last_insert_rowid() API function. -func Xsqlite3_set_last_insert_rowid(tls *libc.TLS, db uintptr, iRowid Sqlite3_int64) { /* sqlite3.c:165115:17: */ +func Xsqlite3_set_last_insert_rowid(tls *libc.TLS, db uintptr, iRowid Sqlite3_int64) { /* sqlite3.c:165127:17: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FlastRowid = iRowid Xsqlite3_mutex_leave(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) } // Return the number of changes in the most recent call to sqlite3_exec(). -func Xsqlite3_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165130:16: */ +func Xsqlite3_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165142:16: */ return (*Sqlite3)(unsafe.Pointer(db)).FnChange } // Return the number of changes since the database handle was opened. -func Xsqlite3_total_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165143:16: */ +func Xsqlite3_total_changes(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165155:16: */ return (*Sqlite3)(unsafe.Pointer(db)).FnTotalChange } // Close all open savepoints. This function only manipulates fields of the // database handle object, it does not close any savepoints that may be open // at the b-tree/pager level. -func Xsqlite3CloseSavepoints(tls *libc.TLS, db uintptr) { /* sqlite3.c:165158:21: */ +func Xsqlite3CloseSavepoints(tls *libc.TLS, db uintptr) { /* sqlite3.c:165170:21: */ for (*Sqlite3)(unsafe.Pointer(db)).FpSavepoint != 0 { var pTmp uintptr = (*Sqlite3)(unsafe.Pointer(db)).FpSavepoint (*Sqlite3)(unsafe.Pointer(db)).FpSavepoint = (*Savepoint)(unsafe.Pointer(pTmp)).FpNext @@ -159420,7 +159468,7 @@ func Xsqlite3CloseSavepoints(tls *libc.TLS, db uintptr) { /* sqlite3.c:165158:21 // if this is not the last copy of the function, do not invoke it. Multiple // copies of a single function are created when create_function() is called // with SQLITE_ANY as the encoding. -func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:165175:13: */ +func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:165187:13: */ var pDestructor uintptr = *(*uintptr)(unsafe.Pointer(p + 64 /* &.u */)) if pDestructor != 0 { (*FuncDestructor)(unsafe.Pointer(pDestructor)).FnRef-- @@ -159433,7 +159481,7 @@ func functionDestroy(tls *libc.TLS, db uintptr, p uintptr) { /* sqlite3.c:165175 // Disconnect all sqlite3_vtab objects that belong to database connection // db. This is called when db is being closed. -func disconnectAllVtab(tls *libc.TLS, db uintptr) { /* sqlite3.c:165190:13: */ +func disconnectAllVtab(tls *libc.TLS, db uintptr) { /* sqlite3.c:165202:13: */ var i int32 var p uintptr Xsqlite3BtreeEnterAll(tls, db) @@ -159460,7 +159508,7 @@ func disconnectAllVtab(tls *libc.TLS, db uintptr) { /* sqlite3.c:165190:13: */ // Return TRUE if database connection db has unfinalized prepared // statements or unfinished sqlite3_backup objects. -func connectionIsBusy(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165221:12: */ +func connectionIsBusy(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165233:12: */ var j int32 if (*Sqlite3)(unsafe.Pointer(db)).FpVdbe != 0 { @@ -159476,14 +159524,14 @@ func connectionIsBusy(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165221:12: } // Close an existing SQLite database -func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlite3.c:165235:12: */ +func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlite3.c:165247:12: */ if !(db != 0) { // EVIDENCE-OF: R-63257-11740 Calling sqlite3_close() or // sqlite3_close_v2() with a NULL pointer argument is a harmless no-op. return SQLITE_OK } if !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3MisuseError(tls, 165242) + return Xsqlite3MisuseError(tls, 165254) } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if (int32((*Sqlite3)(unsafe.Pointer(db)).FmTrace) & SQLITE_TRACE_CLOSE) != 0 { @@ -159518,7 +159566,7 @@ func sqlite3Close(tls *libc.TLS, db uintptr, forceZombie int32) int32 { /* sqlit // Return the transaction state for a single databse, or the maximum // transaction state over all attached databases if zSchema is null. -func Xsqlite3_txn_state(tls *libc.TLS, db uintptr, zSchema uintptr) int32 { /* sqlite3.c:165289:16: */ +func Xsqlite3_txn_state(tls *libc.TLS, db uintptr, zSchema uintptr) int32 { /* sqlite3.c:165301:16: */ var iDb int32 var nDb int32 var iTxn int32 = -1 @@ -159555,11 +159603,11 @@ func Xsqlite3_txn_state(tls *libc.TLS, db uintptr, zSchema uintptr) int32 { /* s // version forces the connection to become a zombie if there are // unclosed resources, and arranges for deallocation when the last // prepare statement or sqlite3_backup closes. -func Xsqlite3_close(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165324:16: */ +func Xsqlite3_close(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165336:16: */ return sqlite3Close(tls, db, 0) } -func Xsqlite3_close_v2(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165325:16: */ +func Xsqlite3_close_v2(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165337:16: */ return sqlite3Close(tls, db, 1) } @@ -159569,7 +159617,7 @@ func Xsqlite3_close_v2(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:165325:16 // has been a prior call to sqlite3_close(db) or sqlite3_close_v2(db)) and // every sqlite3_stmt has now been finalized and every sqlite3_backup has // finished, then free all resources. -func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c:165336:21: */ +func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c:165348:21: */ var i uintptr // Hash table iterator var j int32 @@ -159676,7 +159724,7 @@ func Xsqlite3LeaveMutexAndCloseZombie(tls *libc.TLS, db uintptr) { /* sqlite3.c: // breaker") and made to return tripCode if there are any further // attempts to use that cursor. Read cursors remain open and valid // but are "saved" in case the table pages are moved around. -func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3.c:165456:21: */ +func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3.c:165468:21: */ var i int32 var inTrans int32 = 0 var schemaChange int32 @@ -159723,7 +159771,7 @@ func Xsqlite3RollbackAll(tls *libc.TLS, db uintptr, tripCode int32) { /* sqlite3 // Return a static string containing the name corresponding to the error code // specified in the argument. -func Xsqlite3ErrName(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:165506:27: */ +func Xsqlite3ErrName(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:165518:27: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -160010,11 +160058,11 @@ __3: return zName } -var zBuf [50]int8 /* sqlite3.c:165605:17: */ +var zBuf [50]int8 /* sqlite3.c:165617:17: */ // Return a static string that describes the kind of error specified in the // argument. -func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:165617:27: */ +func Xsqlite3ErrStr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:165629:27: */ var zErr uintptr = ts + 28552 /* "unknown error" */ switch rc { case (SQLITE_ABORT | (int32(2) << 8)): @@ -160078,7 +160126,7 @@ var aMsg = [29]uintptr{ /* SQLITE_NOTADB */ ts + 29048, /* "file is not a da..." */ /* SQLITE_NOTICE */ ts + 29071, /* "notification mes..." */ /* SQLITE_WARNING */ ts + 29092, /* "warning message" */ -} /* sqlite3.c:165618:20 */ +} /* sqlite3.c:165630:20 */ // This routine implements a busy callback that sleeps and tries // again until a timeout value is reached. The timeout value is @@ -160087,7 +160135,7 @@ var aMsg = [29]uintptr{ // // Return non-zero to retry the lock. Return zero to stop trying // and cause SQLite to return SQLITE_BUSY. -func sqliteDefaultBusyCallback(tls *libc.TLS, ptr uintptr, count int32) int32 { /* sqlite3.c:165687:12: */ +func sqliteDefaultBusyCallback(tls *libc.TLS, ptr uintptr, count int32) int32 { /* sqlite3.c:165699:12: */ var db uintptr = ptr var tmout int32 = (*Sqlite3)(unsafe.Pointer(db)).FbusyTimeout var delay int32 @@ -160110,8 +160158,8 @@ func sqliteDefaultBusyCallback(tls *libc.TLS, ptr uintptr, count int32) int32 { return 1 } -var delays = [12]U8{U8(1), U8(2), U8(5), U8(10), U8(15), U8(20), U8(25), U8(25), U8(25), U8(50), U8(50), U8(100)} /* sqlite3.c:165694:19 */ -var totals = [12]U8{U8(0), U8(1), U8(3), U8(8), U8(18), U8(33), U8(53), U8(78), U8(103), U8(128), U8(178), U8(228)} /* sqlite3.c:165696:19 */ +var delays = [12]U8{U8(1), U8(2), U8(5), U8(10), U8(15), U8(20), U8(25), U8(25), U8(25), U8(50), U8(50), U8(100)} /* sqlite3.c:165706:19 */ +var totals = [12]U8{U8(0), U8(1), U8(3), U8(8), U8(18), U8(33), U8(53), U8(78), U8(103), U8(128), U8(178), U8(228)} /* sqlite3.c:165708:19 */ // Invoke the given busy handler. // @@ -160120,7 +160168,7 @@ var totals = [12]U8{U8(0), U8(1), U8(3), U8(8), U8(18), U8(33), U8(53), U8(78), // // If this routine returns non-zero, the lock is retried. If it // returns 0, the operation aborts with an SQLITE_BUSY error. -func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165739:20: */ +func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:165751:20: */ var rc int32 if ((*BusyHandler)(unsafe.Pointer(p)).FxBusyHandler == uintptr(0)) || ((*BusyHandler)(unsafe.Pointer(p)).FnBusy < 0) { return 0 @@ -160136,7 +160184,7 @@ func Xsqlite3InvokeBusyHandler(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:16 // This routine sets the busy callback for an Sqlite database to the // given callback function with the given argument. -func Xsqlite3_busy_handler(tls *libc.TLS, db uintptr, xBusy uintptr, pArg uintptr) int32 { /* sqlite3.c:165755:16: */ +func Xsqlite3_busy_handler(tls *libc.TLS, db uintptr, xBusy uintptr, pArg uintptr) int32 { /* sqlite3.c:165767:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FbusyHandler.FxBusyHandler = xBusy (*Sqlite3)(unsafe.Pointer(db)).FbusyHandler.FpBusyArg = pArg @@ -160149,7 +160197,7 @@ func Xsqlite3_busy_handler(tls *libc.TLS, db uintptr, xBusy uintptr, pArg uintpt // This routine sets the progress callback for an Sqlite database to the // given callback function with the given argument. The progress callback will // be invoked every nOps opcodes. -func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, xProgress uintptr, pArg uintptr) { /* sqlite3.c:165778:17: */ +func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, xProgress uintptr, pArg uintptr) { /* sqlite3.c:165790:17: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if nOps > 0 { (*Sqlite3)(unsafe.Pointer(db)).FxProgress = xProgress @@ -160165,7 +160213,7 @@ func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, xProgress // This routine installs a default busy handler that waits for the // specified number of milliseconds before returning 0. -func Xsqlite3_busy_timeout(tls *libc.TLS, db uintptr, ms int32) int32 { /* sqlite3.c:165809:16: */ +func Xsqlite3_busy_timeout(tls *libc.TLS, db uintptr, ms int32) int32 { /* sqlite3.c:165821:16: */ if ms > 0 { Xsqlite3_busy_handler(tls, db, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32) int32 @@ -160179,7 +160227,7 @@ func Xsqlite3_busy_timeout(tls *libc.TLS, db uintptr, ms int32) int32 { /* sqlit } // Cause any pending operation to stop at its earliest opportunity. -func Xsqlite3_interrupt(tls *libc.TLS, db uintptr) { /* sqlite3.c:165826:17: */ +func Xsqlite3_interrupt(tls *libc.TLS, db uintptr) { /* sqlite3.c:165838:17: */ libc.AtomicStoreNInt32((db + 400 /* &.u1 */ /* &.isInterrupted */), int32(1), 0) } @@ -160187,7 +160235,7 @@ func Xsqlite3_interrupt(tls *libc.TLS, db uintptr) { /* sqlite3.c:165826:17: */ // that it is designed to be called by internal code. The difference is // that if a malloc() fails in sqlite3_create_function(), an error code // is returned and the mallocFailed flag cleared. -func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, enc int32, pUserData uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, pDestructor uintptr) int32 { /* sqlite3.c:165843:20: */ +func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, enc int32, pUserData uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, pDestructor uintptr) int32 { /* sqlite3.c:165855:20: */ var p uintptr var nName int32 _ = nName @@ -160199,7 +160247,7 @@ func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg i ((libc.Bool32(xValue == uintptr(0))) != (libc.Bool32(xInverse == uintptr(0))))) || // Both or neither of xValue, xInverse ((nArg < -1) || (nArg > SQLITE_MAX_FUNCTION_ARG))) || (255 < (libc.AssignInt32(&nName, Xsqlite3Strlen30(tls, zFunctionName)))) { - return Xsqlite3MisuseError(tls, 165869) + return Xsqlite3MisuseError(tls, 165881) } extraFlags = (enc & (((SQLITE_DETERMINISTIC | SQLITE_DIRECTONLY) | SQLITE_SUBTYPE) | SQLITE_INNOCUOUS)) @@ -160285,7 +160333,7 @@ func Xsqlite3CreateFunc(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg i // sqlite3_create_function() // sqlite3_create_function_v2() // sqlite3_create_window_function() -func createFunctionApi(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:165963:12: */ +func createFunctionApi(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:165975:12: */ var rc int32 var pArg uintptr rc = SQLITE_ERROR @@ -160327,22 +160375,22 @@ out: } // Create new user functions. -func Xsqlite3_create_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166014:16: */ +func Xsqlite3_create_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166026:16: */ return createFunctionApi(tls, db, zFunc, nArg, enc, p, xSFunc, xStep, xFinal, uintptr(0), uintptr(0), uintptr(0)) } -func Xsqlite3_create_function_v2(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166027:16: */ +func Xsqlite3_create_function_v2(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166039:16: */ return createFunctionApi(tls, db, zFunc, nArg, enc, p, xSFunc, xStep, xFinal, uintptr(0), uintptr(0), xDestroy) } -func Xsqlite3_create_window_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166041:16: */ +func Xsqlite3_create_window_function(tls *libc.TLS, db uintptr, zFunc uintptr, nArg int32, enc int32, p uintptr, xStep uintptr, xFinal uintptr, xValue uintptr, xInverse uintptr, xDestroy uintptr) int32 { /* sqlite3.c:166053:16: */ return createFunctionApi(tls, db, zFunc, nArg, enc, p, uintptr(0), xStep, xFinal, xValue, xInverse, xDestroy) } -func Xsqlite3_create_function16(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, eTextRep int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166058:16: */ +func Xsqlite3_create_function16(tls *libc.TLS, db uintptr, zFunctionName uintptr, nArg int32, eTextRep int32, p uintptr, xSFunc uintptr, xStep uintptr, xFinal uintptr) int32 { /* sqlite3.c:166070:16: */ var rc int32 var zFunc8 uintptr @@ -160362,7 +160410,7 @@ func Xsqlite3_create_function16(tls *libc.TLS, db uintptr, zFunctionName uintptr // SQL function that use this routine so that the functions will exist // for name resolution but are actually overloaded by the xFindFunction // method of virtual tables. -func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:166094:13: */ +func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { /* sqlite3.c:166106:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -160386,7 +160434,7 @@ func sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUs // should call this routine to make sure the global function exists. // A global function must exist in order for name resolution to work // properly. -func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg int32) int32 { /* sqlite3.c:166120:16: */ +func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg int32) int32 { /* sqlite3.c:166132:16: */ var rc int32 var zCopy uintptr @@ -160412,7 +160460,7 @@ func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg i // A NULL trace function means that no tracing is executes. A non-NULL // trace is a pointer to a function that is invoked at the start of each // SQL statement. -func Xsqlite3_trace(tls *libc.TLS, db uintptr, xTrace uintptr, pArg uintptr) uintptr { /* sqlite3.c:166153:17: */ +func Xsqlite3_trace(tls *libc.TLS, db uintptr, xTrace uintptr, pArg uintptr) uintptr { /* sqlite3.c:166165:17: */ var pOld uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160430,7 +160478,7 @@ func Xsqlite3_trace(tls *libc.TLS, db uintptr, xTrace uintptr, pArg uintptr) uin } // Register a trace callback using the version-2 interface. -func Xsqlite3_trace_v2(tls *libc.TLS, db uintptr, mTrace uint32, xTrace uintptr, pArg uintptr) int32 { /* sqlite3.c:166174:16: */ +func Xsqlite3_trace_v2(tls *libc.TLS, db uintptr, mTrace uint32, xTrace uintptr, pArg uintptr) int32 { /* sqlite3.c:166186:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if mTrace == uint32(0) { xTrace = uintptr(0) @@ -160451,7 +160499,7 @@ func Xsqlite3_trace_v2(tls *libc.TLS, db uintptr, mTrace uint32, xTrace uintptr, // A NULL profile function means that no profiling is executes. A non-NULL // profile is a pointer to a function that is invoked at the conclusion of // each SQL statement that is run. -func Xsqlite3_profile(tls *libc.TLS, db uintptr, xProfile uintptr, pArg uintptr) uintptr { /* sqlite3.c:166204:17: */ +func Xsqlite3_profile(tls *libc.TLS, db uintptr, xProfile uintptr, pArg uintptr) uintptr { /* sqlite3.c:166216:17: */ var pOld uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160469,7 +160517,7 @@ func Xsqlite3_profile(tls *libc.TLS, db uintptr, xProfile uintptr, pArg uintptr) // Register a function to be invoked when a transaction commits. // If the invoked function returns non-zero, then the commit becomes a // rollback. -func Xsqlite3_commit_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166234:17: */ +func Xsqlite3_commit_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166246:17: */ var pOld uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160482,7 +160530,7 @@ func Xsqlite3_commit_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uin // Register a callback to be invoked each time a row is updated, // inserted or deleted using this database connection. -func Xsqlite3_update_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166259:17: */ +func Xsqlite3_update_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166271:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160495,7 +160543,7 @@ func Xsqlite3_update_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uin // Register a callback to be invoked each time a transaction is rolled // back by this database connection. -func Xsqlite3_rollback_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166284:17: */ +func Xsqlite3_rollback_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166296:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -160508,7 +160556,7 @@ func Xsqlite3_rollback_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg u // Register a callback to be invoked each time a row is updated, // inserted or deleted using this database connection. -func Xsqlite3_preupdate_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166310:17: */ +func Xsqlite3_preupdate_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166322:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) pRet = (*Sqlite3)(unsafe.Pointer(db)).FpPreUpdateArg @@ -160522,7 +160570,7 @@ func Xsqlite3_preupdate_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg // Invoke sqlite3_wal_checkpoint if the number of frames in the log file // is greater than sqlite3.pWalArg cast to an integer (the value configured by // wal_autocheckpoint()). -func Xsqlite3WalDefaultHook(tls *libc.TLS, pClientData uintptr, db uintptr, zDb uintptr, nFrame int32) int32 { /* sqlite3.c:166333:20: */ +func Xsqlite3WalDefaultHook(tls *libc.TLS, pClientData uintptr, db uintptr, zDb uintptr, nFrame int32) int32 { /* sqlite3.c:166345:20: */ if nFrame >= (int32(pClientData)) { Xsqlite3BeginBenignMalloc(tls) Xsqlite3_wal_checkpoint(tls, db, zDb) @@ -160540,7 +160588,7 @@ func Xsqlite3WalDefaultHook(tls *libc.TLS, pClientData uintptr, db uintptr, zDb // registered using sqlite3_wal_hook(). Likewise, registering a callback // using sqlite3_wal_hook() disables the automatic checkpoint mechanism // configured by this function. -func Xsqlite3_wal_autocheckpoint(tls *libc.TLS, db uintptr, nFrame int32) int32 { /* sqlite3.c:166359:16: */ +func Xsqlite3_wal_autocheckpoint(tls *libc.TLS, db uintptr, nFrame int32) int32 { /* sqlite3.c:166371:16: */ if nFrame > 0 { Xsqlite3_wal_hook(tls, db, *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32) int32 @@ -160553,7 +160601,7 @@ func Xsqlite3_wal_autocheckpoint(tls *libc.TLS, db uintptr, nFrame int32) int32 // Register a callback to be invoked each time a transaction is written // into the write-ahead-log by this database connection. -func Xsqlite3_wal_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166380:17: */ +func Xsqlite3_wal_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintptr) uintptr { /* sqlite3.c:166392:17: */ var pRet uintptr Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) pRet = (*Sqlite3)(unsafe.Pointer(db)).FpWalArg @@ -160564,7 +160612,7 @@ func Xsqlite3_wal_hook(tls *libc.TLS, db uintptr, xCallback uintptr, pArg uintpt } // Checkpoint database zDb. -func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166407:16: */ +func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166419:16: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -160614,7 +160662,7 @@ func Xsqlite3_wal_checkpoint_v2(tls *libc.TLS, db uintptr, zDb uintptr, eMode in // Checkpoint database zDb. If zDb is NULL, or if the buffer zDb points // to contains a zero-length string, all attached databases are // checkpointed. -func Xsqlite3_wal_checkpoint(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:166471:16: */ +func Xsqlite3_wal_checkpoint(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:166483:16: */ // EVIDENCE-OF: R-41613-20553 The sqlite3_wal_checkpoint(D,X) is equivalent to // sqlite3_wal_checkpoint_v2(D,X,SQLITE_CHECKPOINT_PASSIVE,0,0). return Xsqlite3_wal_checkpoint_v2(tls, db, zDb, SQLITE_CHECKPOINT_PASSIVE, uintptr(0), uintptr(0)) @@ -160638,7 +160686,7 @@ func Xsqlite3_wal_checkpoint(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* // // Parameter eMode is one of SQLITE_CHECKPOINT_PASSIVE, FULL, RESTART // or TRUNCATE. -func Xsqlite3Checkpoint(tls *libc.TLS, db uintptr, iDb int32, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166498:20: */ +func Xsqlite3Checkpoint(tls *libc.TLS, db uintptr, iDb int32, eMode int32, pnLog uintptr, pnCkpt uintptr) int32 { /* sqlite3.c:166510:20: */ var rc int32 = SQLITE_OK // Return code var i int32 // Used to iterate through attached dbs var bBusy int32 = 0 // True if SQLITE_BUSY has been encountered @@ -160680,19 +160728,19 @@ func Xsqlite3Checkpoint(tls *libc.TLS, db uintptr, iDb int32, eMode int32, pnLog // 2 2 memory (return 1) // 2 0 memory (return 1) // 3 any memory (return 1) -func Xsqlite3TempInMemory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166544:20: */ +func Xsqlite3TempInMemory(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166556:20: */ return (libc.Bool32(int32((*Sqlite3)(unsafe.Pointer(db)).Ftemp_store) == 2)) } // Return UTF-8 encoded English language explanation of the most recent // error. -func Xsqlite3_errmsg(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166565:23: */ +func Xsqlite3_errmsg(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166577:23: */ var z uintptr if !(db != 0) { return Xsqlite3ErrStr(tls, SQLITE_NOMEM) } if !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3ErrStr(tls, Xsqlite3MisuseError(tls, 166571)) + return Xsqlite3ErrStr(tls, Xsqlite3MisuseError(tls, 166583)) } Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) if (*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0 { @@ -160715,7 +160763,7 @@ func Xsqlite3_errmsg(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166565:23 // Return UTF-16 encoded English language explanation of the most recent // error. -func Xsqlite3_errmsg16(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166593:23: */ +func Xsqlite3_errmsg16(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166605:23: */ var z uintptr if !(db != 0) { return uintptr(uintptr(unsafe.Pointer(&outOfMem))) @@ -160744,18 +160792,18 @@ func Xsqlite3_errmsg16(tls *libc.TLS, db uintptr) uintptr { /* sqlite3.c:166593: var outOfMem = [14]U16{ U16('o'), U16('u'), U16('t'), U16(' '), U16('o'), U16('f'), U16(' '), U16('m'), U16('e'), U16('m'), U16('o'), U16('r'), U16('y'), U16(0), -} /* sqlite3.c:166594:20 */ +} /* sqlite3.c:166606:20 */ var misuse = [34]U16{ U16('b'), U16('a'), U16('d'), U16(' '), U16('p'), U16('a'), U16('r'), U16('a'), U16('m'), U16('e'), U16('t'), U16('e'), U16('r'), U16(' '), U16('o'), U16('r'), U16(' '), U16('o'), U16('t'), U16('h'), U16('e'), U16('r'), U16(' '), U16('A'), U16('P'), U16('I'), U16(' '), U16('m'), U16('i'), U16('s'), U16('u'), U16('s'), U16('e'), U16(0), -} /* sqlite3.c:166597:20 */ +} /* sqlite3.c:166609:20 */ // Return the most recent error code generated by an SQLite routine. If NULL is // passed to this function, we assume a malloc() failed during sqlite3_open(). -func Xsqlite3_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166635:16: */ +func Xsqlite3_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166647:16: */ if (db != 0) && !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3MisuseError(tls, 166637) + return Xsqlite3MisuseError(tls, 166649) } if !(db != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { return SQLITE_NOMEM @@ -160763,9 +160811,9 @@ func Xsqlite3_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166635:16: return ((*Sqlite3)(unsafe.Pointer(db)).FerrCode & (*Sqlite3)(unsafe.Pointer(db)).FerrMask) } -func Xsqlite3_extended_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166644:16: */ +func Xsqlite3_extended_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166656:16: */ if (db != 0) && !(Xsqlite3SafetyCheckSickOrOk(tls, db) != 0) { - return Xsqlite3MisuseError(tls, 166646) + return Xsqlite3MisuseError(tls, 166658) } if !(db != 0) || ((*Sqlite3)(unsafe.Pointer(db)).FmallocFailed != 0) { return SQLITE_NOMEM @@ -160773,7 +160821,7 @@ func Xsqlite3_extended_errcode(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:1 return (*Sqlite3)(unsafe.Pointer(db)).FerrCode } -func Xsqlite3_system_errno(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166653:16: */ +func Xsqlite3_system_errno(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:166665:16: */ if db != 0 { return (*Sqlite3)(unsafe.Pointer(db)).FiSysErrno } @@ -160783,13 +160831,13 @@ func Xsqlite3_system_errno(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:16665 // Return a string that describes the kind of error specified in the // argument. For now, this simply calls the internal sqlite3ErrStr() // function. -func Xsqlite3_errstr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166662:23: */ +func Xsqlite3_errstr(tls *libc.TLS, rc int32) uintptr { /* sqlite3.c:166674:23: */ return Xsqlite3ErrStr(tls, rc) } // Create a new collating function for database "db". The name is zName // and the encoding is enc. -func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:166670:12: */ +func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:166682:12: */ var pColl uintptr var enc2 int32 @@ -160802,7 +160850,7 @@ func createCollation(tls *libc.TLS, db uintptr, zName uintptr, enc U8, pCtx uint enc2 = SQLITE_UTF16LE } if (enc2 < SQLITE_UTF8) || (enc2 > SQLITE_UTF16BE) { - return Xsqlite3MisuseError(tls, 166694) + return Xsqlite3MisuseError(tls, 166706) } // Check if this call is removing or replacing an existing collation @@ -160865,7 +160913,7 @@ var aHardLimit = [12]int32{ SQLITE_MAX_VARIABLE_NUMBER, // IMP: R-38091-32352 SQLITE_MAX_TRIGGER_DEPTH, SQLITE_MAX_WORKER_THREADS, -} /* sqlite3.c:166747:18 */ +} /* sqlite3.c:166759:18 */ // Make sure the hard limits are set to reasonable values @@ -160877,7 +160925,7 @@ var aHardLimit = [12]int32{ // A new lower limit does not shrink existing constructs. // It merely prevents new constructs that exceed the limit // from forming. -func Xsqlite3_limit(tls *libc.TLS, db uintptr, limitId int32, newLimit int32) int32 { /* sqlite3.c:166810:16: */ +func Xsqlite3_limit(tls *libc.TLS, db uintptr, limitId int32, newLimit int32) int32 { /* sqlite3.c:166822:16: */ var oldLimit int32 // EVIDENCE-OF: R-30189-54097 For each limit category SQLITE_LIMIT_NAME @@ -160922,7 +160970,7 @@ func Xsqlite3_limit(tls *libc.TLS, db uintptr, limitId int32, newLimit int32) in // may be set to point to a buffer containing an English language error // message. It is the responsibility of the caller to eventually release // this buffer by calling sqlite3_free(). -func Xsqlite3ParseUri(tls *libc.TLS, zDefaultVfs uintptr, zUri uintptr, pFlags uintptr, ppVfs uintptr, pzFile uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:166880:20: */ +func Xsqlite3ParseUri(tls *libc.TLS, zDefaultVfs uintptr, zUri uintptr, pFlags uintptr, ppVfs uintptr, pzFile uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:166892:20: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -161260,24 +161308,24 @@ type OpenMode = struct { Fz uintptr Fmode int32 _ [4]byte -} /* sqlite3.c:167022:9 */ +} /* sqlite3.c:167034:9 */ var aCacheMode = [3]OpenMode{ {Fz: ts + 20666 /* "shared" */, Fmode: SQLITE_OPEN_SHAREDCACHE}, {Fz: ts + 29430 /* "private" */, Fmode: SQLITE_OPEN_PRIVATECACHE}, {}, -} /* sqlite3.c:167031:34 */ +} /* sqlite3.c:167043:34 */ var aOpenMode = [5]OpenMode{ {Fz: ts + 29438 /* "ro" */, Fmode: SQLITE_OPEN_READONLY}, {Fz: ts + 29441 /* "rw" */, Fmode: SQLITE_OPEN_READWRITE}, {Fz: ts + 29444 /* "rwc" */, Fmode: (SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)}, {Fz: ts + 20019 /* "memory" */, Fmode: SQLITE_OPEN_MEMORY}, {}, -} /* sqlite3.c:167043:34 */ +} /* sqlite3.c:167055:34 */ // This routine does the core work of extracting URI parameters from a // database filename for the sqlite3_uri_parameter() interface. -func uriParameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:167117:19: */ +func uriParameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:167129:19: */ zFilename += (uintptr(Xsqlite3Strlen30(tls, zFilename) + 1)) for *(*int8)(unsafe.Pointer(zFilename)) != 0 { var x int32 = libc.Xstrcmp(tls, zFilename, zParam) @@ -161293,7 +161341,7 @@ func uriParameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* // This routine does the work of opening a database on behalf of // sqlite3_open() and sqlite3_open16(). The database filename "zFilename" // is UTF-8 encoded. -func openDatabase(tls *libc.TLS, zFilename uintptr, ppDb uintptr, flags uint32, zVfs uintptr) int32 { /* sqlite3.c:167135:12: */ +func openDatabase(tls *libc.TLS, zFilename uintptr, ppDb uintptr, flags uint32, zVfs uintptr) int32 { /* sqlite3.c:167147:12: */ bp := tls.Alloc(32) defer tls.Free(32) *(*uint32)(unsafe.Pointer(bp + 8)) = flags @@ -161485,7 +161533,7 @@ __15: if !(((int32(1) << (*(*uint32)(unsafe.Pointer(bp + 8 /* flags */)) & uint32(7))) & 0x46) == 0) { goto __16 } - rc = Xsqlite3MisuseError(tls, 167340) // IMP: R-18321-05872 + rc = Xsqlite3MisuseError(tls, 167352) // IMP: R-18321-05872 goto __17 __16: rc = Xsqlite3ParseUri(tls, zVfs, zFilename, bp+8 /* &flags */, (db /* &.pVfs */), bp+16 /* &zOpen */, bp+24 /* &zErrMsg */) @@ -161639,17 +161687,17 @@ __32: } // Open a new database handle. -func Xsqlite3_open(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167462:16: */ +func Xsqlite3_open(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167474:16: */ return openDatabase(tls, zFilename, ppDb, (uint32(SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE)), uintptr(0)) } -func Xsqlite3_open_v2(tls *libc.TLS, filename uintptr, ppDb uintptr, flags int32, zVfs uintptr) int32 { /* sqlite3.c:167469:16: */ +func Xsqlite3_open_v2(tls *libc.TLS, filename uintptr, ppDb uintptr, flags int32, zVfs uintptr) int32 { /* sqlite3.c:167481:16: */ return openDatabase(tls, filename, ppDb, uint32(flags), zVfs) } // Open a new database handle. -func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167482:16: */ +func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* sqlite3.c:167494:16: */ var zFilename8 uintptr // zFilename encoded in UTF-8 instead of UTF-16 var pVal uintptr var rc int32 @@ -161681,12 +161729,12 @@ func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) int32 { /* } // Register a new collation sequence with the database handle db. -func Xsqlite3_create_collation(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167521:16: */ +func Xsqlite3_create_collation(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167533:16: */ return Xsqlite3_create_collation_v2(tls, db, zName, enc, pCtx, xCompare, uintptr(0)) } // Register a new collation sequence with the database handle db. -func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:167534:16: */ +func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr, xDel uintptr) int32 { /* sqlite3.c:167546:16: */ var rc int32 Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -161698,7 +161746,7 @@ func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc } // Register a new collation sequence with the database handle db. -func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167559:16: */ +func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, xCompare uintptr) int32 { /* sqlite3.c:167571:16: */ var rc int32 = SQLITE_OK var zName8 uintptr @@ -161716,7 +161764,7 @@ func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc i // Register a collation sequence factory callback with the database handle // db. Replace any previously installed collation sequence factory. -func Xsqlite3_collation_needed(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded uintptr) int32 { /* sqlite3.c:167589:16: */ +func Xsqlite3_collation_needed(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded uintptr) int32 { /* sqlite3.c:167601:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded = xCollNeeded (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16 = uintptr(0) @@ -161727,7 +161775,7 @@ func Xsqlite3_collation_needed(tls *libc.TLS, db uintptr, pCollNeededArg uintptr // Register a collation sequence factory callback with the database handle // db. Replace any previously installed collation sequence factory. -func Xsqlite3_collation_needed16(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded16 uintptr) int32 { /* sqlite3.c:167610:16: */ +func Xsqlite3_collation_needed16(tls *libc.TLS, db uintptr, pCollNeededArg uintptr, xCollNeeded16 uintptr) int32 { /* sqlite3.c:167622:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded = uintptr(0) (*Sqlite3)(unsafe.Pointer(db)).FxCollNeeded16 = xCollNeeded16 @@ -161738,7 +161786,7 @@ func Xsqlite3_collation_needed16(tls *libc.TLS, db uintptr, pCollNeededArg uintp // This function is now an anachronism. It used to be used to recover from a // malloc() failure, but SQLite now does this automatically. -func Xsqlite3_global_recover(tls *libc.TLS) int32 { /* sqlite3.c:167632:16: */ +func Xsqlite3_global_recover(tls *libc.TLS) int32 { /* sqlite3.c:167644:16: */ return SQLITE_OK } @@ -161746,7 +161794,7 @@ func Xsqlite3_global_recover(tls *libc.TLS) int32 { /* sqlite3.c:167632:16: */ // mode. Return TRUE if it is and FALSE if not. Autocommit mode is on // by default. Autocommit is disabled by a BEGIN statement and reenabled // by the next COMMIT or ROLLBACK. -func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:167643:16: */ +func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:167655:16: */ return int32((*Sqlite3)(unsafe.Pointer(db)).FautoCommit) } @@ -161759,7 +161807,7 @@ func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:167 // // 2. Invoke sqlite3_log() to provide the source code location where // a low-level error is first detected. -func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) int32 { /* sqlite3.c:167664:20: */ +func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) int32 { /* sqlite3.c:167676:20: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -161768,17 +161816,17 @@ func Xsqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) return iErr } -func Xsqlite3CorruptError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167669:20: */ +func Xsqlite3CorruptError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167681:20: */ return Xsqlite3ReportError(tls, SQLITE_CORRUPT, lineno, ts+29482 /* "database corrupt..." */) } -func Xsqlite3MisuseError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167673:20: */ +func Xsqlite3MisuseError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167685:20: */ return Xsqlite3ReportError(tls, SQLITE_MISUSE, lineno, ts+29502 /* "misuse" */) } -func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167677:20: */ +func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167689:20: */ return Xsqlite3ReportError(tls, SQLITE_CANTOPEN, lineno, ts+29509 /* "cannot open file" */) } @@ -161788,12 +161836,12 @@ func Xsqlite3CantopenError(tls *libc.TLS, lineno int32) int32 { /* sqlite3.c:167 // // SQLite no longer uses thread-specific data so this routine is now a // no-op. It is retained for historical compatibility. -func Xsqlite3_thread_cleanup(tls *libc.TLS) { /* sqlite3.c:167708:17: */ +func Xsqlite3_thread_cleanup(tls *libc.TLS) { /* sqlite3.c:167720:17: */ } // Return meta information about a specific column of a database table. // See comment in sqlite3.h (sqlite.h.in) for details. -func Xsqlite3_table_column_metadata(tls *libc.TLS, db uintptr, zDbName uintptr, zTableName uintptr, zColumnName uintptr, pzDataType uintptr, pzCollSeq uintptr, pNotNull uintptr, pPrimaryKey uintptr, pAutoinc uintptr) int32 { /* sqlite3.c:167716:16: */ +func Xsqlite3_table_column_metadata(tls *libc.TLS, db uintptr, zDbName uintptr, zTableName uintptr, zColumnName uintptr, pzDataType uintptr, pzCollSeq uintptr, pNotNull uintptr, pPrimaryKey uintptr, pAutoinc uintptr) int32 { /* sqlite3.c:167728:16: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -161977,7 +162025,7 @@ __20: } // Sleep for a little while. Return the amount of time slept. -func Xsqlite3_sleep(tls *libc.TLS, ms int32) int32 { /* sqlite3.c:167834:16: */ +func Xsqlite3_sleep(tls *libc.TLS, ms int32) int32 { /* sqlite3.c:167846:16: */ var pVfs uintptr var rc int32 pVfs = Xsqlite3_vfs_find(tls, uintptr(0)) @@ -161992,7 +162040,7 @@ func Xsqlite3_sleep(tls *libc.TLS, ms int32) int32 { /* sqlite3.c:167834:16: */ } // Enable or disable the extended result codes. -func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:167850:16: */ +func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) int32 { /* sqlite3.c:167862:16: */ Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) (*Sqlite3)(unsafe.Pointer(db)).FerrMask = func() int32 { if onoff != 0 { @@ -162005,7 +162053,7 @@ func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) int3 } // Invoke the xFileControl method on a particular database. -func Xsqlite3_file_control(tls *libc.TLS, db uintptr, zDbName uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:167863:16: */ +func Xsqlite3_file_control(tls *libc.TLS, db uintptr, zDbName uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:167875:16: */ var rc int32 = SQLITE_ERROR var pBtree uintptr @@ -162050,7 +162098,7 @@ func Xsqlite3_file_control(tls *libc.TLS, db uintptr, zDbName uintptr, op int32, } // Interface to the testing logic. -func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:167913:16: */ +func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlite3.c:167925:16: */ var rc int32 = 0 var ap Va_list _ = ap @@ -162471,7 +162519,7 @@ func Xsqlite3_test_control(tls *libc.TLS, op int32, va uintptr) int32 { /* sqlit // backwards for the first byte following four consecutive zero bytes. // // This only works if the filename passed in was obtained from the Pager. -func databaseName(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:168337:19: */ +func databaseName(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:168349:19: */ for (((int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-1)))) != 0) || (int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-2)))) != 0)) || (int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-3)))) != 0)) || (int32(*(*int8)(unsafe.Pointer(zName + libc.UintptrFromInt32(-4)))) != 0) { zName-- } @@ -162480,7 +162528,7 @@ func databaseName(tls *libc.TLS, zName uintptr) uintptr { /* sqlite3.c:168337:19 // Append text z[] to the end of p[]. Return a pointer to the first // character after then zero terminator on the new text in p[]. -func appendText(tls *libc.TLS, p uintptr, z uintptr) uintptr { /* sqlite3.c:168348:13: */ +func appendText(tls *libc.TLS, p uintptr, z uintptr) uintptr { /* sqlite3.c:168360:13: */ var n Size_t = libc.Xstrlen(tls, z) libc.X__builtin___memcpy_chk(tls, p, z, (n + uint64(1)), libc.X__builtin_object_size(tls, p, 0)) return ((p + uintptr(n)) + uintptr(1)) @@ -162493,7 +162541,7 @@ func appendText(tls *libc.TLS, p uintptr, z uintptr) uintptr { /* sqlite3.c:1683 // // Memory layout must be compatible with that generated by the pager // and expected by sqlite3_uri_parameter() and databaseName(). -func Xsqlite3_create_filename(tls *libc.TLS, zDatabase uintptr, zJournal uintptr, zWal uintptr, nParam int32, azParam uintptr) uintptr { /* sqlite3.c:168363:17: */ +func Xsqlite3_create_filename(tls *libc.TLS, zDatabase uintptr, zJournal uintptr, zWal uintptr, nParam int32, azParam uintptr) uintptr { /* sqlite3.c:168375:17: */ var nByte Sqlite3_int64 var i int32 var pResult uintptr @@ -162524,7 +162572,7 @@ func Xsqlite3_create_filename(tls *libc.TLS, zDatabase uintptr, zJournal uintptr // Free memory obtained from sqlite3_create_filename(). It is a severe // error to call this routine with any parameter other than a pointer // previously obtained from sqlite3_create_filename() or a NULL pointer. -func Xsqlite3_free_filename(tls *libc.TLS, p uintptr) { /* sqlite3.c:168399:17: */ +func Xsqlite3_free_filename(tls *libc.TLS, p uintptr) { /* sqlite3.c:168411:17: */ if p == uintptr(0) { return } @@ -162541,7 +162589,7 @@ func Xsqlite3_free_filename(tls *libc.TLS, p uintptr) { /* sqlite3.c:168399:17: // query parameter we seek. This routine returns the value of the zParam // parameter if it exists. If the parameter does not exist, this routine // returns a NULL pointer. -func Xsqlite3_uri_parameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:168417:23: */ +func Xsqlite3_uri_parameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) uintptr { /* sqlite3.c:168429:23: */ if (zFilename == uintptr(0)) || (zParam == uintptr(0)) { return uintptr(0) } @@ -162550,7 +162598,7 @@ func Xsqlite3_uri_parameter(tls *libc.TLS, zFilename uintptr, zParam uintptr) ui } // Return a pointer to the name of Nth query parameter of the filename. -func Xsqlite3_uri_key(tls *libc.TLS, zFilename uintptr, N int32) uintptr { /* sqlite3.c:168426:23: */ +func Xsqlite3_uri_key(tls *libc.TLS, zFilename uintptr, N int32) uintptr { /* sqlite3.c:168438:23: */ if (zFilename == uintptr(0)) || (N < 0) { return uintptr(0) } @@ -162567,7 +162615,7 @@ func Xsqlite3_uri_key(tls *libc.TLS, zFilename uintptr, N int32) uintptr { /* sq } // Return a boolean value for a query parameter. -func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt int32) int32 { /* sqlite3.c:168440:16: */ +func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt int32) int32 { /* sqlite3.c:168452:16: */ var z uintptr = Xsqlite3_uri_parameter(tls, zFilename, zParam) bDflt = (libc.Bool32(bDflt != 0)) if z != 0 { @@ -162577,7 +162625,7 @@ func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDfl } // Return a 64-bit integer value for a query parameter. -func Xsqlite3_uri_int64(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:168449:26: */ +func Xsqlite3_uri_int64(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:168461:26: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -162598,11 +162646,11 @@ func Xsqlite3_uri_int64(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt // passing free() a pointer that was not obtained from malloc() - it is // an error that we cannot easily detect but that will likely cause memory // corruption. -func Xsqlite3_filename_database(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168472:23: */ +func Xsqlite3_filename_database(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168484:23: */ return databaseName(tls, zFilename) } -func Xsqlite3_filename_journal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168475:23: */ +func Xsqlite3_filename_journal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168487:23: */ zFilename = databaseName(tls, zFilename) zFilename += (uintptr(Xsqlite3Strlen30(tls, zFilename) + 1)) for *(*int8)(unsafe.Pointer(zFilename)) != 0 { @@ -162612,14 +162660,14 @@ func Xsqlite3_filename_journal(tls *libc.TLS, zFilename uintptr) uintptr { /* sq return (zFilename + uintptr(1)) } -func Xsqlite3_filename_wal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168484:23: */ +func Xsqlite3_filename_wal(tls *libc.TLS, zFilename uintptr) uintptr { /* sqlite3.c:168496:23: */ zFilename = Xsqlite3_filename_journal(tls, zFilename) zFilename += (uintptr(Xsqlite3Strlen30(tls, zFilename) + 1)) return zFilename } // Return the Btree pointer identified by zDbName. Return NULL if not found. -func Xsqlite3DbNameToBtree(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168497:22: */ +func Xsqlite3DbNameToBtree(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168509:22: */ var iDb int32 if zDbName != 0 { iDb = Xsqlite3FindDbName(tls, db, zDbName) @@ -162634,7 +162682,7 @@ func Xsqlite3DbNameToBtree(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { // Return the filename of the database associated with a database // connection. -func Xsqlite3_db_filename(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168506:23: */ +func Xsqlite3_db_filename(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { /* sqlite3.c:168518:23: */ var pBt uintptr pBt = Xsqlite3DbNameToBtree(tls, db, zDbName) if pBt != 0 { @@ -162645,7 +162693,7 @@ func Xsqlite3_db_filename(tls *libc.TLS, db uintptr, zDbName uintptr) uintptr { // Return 1 if database is read-only or 0 if read/write. Return -1 if // no such database exists. -func Xsqlite3_db_readonly(tls *libc.TLS, db uintptr, zDbName uintptr) int32 { /* sqlite3.c:168522:16: */ +func Xsqlite3_db_readonly(tls *libc.TLS, db uintptr, zDbName uintptr) int32 { /* sqlite3.c:168534:16: */ var pBt uintptr pBt = Xsqlite3DbNameToBtree(tls, db, zDbName) if pBt != 0 { @@ -162656,7 +162704,7 @@ func Xsqlite3_db_readonly(tls *libc.TLS, db uintptr, zDbName uintptr) int32 { /* // Obtain a snapshot handle for the snapshot of database zDb currently // being read by handle db. -func Xsqlite3_snapshot_get(tls *libc.TLS, db uintptr, zDb uintptr, ppSnapshot uintptr) int32 { /* sqlite3.c:168539:16: */ +func Xsqlite3_snapshot_get(tls *libc.TLS, db uintptr, zDb uintptr, ppSnapshot uintptr) int32 { /* sqlite3.c:168551:16: */ var rc int32 = SQLITE_ERROR Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -162679,7 +162727,7 @@ func Xsqlite3_snapshot_get(tls *libc.TLS, db uintptr, zDb uintptr, ppSnapshot ui } // Open a read-transaction on the snapshot idendified by pSnapshot. -func Xsqlite3_snapshot_open(tls *libc.TLS, db uintptr, zDb uintptr, pSnapshot uintptr) int32 { /* sqlite3.c:168575:16: */ +func Xsqlite3_snapshot_open(tls *libc.TLS, db uintptr, zDb uintptr, pSnapshot uintptr) int32 { /* sqlite3.c:168587:16: */ var rc int32 = SQLITE_ERROR Xsqlite3_mutex_enter(tls, (*Sqlite3)(unsafe.Pointer(db)).Fmutex) @@ -162722,7 +162770,7 @@ func Xsqlite3_snapshot_open(tls *libc.TLS, db uintptr, zDb uintptr, pSnapshot ui // Recover as many snapshots as possible from the wal file associated with // schema zDb of database db. -func Xsqlite3_snapshot_recover(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:168631:16: */ +func Xsqlite3_snapshot_recover(tls *libc.TLS, db uintptr, zDb uintptr) int32 { /* sqlite3.c:168643:16: */ var rc int32 = SQLITE_ERROR var iDb int32 @@ -162743,7 +162791,7 @@ func Xsqlite3_snapshot_recover(tls *libc.TLS, db uintptr, zDb uintptr) int32 { / } // Free a snapshot handle obtained from sqlite3_snapshot_get(). -func Xsqlite3_snapshot_free(tls *libc.TLS, pSnapshot uintptr) { /* sqlite3.c:168662:17: */ +func Xsqlite3_snapshot_free(tls *libc.TLS, pSnapshot uintptr) { /* sqlite3.c:168674:17: */ Xsqlite3_free(tls, pSnapshot) } @@ -162752,7 +162800,7 @@ func Xsqlite3_snapshot_free(tls *libc.TLS, pSnapshot uintptr) { /* sqlite3.c:168 // // The name can optionally begin with "SQLITE_" but the "SQLITE_" prefix // is not required for a match. -func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sqlite3.c:168675:16: */ +func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sqlite3.c:168687:16: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -162782,7 +162830,7 @@ func Xsqlite3_compileoption_used(tls *libc.TLS, zOptName uintptr) int32 { /* sql // Return the N-th compile-time option string. If N is out of range, // return a NULL pointer. -func Xsqlite3_compileoption_get(tls *libc.TLS, N int32) uintptr { /* sqlite3.c:168708:23: */ +func Xsqlite3_compileoption_get(tls *libc.TLS, N int32) uintptr { /* sqlite3.c:168720:23: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -162827,11 +162875,11 @@ func Xsqlite3_compileoption_get(tls *libc.TLS, N int32) uintptr { /* sqlite3.c:1 // for which either sqlite3.pBlockingConnection or sqlite3.pUnlockConnection // is not NULL. This variable may only accessed while the STATIC_MAIN // mutex is held. -var sqlite3BlockedList uintptr = uintptr(0) /* sqlite3.c:168760:16 */ +var sqlite3BlockedList uintptr = uintptr(0) /* sqlite3.c:168772:16 */ // Remove connection db from the blocked connections list. If connection // db is not currently a part of the list, this function is a no-op. -func removeFromBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168803:13: */ +func removeFromBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168815:13: */ var pp uintptr for pp = uintptr(unsafe.Pointer(&sqlite3BlockedList)); *(*uintptr)(unsafe.Pointer(pp)) != 0; pp = (*(*uintptr)(unsafe.Pointer(pp)) + 800 /* &.pNextBlocked */) { @@ -162844,7 +162892,7 @@ func removeFromBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168803:13: // Add connection db to the blocked connections list. It is assumed // that it is not already a part of the list. -func addToBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168818:13: */ +func addToBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168830:13: */ var pp uintptr for pp = uintptr(unsafe.Pointer(&sqlite3BlockedList)); (*(*uintptr)(unsafe.Pointer(pp)) != 0) && ((*Sqlite3)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pp))))).FxUnlockNotify != (*Sqlite3)(unsafe.Pointer(db)).FxUnlockNotify); pp = (*(*uintptr)(unsafe.Pointer(pp)) + 800 /* &.pNextBlocked */) { @@ -162854,13 +162902,13 @@ func addToBlockedList(tls *libc.TLS, db uintptr) { /* sqlite3.c:168818:13: */ } // Obtain the STATIC_MAIN mutex. -func enterMutex(tls *libc.TLS) { /* sqlite3.c:168833:13: */ +func enterMutex(tls *libc.TLS) { /* sqlite3.c:168845:13: */ Xsqlite3_mutex_enter(tls, Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN)) } // Release the STATIC_MAIN mutex. -func leaveMutex(tls *libc.TLS) { /* sqlite3.c:168841:13: */ +func leaveMutex(tls *libc.TLS) { /* sqlite3.c:168853:13: */ Xsqlite3_mutex_leave(tls, Xsqlite3MutexAlloc(tls, SQLITE_MUTEX_STATIC_MAIN)) } @@ -162884,7 +162932,7 @@ func leaveMutex(tls *libc.TLS) { /* sqlite3.c:168841:13: */ // Each call to this routine overrides any prior callbacks registered // on the same "db". If xNotify==0 then any prior callbacks are immediately // cancelled. -func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uintptr) int32 { /* sqlite3.c:168868:16: */ +func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uintptr) int32 { /* sqlite3.c:168880:16: */ bp := tls.Alloc(8) defer tls.Free(8) *(*uintptr)(unsafe.Pointer(bp)) = pArg @@ -162937,7 +162985,7 @@ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, xNotify uintptr, pArg uin // associated with connection db. The operation will return SQLITE_LOCKED // to the user because it requires a lock that will not be available // until connection pBlocker concludes its current transaction. -func Xsqlite3ConnectionBlocked(tls *libc.TLS, db uintptr, pBlocker uintptr) { /* sqlite3.c:168918:21: */ +func Xsqlite3ConnectionBlocked(tls *libc.TLS, db uintptr, pBlocker uintptr) { /* sqlite3.c:168930:21: */ enterMutex(tls) if ((*Sqlite3)(unsafe.Pointer(db)).FpBlockingConnection == uintptr(0)) && ((*Sqlite3)(unsafe.Pointer(db)).FpUnlockConnection == uintptr(0)) { addToBlockedList(tls, db) @@ -162963,7 +163011,7 @@ func Xsqlite3ConnectionBlocked(tls *libc.TLS, db uintptr, pBlocker uintptr) { /* // 3) If the two steps above mean that pBlockingConnection==0 and // pUnlockConnection==0, remove the entry from the blocked connections // list. -func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:168946:21: */ +func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:168958:21: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -163061,7 +163109,7 @@ func Xsqlite3ConnectionUnlocked(tls *libc.TLS, db uintptr) { /* sqlite3.c:168946 // This is called when the database connection passed as an argument is // being closed. The connection is removed from the blocked list. -func Xsqlite3ConnectionClosed(tls *libc.TLS, db uintptr) { /* sqlite3.c:169045:21: */ +func Xsqlite3ConnectionClosed(tls *libc.TLS, db uintptr) { /* sqlite3.c:169057:21: */ Xsqlite3ConnectionUnlocked(tls, db) enterMutex(tls) removeFromBlockedList(tls, db) @@ -163678,7 +163726,7 @@ var jsonIsSpace = [256]int8{ int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), -} /* sqlite3.c:188622:19 */ +} /* sqlite3.c:188634:19 */ // Objects type JsonString1 = struct { @@ -163690,19 +163738,19 @@ type JsonString1 = struct { FbErr U8 FzSpace [100]int8 _ [2]byte -} /* sqlite3.c:188652:9 */ +} /* sqlite3.c:188664:9 */ // Objects -type JsonString = JsonString1 /* sqlite3.c:188652:27 */ +type JsonString = JsonString1 /* sqlite3.c:188664:27 */ type JsonNode1 = struct { FeType U8 FjnFlags U8 _ [2]byte Fn U32 Fu struct{ FzJContent uintptr } -} /* sqlite3.c:188653:9 */ +} /* sqlite3.c:188665:9 */ -type JsonNode = JsonNode1 /* sqlite3.c:188653:25 */ +type JsonNode = JsonNode1 /* sqlite3.c:188665:25 */ type JsonParse1 = struct { FnNode U32 FnAlloc U32 @@ -163715,9 +163763,9 @@ type JsonParse1 = struct { FnJson int32 FiHold U32 _ [4]byte -} /* sqlite3.c:188654:9 */ +} /* sqlite3.c:188666:9 */ -type JsonParse = JsonParse1 /* sqlite3.c:188654:26 */ +type JsonParse = JsonParse1 /* sqlite3.c:188666:26 */ // JSON type values @@ -163726,7 +163774,7 @@ type JsonParse = JsonParse1 /* sqlite3.c:188654:26 */ // Names of the various JSON types: var jsonType = [8]uintptr{ ts + 9116 /* "null" */, ts + 9918 /* "true" */, ts + 9923 /* "false" */, ts + 9126 /* "integer" */, ts + 9121 /* "real" */, ts + 17535 /* "text" */, ts + 29585 /* "array" */, ts + 29591, /* "object" */ -} /* sqlite3.c:188687:19 */ +} /* sqlite3.c:188699:19 */ // Maximum nesting depth of JSON for this implementation. // @@ -163740,7 +163788,7 @@ var jsonType = [8]uintptr{ // // Set the JsonString object to an empty string -func jsonZero(tls *libc.TLS, p uintptr) { /* sqlite3.c:188747:13: */ +func jsonZero(tls *libc.TLS, p uintptr) { /* sqlite3.c:188759:13: */ (*JsonString)(unsafe.Pointer(p)).FzBuf = p + 34 /* &.zSpace */ (*JsonString)(unsafe.Pointer(p)).FnAlloc = U64(unsafe.Sizeof([100]int8{})) (*JsonString)(unsafe.Pointer(p)).FnUsed = uint64(0) @@ -163748,7 +163796,7 @@ func jsonZero(tls *libc.TLS, p uintptr) { /* sqlite3.c:188747:13: */ } // Initialize the JsonString object -func jsonInit(tls *libc.TLS, p uintptr, pCtx uintptr) { /* sqlite3.c:188756:13: */ +func jsonInit(tls *libc.TLS, p uintptr, pCtx uintptr) { /* sqlite3.c:188768:13: */ (*JsonString)(unsafe.Pointer(p)).FpCtx = pCtx (*JsonString)(unsafe.Pointer(p)).FbErr = U8(0) jsonZero(tls, p) @@ -163756,7 +163804,7 @@ func jsonInit(tls *libc.TLS, p uintptr, pCtx uintptr) { /* sqlite3.c:188756:13: // Free all allocated memory and reset the JsonString object back to its // initial state. -func jsonReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:188766:13: */ +func jsonReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:188778:13: */ if !(int32((*JsonString)(unsafe.Pointer(p)).FbStatic) != 0) { Xsqlite3_free(tls, (*JsonString)(unsafe.Pointer(p)).FzBuf) } @@ -163764,7 +163812,7 @@ func jsonReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:188766:13: */ } // Report an out-of-memory (OOM) condition -func jsonOom(tls *libc.TLS, p uintptr) { /* sqlite3.c:188774:13: */ +func jsonOom(tls *libc.TLS, p uintptr) { /* sqlite3.c:188786:13: */ (*JsonString)(unsafe.Pointer(p)).FbErr = U8(1) Xsqlite3_result_error_nomem(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx) jsonReset(tls, p) @@ -163772,7 +163820,7 @@ func jsonOom(tls *libc.TLS, p uintptr) { /* sqlite3.c:188774:13: */ // Enlarge pJson->zBuf so that it can hold at least N more bytes. // Return zero on success. Return non-zero on an OOM error -func jsonGrow(tls *libc.TLS, p uintptr, N U32) int32 { /* sqlite3.c:188783:12: */ +func jsonGrow(tls *libc.TLS, p uintptr, N U32) int32 { /* sqlite3.c:188795:12: */ var nTotal U64 if U64(N) < (*JsonString)(unsafe.Pointer(p)).FnAlloc { nTotal = ((*JsonString)(unsafe.Pointer(p)).FnAlloc * uint64(2)) @@ -163805,7 +163853,7 @@ func jsonGrow(tls *libc.TLS, p uintptr, N U32) int32 { /* sqlite3.c:188783:12: * } // Append N bytes from zIn onto the end of the JsonString string. -func jsonAppendRaw(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188810:13: */ +func jsonAppendRaw(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188822:13: */ if N == U32(0) { return } @@ -163817,7 +163865,7 @@ func jsonAppendRaw(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c: } // Append formatted text (not to exceed N bytes) to the JsonString. -func jsonPrintf(tls *libc.TLS, N int32, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:188819:13: */ +func jsonPrintf(tls *libc.TLS, N int32, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:188831:13: */ var ap Va_list _ = ap if (((*JsonString)(unsafe.Pointer(p)).FnUsed + U64(N)) >= (*JsonString)(unsafe.Pointer(p)).FnAlloc) && (jsonGrow(tls, p, uint32(N)) != 0) { @@ -163830,7 +163878,7 @@ func jsonPrintf(tls *libc.TLS, N int32, p uintptr, zFormat uintptr, va uintptr) } // Append a single character -func jsonAppendChar(tls *libc.TLS, p uintptr, c int8) { /* sqlite3.c:188830:13: */ +func jsonAppendChar(tls *libc.TLS, p uintptr, c int8) { /* sqlite3.c:188842:13: */ if ((*JsonString)(unsafe.Pointer(p)).FnUsed >= (*JsonString)(unsafe.Pointer(p)).FnAlloc) && (jsonGrow(tls, p, uint32(1)) != 0) { return } @@ -163839,7 +163887,7 @@ func jsonAppendChar(tls *libc.TLS, p uintptr, c int8) { /* sqlite3.c:188830:13: // Append a comma separator to the output buffer, if the previous // character is not '[' or '{'. -func jsonAppendSeparator(tls *libc.TLS, p uintptr) { /* sqlite3.c:188838:13: */ +func jsonAppendSeparator(tls *libc.TLS, p uintptr) { /* sqlite3.c:188850:13: */ var c int8 if (*JsonString)(unsafe.Pointer(p)).FnUsed == uint64(0) { return @@ -163854,7 +163902,7 @@ func jsonAppendSeparator(tls *libc.TLS, p uintptr) { /* sqlite3.c:188838:13: */ // under construction. Enclose the string in "..." and escape // any double-quotes or backslash characters contained within the // string. -func jsonAppendString(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188850:13: */ +func jsonAppendString(tls *libc.TLS, p uintptr, zIn uintptr, N U32) { /* sqlite3.c:188862:13: */ var i U32 var c uint8 if !((((U64(N) + (*JsonString)(unsafe.Pointer(p)).FnUsed) + uint64(2)) >= (*JsonString)(unsafe.Pointer(p)).FnAlloc) && (jsonGrow(tls, p, (N+U32(2))) != 0)) { @@ -163925,11 +163973,11 @@ __4: var aSpecial = [32]int8{ int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8('b'), int8('t'), int8('n'), int8(0), int8('f'), int8('r'), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), int8(0), -} /* sqlite3.c:188861:25 */ +} /* sqlite3.c:188873:25 */ // Append a function parameter value to the JSON string under // construction. -func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:188893:13: */ +func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:188905:13: */ switch Xsqlite3_value_type(tls, pValue) { case SQLITE_NULL: { @@ -163973,7 +164021,7 @@ func jsonAppendValue(tls *libc.TLS, p uintptr, pValue uintptr) { /* sqlite3.c:18 } // Make the JSON in p the result of the SQL function. -func jsonResult(tls *libc.TLS, p uintptr) { /* sqlite3.c:188933:13: */ +func jsonResult(tls *libc.TLS, p uintptr) { /* sqlite3.c:188945:13: */ if int32((*JsonString)(unsafe.Pointer(p)).FbErr) == 0 { Xsqlite3_result_text64(tls, (*JsonString)(unsafe.Pointer(p)).FpCtx, (*JsonString)(unsafe.Pointer(p)).FzBuf, (*JsonString)(unsafe.Pointer(p)).FnUsed, func() uintptr { @@ -164000,7 +164048,7 @@ func jsonResult(tls *libc.TLS, p uintptr) { /* sqlite3.c:188933:13: */ // Appended elements are not counted. The value returned is the number // by which the JsonNode counter should increment in order to go to the // next peer value. -func jsonNodeSize(tls *libc.TLS, pNode uintptr) U32 { /* sqlite3.c:188956:12: */ +func jsonNodeSize(tls *libc.TLS, pNode uintptr) U32 { /* sqlite3.c:188968:12: */ if int32((*JsonNode)(unsafe.Pointer(pNode)).FeType) >= JSON_ARRAY { return ((*JsonNode)(unsafe.Pointer(pNode)).Fn + U32(1)) } @@ -164009,7 +164057,7 @@ func jsonNodeSize(tls *libc.TLS, pNode uintptr) U32 { /* sqlite3.c:188956:12: */ // Reclaim all memory allocated by a JsonParse object. But do not // delete the JsonParse object itself. -func jsonParseReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188964:13: */ +func jsonParseReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188976:13: */ Xsqlite3_free(tls, (*JsonParse)(unsafe.Pointer(pParse)).FaNode) (*JsonParse)(unsafe.Pointer(pParse)).FaNode = uintptr(0) (*JsonParse)(unsafe.Pointer(pParse)).FnNode = U32(0) @@ -164019,7 +164067,7 @@ func jsonParseReset(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188964:13: */ } // Free a JsonParse object that was obtained from sqlite3_malloc(). -func jsonParseFree(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188976:13: */ +func jsonParseFree(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188988:13: */ jsonParseReset(tls, pParse) Xsqlite3_free(tls, pParse) } @@ -164027,7 +164075,7 @@ func jsonParseFree(tls *libc.TLS, pParse uintptr) { /* sqlite3.c:188976:13: */ // Convert the JsonNode pNode into a pure JSON string and // append to pOut. Subsubstructure is also included. Return // the number of JsonNode objects that are encoded. -func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr) { /* sqlite3.c:188986:13: */ +func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr) { /* sqlite3.c:188998:13: */ if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & (JNODE_REPLACE | JNODE_PATCH)) != 0 { if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & JNODE_REPLACE) != 0 { jsonAppendValue(tls, pOut, *(*uintptr)(unsafe.Pointer(aReplace + uintptr(*(*U32)(unsafe.Pointer(pNode + 8 /* &.u */)))*8))) @@ -164122,7 +164170,7 @@ func jsonRenderNode(tls *libc.TLS, pNode uintptr, pOut uintptr, aReplace uintptr } // Return a JsonNode and all its descendents as a JSON string. -func jsonReturnJson(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189068:13: */ +func jsonReturnJson(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189080:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -164137,14 +164185,14 @@ func jsonReturnJson(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr // Translate a single byte of Hex into an integer. // This routine only works if h really is a valid hexadecimal // character: 0..9a..fA..F -func jsonHexToInt(tls *libc.TLS, h int32) U8 { /* sqlite3.c:189085:11: */ +func jsonHexToInt(tls *libc.TLS, h int32) U8 { /* sqlite3.c:189097:11: */ h = h + (9 * (1 & (h >> 6))) return (U8(h & 0xf)) } // Convert a 4-byte hex string into an integer -func jsonHexToInt4(tls *libc.TLS, z uintptr) U32 { /* sqlite3.c:189098:12: */ +func jsonHexToInt4(tls *libc.TLS, z uintptr) U32 { /* sqlite3.c:189110:12: */ var v U32 v = (U32((((int32(jsonHexToInt(tls, int32(*(*int8)(unsafe.Pointer(z))))) << 12) + @@ -164155,7 +164203,7 @@ func jsonHexToInt4(tls *libc.TLS, z uintptr) U32 { /* sqlite3.c:189098:12: */ } // Make the JsonNode the return value of the function. -func jsonReturn(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189114:13: */ +func jsonReturn(tls *libc.TLS, pNode uintptr, pCtx uintptr, aReplace uintptr) { /* sqlite3.c:189126:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -164432,7 +164480,7 @@ __1: // A macro to hint to the compiler that a function should not be // inlined. -func jsonParseAddNodeExpand(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189278:26: */ +func jsonParseAddNodeExpand(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189290:26: */ var nNew U32 var pNew uintptr @@ -164454,7 +164502,7 @@ func jsonParseAddNodeExpand(tls *libc.TLS, pParse uintptr, eType U32, n U32, zCo // Create a new JsonNode instance based on the arguments and append that // instance to the JsonParse. Return the index in pParse->aNode[] of the // new node, or -1 if a memory allocation fails. -func jsonParseAddNode(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189305:12: */ +func jsonParseAddNode(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent uintptr) int32 { /* sqlite3.c:189317:12: */ var p uintptr if (*JsonParse)(unsafe.Pointer(pParse)).FnNode >= (*JsonParse)(unsafe.Pointer(pParse)).FnAlloc { return jsonParseAddNodeExpand(tls, pParse, eType, n, zContent) @@ -164468,7 +164516,7 @@ func jsonParseAddNode(tls *libc.TLS, pParse uintptr, eType U32, n U32, zContent } // Return true if z[] begins with 4 (or more) hexadecimal digits -func jsonIs4Hex(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:189326:12: */ +func jsonIs4Hex(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:189338:12: */ var i int32 for i = 0; i < 4; i++ { if !((int32(Xsqlite3CtypeMap[uint8(*(*int8)(unsafe.Pointer(z + uintptr(i))))]) & 0x08) != 0) { @@ -164484,7 +164532,7 @@ func jsonIs4Hex(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:189326:12: */ // Return negative for a syntax error. Special cases: return -2 if the // first non-whitespace character is '}' and return -3 if the first // non-whitespace character is ']'. -func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:189340:12: */ +func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:189352:12: */ var c int8 var j U32 var iThis int32 @@ -164710,7 +164758,7 @@ func jsonParseValue(tls *libc.TLS, pParse uintptr, i U32) int32 { /* sqlite3.c:1 // pParse. // // pParse is uninitialized when this routine is called. -func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 { /* sqlite3.c:189500:12: */ +func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 { /* sqlite3.c:189512:12: */ var i int32 libc.X__builtin___memset_chk(tls, pParse, 0, uint64(unsafe.Sizeof(JsonParse{})), libc.X__builtin_object_size(tls, pParse, 0)) if zJson == uintptr(0) { @@ -164746,7 +164794,7 @@ func jsonParse(tls *libc.TLS, pParse uintptr, pCtx uintptr, zJson uintptr) int32 // Mark node i of pParse as being a child of iParent. Call recursively // to fill in all the descendants of node i. -func jsonParseFillInParentage(tls *libc.TLS, pParse uintptr, i U32, iParent U32) { /* sqlite3.c:189533:13: */ +func jsonParseFillInParentage(tls *libc.TLS, pParse uintptr, i U32, iParent U32) { /* sqlite3.c:189545:13: */ var pNode uintptr = ((*JsonParse)(unsafe.Pointer(pParse)).FaNode + uintptr(i)*16) var j U32 *(*U32)(unsafe.Pointer((*JsonParse)(unsafe.Pointer(pParse)).FaUp + uintptr(i)*4)) = iParent @@ -164777,7 +164825,7 @@ func jsonParseFillInParentage(tls *libc.TLS, pParse uintptr, i U32, iParent U32) } // Compute the parentage of all nodes in a completed parse. -func jsonParseFindParents(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:189560:12: */ +func jsonParseFindParents(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:189572:12: */ var aUp uintptr aUp = libc.AssignPtrUintptr(pParse+24 /* &.aUp */, Xsqlite3_malloc64(tls, (uint64(uint64(unsafe.Sizeof(U32(0)))*uint64((*JsonParse)(unsafe.Pointer(pParse)).FnNode))))) @@ -164797,7 +164845,7 @@ func jsonParseFindParents(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:18 // is no longer valid, parse the JSON again and return the new parse, // and also register the new parse so that it will be available for // future sqlite3_get_auxdata() calls. -func jsonParseCached(tls *libc.TLS, pCtx uintptr, argv uintptr, pErrCtx uintptr) uintptr { /* sqlite3.c:189586:18: */ +func jsonParseCached(tls *libc.TLS, pCtx uintptr, argv uintptr, pErrCtx uintptr) uintptr { /* sqlite3.c:189598:18: */ var zJson uintptr = Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv))) var nJson int32 = Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(argv))) var p uintptr @@ -164854,7 +164902,7 @@ func jsonParseCached(tls *libc.TLS, pCtx uintptr, argv uintptr, pErrCtx uintptr) // Compare the OBJECT label at pNode against zKey,nKey. Return true on // a match. -func jsonLabelCompare(tls *libc.TLS, pNode uintptr, zKey uintptr, nKey U32) int32 { /* sqlite3.c:189648:12: */ +func jsonLabelCompare(tls *libc.TLS, pNode uintptr, zKey uintptr, nKey U32) int32 { /* sqlite3.c:189660:12: */ if (int32((*JsonNode)(unsafe.Pointer(pNode)).FjnFlags) & JNODE_RAW) != 0 { if (*JsonNode)(unsafe.Pointer(pNode)).Fn != nKey { return 0 @@ -164876,7 +164924,7 @@ func jsonLabelCompare(tls *libc.TLS, pNode uintptr, zKey uintptr, nKey U32) int3 // If pApnd!=0, then try to append new nodes to complete zPath if it is // possible to do so and if no existing node corresponds to zPath. If // new nodes are appended *pApnd is set to 1. -func jsonLookupStep(tls *libc.TLS, pParse uintptr, iRoot U32, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189670:17: */ +func jsonLookupStep(tls *libc.TLS, pParse uintptr, iRoot U32, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189682:17: */ var i U32 var j U32 var nKey U32 @@ -165044,7 +165092,7 @@ func jsonLookupStep(tls *libc.TLS, pParse uintptr, iRoot U32, zPath uintptr, pAp // Append content to pParse that will complete zPath. Return a pointer // to the inserted node, or return NULL if the append fails. -func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189815:17: */ +func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pzErr uintptr) uintptr { /* sqlite3.c:189827:17: */ *(*int32)(unsafe.Pointer(pApnd)) = 1 if int32(*(*int8)(unsafe.Pointer(zPath))) == 0 { jsonParseAddNode(tls, pParse, uint32(JSON_NULL), uint32(0), uintptr(0)) @@ -165068,7 +165116,7 @@ func jsonLookupAppend(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintpt // Return the text of a syntax error message on a JSON path. Space is // obtained from sqlite3_malloc(). -func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:189841:13: */ +func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:189853:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -165083,7 +165131,7 @@ func jsonPathSyntaxError(tls *libc.TLS, zErr uintptr) uintptr { /* sqlite3.c:189 // // If pApnd!=NULL then try to append missing nodes and set *pApnd = 1 if // nodes are appended. -func jsonLookup(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pCtx uintptr) uintptr { /* sqlite3.c:189855:17: */ +func jsonLookup(tls *libc.TLS, pParse uintptr, zPath uintptr, pApnd uintptr, pCtx uintptr) uintptr { /* sqlite3.c:189867:17: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -165135,7 +165183,7 @@ __5: // Report the wrong number of arguments for json_insert(), json_replace() // or json_set(). -func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlite3.c:189892:13: */ +func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlite3.c:189904:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -165146,7 +165194,7 @@ func jsonWrongNumArgs(tls *libc.TLS, pCtx uintptr, zFuncName uintptr) { /* sqlit } // Mark all NULL entries in the Object passed in as JNODE_REMOVE. -func jsonRemoveAllNulls(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:189905:13: */ +func jsonRemoveAllNulls(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:189917:13: */ var i int32 var n int32 @@ -165177,7 +165225,7 @@ func jsonRemoveAllNulls(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:189905:13: // corresponding to the SQL value input. Mostly this means putting // double-quotes around strings and returning the unquoted string "null" // when given a NULL input. -func jsonQuoteFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:189990:13: */ +func jsonQuoteFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190002:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -165194,7 +165242,7 @@ func jsonQuoteFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // Implementation of the json_array(VALUE,...) function. Return a JSON // array that contains all values given in arguments. Or if any argument // is a BLOB, throw an error. -func jsonArrayFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190009:13: */ +func jsonArrayFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190021:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -165217,7 +165265,7 @@ func jsonArrayFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // // Return the number of elements in the top-level JSON array. // Return 0 if the input is not a well-formed JSON array. -func jsonArrayLengthFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190036:13: */ +func jsonArrayLengthFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190048:13: */ var p uintptr // The parse var n Sqlite3_int64 = int64(0) var i U32 @@ -165252,7 +165300,7 @@ func jsonArrayLengthFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { // PATH element. If there are multiple PATHs, then return a JSON array // with the result from each path. Throw an error if the JSON or any PATH // is malformed. -func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190075:13: */ +func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190087:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -165298,7 +165346,7 @@ func jsonExtractFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* } // This is the RFC 7396 MergePatch algorithm. -func jsonMergePatch(tls *libc.TLS, pParse uintptr, iTarget U32, pPatch uintptr) uintptr { /* sqlite3.c:190116:17: */ +func jsonMergePatch(tls *libc.TLS, pParse uintptr, iTarget U32, pPatch uintptr) uintptr { /* sqlite3.c:190128:17: */ var i U32 var j U32 var iRoot U32 @@ -165367,7 +165415,7 @@ func jsonMergePatch(tls *libc.TLS, pParse uintptr, iTarget U32, pPatch uintptr) // Implementation of the json_mergepatch(JSON1,JSON2) function. Return a JSON // object that is the result of running the RFC 7396 MergePatch() algorithm // on the two arguments. -func jsonPatchFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190186:13: */ +func jsonPatchFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190198:13: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -165399,7 +165447,7 @@ func jsonPatchFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // Implementation of the json_object(NAME,VALUE,...) function. Return a JSON // object that contains all name/value given in arguments. Or if any name // is not a string or if any value is a BLOB, throw an error. -func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190218:13: */ +func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190230:13: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -165438,7 +165486,7 @@ func jsonObjectFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* s // // Remove the named elements from JSON and return the result. malformed // JSON or PATH arguments result in an error. -func jsonRemoveFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190260:13: */ +func jsonRemoveFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190272:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -165507,7 +165555,7 @@ remove_done: // // Replace the value at PATH with VALUE. If PATH does not already exist, // this routine is a no-op. If JSON or PATH is malformed, throw an error. -func jsonReplaceFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190293:13: */ +func jsonReplaceFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190305:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -165587,7 +165635,7 @@ replace_err: // // Create PATH and initialize it to VALUE. If PATH already exists, this // routine is a no-op. If JSON or PATH is malformed, throw an error. -func jsonSetFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190340:13: */ +func jsonSetFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190352:13: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -165683,7 +165731,7 @@ jsonSetDone: // // Return the top-level "type" of a JSON string. Throw an error if // either the JSON or PATH inputs are not well-formed. -func jsonTypeFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190389:13: */ +func jsonTypeFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190401:13: */ var p uintptr // The parse var zPath uintptr var pNode uintptr @@ -165707,7 +165755,7 @@ func jsonTypeFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sql // // Return 1 if JSON is a well-formed JSON string according to RFC-7159. // Return 0 otherwise. -func jsonValidFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190417:13: */ +func jsonValidFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190429:13: */ var p uintptr // The parse _ = argc p = jsonParseCached(tls, ctx, argv, uintptr(0)) @@ -165721,7 +165769,7 @@ func jsonValidFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq // json_group_array(VALUE) // // Return a JSON array composed of all values in the aggregate. -func jsonArrayStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190437:13: */ +func jsonArrayStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190449:13: */ var pStr uintptr _ = argc pStr = Xsqlite3_aggregate_context(tls, ctx, int32(unsafe.Sizeof(JsonString{}))) @@ -165737,7 +165785,7 @@ func jsonArrayStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sq } } -func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190456:13: */ +func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190468:13: */ var pStr uintptr pStr = Xsqlite3_aggregate_context(tls, ctx, 0) if pStr != 0 { @@ -165767,11 +165815,11 @@ func jsonArrayCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c: Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } -func jsonArrayValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190478:13: */ +func jsonArrayValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190490:13: */ jsonArrayCompute(tls, ctx, 0) } -func jsonArrayFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190481:13: */ +func jsonArrayFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190493:13: */ jsonArrayCompute(tls, ctx, 1) } @@ -165779,7 +165827,7 @@ func jsonArrayFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190481:13: */ // It works by removing the first element of the group by searching forward // to the first comma (",") that is not within a string and deleting all // text through that comma. -func jsonGroupInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190492:13: */ +func jsonGroupInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190504:13: */ var i uint32 var inStr int32 = 0 var nNest int32 = 0 @@ -165820,7 +165868,7 @@ func jsonGroupInverse(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* // json_group_obj(NAME,VALUE) // // Return a JSON object composed of all names and values in the aggregate. -func jsonObjectStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190539:13: */ +func jsonObjectStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* sqlite3.c:190551:13: */ var pStr uintptr var z uintptr var n U32 @@ -165842,7 +165890,7 @@ func jsonObjectStep(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { /* s } } -func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190564:13: */ +func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c:190576:13: */ var pStr uintptr pStr = Xsqlite3_aggregate_context(tls, ctx, 0) if pStr != 0 { @@ -165871,11 +165919,11 @@ func jsonObjectCompute(tls *libc.TLS, ctx uintptr, isFinal int32) { /* sqlite3.c Xsqlite3_result_subtype(tls, ctx, uint32(JSON_SUBTYPE)) } -func jsonObjectValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190585:13: */ +func jsonObjectValue(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190597:13: */ jsonObjectCompute(tls, ctx, 0) } -func jsonObjectFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190588:13: */ +func jsonObjectFinal(tls *libc.TLS, ctx uintptr) { /* sqlite3.c:190600:13: */ jsonObjectCompute(tls, ctx, 1) } @@ -165895,16 +165943,16 @@ type JsonEachCursor1 = struct { FzJson uintptr FzRoot uintptr FsParse JsonParse -} /* sqlite3.c:190598:9 */ +} /* sqlite3.c:190610:9 */ // *************************************************************************** // // The json_each virtual table // -type JsonEachCursor = JsonEachCursor1 /* sqlite3.c:190598:31 */ +type JsonEachCursor = JsonEachCursor1 /* sqlite3.c:190610:31 */ // Constructor for the json_each virtual table -func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:190613:12: */ +func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:190625:12: */ var pNew uintptr var rc int32 @@ -165932,13 +165980,13 @@ func jsonEachConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv u } // destructor for json_each virtual table -func jsonEachDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:190655:12: */ +func jsonEachDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:190667:12: */ Xsqlite3_free(tls, pVtab) return SQLITE_OK } // constructor for a JsonEachCursor object for json_each(). -func jsonEachOpenEach(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190661:12: */ +func jsonEachOpenEach(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190673:12: */ var pCur uintptr _ = p @@ -165952,7 +166000,7 @@ func jsonEachOpenEach(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sql } // constructor for a JsonEachCursor object for json_tree(). -func jsonEachOpenTree(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190673:12: */ +func jsonEachOpenTree(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:190685:12: */ var rc int32 = jsonEachOpenEach(tls, p, ppCursor) if rc == SQLITE_OK { var pCur uintptr = *(*uintptr)(unsafe.Pointer(ppCursor)) @@ -165963,7 +166011,7 @@ func jsonEachOpenTree(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sql // Reset a JsonEachCursor back to its original state. Free any memory // held. -func jsonEachCursorReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:190684:13: */ +func jsonEachCursorReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:190696:13: */ Xsqlite3_free(tls, (*JsonEachCursor)(unsafe.Pointer(p)).FzJson) Xsqlite3_free(tls, (*JsonEachCursor)(unsafe.Pointer(p)).FzRoot) jsonParseReset(tls, (p + 48 /* &.sParse */)) @@ -165976,7 +166024,7 @@ func jsonEachCursorReset(tls *libc.TLS, p uintptr) { /* sqlite3.c:190684:13: */ } // Destructor for a jsonEachCursor object -func jsonEachClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190697:12: */ +func jsonEachClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190709:12: */ var p uintptr = cur jsonEachCursorReset(tls, p) Xsqlite3_free(tls, cur) @@ -165985,13 +166033,13 @@ func jsonEachClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190697:12: * // Return TRUE if the jsonEachCursor object has been advanced off the end // of the JSON object -func jsonEachEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190706:12: */ +func jsonEachEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190718:12: */ var p uintptr = cur return (libc.Bool32((*JsonEachCursor)(unsafe.Pointer(p)).Fi >= (*JsonEachCursor)(unsafe.Pointer(p)).FiEnd)) } // Advance the cursor to the next element for json_tree() -func jsonEachNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190712:12: */ +func jsonEachNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190724:12: */ var p uintptr = cur if (*JsonEachCursor)(unsafe.Pointer(p)).FbRecursive != 0 { if (int32((*JsonNode)(unsafe.Pointer((*JsonEachCursor)(unsafe.Pointer(p)).FsParse.FaNode+uintptr((*JsonEachCursor)(unsafe.Pointer(p)).Fi)*16)).FjnFlags) & JNODE_LABEL) != 0 { @@ -166041,7 +166089,7 @@ func jsonEachNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:190712:12: */ } // Append the name of the path for element i to pStr -func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sqlite3.c:190753:13: */ +func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sqlite3.c:190765:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -166069,7 +166117,7 @@ func jsonEachComputePath(tls *libc.TLS, p uintptr, pStr uintptr, i U32) { /* sql } // Return the value of a column -func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:190780:12: */ +func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:190792:12: */ bp := tls.Alloc(296) defer tls.Free(296) @@ -166201,7 +166249,7 @@ func jsonEachColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* } // Return the current rowid value -func jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c:190879:12: */ +func jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c:190891:12: */ var p uintptr = cur *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = Sqlite_int64((*JsonEachCursor)(unsafe.Pointer(p)).FiRowid) return SQLITE_OK @@ -166211,7 +166259,7 @@ func jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite // column. Without such a constraint, the table cannot operate. idxNum is // 1 if the constraint is found, 3 if the constraint and zRoot are found, // and 0 otherwise. -func jsonEachBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:190890:12: */ +func jsonEachBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:190902:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -166286,7 +166334,7 @@ __3: } // Start a search on a new JSON string -func jsonEachFilter(tls *libc.TLS, cur uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:190948:12: */ +func jsonEachFilter(tls *libc.TLS, cur uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:190960:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -166390,7 +166438,7 @@ var jsonEachModule = Sqlite3_module{ // xCreate FxEof: 0, // xEof - check for end of scan FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:191027:23 */ +} /* sqlite3.c:191039:23 */ // The methods of the json_tree virtual table. var jsonTreeModule = Sqlite3_module{ // xCreate @@ -166404,7 +166452,7 @@ var jsonTreeModule = Sqlite3_module{ // xCreate FxEof: 0, // xEof - check for end of scan FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:191055:23 */ +} /* sqlite3.c:191067:23 */ // *************************************************************************** // @@ -166413,7 +166461,7 @@ var jsonTreeModule = Sqlite3_module{ // xCreate // functions and the virtual table implemented by this file. // -func Xsqlite3Json1Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:191089:20: */ +func Xsqlite3Json1Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:191101:20: */ var rc int32 = SQLITE_OK var i uint32 for i = uint32(0); (uint64(i) < (uint64(unsafe.Sizeof(aFunc)) / uint64(unsafe.Sizeof(struct { @@ -166471,7 +166519,7 @@ var aFunc = [15]struct { {FzName: ts + 30057 /* "json_type" */, FnArg: 1, FxFunc: 0}, {FzName: ts + 30057 /* "json_type" */, FnArg: 2, FxFunc: 0}, {FzName: ts + 30067 /* "json_valid" */, FnArg: 1, FxFunc: 0}, -} /* sqlite3.c:191097:5 */ +} /* sqlite3.c:191109:5 */ var aAgg = [2]struct { FzName uintptr FnArg int32 @@ -166484,15 +166532,15 @@ var aAgg = [2]struct { FxStep: 0, FxFinal: 0, FxValue: 0}, {FzName: ts + 30095 /* "json_group_objec..." */, FnArg: 2, FxStep: 0, FxFinal: 0, FxValue: 0}, -} /* sqlite3.c:191126:5 */ +} /* sqlite3.c:191138:5 */ var aMod = [2]struct { FzName uintptr FpModule uintptr }{ {FzName: ts + 30113 /* "json_each" */, FpModule: 0}, {FzName: ts + 30123 /* "json_tree" */, FpModule: 0}, -} /* sqlite3.c:191136:5 */ -var enc int32 = ((SQLITE_UTF8 | SQLITE_DETERMINISTIC) | SQLITE_INNOCUOUS) /* sqlite3.c:191141:20 */ // In the SQLite core +} /* sqlite3.c:191148:5 */ +var enc int32 = ((SQLITE_UTF8 | SQLITE_DETERMINISTIC) | SQLITE_INNOCUOUS) /* sqlite3.c:191153:20 */ // In the SQLite core // #include // #include @@ -166536,7 +166584,7 @@ type Rtree1 = struct { FpDeleteParent uintptr FpWriteAux uintptr FaHash [97]uintptr -} /* sqlite3.c:191277:9 */ +} /* sqlite3.c:191289:9 */ // In the SQLite core @@ -166547,7 +166595,7 @@ type Rtree1 = struct { // The following macro is used to suppress compiler warnings. -type Rtree = Rtree1 /* sqlite3.c:191277:22 */ +type Rtree = Rtree1 /* sqlite3.c:191289:22 */ type RtreeCursor1 = struct { Fbase Sqlite3_vtab_cursor FatEOF U8 @@ -166568,9 +166616,9 @@ type RtreeCursor1 = struct { FaNode [5]uintptr FanQueue [41]U32 _ [4]byte -} /* sqlite3.c:191278:9 */ +} /* sqlite3.c:191290:9 */ -type RtreeCursor = RtreeCursor1 /* sqlite3.c:191278:28 */ +type RtreeCursor = RtreeCursor1 /* sqlite3.c:191290:28 */ type RtreeNode1 = struct { FpParent uintptr FiNode I64 @@ -166578,23 +166626,23 @@ type RtreeNode1 = struct { FisDirty int32 FzData uintptr FpNext uintptr -} /* sqlite3.c:191277:9 */ +} /* sqlite3.c:191289:9 */ -type RtreeNode = RtreeNode1 /* sqlite3.c:191279:26 */ +type RtreeNode = RtreeNode1 /* sqlite3.c:191291:26 */ type RtreeCell1 = struct { FiRowid I64 FaCoord [10]RtreeCoord -} /* sqlite3.c:191280:9 */ +} /* sqlite3.c:191292:9 */ -type RtreeCell = RtreeCell1 /* sqlite3.c:191280:26 */ +type RtreeCell = RtreeCell1 /* sqlite3.c:191292:26 */ type RtreeConstraint1 = struct { FiCoord int32 Fop int32 Fu struct{ FrValue RtreeDValue } FpInfo uintptr -} /* sqlite3.c:191278:9 */ +} /* sqlite3.c:191290:9 */ -type RtreeConstraint = RtreeConstraint1 /* sqlite3.c:191281:32 */ +type RtreeConstraint = RtreeConstraint1 /* sqlite3.c:191293:32 */ type RtreeMatchArg1 = struct { FiSize U32 _ [4]byte @@ -166603,20 +166651,20 @@ type RtreeMatchArg1 = struct { _ [4]byte FapSqlParam uintptr FaParam [1]RtreeDValue -} /* sqlite3.c:191282:9 */ +} /* sqlite3.c:191294:9 */ -type RtreeMatchArg = RtreeMatchArg1 /* sqlite3.c:191282:30 */ +type RtreeMatchArg = RtreeMatchArg1 /* sqlite3.c:191294:30 */ type RtreeGeomCallback1 = struct { FxGeom uintptr FxQueryFunc uintptr FxDestructor uintptr FpContext uintptr -} /* sqlite3.c:191282:9 */ +} /* sqlite3.c:191294:9 */ -type RtreeGeomCallback = RtreeGeomCallback1 /* sqlite3.c:191283:34 */ -type RtreeCoord1 = struct{ Ff RtreeValue } /* sqlite3.c:191280:9 */ +type RtreeGeomCallback = RtreeGeomCallback1 /* sqlite3.c:191295:34 */ +type RtreeCoord1 = struct{ Ff RtreeValue } /* sqlite3.c:191292:9 */ -type RtreeCoord = RtreeCoord1 /* sqlite3.c:191284:26 */ +type RtreeCoord = RtreeCoord1 /* sqlite3.c:191296:26 */ type RtreeSearchPoint1 = struct { FrScore RtreeDValue Fid Sqlite3_int64 @@ -166624,17 +166672,17 @@ type RtreeSearchPoint1 = struct { FeWithin U8 FiCell U8 _ [5]byte -} /* sqlite3.c:191278:9 */ +} /* sqlite3.c:191290:9 */ -type RtreeSearchPoint = RtreeSearchPoint1 /* sqlite3.c:191285:33 */ +type RtreeSearchPoint = RtreeSearchPoint1 /* sqlite3.c:191297:33 */ // Possible values for Rtree.eCoordType: // If SQLITE_RTREE_INT_ONLY is defined, then this virtual table will // only deal with integer coordinates. No floating point operations // will be done. -type RtreeDValue = float64 /* sqlite3.c:191380:18 */ // High accuracy coordinate -type RtreeValue = float32 /* sqlite3.c:191381:17 */ +type RtreeDValue = float64 /* sqlite3.c:191392:18 */ // High accuracy coordinate +type RtreeValue = float32 /* sqlite3.c:191393:17 */ // What version of GCC is being used. 0 means GCC is not being used . // Note that the GCC_VERSION macro will also be set correctly when using @@ -166660,16 +166708,16 @@ type RtreeValue = float32 /* sqlite3.c:191381:17 */ // Functions to deserialize a 16 bit integer, 32 bit real number and // 64 bit integer. The deserialized value is returned. -func readInt16(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:191660:12: */ +func readInt16(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:191672:12: */ return ((int32(*(*U8)(unsafe.Pointer(p))) << 8) + int32(*(*U8)(unsafe.Pointer(p + 1)))) } -func readCoord(tls *libc.TLS, p uintptr, pCoord uintptr) { /* sqlite3.c:191663:13: */ +func readCoord(tls *libc.TLS, p uintptr, pCoord uintptr) { /* sqlite3.c:191675:13: */ // p is always 4-byte aligned (*(*U32)(unsafe.Pointer(pCoord /* .Fu */))) = libc.X__builtin_bswap32(tls, *(*U32)(unsafe.Pointer(p))) } -func readInt64(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:191680:12: */ +func readInt64(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:191692:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -166682,12 +166730,12 @@ func readInt64(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:191680:12: */ // Functions to serialize a 16 bit integer, 32 bit real number and // 64 bit integer. The value returned is the number of bytes written // to the argument buffer (always 2, 4 and 8 respectively). -func writeInt16(tls *libc.TLS, p uintptr, i int32) { /* sqlite3.c:191712:13: */ +func writeInt16(tls *libc.TLS, p uintptr, i int32) { /* sqlite3.c:191724:13: */ *(*U8)(unsafe.Pointer(p)) = (U8((i >> 8) & 0xFF)) *(*U8)(unsafe.Pointer(p + 1)) = (U8((i >> 0) & 0xFF)) } -func writeCoord(tls *libc.TLS, p uintptr, pCoord uintptr) int32 { /* sqlite3.c:191716:12: */ +func writeCoord(tls *libc.TLS, p uintptr, pCoord uintptr) int32 { /* sqlite3.c:191728:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -166700,7 +166748,7 @@ func writeCoord(tls *libc.TLS, p uintptr, pCoord uintptr) int32 { /* sqlite3.c:1 return 4 } -func writeInt64(tls *libc.TLS, p uintptr, i I64) int32 { /* sqlite3.c:191739:12: */ +func writeInt64(tls *libc.TLS, p uintptr, i I64) int32 { /* sqlite3.c:191751:12: */ bp := tls.Alloc(8) defer tls.Free(8) *(*I64)(unsafe.Pointer(bp)) = i @@ -166711,7 +166759,7 @@ func writeInt64(tls *libc.TLS, p uintptr, i I64) int32 { /* sqlite3.c:191739:12: } // Increment the reference count of node p. -func nodeReference(tls *libc.TLS, p uintptr) { /* sqlite3.c:191764:13: */ +func nodeReference(tls *libc.TLS, p uintptr) { /* sqlite3.c:191776:13: */ if p != 0 { (*RtreeNode)(unsafe.Pointer(p)).FnRef++ @@ -166719,20 +166767,20 @@ func nodeReference(tls *libc.TLS, p uintptr) { /* sqlite3.c:191764:13: */ } // Clear the content of node p (set all bytes to 0x00). -func nodeZero(tls *libc.TLS, pRtree uintptr, p uintptr) { /* sqlite3.c:191774:13: */ +func nodeZero(tls *libc.TLS, pRtree uintptr, p uintptr) { /* sqlite3.c:191786:13: */ libc.X__builtin___memset_chk(tls, ((*RtreeNode)(unsafe.Pointer(p)).FzData + 2), 0, (uint64((*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize - 2)), libc.X__builtin_object_size(tls, ((*RtreeNode)(unsafe.Pointer(p)).FzData+2), 0)) (*RtreeNode)(unsafe.Pointer(p)).FisDirty = 1 } // Given a node number iNode, return the corresponding key to use // in the Rtree.aHash table. -func nodeHash(tls *libc.TLS, iNode I64) uint32 { /* sqlite3.c:191783:21: */ +func nodeHash(tls *libc.TLS, iNode I64) uint32 { /* sqlite3.c:191795:21: */ return ((uint32(iNode)) % uint32(HASHSIZE)) } // Search the node hash table for node iNode. If found, return a pointer // to it. Otherwise, return 0. -func nodeHashLookup(tls *libc.TLS, pRtree uintptr, iNode I64) uintptr { /* sqlite3.c:191791:18: */ +func nodeHashLookup(tls *libc.TLS, pRtree uintptr, iNode I64) uintptr { /* sqlite3.c:191803:18: */ var p uintptr for p = *(*uintptr)(unsafe.Pointer((pRtree + 192 /* &.aHash */) + uintptr(nodeHash(tls, iNode))*8)); (p != 0) && ((*RtreeNode)(unsafe.Pointer(p)).FiNode != iNode); p = (*RtreeNode)(unsafe.Pointer(p)).FpNext { } @@ -166740,7 +166788,7 @@ func nodeHashLookup(tls *libc.TLS, pRtree uintptr, iNode I64) uintptr { /* sqlit } // Add node pNode to the node hash table. -func nodeHashInsert(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191800:13: */ +func nodeHashInsert(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191812:13: */ var iHash int32 iHash = int32(nodeHash(tls, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode)) @@ -166749,7 +166797,7 @@ func nodeHashInsert(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c } // Remove node pNode from the node hash table. -func nodeHashDelete(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191811:13: */ +func nodeHashDelete(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c:191823:13: */ var pp uintptr if (*RtreeNode)(unsafe.Pointer(pNode)).FiNode != int64(0) { pp = ((pRtree + 192 /* &.aHash */) + uintptr(nodeHash(tls, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode))*8) @@ -166764,7 +166812,7 @@ func nodeHashDelete(tls *libc.TLS, pRtree uintptr, pNode uintptr) { /* sqlite3.c // indicating that node has not yet been assigned a node number. It is // assigned a node number when nodeWrite() is called to write the // node contents out to the database. -func nodeNew(tls *libc.TLS, pRtree uintptr, pParent uintptr) uintptr { /* sqlite3.c:191827:18: */ +func nodeNew(tls *libc.TLS, pRtree uintptr, pParent uintptr) uintptr { /* sqlite3.c:191839:18: */ var pNode uintptr pNode = Xsqlite3_malloc64(tls, (uint64(uint64(unsafe.Sizeof(RtreeNode{})) + uint64((*Rtree)(unsafe.Pointer(pRtree)).FiNodeSize)))) if pNode != 0 { @@ -166780,7 +166828,7 @@ func nodeNew(tls *libc.TLS, pRtree uintptr, pParent uintptr) uintptr { /* sqlite } // Clear the Rtree.pNodeBlob object -func nodeBlobReset(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:191845:13: */ +func nodeBlobReset(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:191857:13: */ if (((*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob != 0) && (int32((*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans) == 0)) && ((*Rtree)(unsafe.Pointer(pRtree)).FnCursor == U32(0)) { var pBlob uintptr = (*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob (*Rtree)(unsafe.Pointer(pRtree)).FpNodeBlob = uintptr(0) @@ -166790,7 +166838,7 @@ func nodeBlobReset(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:191845:13: */ // Check to see if pNode is the same as pParent or any of the parents // of pParent. -func nodeInParentChain(tls *libc.TLS, pNode uintptr, pParent uintptr) int32 { /* sqlite3.c:191857:12: */ +func nodeInParentChain(tls *libc.TLS, pNode uintptr, pParent uintptr) int32 { /* sqlite3.c:191869:12: */ for ok := true; ok; ok = pParent != 0 { if pNode == pParent { return 1 @@ -166801,7 +166849,7 @@ func nodeInParentChain(tls *libc.TLS, pNode uintptr, pParent uintptr) int32 { /* } // Obtain a reference to an r-tree node. -func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNode uintptr) int32 { /* sqlite3.c:191868:12: */ +func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNode uintptr) int32 { /* sqlite3.c:191880:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -166918,7 +166966,7 @@ func nodeAcquire(tls *libc.TLS, pRtree uintptr, iNode I64, pParent uintptr, ppNo } // Overwrite cell iCell of node pNode with the contents of pCell. -func nodeOverwriteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iCell int32) { /* sqlite3.c:191988:13: */ +func nodeOverwriteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iCell int32) { /* sqlite3.c:192000:13: */ var ii int32 var p uintptr = ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr((4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell)))) p += uintptr(writeInt64(tls, p, (*RtreeCell)(unsafe.Pointer(pCell)).FiRowid)) @@ -166929,7 +166977,7 @@ func nodeOverwriteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintp } // Remove the cell with index iCell from node pNode. -func nodeDeleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) { /* sqlite3.c:192006:13: */ +func nodeDeleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) { /* sqlite3.c:192018:13: */ var pDst uintptr = ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr((4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell)))) var pSrc uintptr = (pDst + uintptr((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell)) var nByte int32 = (((readInt16(tls, ((*RtreeNode)(unsafe.Pointer((pNode))).FzData+2)) - iCell) - 1) * int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell)) @@ -166942,7 +166990,7 @@ func nodeDeleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) { // is successful, return SQLITE_OK. // // If there is not enough free space in pNode, return SQLITE_FULL. -func nodeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:192021:12: */ +func nodeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:192033:12: */ var nCell int32 // Current number of cells in pNode var nMaxCell int32 // Maximum number of cells for pNode @@ -166959,7 +167007,7 @@ func nodeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) } // If the node is dirty, write it out to the database. -func nodeWrite(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192045:12: */ +func nodeWrite(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192057:12: */ var rc int32 = SQLITE_OK if (*RtreeNode)(unsafe.Pointer(pNode)).FisDirty != 0 { var p uintptr = (*Rtree)(unsafe.Pointer(pRtree)).FpWriteNode @@ -166983,7 +167031,7 @@ func nodeWrite(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3. // Release a reference to a node. If the node is dirty and the reference // count drops to zero, the node data is written to the database. -func nodeRelease(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192071:12: */ +func nodeRelease(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:192083:12: */ var rc int32 = SQLITE_OK if pNode != 0 { @@ -167009,19 +167057,19 @@ func nodeRelease(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite // Return the 64-bit integer value associated with cell iCell of // node pNode. If pNode is a leaf node, this is a rowid. If it is // an internal node, then the 64-bit integer is a child page number. -func nodeGetRowid(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) I64 { /* sqlite3.c:192100:12: */ +func nodeGetRowid(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32) I64 { /* sqlite3.c:192112:12: */ return readInt64(tls, ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr((4 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell))))) } // Return coordinate iCoord from cell iCell in node pNode. -func nodeGetCoord(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iCoord int32, pCoord uintptr) { /* sqlite3.c:192112:13: */ +func nodeGetCoord(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iCoord int32, pCoord uintptr) { /* sqlite3.c:192124:13: */ readCoord(tls, ((*RtreeNode)(unsafe.Pointer(pNode)).FzData + uintptr(((12 + (int32((*Rtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) * iCell)) + (4 * iCoord)))), pCoord) } // Deserialize cell iCell of node pNode. Populate the structure pointed // to by pCell with the results. -func nodeGetCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, pCell uintptr) { /* sqlite3.c:192126:13: */ +func nodeGetCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, pCell uintptr) { /* sqlite3.c:192138:13: */ var pData uintptr var pCoord uintptr var ii int32 = 0 @@ -167037,23 +167085,23 @@ func nodeGetCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, pCel } // Rtree virtual table module xCreate method. -func rtreeCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192157:12: */ +func rtreeCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192169:12: */ return rtreeInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 1) } // Rtree virtual table module xConnect method. -func rtreeConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192170:12: */ +func rtreeConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:192182:12: */ return rtreeInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 0) } // Increment the r-tree reference count. -func rtreeReference(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192183:13: */ +func rtreeReference(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192195:13: */ (*Rtree)(unsafe.Pointer(pRtree)).FnBusy++ } // Decrement the r-tree reference count. When the reference count reaches // zero the structure is deleted. -func rtreeRelease(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192191:13: */ +func rtreeRelease(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192203:13: */ (*Rtree)(unsafe.Pointer(pRtree)).FnBusy-- if (*Rtree)(unsafe.Pointer(pRtree)).FnBusy == U32(0) { (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans = U8(0) @@ -167075,13 +167123,13 @@ func rtreeRelease(tls *libc.TLS, pRtree uintptr) { /* sqlite3.c:192191:13: */ } // Rtree virtual table module xDisconnect method. -func rtreeDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192215:12: */ +func rtreeDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192227:12: */ rtreeRelease(tls, pVtab) return SQLITE_OK } // Rtree virtual table module xDestroy method. -func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192223:12: */ +func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192235:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -167108,7 +167156,7 @@ func rtreeDestroy(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:192223:12: } // Rtree virtual table module xOpen method. -func rtreeOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:192251:12: */ +func rtreeOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:192263:12: */ var rc int32 = SQLITE_NOMEM var pRtree uintptr = pVTab var pCsr uintptr @@ -167126,7 +167174,7 @@ func rtreeOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite } // Reset a cursor back to its initial state. -func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:192272:13: */ +func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:192284:13: */ var pRtree uintptr = (*RtreeCursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab var ii int32 var pStmt uintptr @@ -167156,7 +167204,7 @@ func resetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:192272:13: */ } // Rtree virtual table module xClose method. -func rtreeClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192300:12: */ +func rtreeClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192312:12: */ var pRtree uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab var pCsr uintptr = cur @@ -167172,7 +167220,7 @@ func rtreeClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192300:12: */ // // Return non-zero if the cursor does not currently point to a valid // record (i.e if the scan has finished), or zero otherwise. -func rtreeEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192318:12: */ +func rtreeEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192330:12: */ var pCsr uintptr = cur return int32((*RtreeCursor)(unsafe.Pointer(pCsr)).FatEOF) } @@ -167189,7 +167237,7 @@ func rtreeEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:192318:12: */ // Check the RTree node or entry given by pCellData and p against the MATCH // constraint pConstraint. -func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCellData uintptr, pSearch uintptr, prScore uintptr, peWithin uintptr) int32 { /* sqlite3.c:192373:12: */ +func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCellData uintptr, pSearch uintptr, prScore uintptr, peWithin uintptr) int32 { /* sqlite3.c:192385:12: */ bp := tls.Alloc(92) defer tls.Free(92) @@ -167297,7 +167345,7 @@ func rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCe // Check the internal RTree node given by pCellData against constraint p. // If this constraint cannot be satisfied by any child within the node, // set *peWithin to NOT_WITHIN. -func rtreeNonleafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192449:13: */ +func rtreeNonleafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192461:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -167368,7 +167416,7 @@ func rtreeNonleafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uint // // The op is given by p->op. The xN is p->iCoord-th coordinate in // pCellData. $val is given by p->u.rValue. -func rtreeLeafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192497:13: */ +func rtreeLeafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr, peWithin uintptr) { /* sqlite3.c:192509:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -167423,7 +167471,7 @@ func rtreeLeafConstraint(tls *libc.TLS, p uintptr, eInt int32, pCellData uintptr // One of the cells in node pNode is guaranteed to have a 64-bit // integer value equal to iRowid. Return the index of this cell. -func nodeRowidIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, iRowid I64, piIndex uintptr) int32 { /* sqlite3.c:192527:12: */ +func nodeRowidIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, iRowid I64, piIndex uintptr) int32 { /* sqlite3.c:192539:12: */ var ii int32 var nCell int32 = readInt16(tls, ((*RtreeNode)(unsafe.Pointer((pNode))).FzData + 2)) @@ -167439,7 +167487,7 @@ func nodeRowidIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, iRowid I64, pi // Return the index of the cell containing a pointer to node pNode // in its parent. If pNode is the root node, return -1. -func nodeParentIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, piIndex uintptr) int32 { /* sqlite3.c:192550:12: */ +func nodeParentIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, piIndex uintptr) int32 { /* sqlite3.c:192562:12: */ var pParent uintptr = (*RtreeNode)(unsafe.Pointer(pNode)).FpParent if pParent != 0 { return nodeRowidIndex(tls, pRtree, pParent, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode, piIndex) @@ -167456,7 +167504,7 @@ func nodeParentIndex(tls *libc.TLS, pRtree uintptr, pNode uintptr, piIndex uintp // iLevel values coming first. In this way, if rScore is the same for all // SearchPoints, then iLevel becomes the deciding factor and the result // is a depth-first search, which is the desired default behavior. -func rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) int32 { /* sqlite3.c:192569:12: */ +func rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) int32 { /* sqlite3.c:192581:12: */ if (*RtreeSearchPoint)(unsafe.Pointer(pA)).FrScore < (*RtreeSearchPoint)(unsafe.Pointer(pB)).FrScore { return -1 } @@ -167473,7 +167521,7 @@ func rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) int32 { /* s } // Interchange two search points in a cursor. -func rtreeSearchPointSwap(tls *libc.TLS, p uintptr, i int32, j int32) { /* sqlite3.c:192583:13: */ +func rtreeSearchPointSwap(tls *libc.TLS, p uintptr, i int32, j int32) { /* sqlite3.c:192595:13: */ var t = *(*RtreeSearchPoint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(p)).FaPoint + uintptr(i)*24)) *(*RtreeSearchPoint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(p)).FaPoint + uintptr(i)*24)) = *(*RtreeSearchPoint)(unsafe.Pointer((*RtreeCursor)(unsafe.Pointer(p)).FaPoint + uintptr(j)*24)) @@ -167493,7 +167541,7 @@ func rtreeSearchPointSwap(tls *libc.TLS, p uintptr, i int32, j int32) { /* sqlit } // Return the search point with the lowest current score. -func rtreeSearchPointFirst(tls *libc.TLS, pCur uintptr) uintptr { /* sqlite3.c:192604:25: */ +func rtreeSearchPointFirst(tls *libc.TLS, pCur uintptr) uintptr { /* sqlite3.c:192616:25: */ if (*RtreeCursor)(unsafe.Pointer(pCur)).FbPoint != 0 { return (pCur + 64 /* &.sPoint */) } @@ -167504,7 +167552,7 @@ func rtreeSearchPointFirst(tls *libc.TLS, pCur uintptr) uintptr { /* sqlite3.c:1 } // Get the RtreeNode for the search point with the lowest score. -func rtreeNodeOfFirstSearchPoint(tls *libc.TLS, pCur uintptr, pRC uintptr) uintptr { /* sqlite3.c:192611:18: */ +func rtreeNodeOfFirstSearchPoint(tls *libc.TLS, pCur uintptr, pRC uintptr) uintptr { /* sqlite3.c:192623:18: */ var id Sqlite3_int64 var ii int32 = (1 - int32((*RtreeCursor)(unsafe.Pointer(pCur)).FbPoint)) @@ -167521,7 +167569,7 @@ func rtreeNodeOfFirstSearchPoint(tls *libc.TLS, pCur uintptr, pRC uintptr) uintp } // Push a new element onto the priority queue -func rtreeEnqueue(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192627:25: */ +func rtreeEnqueue(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192639:25: */ var i int32 var j int32 var pNew uintptr @@ -167555,7 +167603,7 @@ func rtreeEnqueue(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) ui // Allocate a new RtreeSearchPoint and return a pointer to it. Return // NULL if malloc fails. -func rtreeSearchPointNew(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192662:25: */ +func rtreeSearchPointNew(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel U8) uintptr { /* sqlite3.c:192674:25: */ var pNew uintptr var pFirst uintptr pFirst = rtreeSearchPointFirst(tls, pCur) @@ -167590,7 +167638,7 @@ func rtreeSearchPointNew(tls *libc.TLS, pCur uintptr, rScore RtreeDValue, iLevel } // Remove the search point with the lowest current score. -func rtreeSearchPointPop(tls *libc.TLS, p uintptr) { /* sqlite3.c:192729:13: */ +func rtreeSearchPointPop(tls *libc.TLS, p uintptr) { /* sqlite3.c:192741:13: */ var i int32 var j int32 var k int32 @@ -167638,7 +167686,7 @@ func rtreeSearchPointPop(tls *libc.TLS, p uintptr) { /* sqlite3.c:192729:13: */ // contains an entry suitable for returning as a result-set row, // or until the RtreeSearchPoint queue is empty, indicating that the // query has completed. -func rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) int32 { /* sqlite3.c:192777:12: */ +func rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) int32 { /* sqlite3.c:192789:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -167731,7 +167779,7 @@ func rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) int32 { /* sqlite3.c:192777:12 } // Rtree virtual table module xNext method. -func rtreeNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:192858:12: */ +func rtreeNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:192870:12: */ var pCsr uintptr = pVtabCursor var rc int32 = SQLITE_OK @@ -167747,7 +167795,7 @@ func rtreeNext(tls *libc.TLS, pVtabCursor uintptr) int32 { /* sqlite3.c:192858:1 } // Rtree virtual table module xRowid method. -func rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:192876:12: */ +func rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:192888:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -167762,7 +167810,7 @@ func rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) int32 { /* s } // Rtree virtual table module xColumn method. -func rtreeColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:192890:12: */ +func rtreeColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:192902:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -167823,7 +167871,7 @@ func rtreeColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sq // return SQLITE_OK. If there is no such record in the table, set // *ppLeaf to 0 and return SQLITE_OK. If an error occurs, set *ppLeaf // to zero and return an SQLite error code. -func findLeafNode(tls *libc.TLS, pRtree uintptr, iRowid I64, ppLeaf uintptr, piNode uintptr) int32 { /* sqlite3.c:192944:12: */ +func findLeafNode(tls *libc.TLS, pRtree uintptr, iRowid I64, ppLeaf uintptr, piNode uintptr) int32 { /* sqlite3.c:192956:12: */ var rc int32 *(*uintptr)(unsafe.Pointer(ppLeaf)) = uintptr(0) Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpReadRowid, 1, iRowid) @@ -167844,7 +167892,7 @@ func findLeafNode(tls *libc.TLS, pRtree uintptr, iRowid I64, ppLeaf uintptr, piN // as the second argument for a MATCH constraint. The value passed as the // first argument to this function is the right-hand operand to the MATCH // operator. -func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { /* sqlite3.c:192970:12: */ +func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { /* sqlite3.c:192982:12: */ var pBlob uintptr var pSrc uintptr // BLOB returned by geometry function var pInfo uintptr // Callback information @@ -167876,7 +167924,7 @@ func deserializeGeometry(tls *libc.TLS, pValue uintptr, pCons uintptr) int32 { / } // Rtree virtual table module xFilter method. -func rtreeFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:193000:12: */ +func rtreeFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:193012:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -168018,7 +168066,7 @@ func rtreeFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintpt // The second of each pair of bytes identifies the coordinate column // to which the constraint applies. The leftmost coordinate column // is 'a', the second from the left 'b' etc. -func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:193150:12: */ +func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:193162:12: */ bp := tls.Alloc(49) defer tls.Free(49) @@ -168125,7 +168173,7 @@ func rtreeBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sql } // Return the N-dimensional volumn of the cell stored in *p. -func cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193239:20: */ +func cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193251:20: */ var area RtreeDValue = RtreeDValue(1) if int32((*Rtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { @@ -168168,7 +168216,7 @@ func cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3 // Return the margin length of cell p. The margin length is the sum // of the objects size in each dimension. -func cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193269:20: */ +func cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlite3.c:193281:20: */ var margin RtreeDValue = RtreeDValue(0) var ii int32 = (int32((*Rtree)(unsafe.Pointer(pRtree)).FnDim2) - 2) for ok := true; ok; ok = (ii >= 0) { @@ -168189,7 +168237,7 @@ func cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) RtreeDValue { /* sqlit } // Store the union of cells p1 and p2 in p1. -func cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { /* sqlite3.c:193282:13: */ +func cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { /* sqlite3.c:193294:13: */ var ii int32 = 0 if int32((*Rtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { for ok := true; ok; ok = (ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnDim2)) { @@ -168228,7 +168276,7 @@ func cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { /* sqlit // Return true if the area covered by p2 is a subset of the area covered // by p1. False otherwise. -func cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:193303:12: */ +func cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:193315:12: */ var ii int32 var isInt int32 = (libc.Bool32(int32((*Rtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_INT32)) for ii = 0; ii < int32((*Rtree)(unsafe.Pointer(pRtree)).FnDim2); ii = ii + (2) { @@ -168243,7 +168291,7 @@ func cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) int32 { } // Return the amount cell p would grow by if it were unioned with pCell. -func cellGrowth(tls *libc.TLS, pRtree uintptr, p uintptr, pCell uintptr) RtreeDValue { /* sqlite3.c:193321:20: */ +func cellGrowth(tls *libc.TLS, pRtree uintptr, p uintptr, pCell uintptr) RtreeDValue { /* sqlite3.c:193333:20: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -168256,7 +168304,7 @@ func cellGrowth(tls *libc.TLS, pRtree uintptr, p uintptr, pCell uintptr) RtreeDV return (cellArea(tls, pRtree, bp /* &cell */) - area) } -func cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell int32) RtreeDValue { /* sqlite3.c:193330:20: */ +func cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell int32) RtreeDValue { /* sqlite3.c:193342:20: */ var ii int32 var overlap RtreeDValue = 0.0 for ii = 0; ii < nCell; ii++ { @@ -168331,7 +168379,7 @@ func cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell // This function implements the ChooseLeaf algorithm from Gutman[84]. // ChooseSubTree in r*tree terminology. -func sChooseLeaf(tls *libc.TLS, pRtree uintptr, pCell uintptr, iHeight int32, ppLeaf uintptr) int32 { /* sqlite3.c:193362:12: */ +func sChooseLeaf(tls *libc.TLS, pRtree uintptr, pCell uintptr, iHeight int32, ppLeaf uintptr) int32 { /* sqlite3.c:193374:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -168387,7 +168435,7 @@ func sChooseLeaf(tls *libc.TLS, pRtree uintptr, pCell uintptr, iHeight int32, pp // A cell with the same content as pCell has just been inserted into // the node pNode. This function updates the bounding box cells in // all ancestor elements. -func sAdjustTree(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:193422:12: */ +func sAdjustTree(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) int32 { /* sqlite3.c:193434:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -168416,7 +168464,7 @@ func sAdjustTree(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr) in } // Write mapping (iRowid->iNode) to the _rowid table. -func rowidWrite(tls *libc.TLS, pRtree uintptr, iRowid Sqlite3_int64, iNode Sqlite3_int64) int32 { /* sqlite3.c:193453:12: */ +func rowidWrite(tls *libc.TLS, pRtree uintptr, iRowid Sqlite3_int64, iNode Sqlite3_int64) int32 { /* sqlite3.c:193465:12: */ Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 1, iRowid) Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 2, iNode) Xsqlite3_step(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid) @@ -168424,7 +168472,7 @@ func rowidWrite(tls *libc.TLS, pRtree uintptr, iRowid Sqlite3_int64, iNode Sqlit } // Write mapping (iNode->iPar) to the _parent table. -func parentWrite(tls *libc.TLS, pRtree uintptr, iNode Sqlite3_int64, iPar Sqlite3_int64) int32 { /* sqlite3.c:193463:12: */ +func parentWrite(tls *libc.TLS, pRtree uintptr, iNode Sqlite3_int64, iPar Sqlite3_int64) int32 { /* sqlite3.c:193475:12: */ Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteParent, 1, iNode) Xsqlite3_bind_int64(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteParent, 2, iPar) Xsqlite3_step(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteParent) @@ -168446,7 +168494,7 @@ func parentWrite(tls *libc.TLS, pRtree uintptr, iNode Sqlite3_int64, iPar Sqlite // // The aSpare array is used as temporary working space by the // sorting algorithm. -func sSortByDistance(tls *libc.TLS, aIdx uintptr, nIdx int32, aDistance uintptr, aSpare uintptr) { /* sqlite3.c:193490:13: */ +func sSortByDistance(tls *libc.TLS, aIdx uintptr, nIdx int32, aDistance uintptr, aSpare uintptr) { /* sqlite3.c:193502:13: */ if nIdx > 1 { var iLeft int32 = 0 var iRight int32 = 0 @@ -168494,7 +168542,7 @@ func sSortByDistance(tls *libc.TLS, aIdx uintptr, nIdx int32, aDistance uintptr, // // The aSpare array is used as temporary working space by the // sorting algorithm. -func sSortByDimension(tls *libc.TLS, pRtree uintptr, aIdx uintptr, nIdx int32, iDim int32, aCell uintptr, aSpare uintptr) { /* sqlite3.c:193556:13: */ +func sSortByDimension(tls *libc.TLS, pRtree uintptr, aIdx uintptr, nIdx int32, iDim int32, aCell uintptr, aSpare uintptr) { /* sqlite3.c:193568:13: */ if nIdx > 1 { var iLeft int32 = 0 @@ -168550,7 +168598,7 @@ func sSortByDimension(tls *libc.TLS, pRtree uintptr, aIdx uintptr, nIdx int32, i } // Implementation of the R*-tree variant of SplitNode from Beckman[1990]. -func splitNodeStartree(tls *libc.TLS, pRtree uintptr, aCell uintptr, nCell int32, pLeft uintptr, pRight uintptr, pBboxLeft uintptr, pBboxRight uintptr) int32 { /* sqlite3.c:193615:12: */ +func splitNodeStartree(tls *libc.TLS, pRtree uintptr, aCell uintptr, nCell int32, pLeft uintptr, pRight uintptr, pBboxLeft uintptr, pBboxRight uintptr) int32 { /* sqlite3.c:193627:12: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -168649,7 +168697,7 @@ func splitNodeStartree(tls *libc.TLS, pRtree uintptr, aCell uintptr, nCell int32 return SQLITE_OK } -func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193713:12: */ +func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193725:12: */ var xSetMapping uintptr xSetMapping = func() uintptr { if iHeight == 0 { @@ -168672,7 +168720,7 @@ func updateMapping(tls *libc.TLS, pRtree uintptr, iRowid I64, pNode uintptr, iHe return (*(*func(*libc.TLS, uintptr, Sqlite3_int64, Sqlite3_int64) int32)(unsafe.Pointer(&xSetMapping)))(tls, pRtree, iRowid, (*RtreeNode)(unsafe.Pointer(pNode)).FiNode) } -func sSplitNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:193732:12: */ +func sSplitNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:193744:12: */ bp := tls.Alloc(100) defer tls.Free(100) @@ -168906,7 +168954,7 @@ splitnode_out: // rowid of the row to delete, which can be used to find the leaf on which // the entry resides (argument pLeaf). Once the leaf is located, this // function is called to determine its ancestry. -func fixLeafParent(tls *libc.TLS, pRtree uintptr, pLeaf uintptr) int32 { /* sqlite3.c:193879:12: */ +func fixLeafParent(tls *libc.TLS, pRtree uintptr, pLeaf uintptr) int32 { /* sqlite3.c:193891:12: */ var rc int32 = SQLITE_OK var pChild uintptr = pLeaf for ((rc == SQLITE_OK) && ((*RtreeNode)(unsafe.Pointer(pChild)).FiNode != int64(1))) && ((*RtreeNode)(unsafe.Pointer(pChild)).FpParent == uintptr(0)) { @@ -168941,7 +168989,7 @@ func fixLeafParent(tls *libc.TLS, pRtree uintptr, pLeaf uintptr) int32 { /* sqli return rc } -func removeNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193914:12: */ +func removeNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, iHeight int32) int32 { /* sqlite3.c:193926:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -168990,7 +169038,7 @@ func removeNode(tls *libc.TLS, pRtree uintptr, pNode uintptr, iHeight int32) int return SQLITE_OK } -func fixBoundingBox(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:193963:12: */ +func fixBoundingBox(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:193975:12: */ bp := tls.Alloc(100) defer tls.Free(100) @@ -169021,7 +169069,7 @@ func fixBoundingBox(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sql // Delete the cell at index iCell of node pNode. After removing the // cell, adjust the r-tree data structure if required. -func deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeight int32) int32 { /* sqlite3.c:193990:12: */ +func deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeight int32) int32 { /* sqlite3.c:194002:12: */ var pParent uintptr var rc int32 @@ -169050,7 +169098,7 @@ func deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeig return rc } -func sReinsert(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194021:12: */ +func sReinsert(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194033:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -169165,7 +169213,7 @@ func sReinsert(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHei // Insert cell pCell into node pNode. Node pNode is the head of a // subtree iHeight high (leaf nodes have iHeight==0). -func rtreeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194126:12: */ +func rtreeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr, iHeight int32) int32 { /* sqlite3.c:194138:12: */ var rc int32 = SQLITE_OK if iHeight > 0 { var pChild uintptr = nodeHashLookup(tls, pRtree, (*RtreeCell)(unsafe.Pointer(pCell)).FiRowid) @@ -169195,7 +169243,7 @@ func rtreeInsertCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, pCell uintptr return rc } -func reinsertNodeContent(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:194161:12: */ +func reinsertNodeContent(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { /* sqlite3.c:194173:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -169226,7 +169274,7 @@ func reinsertNodeContent(tls *libc.TLS, pRtree uintptr, pNode uintptr) int32 { / } // Select a currently unused rowid for a new r-tree record. -func rtreeNewRowid(tls *libc.TLS, pRtree uintptr, piRowid uintptr) int32 { /* sqlite3.c:194190:12: */ +func rtreeNewRowid(tls *libc.TLS, pRtree uintptr, piRowid uintptr) int32 { /* sqlite3.c:194202:12: */ var rc int32 Xsqlite3_bind_null(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 1) Xsqlite3_bind_null(tls, (*Rtree)(unsafe.Pointer(pRtree)).FpWriteRowid, 2) @@ -169237,7 +169285,7 @@ func rtreeNewRowid(tls *libc.TLS, pRtree uintptr, piRowid uintptr) int32 { /* sq } // Remove the entry with rowid=iDelete from the r-tree structure. -func rtreeDeleteRowid(tls *libc.TLS, pRtree uintptr, iDelete Sqlite3_int64) int32 { /* sqlite3.c:194203:12: */ +func rtreeDeleteRowid(tls *libc.TLS, pRtree uintptr, iDelete Sqlite3_int64) int32 { /* sqlite3.c:194215:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -169326,7 +169374,7 @@ func rtreeDeleteRowid(tls *libc.TLS, pRtree uintptr, iDelete Sqlite3_int64) int3 // Convert an sqlite3_value into an RtreeValue (presumably a float) // while taking care to round toward negative or positive, respectively. -func rtreeValueDown(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194300:19: */ +func rtreeValueDown(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194312:19: */ var d float64 = Xsqlite3_value_double(tls, v) var f float32 = float32(d) if float64(f) > d { @@ -169340,7 +169388,7 @@ func rtreeValueDown(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194300:1 return f } -func rtreeValueUp(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194308:19: */ +func rtreeValueUp(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194320:19: */ var d float64 = Xsqlite3_value_double(tls, v) var f float32 = float32(d) if float64(f) < d { @@ -169365,7 +169413,7 @@ func rtreeValueUp(tls *libc.TLS, v uintptr) RtreeValue { /* sqlite3.c:194308:19: // (c1<=c2) constraint on columns iCol and iCol+1 that has failed. // // If an OOM occurs, SQLITE_NOMEM is returned instead of SQLITE_CONSTRAINT. -func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* sqlite3.c:194331:12: */ +func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* sqlite3.c:194343:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -169404,7 +169452,7 @@ func rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) int32 { /* } // The xUpdate method for rtree module virtual tables. -func rtreeUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:194369:12: */ +func rtreeUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:194381:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -169633,7 +169681,7 @@ constraint: } // Called when a transaction starts. -func rtreeBeginTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194517:12: */ +func rtreeBeginTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194529:12: */ var pRtree uintptr = pVtab (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans++ @@ -169642,7 +169690,7 @@ func rtreeBeginTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:19 // Called when a transaction completes (either by COMMIT or ROLLBACK). // The sqlite3_blob object should be released at this point. -func rtreeEndTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194528:12: */ +func rtreeEndTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:194540:12: */ var pRtree uintptr = pVtab (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans = U8(0) nodeBlobReset(tls, pRtree) @@ -169650,7 +169698,7 @@ func rtreeEndTransaction(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:1945 } // The xRename method for rtree module virtual tables. -func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqlite3.c:194538:12: */ +func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqlite3.c:194550:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -169679,7 +169727,7 @@ func rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) int32 { /* sqli // INSERT INTO rtree... // DROP TABLE ; -- Would fail with SQLITE_LOCKED // COMMIT; -func rtreeSavepoint(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:194571:12: */ +func rtreeSavepoint(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:194583:12: */ var pRtree uintptr = pVtab var iwt U8 = (*Rtree)(unsafe.Pointer(pRtree)).FinWrTrans _ = iSavepoint @@ -169692,7 +169740,7 @@ func rtreeSavepoint(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* s // This function populates the pRtree->nRowEst variable with an estimate // of the number of rows in the virtual table. If possible, this is based // on sqlite_stat1 data. Otherwise, use RTREE_DEFAULT_ROWEST. -func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlite3.c:194586:12: */ +func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlite3.c:194598:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -169746,7 +169794,7 @@ func rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) int32 { /* sqlit // Return true if zName is the extension on one of the shadow tables used // by this module. -func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:194630:12: */ +func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:194642:12: */ var i uint32 for i = uint32(0); uint64(i) < (uint64(unsafe.Sizeof(azName1)) / uint64(unsafe.Sizeof(uintptr(0)))); i++ { if Xsqlite3_stricmp(tls, zName, azName1[i]) == 0 { @@ -169758,7 +169806,7 @@ func rtreeShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:194630:1 var azName1 = [3]uintptr{ ts + 30532 /* "node" */, ts + 8032 /* "parent" */, ts + 11337, /* "rowid" */ -} /* sqlite3.c:194631:21 */ +} /* sqlite3.c:194643:21 */ var rtreeModule = Sqlite3_module{ FiVersion: 3, // iVersion @@ -169782,9 +169830,9 @@ var rtreeModule = Sqlite3_module{ FxRename: 0, // xRename - rename the table FxSavepoint: 0, // xRollbackTo FxShadowName: 0, // xShadowName -} /* sqlite3.c:194641:23 */ +} /* sqlite3.c:194653:23 */ -func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefix uintptr, isCreate int32) int32 { /* sqlite3.c:194668:12: */ +func rtreeSqlInit(tls *libc.TLS, pRtree uintptr, db uintptr, zDb uintptr, zPrefix uintptr, isCreate int32) int32 { /* sqlite3.c:194680:12: */ bp := tls.Alloc(232) defer tls.Free(232) @@ -169903,14 +169951,14 @@ var azSql = [8]uintptr{ ts + 31262, /* "SELECT parentnod..." */ ts + 31320, /* "INSERT OR REPLAC..." */ ts + 31375, /* "DELETE FROM '%q'..." */ -} /* sqlite3.c:194678:21 */ +} /* sqlite3.c:194690:21 */ // The second argument to this function contains the text of an SQL statement // that returns a single integer value. The statement is compiled and executed // using database connection db. If successful, the integer value returned // is written to *piVal and SQLITE_OK returned. Otherwise, an SQLite error // code is returned and the value of *piVal after returning is not defined. -func getIntFromStmt(tls *libc.TLS, db uintptr, zSql uintptr, piVal uintptr) int32 { /* sqlite3.c:194798:12: */ +func getIntFromStmt(tls *libc.TLS, db uintptr, zSql uintptr, piVal uintptr) int32 { /* sqlite3.c:194810:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -169941,7 +169989,7 @@ func getIntFromStmt(tls *libc.TLS, db uintptr, zSql uintptr, piVal uintptr) int3 // This ensures that each node is stored on a single database page. If the // database page-size is so large that more than RTREE_MAXCELLS entries // would fit in a single node, use a smaller node-size. -func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzErr uintptr) int32 { /* sqlite3.c:194828:12: */ +func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzErr uintptr) int32 { /* sqlite3.c:194840:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -169979,7 +170027,7 @@ func getNodeSize(tls *libc.TLS, db uintptr, pRtree uintptr, isCreate int32, pzEr } // Return the length of a token -func rtreeTokenLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:194871:12: */ +func rtreeTokenLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:194883:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -169994,7 +170042,7 @@ func rtreeTokenLength(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:194871:12: // argv[1] -> database name // argv[2] -> table name // argv[...] -> column names... -func rtreeInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:194885:12: */ +func rtreeInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:194897:12: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -170194,7 +170242,7 @@ __25: return rc } -var azFormat = [2]uintptr{ts + 31718 /* ",%.*s REAL" */, ts + 31729 /* ",%.*s INT" */} /* sqlite3.c:194951:25 */ +var azFormat = [2]uintptr{ts + 31718 /* ",%.*s REAL" */, ts + 31729 /* ",%.*s INT" */} /* sqlite3.c:194963:25 */ // Implementation of a scalar function that decodes r-tree nodes to // human readable strings. This can be used for debugging and analysis. @@ -170210,7 +170258,7 @@ var azFormat = [2]uintptr{ts + 31718 /* ",%.*s REAL" */, ts + 31729 /* ",%.*s IN // entry for each cell in the r-tree node. Each entry is itself a // list, containing the 8-byte rowid/pageno followed by the // *2 coordinates. -func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195022:13: */ +func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195034:13: */ bp := tls.Alloc(1072) defer tls.Free(1072) @@ -170270,7 +170318,7 @@ func rtreenode(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlit // The depth value is 0 for all nodes other than the root node, and the root // node always has nodeno=1, so the example above is the primary use for this // routine. This routine is intended for testing and analysis only. -func rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195073:13: */ +func rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195085:13: */ _ = nArg if (Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(apArg))) != SQLITE_BLOB) || (Xsqlite3_value_bytes(tls, *(*uintptr)(unsafe.Pointer(apArg))) < 2) { @@ -170298,15 +170346,15 @@ type RtreeCheck1 = struct { FzReport uintptr FnErr int32 _ [4]byte -} /* sqlite3.c:195089:9 */ +} /* sqlite3.c:195101:9 */ // Context object passed between the various routines that make up the // implementation of integrity-check function rtreecheck(). -type RtreeCheck = RtreeCheck1 /* sqlite3.c:195089:27 */ +type RtreeCheck = RtreeCheck1 /* sqlite3.c:195101:27 */ // Reset SQL statement pStmt. If the sqlite3_reset() call returns an error, // and RtreeCheck.rc==SQLITE_OK, set RtreeCheck.rc to the error code. -func rtreeCheckReset(tls *libc.TLS, pCheck uintptr, pStmt uintptr) { /* sqlite3.c:195111:13: */ +func rtreeCheckReset(tls *libc.TLS, pCheck uintptr, pStmt uintptr) { /* sqlite3.c:195123:13: */ var rc int32 = Xsqlite3_reset(tls, pStmt) if (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK { (*RtreeCheck)(unsafe.Pointer(pCheck)).Frc = rc @@ -170319,7 +170367,7 @@ func rtreeCheckReset(tls *libc.TLS, pCheck uintptr, pStmt uintptr) { /* sqlite3. // // If successful, a pointer to the new SQL statement is returned. Otherwise, // NULL is returned and an error code left in RtreeCheck.rc. -func rtreeCheckPrepare(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:195124:21: */ +func rtreeCheckPrepare(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:195136:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -170347,7 +170395,7 @@ func rtreeCheckPrepare(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) // The second and subsequent arguments to this function are a printf() // style format string and arguments. This function formats the string and // appends it to the report being accumuated in pCheck. -func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:195153:13: */ +func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:195165:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -170387,7 +170435,7 @@ func rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr // Or, if an error does occur, NULL is returned and an error code left // in the RtreeCheck object. The final value of *pnNode is undefined in // this case. -func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) uintptr { /* sqlite3.c:195187:11: */ +func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) uintptr { /* sqlite3.c:195199:11: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -170431,7 +170479,7 @@ func rtreeCheckGetNode(tls *libc.TLS, pCheck uintptr, iNode I64, pnNode uintptr) // In both cases, this function checks that there exists an entry with // IPK value iKey and the second column set to iVal. // -func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVal I64) { /* sqlite3.c:195231:13: */ +func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVal I64) { /* sqlite3.c:195243:13: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -170487,7 +170535,7 @@ func rtreeCheckMapping(tls *libc.TLS, pCheck uintptr, bLeaf int32, iKey I64, iVa // containing pCell. In this case it is also verified that the two // sets of coordinates are mutually consistent and an error message added // to the RtreeCheck object if they are not. -func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, pCell uintptr, pParent uintptr) { /* sqlite3.c:195283:13: */ +func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, pCell uintptr, pParent uintptr) { /* sqlite3.c:195295:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -170545,7 +170593,7 @@ func rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode I64, iCell int32, // // If any problems are discovered, an error message is appended to the // report accumulated in the RtreeCheck object. -func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr, iNode I64) { /* sqlite3.c:195329:13: */ +func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr, iNode I64) { /* sqlite3.c:195341:13: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -170599,7 +170647,7 @@ func rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr // %_rowid or %_parent table is exactly nExpect. If not, it adds // an error message to the report in the RtreeCheck object indicated // by the first argument. -func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { /* sqlite3.c:195392:13: */ +func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { /* sqlite3.c:195404:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -170622,7 +170670,7 @@ func rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect I64) { // This function does the bulk of the work for the rtree integrity-check. // It is called by rtreecheck(), which is the SQL function implementation. -func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzReport uintptr) int32 { /* sqlite3.c:195416:12: */ +func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzReport uintptr) int32 { /* sqlite3.c:195428:12: */ bp := tls.Alloc(120) defer tls.Free(120) @@ -170728,7 +170776,7 @@ func rtreeCheckTable(tls *libc.TLS, db uintptr, zDb uintptr, zTab uintptr, pzRep // as there are non-leaf cells in the r-tree structure, and that // there is a non-leaf cell that corresponds to each entry in the // %_parent table. -func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195521:13: */ +func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:195533:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -170787,7 +170835,7 @@ func rtreecheck(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { /* sqli // Compiler and version // Datatype for coordinates -type GeoCoord = float32 /* sqlite3.c:195645:15 */ +type GeoCoord = float32 /* sqlite3.c:195657:15 */ // Internal representation of a polygon. // @@ -170813,7 +170861,7 @@ type GeoPoly1 = struct { FnVertex int32 Fhdr [4]uint8 Fa [8]GeoCoord -} /* sqlite3.c:195669:9 */ +} /* sqlite3.c:195681:9 */ // Internal representation of a polygon. // @@ -170835,7 +170883,7 @@ type GeoPoly1 = struct { // warnings coming from some compiler (notably, clang). In reality, the size // of each GeoPoly memory allocate is adjusted as necessary so that the // GeoPoly.a[] array at the end is the appropriate size. -type GeoPoly = GeoPoly1 /* sqlite3.c:195669:24 */ +type GeoPoly = GeoPoly1 /* sqlite3.c:195681:24 */ // The size of a memory allocation needed for a GeoPoly object sufficient // to hold N coordinate pairs. @@ -170852,7 +170900,7 @@ type GeoParse1 = struct { FnErr int32 _ [4]byte Fa uintptr -} /* sqlite3.c:195692:9 */ +} /* sqlite3.c:195704:9 */ // The size of a memory allocation needed for a GeoPoly object sufficient // to hold N coordinate pairs. @@ -170862,10 +170910,10 @@ type GeoParse1 = struct { // to silence (incorrect) UBSAN warnings if the array index is too large. // State of a parse of a GeoJSON input. -type GeoParse = GeoParse1 /* sqlite3.c:195692:25 */ +type GeoParse = GeoParse1 /* sqlite3.c:195704:25 */ // Do a 4-byte byte swap -func geopolySwab32(tls *libc.TLS, a uintptr) { /* sqlite3.c:195702:13: */ +func geopolySwab32(tls *libc.TLS, a uintptr) { /* sqlite3.c:195714:13: */ var t uint8 = *(*uint8)(unsafe.Pointer(a)) *(*uint8)(unsafe.Pointer(a)) = *(*uint8)(unsafe.Pointer(a + 3)) *(*uint8)(unsafe.Pointer(a + 3)) = t @@ -170875,7 +170923,7 @@ func geopolySwab32(tls *libc.TLS, a uintptr) { /* sqlite3.c:195702:13: */ } // Skip whitespace. Return the next non-whitespace character. -func geopolySkipSpace(tls *libc.TLS, p uintptr) int8 { /* sqlite3.c:195712:13: */ +func geopolySkipSpace(tls *libc.TLS, p uintptr) int8 { /* sqlite3.c:195724:13: */ for jsonIsSpace[*(*uint8)(unsafe.Pointer((*GeoParse)(unsafe.Pointer(p)).Fz))] != 0 { (*GeoParse)(unsafe.Pointer(p)).Fz++ } @@ -170884,7 +170932,7 @@ func geopolySkipSpace(tls *libc.TLS, p uintptr) int8 { /* sqlite3.c:195712:13: * // Parse out a number. Write the value into *pVal if pVal!=0. // return non-zero on success and zero if the next token is not a number. -func geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) int32 { /* sqlite3.c:195720:12: */ +func geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) int32 { /* sqlite3.c:195732:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -170956,7 +171004,7 @@ func geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) int32 { /* sqlit // that object. // // If any error occurs, return NULL. -func geopolyParseJson(tls *libc.TLS, z uintptr, pRc uintptr) uintptr { /* sqlite3.c:195778:16: */ +func geopolyParseJson(tls *libc.TLS, z uintptr, pRc uintptr) uintptr { /* sqlite3.c:195790:16: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -171101,7 +171149,7 @@ __16: // in the binary format or JSON text. Compute a GeoPoly object and // return a pointer to that object. Or if the input is not a well-formed // polygon, put an error message in sqlite3_context and return NULL. -func geopolyFuncParam(tls *libc.TLS, pCtx uintptr, pVal uintptr, pRc uintptr) uintptr { /* sqlite3.c:195855:16: */ +func geopolyFuncParam(tls *libc.TLS, pCtx uintptr, pVal uintptr, pRc uintptr) uintptr { /* sqlite3.c:195867:16: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -171163,7 +171211,7 @@ func geopolyFuncParam(tls *libc.TLS, pCtx uintptr, pVal uintptr, pRc uintptr) ui // If the input is a well-formed Geopoly BLOB or JSON string // then return the BLOB representation of the polygon. Otherwise // return NULL. -func geopolyBlobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195911:13: */ +func geopolyBlobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195923:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) if p != 0 { Xsqlite3_result_blob(tls, context, p+4, /* &.hdr */ @@ -171176,7 +171224,7 @@ func geopolyBlobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // // Interpret X as a polygon and render it as a JSON array // of coordinates. Or, if X is not a valid polygon, return NULL. -func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195930:13: */ +func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195942:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -171199,7 +171247,7 @@ func geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // // Interpret X as a polygon and render it as a SVG . // Additional arguments are added as attributes to the . -func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195956:13: */ +func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:195968:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -171245,7 +171293,7 @@ func geopolySvgFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // Rotate by R around the point (0,0): // // geopoly_xform(poly, cos(R), sin(R), -sin(R), cos(R), 0, 0) -func geopolyXformFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196003:13: */ +func geopolyXformFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196015:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var A float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 1*8))) var B float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 2*8))) @@ -171278,7 +171326,7 @@ func geopolyXformFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) // This routine can also be used to detect polygons that rotate in // the wrong direction. Polygons are suppose to be counter-clockwise (CCW). // This routine returns a negative value for clockwise (CW) polygons. -func geopolyArea(tls *libc.TLS, p uintptr) float64 { /* sqlite3.c:196039:15: */ +func geopolyArea(tls *libc.TLS, p uintptr) float64 { /* sqlite3.c:196051:15: */ var rArea float64 = 0.0 var ii int32 for ii = 0; ii < ((*GeoPoly)(unsafe.Pointer(p)).FnVertex - 1); ii++ { @@ -171298,7 +171346,7 @@ func geopolyArea(tls *libc.TLS, p uintptr) float64 { /* sqlite3.c:196039:15: */ // enclosed by the polygon. If the polygon circulates clockwise instead // of counterclockwise (as it should) then return the negative of the // enclosed area. Otherwise return NULL. -func geopolyAreaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196061:13: */ +func geopolyAreaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196073:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) if p != 0 { Xsqlite3_result_double(tls, context, geopolyArea(tls, p)) @@ -171317,7 +171365,7 @@ func geopolyAreaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // // Use this routine to sanitize historical inputs that that sometimes // contain polygons that wind in the wrong direction. -func geopolyCcwFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196086:13: */ +func geopolyCcwFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196098:13: */ var p uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) if p != 0 { if geopolyArea(tls, p) < 0.0 { @@ -171353,7 +171401,7 @@ func geopolyCcwFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { } // Fast approximation for sine(X) for X between -0.5*pi and 2*pi -func geopolySine(tls *libc.TLS, r float64) float64 { /* sqlite3.c:196114:15: */ +func geopolySine(tls *libc.TLS, r float64) float64 { /* sqlite3.c:196126:15: */ if r >= (float64(1.5) * 3.1415926535897932385) { r = r - (float64(2.0) * 3.1415926535897932385) @@ -171373,7 +171421,7 @@ func geopolySine(tls *libc.TLS, r float64) float64 { /* sqlite3.c:196114:15: */ // // Construct a simple, convex, regular polygon centered at X, Y // with circumradius R and with N sides. -func geopolyRegularFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196135:13: */ +func geopolyRegularFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196147:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -171418,7 +171466,7 @@ func geopolyRegularFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr // // If pPoly is NULL but aCoord is not NULL, then compute a new GeoPoly from // the bounding box in aCoord and return a pointer to that GeoPoly. -func geopolyBBox(tls *libc.TLS, context uintptr, pPoly uintptr, aCoord uintptr, pRc uintptr) uintptr { /* sqlite3.c:196178:16: */ +func geopolyBBox(tls *libc.TLS, context uintptr, pPoly uintptr, aCoord uintptr, pRc uintptr) uintptr { /* sqlite3.c:196190:16: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -171554,7 +171602,7 @@ __4: } // Implementation of the geopoly_bbox(X) SQL function. -func geopolyBBoxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196249:13: */ +func geopolyBBoxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196261:13: */ var p uintptr = geopolyBBox(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0), uintptr(0)) if p != 0 { Xsqlite3_result_blob(tls, context, p+4, /* &.hdr */ @@ -171567,13 +171615,13 @@ func geopolyBBoxFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { type GeoBBox1 = struct { FisInit int32 Fa [4]RtreeCoord -} /* sqlite3.c:196265:9 */ +} /* sqlite3.c:196277:9 */ // State vector for the geopoly_group_bbox() aggregate function. -type GeoBBox = GeoBBox1 /* sqlite3.c:196265:24 */ +type GeoBBox = GeoBBox1 /* sqlite3.c:196277:24 */ // Implementation of the geopoly_group_bbox(X) aggregate SQL function. -func geopolyBBoxStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196275:13: */ +func geopolyBBoxStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196287:13: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -171607,7 +171655,7 @@ func geopolyBBoxStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { } } -func geopolyBBoxFinal(tls *libc.TLS, context uintptr) { /* sqlite3.c:196298:13: */ +func geopolyBBoxFinal(tls *libc.TLS, context uintptr) { /* sqlite3.c:196310:13: */ var p uintptr var pBBox uintptr pBBox = Xsqlite3_aggregate_context(tls, context, 0) @@ -171634,7 +171682,7 @@ func geopolyBBoxFinal(tls *libc.TLS, context uintptr) { /* sqlite3.c:196298:13: // // The left-most coordinate min(x1,x2) is not considered to be part of // the line segment for the purposes of this analysis. -func pointBeneathLine(tls *libc.TLS, x0 float64, y0 float64, x1 float64, y1 float64, x2 float64, y2 float64) int32 { /* sqlite3.c:196328:12: */ +func pointBeneathLine(tls *libc.TLS, x0 float64, y0 float64, x1 float64, y1 float64, x2 float64, y2 float64) int32 { /* sqlite3.c:196340:12: */ var y float64 if (x0 == x1) && (y0 == y1) { return 2 @@ -171675,7 +171723,7 @@ func pointBeneathLine(tls *libc.TLS, x0 float64, y0 float64, x1 float64, y1 floa // Return +2 if point X,Y is within polygon P. // Return +1 if point X,Y is on the polygon boundary. // Return 0 if point X,Y is outside the polygon -func geopolyContainsPointFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196359:13: */ +func geopolyContainsPointFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196371:13: */ var p1 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var x0 float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 1*8))) var y0 float64 = Xsqlite3_value_double(tls, *(*uintptr)(unsafe.Pointer(argv + 2*8))) @@ -171713,7 +171761,7 @@ func geopolyContainsPointFunc(tls *libc.TLS, context uintptr, argc int32, argv u // Return +1 if P2 is contained within P1 // Return 0 if any part of P2 is on the outside of P1 // -func geopolyWithinFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196402:13: */ +func geopolyWithinFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196414:13: */ var p1 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var p2 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv + 1*8)), uintptr(0)) if (p1 != 0) && (p2 != 0) { @@ -171745,10 +171793,10 @@ type GeoEvent1 = struct { _ [4]byte FpSeg uintptr FpNext uintptr -} /* sqlite3.c:196422:9 */ +} /* sqlite3.c:196434:9 */ // Objects used by the overlap algorihm. -type GeoEvent = GeoEvent1 /* sqlite3.c:196422:25 */ +type GeoEvent = GeoEvent1 /* sqlite3.c:196434:25 */ type GeoSegment1 = struct { FC float64 FB float64 @@ -171759,20 +171807,20 @@ type GeoSegment1 = struct { Fidx uint32 _ [4]byte FpNext uintptr -} /* sqlite3.c:196422:9 */ +} /* sqlite3.c:196434:9 */ -type GeoSegment = GeoSegment1 /* sqlite3.c:196423:27 */ +type GeoSegment = GeoSegment1 /* sqlite3.c:196435:27 */ type GeoOverlap1 = struct { FaEvent uintptr FaSegment uintptr FnEvent int32 FnSegment int32 -} /* sqlite3.c:196424:9 */ +} /* sqlite3.c:196436:9 */ -type GeoOverlap = GeoOverlap1 /* sqlite3.c:196424:27 */ +type GeoOverlap = GeoOverlap1 /* sqlite3.c:196436:27 */ // Add a single segment and its associated events. -func geopolyAddOneSegment(tls *libc.TLS, p uintptr, x0 GeoCoord, y0 GeoCoord, x1 GeoCoord, y1 GeoCoord, side uint8, idx uint32) { /* sqlite3.c:196449:13: */ +func geopolyAddOneSegment(tls *libc.TLS, p uintptr, x0 GeoCoord, y0 GeoCoord, x1 GeoCoord, y1 GeoCoord, side uint8, idx uint32) { /* sqlite3.c:196461:13: */ var pSeg uintptr var pEvent uintptr if x0 == x1 { @@ -171806,7 +171854,7 @@ func geopolyAddOneSegment(tls *libc.TLS, p uintptr, x0 GeoCoord, y0 GeoCoord, x1 } // Insert all segments and events for polygon pPoly. -func geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { /* sqlite3.c:196493:13: */ +func geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { /* sqlite3.c:196505:13: */ var i uint32 var x uintptr for i = uint32(0); i < (uint32((*GeoPoly)(unsafe.Pointer(pPoly)).FnVertex) - uint32(1)); i++ { @@ -171818,7 +171866,7 @@ func geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { / } // Merge two lists of sorted events by X coordinate -func geopolyEventMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196511:17: */ +func geopolyEventMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196523:17: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -171848,7 +171896,7 @@ func geopolyEventMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { / } // Sort an array of nEvent event objects into a list. -func geopolySortEventsByX(tls *libc.TLS, aEvent uintptr, nEvent int32) uintptr { /* sqlite3.c:196533:17: */ +func geopolySortEventsByX(tls *libc.TLS, aEvent uintptr, nEvent int32) uintptr { /* sqlite3.c:196545:17: */ bp := tls.Alloc(400) defer tls.Free(400) @@ -171878,7 +171926,7 @@ func geopolySortEventsByX(tls *libc.TLS, aEvent uintptr, nEvent int32) uintptr { } // Merge two lists of sorted segments by Y, and then by C. -func geopolySegmentMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196558:19: */ +func geopolySegmentMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:196570:19: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -171913,7 +171961,7 @@ func geopolySegmentMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { // Sort a list of GeoSegments in order of increasing Y and in the event of // a tie, increasing C (slope). -func geopolySortSegmentsByYAndC(tls *libc.TLS, pList uintptr) uintptr { /* sqlite3.c:196583:19: */ +func geopolySortSegmentsByYAndC(tls *libc.TLS, pList uintptr) uintptr { /* sqlite3.c:196595:19: */ bp := tls.Alloc(400) defer tls.Free(400) @@ -171943,7 +171991,7 @@ func geopolySortSegmentsByYAndC(tls *libc.TLS, pList uintptr) uintptr { /* sqlit } // Determine the overlap between two polygons -func geopolyOverlap(tls *libc.TLS, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:196609:12: */ +func geopolyOverlap(tls *libc.TLS, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:196621:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -172170,7 +172218,7 @@ geopolyOverlapDone: // 3 P2 is completely contained within P1 // 4 P1 and P2 are the same polygon // NULL Either P1 or P2 or both are not valid polygons -func geopolyOverlapFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196732:13: */ +func geopolyOverlapFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196744:13: */ var p1 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv)), uintptr(0)) var p2 uintptr = geopolyFuncParam(tls, context, *(*uintptr)(unsafe.Pointer(argv + 1*8)), uintptr(0)) if (p1 != 0) && (p2 != 0) { @@ -172186,7 +172234,7 @@ func geopolyOverlapFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr } // Enable or disable debugging output -func geopolyDebugFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196754:13: */ +func geopolyDebugFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:196766:13: */ } // This function is the implementation of both the xConnect and xCreate @@ -172196,7 +172244,7 @@ func geopolyDebugFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) // argv[1] -> database name // argv[2] -> table name // argv[...] -> column names... -func geopolyInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:196773:12: */ +func geopolyInit(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr, isCreate int32) int32 { /* sqlite3.c:196785:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -172311,12 +172359,12 @@ __11: } // GEOPOLY virtual table module xCreate method. -func geopolyCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196857:12: */ +func geopolyCreate(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196869:12: */ return geopolyInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 1) } // GEOPOLY virtual table module xConnect method. -func geopolyConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196870:12: */ +func geopolyConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:196882:12: */ return geopolyInit(tls, db, pAux, argc, argv, ppVtab, pzErr, 0) } @@ -172330,7 +172378,7 @@ func geopolyConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv ui // 3 search for objects overlapping the same bounding box // that contains polygon argv[0] // 4 full table scan -func geopolyFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:196893:12: */ +func geopolyFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:196905:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -172497,7 +172545,7 @@ geopoly_filter_end: // 3 "rtree" R-tree within query using geopoly_within() // 4 "fullscan" full-table scan. // ------------------------------------------------ -func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:197024:12: */ +func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:197036:12: */ var ii int32 var iRowidTerm int32 = -1 var iFuncTerm int32 = -1 @@ -172548,7 +172596,7 @@ func geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* s } // GEOPOLY virtual table module xColumn method. -func geopolyColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:197076:12: */ +func geopolyColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:197088:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -172613,7 +172661,7 @@ func geopolyColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* // argv[1] = rowid after the change. Never NULL // argv[2] = new value for _shape // argv[3] = new value for first application-defined column.... -func geopolyUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:197131:12: */ +func geopolyUpdate(tls *libc.TLS, pVtab uintptr, nData int32, aData uintptr, pRowid uintptr) int32 { /* sqlite3.c:197143:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -172823,7 +172871,7 @@ geopoly_update_end: // Report that geopoly_overlap() is an overloaded function suitable // for use in xBestIndex. -func geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:197267:12: */ +func geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:197279:12: */ if Xsqlite3_stricmp(tls, zName, ts+32707 /* "geopoly_overlap" */) == 0 { *(*uintptr)(unsafe.Pointer(pxFunc)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) @@ -172864,9 +172912,9 @@ var geopolyModule = Sqlite3_module{ FxRename: 0, // xRename - rename the table FxSavepoint: 0, // xRollbackTo FxShadowName: 0, // xShadowName -} /* sqlite3.c:197288:23 */ +} /* sqlite3.c:197300:23 */ -func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197315:12: */ +func sqlite3_geopoly_init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197327:12: */ var rc int32 = SQLITE_OK var i int32 for i = 0; (uint64(i) < (uint64(unsafe.Sizeof(aFunc1)) / uint64(unsafe.Sizeof(struct { @@ -172920,14 +172968,14 @@ var aFunc1 = [12]struct { {FxFunc: 0, FnArg: int8(7), FbPure: uint8(1), FzName: ts + 32847 /* "geopoly_xform" */}, {FxFunc: 0, FnArg: int8(4), FbPure: uint8(1), FzName: ts + 32861 /* "geopoly_regular" */}, {FxFunc: 0, FnArg: int8(1), FbPure: uint8(1), FzName: ts + 32877 /* "geopoly_ccw" */}, -} /* sqlite3.c:197322:5 */ +} /* sqlite3.c:197334:5 */ var aAgg1 = [1]struct { FxStep uintptr FxFinal uintptr FzName uintptr }{ {FxStep: 0, FxFinal: 0, FzName: ts + 32889 /* "geopoly_group_bb..." */}, -} /* sqlite3.c:197340:5 */ +} /* sqlite3.c:197352:5 */ //************* End of geopoly.c ******************************************** //************* Continuing where we left off in rtree.c ********************* @@ -172935,7 +172983,7 @@ var aAgg1 = [1]struct { // Register the r-tree module with database handle db. This creates the // virtual table module "rtree" and the debugging/analysis scalar // function "rtreenode". -func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197375:20: */ +func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197387:20: */ var utf8 int32 = SQLITE_UTF8 var rc int32 @@ -172972,7 +173020,7 @@ func Xsqlite3RtreeInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:197375:20 // or sqlite3_rtree_query_callback(). In other words, this routine is the // destructor for an RtreeGeomCallback objecct. This routine is called when // the corresponding SQL function is deleted. -func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:197414:13: */ +func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:197426:13: */ var pInfo uintptr = p if (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FxDestructor != 0 { (*(*func(*libc.TLS, uintptr))(unsafe.Pointer((pInfo + 16 /* &.xDestructor */))))(tls, (*RtreeGeomCallback)(unsafe.Pointer(pInfo)).FpContext) @@ -172981,7 +173029,7 @@ func rtreeFreeCallback(tls *libc.TLS, p uintptr) { /* sqlite3.c:197414:13: */ } // This routine frees the BLOB that is returned by geomCallback(). -func rtreeMatchArgFree(tls *libc.TLS, pArg uintptr) { /* sqlite3.c:197423:13: */ +func rtreeMatchArgFree(tls *libc.TLS, pArg uintptr) { /* sqlite3.c:197435:13: */ var i int32 var p uintptr = pArg for i = 0; i < (*RtreeMatchArg)(unsafe.Pointer(p)).FnParam; i++ { @@ -173002,7 +173050,7 @@ func rtreeMatchArgFree(tls *libc.TLS, pArg uintptr) { /* sqlite3.c:197423:13: */ // The R-Tree MATCH operator will read the returned BLOB, deserialize // the RtreeMatchArg object, and use the RtreeMatchArg object to figure // out which elements of the R-Tree should be returned by the query. -func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sqlite3.c:197446:13: */ +func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sqlite3.c:197458:13: */ var pGeomCtx uintptr = Xsqlite3_user_data(tls, ctx) var pBlob uintptr var nBlob Sqlite3_int64 @@ -173036,7 +173084,7 @@ func geomCallback(tls *libc.TLS, ctx uintptr, nArg int32, aArg uintptr) { /* sql } // Register a new geometry function for use with the r-tree MATCH operator. -func Xsqlite3_rtree_geometry_callback(tls *libc.TLS, db uintptr, zGeom uintptr, xGeom uintptr, pContext uintptr) int32 { /* sqlite3.c:197484:16: */ +func Xsqlite3_rtree_geometry_callback(tls *libc.TLS, db uintptr, zGeom uintptr, xGeom uintptr, pContext uintptr) int32 { /* sqlite3.c:197496:16: */ var pGeomCtx uintptr // Context object for new user-function // Allocate and populate the context object. @@ -173056,7 +173104,7 @@ func Xsqlite3_rtree_geometry_callback(tls *libc.TLS, db uintptr, zGeom uintptr, // Register a new 2nd-generation geometry function for use with the // r-tree MATCH operator. -func Xsqlite3_rtree_query_callback(tls *libc.TLS, db uintptr, zQueryFunc uintptr, xQueryFunc uintptr, pContext uintptr, xDestructor uintptr) int32 { /* sqlite3.c:197508:16: */ +func Xsqlite3_rtree_query_callback(tls *libc.TLS, db uintptr, zQueryFunc uintptr, xQueryFunc uintptr, pContext uintptr, xDestructor uintptr) int32 { /* sqlite3.c:197520:16: */ var pGeomCtx uintptr // Context object for new user-function // Allocate and populate the context object. @@ -173509,7 +173557,7 @@ type sqlite3rbu = struct { FnRbu int32 _ [4]byte FpRbuFd uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ //************* End of rtree.c ********************************************** //************* Begin file icu.c ******************************************** @@ -173910,7 +173958,7 @@ type sqlite3rbu = struct { // #include "sqlite3.h" ** Required for error code definitions ** -type Sqlite3rbu = sqlite3rbu /* sqlite3.c:198735:27 */ +type Sqlite3rbu = sqlite3rbu /* sqlite3.c:198747:27 */ //************* End of sqlite3rbu.h ***************************************** //************* Continuing where we left off in sqlite3rbu.c **************** @@ -173972,7 +174020,7 @@ type Sqlite3rbu = sqlite3rbu /* sqlite3.c:198735:27 */ type RbuFrame1 = struct { FiDbPage U32 FiWalFrame U32 -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ //************* End of sqlite3rbu.h ***************************************** //************* Continuing where we left off in sqlite3rbu.c **************** @@ -174031,7 +174079,7 @@ type RbuFrame1 = struct { // Only valid if STAGE==1. The RBU database name of the table // currently being read. -type RbuFrame = RbuFrame1 /* sqlite3.c:199159:25 */ +type RbuFrame = RbuFrame1 /* sqlite3.c:199171:25 */ type RbuObjIter1 = struct { FpTblIter uintptr FpIdxIter uintptr @@ -174063,9 +174111,9 @@ type RbuObjIter1 = struct { FaIdxCol uintptr FzIdxSql uintptr FpRbuUpdate uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type RbuObjIter = RbuObjIter1 /* sqlite3.c:199160:27 */ +type RbuObjIter = RbuObjIter1 /* sqlite3.c:199172:27 */ type RbuState1 = struct { FeStage int32 _ [4]byte @@ -174080,16 +174128,16 @@ type RbuState1 = struct { _ [4]byte FiOalSz I64 FnPhaseOneStep I64 -} /* sqlite3.c:199161:9 */ +} /* sqlite3.c:199173:9 */ -type RbuState = RbuState1 /* sqlite3.c:199161:25 */ +type RbuState = RbuState1 /* sqlite3.c:199173:25 */ type RbuSpan1 = struct { FzSpan uintptr FnSpan int32 _ [4]byte -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type RbuSpan = RbuSpan1 /* sqlite3.c:199162:24 */ +type RbuSpan = RbuSpan1 /* sqlite3.c:199174:24 */ type rbu_vfs = struct { Fbase Sqlite3_vfs FpRealVfs uintptr @@ -174097,9 +174145,9 @@ type rbu_vfs = struct { FpRbu uintptr FpMain uintptr FpMainRbu uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type Rbu_vfs = rbu_vfs /* sqlite3.c:199163:24 */ +type Rbu_vfs = rbu_vfs /* sqlite3.c:199175:24 */ type rbu_file = struct { Fbase Sqlite3_file FpReal uintptr @@ -174118,16 +174166,16 @@ type rbu_file = struct { FpWalFd uintptr FpMainNext uintptr FpMainRbuNext uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type Rbu_file = rbu_file /* sqlite3.c:199164:25 */ +type Rbu_file = rbu_file /* sqlite3.c:199176:25 */ type RbuUpdateStmt1 = struct { FzMask uintptr FpUpdate uintptr FpNext uintptr -} /* sqlite3.c:198735:9 */ +} /* sqlite3.c:198747:9 */ -type RbuUpdateStmt = RbuUpdateStmt1 /* sqlite3.c:199165:30 */ +type RbuUpdateStmt = RbuUpdateStmt1 /* sqlite3.c:199177:30 */ // True for an RBU vacuum handle, or false otherwise. @@ -174146,7 +174194,7 @@ type RbuUpdateStmt = RbuUpdateStmt1 /* sqlite3.c:199165:30 */ // finished, leave *pz pointing to the first character past the end of // the integer. The *pLen parameter holds the length of the string // in *pz and is decremented once for each character in the integer. -func rbuDeltaGetInt(tls *libc.TLS, pz uintptr, pLen uintptr) uint32 { /* sqlite3.c:199455:21: */ +func rbuDeltaGetInt(tls *libc.TLS, pz uintptr, pLen uintptr) uint32 { /* sqlite3.c:199467:21: */ var v uint32 = uint32(0) var c int32 var z uintptr = *(*uintptr)(unsafe.Pointer(pz)) @@ -174169,7 +174217,7 @@ var zValue = [128]int8{ int8(25), int8(26), int8(27), int8(28), int8(29), int8(30), int8(31), int8(32), int8(33), int8(34), int8(35), int8(-1), int8(-1), int8(-1), int8(-1), int8(36), int8(-1), int8(37), int8(38), int8(39), int8(40), int8(41), int8(42), int8(43), int8(44), int8(45), int8(46), int8(47), int8(48), int8(49), int8(50), int8(51), int8(52), int8(53), int8(54), int8(55), int8(56), int8(57), int8(58), int8(59), int8(60), int8(61), int8(62), int8(-1), int8(-1), int8(-1), int8(63), int8(-1), -} /* sqlite3.c:199456:28 */ +} /* sqlite3.c:199468:28 */ // Apply a delta. // @@ -174189,7 +174237,7 @@ var zValue = [128]int8{ // // Refer to the delta_create() documentation above for a description // of the delta file format. -func rbuDeltaApply(tls *libc.TLS, zSrc uintptr, lenSrc int32, zDelta uintptr, lenDelta int32, zOut uintptr) int32 { /* sqlite3.c:199536:12: */ +func rbuDeltaApply(tls *libc.TLS, zSrc uintptr, lenSrc int32, zDelta uintptr, lenDelta int32, zOut uintptr) int32 { /* sqlite3.c:199548:12: */ bp := tls.Alloc(12) defer tls.Free(12) *(*uintptr)(unsafe.Pointer(bp)) = zDelta @@ -174279,7 +174327,7 @@ func rbuDeltaApply(tls *libc.TLS, zSrc uintptr, lenSrc int32, zDelta uintptr, le return -1 } -func rbuDeltaOutputSize(tls *libc.TLS, zDelta uintptr, lenDelta int32) int32 { /* sqlite3.c:199622:12: */ +func rbuDeltaOutputSize(tls *libc.TLS, zDelta uintptr, lenDelta int32) int32 { /* sqlite3.c:199634:12: */ bp := tls.Alloc(12) defer tls.Free(12) *(*uintptr)(unsafe.Pointer(bp)) = zDelta @@ -174304,7 +174352,7 @@ func rbuDeltaOutputSize(tls *libc.TLS, zDelta uintptr, lenDelta int32) int32 { / // arguments must be passed to this function. The first is the blob to // patch and the second the patch to apply. If no error occurs, this // function returns the patched blob. -func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:199644:13: */ +func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:199656:13: */ var aDelta uintptr var nDelta int32 var aOrig uintptr @@ -174347,7 +174395,7 @@ func rbuFossilDeltaFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr // an SQLite error code. Additionally, set output variable *pzErrmsg to // point to a buffer containing an error message. It is the responsibility // of the caller to (eventually) free this buffer using sqlite3_free(). -func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199697:12: */ +func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199709:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -174365,7 +174413,7 @@ func prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg // If an error has occurred, then set *pzErrmsg to point to a buffer // containing an error message. It is the responsibility of the caller // to eventually free this buffer using sqlite3_free(). -func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:199719:12: */ +func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:199731:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -174389,7 +174437,7 @@ func resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) int32 // // If argument zSql is NULL, this function assumes that an OOM has occurred. // In this case SQLITE_NOMEM is returned and *ppStmt set to NULL. -func prepareFreeAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199742:12: */ +func prepareFreeAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) int32 { /* sqlite3.c:199754:12: */ var rc int32 if zSql == uintptr(0) { @@ -174404,7 +174452,7 @@ func prepareFreeAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErr // Free the RbuObjIter.azTblCol[] and RbuObjIter.abTblPk[] arrays allocated // by an earlier call to rbuObjIterCacheTableInfo(). -func rbuObjIterFreeCols(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199764:13: */ +func rbuObjIterFreeCols(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199776:13: */ var i int32 for i = 0; i < (*RbuObjIter)(unsafe.Pointer(pIter)).FnTblCol; i++ { Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer((*RbuObjIter)(unsafe.Pointer(pIter)).FazTblCol + uintptr(i)*8))) @@ -174422,7 +174470,7 @@ func rbuObjIterFreeCols(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199764:13: // Finalize all statements and free all allocations that are specific to // the current object (table/index pair). -func rbuObjIterClearStatements(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199784:13: */ +func rbuObjIterClearStatements(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199796:13: */ var pUp uintptr Xsqlite3_finalize(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpSelect) @@ -174452,7 +174500,7 @@ func rbuObjIterClearStatements(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:1997 // Clean up any resources allocated as part of the iterator object passed // as the only argument. -func rbuObjIterFinalize(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199816:13: */ +func rbuObjIterFinalize(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199828:13: */ rbuObjIterClearStatements(tls, pIter) Xsqlite3_finalize(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpTblIter) Xsqlite3_finalize(tls, (*RbuObjIter)(unsafe.Pointer(pIter)).FpIdxIter) @@ -174466,7 +174514,7 @@ func rbuObjIterFinalize(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:199816:13: // pointing to the next entry. Otherwise, an error code and message is // left in the RBU handle passed as the first argument. A copy of the // error code is returned. -func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199832:12: */ +func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199844:12: */ var rc int32 = (*Sqlite3rbu)(unsafe.Pointer(p)).Frc if rc == SQLITE_OK { @@ -174547,7 +174595,7 @@ func rbuObjIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3. // // For an rbu vacuum handle, a copy of the first argument is returned if // the second argument is either missing or 0 (not a view). -func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { /* sqlite3.c:199912:13: */ +func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { /* sqlite3.c:199924:13: */ var p uintptr = Xsqlite3_user_data(tls, pCtx) var zIn uintptr @@ -174577,7 +174625,7 @@ func rbuTargetNameFunc(tls *libc.TLS, pCtx uintptr, argc int32, argv uintptr) { // pointing to the first entry. Otherwise, an error code and message is // left in the RBU handle passed as the first argument. A copy of the // error code is returned. -func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199948:12: */ +func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:199960:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -174612,7 +174660,7 @@ func rbuObjIterFirst(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3 // than SQLITE_OK), then this function returns NULL without modifying the // stored error code. In this case it still calls sqlite3_free() on any // printf() parameters associated with %z conversions. -func rbuMPrintf(tls *libc.TLS, p uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:199983:13: */ +func rbuMPrintf(tls *libc.TLS, p uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:199995:13: */ var zSql uintptr = uintptr(0) var ap Va_list _ = ap @@ -174638,7 +174686,7 @@ func rbuMPrintf(tls *libc.TLS, p uintptr, zFmt uintptr, va uintptr) uintptr { /* // If an error occurs, an error code and error message is stored in the // RBU handle. If an error has already occurred when this function is // called, it is a no-op. -func rbuMPrintfExec(tls *libc.TLS, p uintptr, db uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:200008:12: */ +func rbuMPrintfExec(tls *libc.TLS, p uintptr, db uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:200020:12: */ var ap Va_list _ = ap var zSql uintptr @@ -174664,7 +174712,7 @@ func rbuMPrintfExec(tls *libc.TLS, p uintptr, db uintptr, zFmt uintptr, va uintp // error has already occurred when this function is called, return NULL // immediately without attempting the allocation or modifying the stored // error code. -func rbuMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:200035:13: */ +func rbuMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:200047:13: */ var pRet uintptr = uintptr(0) if (*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -174681,7 +174729,7 @@ func rbuMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlit // Allocate and zero the pIter->azTblCol[] and abTblPk[] arrays so that // there is room for at least nCol elements. If an OOM occurs, store an // error code in the RBU handle passed as the first argument. -func rbuAllocateIterArrays(tls *libc.TLS, p uintptr, pIter uintptr, nCol int32) { /* sqlite3.c:200055:13: */ +func rbuAllocateIterArrays(tls *libc.TLS, p uintptr, pIter uintptr, nCol int32) { /* sqlite3.c:200067:13: */ var nByte Sqlite3_int64 = (Sqlite3_int64((((uint64(2) * uint64(unsafe.Sizeof(uintptr(0)))) + uint64(unsafe.Sizeof(int32(0)))) + (uint64(3) * uint64(unsafe.Sizeof(U8(0))))) * uint64(nCol))) var azNew uintptr @@ -174704,7 +174752,7 @@ func rbuAllocateIterArrays(tls *libc.TLS, p uintptr, pIter uintptr, nCol int32) // If an OOM condition is encountered when attempting to allocate memory, // output variable (*pRc) is set to SQLITE_NOMEM before returning. Otherwise, // if the allocation succeeds, (*pRc) is left unchanged. -func rbuStrndup(tls *libc.TLS, zStr uintptr, pRc uintptr) uintptr { /* sqlite3.c:200080:13: */ +func rbuStrndup(tls *libc.TLS, zStr uintptr, pRc uintptr) uintptr { /* sqlite3.c:200092:13: */ var zRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { @@ -174727,7 +174775,7 @@ func rbuStrndup(tls *libc.TLS, zStr uintptr, pRc uintptr) uintptr { /* sqlite3.c // If the sqlite3_finalize() call indicates that an error occurs, and the // rbu handle error code is not already set, set the error code and error // message accordingly. -func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:200105:13: */ +func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:200117:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -174777,7 +174825,7 @@ func rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { /* sqlite3.c:200105: // }else{ // return RBU_PK_NONE // } -func rbuTableType(tls *libc.TLS, p uintptr, zTab uintptr, peType uintptr, piTnum uintptr, piPk uintptr) { /* sqlite3.c:200153:13: */ +func rbuTableType(tls *libc.TLS, p uintptr, zTab uintptr, peType uintptr, piTnum uintptr, piPk uintptr) { /* sqlite3.c:200165:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -174893,11 +174941,12 @@ __15: goto __14 goto __16 __16: + } // This is a helper function for rbuObjIterCacheTableInfo(). It populates // the pIter->abIndexed[] array. -func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:200237:13: */ +func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:200249:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -174955,7 +175004,7 @@ func rbuObjIterCacheIndexedCols(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq // Return SQLITE_OK if successful, or an SQLite error code otherwise. If // an error does occur, an error code and error message are also left in // the RBU handle. -func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:200291:12: */ +func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:200303:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -175077,7 +175126,7 @@ func rbuObjIterCacheTableInfo(tls *libc.TLS, p uintptr, pIter uintptr) int32 { / // This function constructs and returns a pointer to a nul-terminated // string containing some SQL clause or list based on one or more of the // column names currently stored in the pIter->azTblCol[] array. -func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200401:13: */ +func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200413:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -175096,7 +175145,7 @@ func rbuObjIterGetCollist(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* // in order, for the current table. Before each column name, add the text // zPre. After each column name, add the zPost text. Use zSeparator as // the separator text (usually ", "). -func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, zSeparator uintptr, zPost uintptr) uintptr { /* sqlite3.c:200422:13: */ +func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, zSeparator uintptr, zPost uintptr) uintptr { /* sqlite3.c:200434:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -175138,7 +175187,7 @@ func rbuObjIterGetPkList(tls *libc.TLS, p uintptr, pIter uintptr, zPre uintptr, // // Instead of "?" placeholders, the actual WHERE clauses created by // this function contain literal SQL values. -func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, zWrite uintptr) uintptr { /* sqlite3.c:200467:13: */ +func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, zWrite uintptr) uintptr { /* sqlite3.c:200479:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -175197,7 +175246,7 @@ func rbuVacuumTableStart(tls *libc.TLS, p uintptr, pIter uintptr, bRowid int32, // If the expression cannot be created, NULL is returned. In this case, // the caller has to use an OFFSET clause to extract only the required // rows from the sourct table, just as it does for an RBU update operation. -func XrbuVacuumIndexStart(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200534:6: */ +func XrbuVacuumIndexStart(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200546:6: */ bp := tls.Alloc(192) defer tls.Free(192) @@ -175370,7 +175419,7 @@ index_start_out: // pzImposterCols: ... // pzImposterPk: ... // pzWhere: ... -func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterCols uintptr, pzImposterPk uintptr, pzWhere uintptr, pnBind uintptr) uintptr { /* sqlite3.c:200647:13: */ +func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterCols uintptr, pzImposterPk uintptr, pzWhere uintptr, pnBind uintptr) uintptr { /* sqlite3.c:200659:13: */ bp := tls.Alloc(208) defer tls.Free(208) @@ -175481,7 +175530,7 @@ func rbuObjIterGetIndexCols(tls *libc.TLS, p uintptr, pIter uintptr, pzImposterC // // For tables with implicit rowids - RBU_PK_EXTERNAL and RBU_PK_NONE, append // the text ", old._rowid_" to the returned value. -func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) uintptr { /* sqlite3.c:200759:13: */ +func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) uintptr { /* sqlite3.c:200771:13: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -175519,7 +175568,7 @@ func rbuObjIterGetOldlist(tls *libc.TLS, p uintptr, pIter uintptr, zObj uintptr) // Return the string: // // "b = ?1 AND c = ?2" -func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200800:13: */ +func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200812:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -175557,7 +175606,7 @@ func rbuObjIterGetWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sq // is something wrong with the rbu_control value in the rbu_control value // stored in the (p->nCol+1)'th column. Set the error code and error message // of the RBU handle to something reflecting this. -func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:200841:13: */ +func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:200853:13: */ (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = SQLITE_ERROR (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, ts+34387 /* "invalid rbu_cont..." */, 0) } @@ -175577,7 +175626,7 @@ func rbuBadControlError(tls *libc.TLS, p uintptr) { /* sqlite3.c:200841:13: */ // argument and NULL is returned. Or, if an error has already occurred // when this function is called, NULL is returned immediately, without // attempting the allocation or modifying the stored error code. -func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr) uintptr { /* sqlite3.c:200864:13: */ +func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr) uintptr { /* sqlite3.c:200876:13: */ bp := tls.Alloc(112) defer tls.Free(112) @@ -175623,7 +175672,7 @@ func rbuObjIterGetSetlist(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr // argument and NULL is returned. Or, if an error has already occurred // when this function is called, NULL is returned immediately, without // attempting the allocation or modifying the stored error code. -func rbuObjIterGetBindlist(tls *libc.TLS, p uintptr, nBind int32) uintptr { /* sqlite3.c:200918:13: */ +func rbuObjIterGetBindlist(tls *libc.TLS, p uintptr, nBind int32) uintptr { /* sqlite3.c:200930:13: */ var zRet uintptr = uintptr(0) var nByte Sqlite3_int64 = ((int64(2) * Sqlite3_int64(nBind)) + int64(1)) @@ -175653,7 +175702,7 @@ func rbuObjIterGetBindlist(tls *libc.TLS, p uintptr, nBind int32) uintptr { /* s // this function returns: // // PRIMARY KEY("b", "a" DESC) -func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200945:13: */ +func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:200957:13: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -175716,7 +175765,7 @@ func rbuWithoutRowidPK(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sql // // CREATE TABLE rbu_imposter2(c1 TEXT, c2 REAL, id INTEGER) WITHOUT ROWID; // -func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201004:13: */ +func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201016:13: */ bp := tls.Alloc(184) defer tls.Free(184) @@ -175792,7 +175841,7 @@ func rbuCreateImposterTable2(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlit // More precisely, the "same schema" means the same columns, types, // collation sequences. For tables that do not have an external PRIMARY // KEY, it also means the same PRIMARY KEY declaration. -func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201078:13: */ +func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:201090:13: */ bp := tls.Alloc(200) defer tls.Free(200) @@ -175856,7 +175905,7 @@ func rbuCreateImposterTable(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite // the target table, plus one (for the rbu_control column), plus one more // (for the rbu_rowid column) if the target table is an implicit IPK or // virtual table. -func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollist uintptr, zRbuRowid uintptr) { /* sqlite3.c:201134:13: */ +func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollist uintptr, zRbuRowid uintptr) { /* sqlite3.c:201146:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -175871,7 +175920,7 @@ func rbuObjIterPrepareTmpInsert(tls *libc.TLS, p uintptr, pIter uintptr, zCollis } } -func rbuTmpInsertFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:201152:13: */ +func rbuTmpInsertFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:201164:13: */ var p uintptr = Xsqlite3_user_data(tls, pCtx) var rc int32 = SQLITE_OK var i int32 @@ -175893,7 +175942,7 @@ func rbuTmpInsertFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { } } -func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:201182:13: */ +func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { /* sqlite3.c:201194:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -176001,7 +176050,7 @@ func rbuObjIterGetIndexWhere(tls *libc.TLS, p uintptr, pIter uintptr) uintptr { // Ensure that the SQLite statement handles required to update the // target database object currently indicated by the iterator passed // as the second argument are available. -func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32) int32 { /* sqlite3.c:201282:12: */ +func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32) int32 { /* sqlite3.c:201294:12: */ bp := tls.Alloc(628) defer tls.Free(628) @@ -176276,7 +176325,7 @@ func rbuObjIterPrepareAll(tls *libc.TLS, p uintptr, pIter uintptr, nOffset int32 // // If the zMask string does not specify any columns to update, then this // is not an error. Output variable *ppStmt is set to NULL in this case. -func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, ppStmt uintptr) int32 { /* sqlite3.c:201549:12: */ +func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, ppStmt uintptr) int32 { /* sqlite3.c:201561:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -176342,7 +176391,7 @@ func rbuGetUpdateStmt(tls *libc.TLS, p uintptr, pIter uintptr, zMask uintptr, pp return (*Sqlite3rbu)(unsafe.Pointer(p)).Frc } -func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uintptr { /* sqlite3.c:201617:16: */ +func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uintptr { /* sqlite3.c:201629:16: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -176365,7 +176414,7 @@ func rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) uin } // Free an RbuState object allocated by rbuLoadState(). -func rbuFreeState(tls *libc.TLS, p uintptr) { /* sqlite3.c:201638:13: */ +func rbuFreeState(tls *libc.TLS, p uintptr) { /* sqlite3.c:201650:13: */ if p != 0 { Xsqlite3_free(tls, (*RbuState)(unsafe.Pointer(p)).FzTbl) Xsqlite3_free(tls, (*RbuState)(unsafe.Pointer(p)).FzDataTbl) @@ -176381,7 +176430,7 @@ func rbuFreeState(tls *libc.TLS, p uintptr) { /* sqlite3.c:201638:13: */ // // If an error occurs, leave an error code and message in the rbu handle // and return NULL. -func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:201656:17: */ +func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:201668:17: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -176461,7 +176510,7 @@ func rbuLoadState(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:201656:17: */ // Open the database handle and attach the RBU database as "rbu". If an // error occurs, leave an error code and message in the RBU handle. -func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:201733:13: */ +func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:201745:13: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -176622,7 +176671,7 @@ func rbuOpenDatabase(tls *libc.TLS, p uintptr, pbRetry uintptr) { /* sqlite3.c:2 // test.db-wal => test.wal // test.db-shm => test.shm // test.db-mj7f3319fa => test.9fa -func rbuFileSuffix3(tls *libc.TLS, zBase uintptr, z uintptr) { /* sqlite3.c:201912:13: */ +func rbuFileSuffix3(tls *libc.TLS, zBase uintptr, z uintptr) { /* sqlite3.c:201924:13: */ } // Return the current wal-index header checksum for the target database @@ -176630,7 +176679,7 @@ func rbuFileSuffix3(tls *libc.TLS, zBase uintptr, z uintptr) { /* sqlite3.c:2019 // // The checksum is store in the first page of xShmMap memory as an 8-byte // blob starting at byte offset 40. -func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:201933:12: */ +func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:201945:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -176661,7 +176710,7 @@ func rbuShmChecksum(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:201933:12: */ // object, then the rbu handle is set to DONE state. This occurs if some // other client appends a transaction to the wal file in the middle of // an incremental checkpoint. -func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:201962:13: */ +func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:201974:13: */ // If pState is NULL, then the wal file may not have been opened and // recovered. Running a read-statement here to ensure that doing so @@ -176749,7 +176798,7 @@ func rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c // Called when iAmt bytes are read from offset iOff of the wal file while // the rbu object is in capture mode. Record the frame number of the frame // being read in the aFrame[] array. -func rbuCaptureWalRead(tls *libc.TLS, pRbu uintptr, iOff I64, iAmt int32) int32 { /* sqlite3.c:202046:12: */ +func rbuCaptureWalRead(tls *libc.TLS, pRbu uintptr, iOff I64, iAmt int32) int32 { /* sqlite3.c:202058:12: */ var mReq U32 = (U32(((int32(1) << WAL_LOCK_WRITE) | (int32(1) << WAL_LOCK_CKPT)) | (int32(1) << WAL_LOCK_READ0))) var iFrame U32 @@ -176788,7 +176837,7 @@ func rbuCaptureWalRead(tls *libc.TLS, pRbu uintptr, iOff I64, iAmt int32) int32 // Called when a page of data is written to offset iOff of the database // file while the rbu handle is in capture mode. Record the page number // of the page being written in the aFrame[] array. -func rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff I64) int32 { /* sqlite3.c:202078:12: */ +func rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff I64) int32 { /* sqlite3.c:202090:12: */ (*RbuFrame)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(pRbu)).FaFrame + uintptr(((*Sqlite3rbu)(unsafe.Pointer(pRbu)).FnFrame-1))*8)).FiDbPage = ((U32(iOff / I64((*Sqlite3rbu)(unsafe.Pointer(pRbu)).Fpgsz))) + U32(1)) return SQLITE_OK } @@ -176796,7 +176845,7 @@ func rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff I64) int32 { /* sqlite3 // This is called as part of an incremental checkpoint operation. Copy // a single frame of data from the wal file into the database file, as // indicated by the RbuFrame object. -func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c:202088:13: */ +func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c:202100:13: */ var pWal uintptr = (*Rbu_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd)).FpReal var pDb uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal var iOff I64 @@ -176812,7 +176861,7 @@ func rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { /* sqlite3.c } // Take an EXCLUSIVE lock on the database file. -func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:202106:13: */ +func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:202118:13: */ var pReal uintptr = (*Rbu_file)(unsafe.Pointer((*Sqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal (*Sqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer(pReal)).FpMethods + 56 /* &.xLock */))))(tls, pReal, SQLITE_LOCK_SHARED) @@ -176826,7 +176875,7 @@ func rbuLockDatabase(tls *libc.TLS, p uintptr) { /* sqlite3.c:202106:13: */ // then reopens the database file (this time in vanilla, non-oal, WAL mode). // If an error occurs, leave an error code and error message in the rbu // handle. -func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202146:13: */ +func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202158:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -176895,7 +176944,7 @@ func rbuMoveOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202146:13: */ // // If the rbu_control field contains an invalid value, an error code and // message are left in the RBU handle and zero returned. -func rbuStepType(tls *libc.TLS, p uintptr, pzMask uintptr) int32 { /* sqlite3.c:202237:12: */ +func rbuStepType(tls *libc.TLS, p uintptr, pzMask uintptr) int32 { /* sqlite3.c:202249:12: */ var iCol int32 = (*Sqlite3rbu)(unsafe.Pointer(p)).Fobjiter.FnCol // Index of rbu_control column var res int32 = 0 // Return value @@ -176951,7 +177000,7 @@ func rbuStepType(tls *libc.TLS, p uintptr, pzMask uintptr) int32 { /* sqlite3.c: // Argument eType must be one of RBU_INSERT, RBU_DELETE, RBU_IDX_INSERT or // RBU_IDX_DELETE. This function performs the work of a single // sqlite3rbu_step() call for the type of operation specified by eType. -func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:202293:13: */ +func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:202305:13: */ var pIter uintptr = (p + 80 /* &.objiter */) var pVal uintptr var pWriter uintptr @@ -177023,7 +177072,7 @@ func rbuStepOneOp(tls *libc.TLS, p uintptr, eType int32) { /* sqlite3.c:202293:1 // If no error occurs, SQLITE_OK is returned. Otherwise, an error code // and message is left in the RBU handle and a copy of the error code // returned. -func rbuStep(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202376:12: */ +func rbuStep(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202388:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -177082,7 +177131,7 @@ func rbuStep(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202376:12: */ // Or, if this is an RBU vacuum, set the schema cookie of the main db // opened by p->dbMain to one more than the schema cookie of the main // db opened by p->dbRbu. -func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:202441:13: */ +func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:202453:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -177118,7 +177167,7 @@ func rbuIncrSchemaCookie(tls *libc.TLS, p uintptr) { /* sqlite3.c:202441:13: */ // Update the contents of the rbu_state table within the rbu database. The // value stored in the RBU_STATE_STAGE column is eStage. All other values // are determined by inspecting the rbu handle passed as the first argument. -func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:202472:13: */ +func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:202484:13: */ bp := tls.Alloc(176) defer tls.Free(176) @@ -177173,7 +177222,7 @@ func rbuSaveState(tls *libc.TLS, p uintptr, eStage int32) { /* sqlite3.c:202472: // // In short, it copies the value of the specified PRAGMA setting from // dbRbu to dbMain. -func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:202533:13: */ +func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:202545:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -177192,7 +177241,7 @@ func rbuCopyPragma(tls *libc.TLS, p uintptr, zPragma uintptr) { /* sqlite3.c:202 // The RBU handle passed as the only argument has just been opened and // the state database is empty. If this RBU handle was opened for an // RBU vacuum operation, create the schema in the target db. -func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:202553:13: */ +func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:202565:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -177242,7 +177291,7 @@ func rbuCreateTargetSchema(tls *libc.TLS, p uintptr) { /* sqlite3.c:202553:13: * } // Step the RBU object. -func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202605:16: */ +func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202617:16: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -177381,7 +177430,7 @@ func Xsqlite3rbu_step(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:202605:16: // Compare strings z1 and z2, returning 0 if they are identical, or non-zero // otherwise. Either or both argument may be NULL. Two NULL values are // considered equal, and NULL is considered distinct from all other values. -func rbuStrCompare(tls *libc.TLS, z1 uintptr, z2 uintptr) int32 { /* sqlite3.c:202734:12: */ +func rbuStrCompare(tls *libc.TLS, z1 uintptr, z2 uintptr) int32 { /* sqlite3.c:202746:12: */ if (z1 == uintptr(0)) && (z2 == uintptr(0)) { return 0 } @@ -177399,7 +177448,7 @@ func rbuStrCompare(tls *libc.TLS, z1 uintptr, z2 uintptr) int32 { /* sqlite3.c:2 // // If an error occurs, an error code and error message are left in the // rbu handle passed as the first argument. -func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:202750:13: */ +func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:202762:13: */ if (*RbuState)(unsafe.Pointer(pState)).FzTbl != 0 { var pIter uintptr = (p + 80 /* &.objiter */) @@ -177429,7 +177478,7 @@ func rbuSetupOal(tls *libc.TLS, p uintptr, pState uintptr) { /* sqlite3.c:202750 // If there is a "*-oal" file in the file-system corresponding to the // target database in the file-system, delete it. If an error occurs, // leave an error code and error message in the rbu handle. -func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202783:13: */ +func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202795:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -177446,7 +177495,7 @@ func rbuDeleteOalFile(tls *libc.TLS, p uintptr) { /* sqlite3.c:202783:13: */ // argument. This VFS will be used unless the call to sqlite3rbu_open() // specified a URI with a vfs=? option in place of a target database // file name. -func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202799:13: */ +func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202811:13: */ bp := tls.Alloc(76) defer tls.Free(76) @@ -177467,7 +177516,7 @@ func rbuCreateVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202799:13: */ // Destroy the private VFS created for the rbu handle passed as the only // argument by an earlier call to rbuCreateVfs(). -func rbuDeleteVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202819:13: */ +func rbuDeleteVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202831:13: */ if (*Sqlite3rbu)(unsafe.Pointer(p)).FzVfsName != 0 { Xsqlite3rbu_destroy_vfs(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzVfsName) (*Sqlite3rbu)(unsafe.Pointer(p)).FzVfsName = uintptr(0) @@ -177477,7 +177526,7 @@ func rbuDeleteVfs(tls *libc.TLS, p uintptr) { /* sqlite3.c:202819:13: */ // This user-defined SQL function is invoked with a single argument - the // name of a table expected to appear in the target database. It returns // the number of auxilliary indexes on the table. -func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:202831:13: */ +func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:202843:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -177526,7 +177575,7 @@ func rbuIndexCntFunc(tls *libc.TLS, pCtx uintptr, nVal int32, apVal uintptr) { / // sqlite3rbu.nPhaseOneStep is initialized to the sum of (1 + nIndex) * cnt // for all rows in the rbu_count table, where nIndex is the number of // indexes on the corresponding target database table. -func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:202881:13: */ +func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:202893:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -177568,7 +177617,7 @@ func rbuInitPhaseOneSteps(tls *libc.TLS, p uintptr) { /* sqlite3.c:202881:13: */ } } -func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:202922:19: */ +func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:202934:19: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -177733,7 +177782,7 @@ func openRbuHandle(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) // Allocate and return an RBU handle with all fields zeroed except for the // error code, which is set to SQLITE_MISUSE. -func rbuMisuseError(tls *libc.TLS) uintptr { /* sqlite3.c:203078:19: */ +func rbuMisuseError(tls *libc.TLS) uintptr { /* sqlite3.c:203090:19: */ var pRet uintptr pRet = Xsqlite3_malloc64(tls, uint64(unsafe.Sizeof(Sqlite3rbu{}))) if pRet != 0 { @@ -177744,7 +177793,7 @@ func rbuMisuseError(tls *libc.TLS) uintptr { /* sqlite3.c:203078:19: */ } // Open and return a new RBU handle. -func Xsqlite3rbu_open(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:203091:23: */ +func Xsqlite3rbu_open(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintptr) uintptr { /* sqlite3.c:203103:23: */ if (zTarget == uintptr(0)) || (zRbu == uintptr(0)) { return rbuMisuseError(tls) } @@ -177753,7 +177802,7 @@ func Xsqlite3rbu_open(tls *libc.TLS, zTarget uintptr, zRbu uintptr, zState uintp } // Open a handle to begin or resume an RBU VACUUM operation. -func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr { /* sqlite3.c:203104:23: */ +func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr { /* sqlite3.c:203116:23: */ if zTarget == uintptr(0) { return rbuMisuseError(tls) } @@ -177768,7 +177817,7 @@ func Xsqlite3rbu_vacuum(tls *libc.TLS, zTarget uintptr, zState uintptr) uintptr } // Return the database handle used by pRbu. -func Xsqlite3rbu_db(tls *libc.TLS, pRbu uintptr, bRbu int32) uintptr { /* sqlite3.c:203122:20: */ +func Xsqlite3rbu_db(tls *libc.TLS, pRbu uintptr, bRbu int32) uintptr { /* sqlite3.c:203134:20: */ var db uintptr = uintptr(0) if pRbu != 0 { db = func() uintptr { @@ -177784,7 +177833,7 @@ func Xsqlite3rbu_db(tls *libc.TLS, pRbu uintptr, bRbu int32) uintptr { /* sqlite // If the error code currently stored in the RBU handle is SQLITE_CONSTRAINT, // then edit any error message string so as to remove all occurrences of // the pattern "rbu_imp_[0-9]*". -func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:203136:13: */ +func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:203148:13: */ if ((*Sqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_CONSTRAINT) && ((*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg != 0) { var i uint32 var nErrmsg Size_t = libc.Xstrlen(tls, (*Sqlite3rbu)(unsafe.Pointer(p)).FzErrmsg) @@ -177802,7 +177851,7 @@ func rbuEditErrmsg(tls *libc.TLS, p uintptr) { /* sqlite3.c:203136:13: */ } // Close the RBU handle. -func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:203154:16: */ +func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sqlite3.c:203166:16: */ var rc int32 if p != 0 { @@ -177865,13 +177914,13 @@ func Xsqlite3rbu_close(tls *libc.TLS, p uintptr, pzErrmsg uintptr) int32 { /* sq // Return the total number of key-value operations (inserts, deletes or // updates) that have been performed on the target database since the // current RBU update was started. -func Xsqlite3rbu_progress(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:203217:26: */ +func Xsqlite3rbu_progress(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:203229:26: */ return Sqlite3_int64((*Sqlite3rbu)(unsafe.Pointer(pRbu)).FnProgress) } // Return permyriadage progress indications for the two main stages of // an RBU update. -func Xsqlite3rbu_bp_progress(tls *libc.TLS, p uintptr, pnOne uintptr, pnTwo uintptr) { /* sqlite3.c:203225:17: */ +func Xsqlite3rbu_bp_progress(tls *libc.TLS, p uintptr, pnOne uintptr, pnTwo uintptr) { /* sqlite3.c:203237:17: */ var MAX_PROGRESS int32 = 10000 switch (*Sqlite3rbu)(unsafe.Pointer(p)).FeStage { case RBU_STAGE_OAL: @@ -177904,7 +177953,7 @@ func Xsqlite3rbu_bp_progress(tls *libc.TLS, p uintptr, pnOne uintptr, pnTwo uint } // Return the current state of the RBU vacuum or update operation. -func Xsqlite3rbu_state(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203260:16: */ +func Xsqlite3rbu_state(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203272:16: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -177922,7 +177971,7 @@ func Xsqlite3rbu_state(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203260:16: return int32(0) } -func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203288:16: */ +func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203300:16: */ var rc int32 = (*Sqlite3rbu)(unsafe.Pointer(p)).Frc if rc == SQLITE_DONE { return SQLITE_OK @@ -178027,7 +178076,7 @@ func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:203288 // relinquished). Finally, calls to xSync() on the target database // file fail with SQLITE_INTERNAL errors. -func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:203381:13: */ +func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:203393:13: */ if (*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0 { var xShmLock uintptr = (*sqlite3_io_methods)(unsafe.Pointer((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods)).FxShmLock @@ -178042,7 +178091,7 @@ func rbuUnlockShm(tls *libc.TLS, p uintptr) { /* sqlite3.c:203381:13: */ } // -func rbuUpdateTempSize(tls *libc.TLS, pFd uintptr, nNew Sqlite3_int64) int32 { /* sqlite3.c:203397:12: */ +func rbuUpdateTempSize(tls *libc.TLS, pFd uintptr, nNew Sqlite3_int64) int32 { /* sqlite3.c:203409:12: */ var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(pFd)).FpRbu var nDiff I64 = (nNew - (*Rbu_file)(unsafe.Pointer(pFd)).Fsz) *(*I64)(unsafe.Pointer(pRbu + 360 /* &.szTemp */)) += (nDiff) @@ -178060,7 +178109,7 @@ func rbuUpdateTempSize(tls *libc.TLS, pFd uintptr, nNew Sqlite3_int64) int32 { / // for all file descriptors with rbu_file.pDb!=0. If the argument has // rbu_file.pDb!=0, then it is assumed to already be present on the // main list and is only added to the pDb!=0 list. -func rbuMainlistAdd(tls *libc.TLS, p uintptr) { /* sqlite3.c:203415:13: */ +func rbuMainlistAdd(tls *libc.TLS, p uintptr) { /* sqlite3.c:203427:13: */ var pRbuVfs uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs var pIter uintptr @@ -178082,7 +178131,7 @@ func rbuMainlistAdd(tls *libc.TLS, p uintptr) { /* sqlite3.c:203415:13: */ } // Remove an item from the main-db lists. -func rbuMainlistRemove(tls *libc.TLS, p uintptr) { /* sqlite3.c:203437:13: */ +func rbuMainlistRemove(tls *libc.TLS, p uintptr) { /* sqlite3.c:203449:13: */ var pp uintptr Xsqlite3_mutex_enter(tls, (*Rbu_vfs)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs)).Fmutex) for pp = ((*Rbu_file)(unsafe.Pointer(p)).FpRbuVfs + 192 /* &.pMain */); (*(*uintptr)(unsafe.Pointer(pp)) != 0) && (*(*uintptr)(unsafe.Pointer(pp)) != p); pp = (*(*uintptr)(unsafe.Pointer(pp)) + 88 /* &.pMainNext */) { @@ -178107,7 +178156,7 @@ func rbuMainlistRemove(tls *libc.TLS, p uintptr) { /* sqlite3.c:203437:13: */ // // If parameter bRbu is true, only search for file-descriptors with // rbu_file.pDb!=0. -func rbuFindMaindb(tls *libc.TLS, pRbuVfs uintptr, zWal uintptr, bRbu int32) uintptr { /* sqlite3.c:203458:17: */ +func rbuFindMaindb(tls *libc.TLS, pRbuVfs uintptr, zWal uintptr, bRbu int32) uintptr { /* sqlite3.c:203470:17: */ var pDb uintptr Xsqlite3_mutex_enter(tls, (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).Fmutex) if bRbu != 0 { @@ -178122,7 +178171,7 @@ func rbuFindMaindb(tls *libc.TLS, pRbuVfs uintptr, zWal uintptr, bRbu int32) uin } // Close an rbu file. -func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203473:12: */ +func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203485:12: */ var p uintptr = pFile var rc int32 var i int32 @@ -178150,7 +178199,7 @@ func rbuVfsClose(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203473:12: * // Read and return an unsigned 32-bit big-endian integer from the buffer // passed as the only argument. -func rbuGetU32(tls *libc.TLS, aBuf uintptr) U32 { /* sqlite3.c:203506:12: */ +func rbuGetU32(tls *libc.TLS, aBuf uintptr) U32 { /* sqlite3.c:203518:12: */ return ((((U32(*(*U8)(unsafe.Pointer(aBuf))) << 24) + (U32(*(*U8)(unsafe.Pointer(aBuf + 1))) << 16)) + (U32(*(*U8)(unsafe.Pointer(aBuf + 2))) << 8)) + @@ -178159,20 +178208,20 @@ func rbuGetU32(tls *libc.TLS, aBuf uintptr) U32 { /* sqlite3.c:203506:12: */ // Write an unsigned 32-bit value in big-endian format to the supplied // buffer. -func rbuPutU32(tls *libc.TLS, aBuf uintptr, iVal U32) { /* sqlite3.c:203517:13: */ +func rbuPutU32(tls *libc.TLS, aBuf uintptr, iVal U32) { /* sqlite3.c:203529:13: */ *(*U8)(unsafe.Pointer(aBuf)) = (U8((iVal >> 24) & U32(0xFF))) *(*U8)(unsafe.Pointer(aBuf + 1)) = (U8((iVal >> 16) & U32(0xFF))) *(*U8)(unsafe.Pointer(aBuf + 2)) = (U8((iVal >> 8) & U32(0xFF))) *(*U8)(unsafe.Pointer(aBuf + 3)) = (U8((iVal >> 0) & U32(0xFF))) } -func rbuPutU16(tls *libc.TLS, aBuf uintptr, iVal U16) { /* sqlite3.c:203524:13: */ +func rbuPutU16(tls *libc.TLS, aBuf uintptr, iVal U16) { /* sqlite3.c:203536:13: */ *(*U8)(unsafe.Pointer(aBuf)) = (U8((int32(iVal) >> 8) & 0xFF)) *(*U8)(unsafe.Pointer(aBuf + 1)) = (U8((int32(iVal) >> 0) & 0xFF)) } // Read data from an rbuVfs-file. -func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203532:12: */ +func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203544:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 @@ -178232,7 +178281,7 @@ func rbuVfsRead(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sq } // Write data to an rbuVfs-file. -func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203598:12: */ +func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst Sqlite_int64) int32 { /* sqlite3.c:203610:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 @@ -178269,7 +178318,7 @@ func rbuVfsWrite(tls *libc.TLS, pFile uintptr, zBuf uintptr, iAmt int32, iOfst S } // Truncate an rbuVfs-file. -func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* sqlite3.c:203641:12: */ +func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* sqlite3.c:203653:12: */ var p uintptr = pFile if (((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_DELETEONCLOSE) != 0) && ((*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0) { var rc int32 = rbuUpdateTempSize(tls, p, size) @@ -178281,7 +178330,7 @@ func rbuVfsTruncate(tls *libc.TLS, pFile uintptr, size Sqlite_int64) int32 { /* } // Sync an rbuVfs-file. -func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c:203653:12: */ +func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c:203665:12: */ var p uintptr = pFile if ((*Rbu_file)(unsafe.Pointer(p)).FpRbu != 0) && ((*Sqlite3rbu)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpRbu)).FeStage == RBU_STAGE_CAPTURE) { if ((*Rbu_file)(unsafe.Pointer(p)).FopenFlags & SQLITE_OPEN_MAIN_DB) != 0 { @@ -178293,7 +178342,7 @@ func rbuVfsSync(tls *libc.TLS, pFile uintptr, flags int32) int32 { /* sqlite3.c: } // Return the current file-size of an rbuVfs-file. -func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqlite3.c:203667:12: */ +func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqlite3.c:203679:12: */ var p uintptr = pFile var rc int32 rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 48 /* &.xFileSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pSize) @@ -178311,7 +178360,7 @@ func rbuVfsFileSize(tls *libc.TLS, pFile uintptr, pSize uintptr) int32 { /* sqli } // Lock an rbuVfs-file. -func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203688:12: */ +func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203700:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 = SQLITE_OK @@ -178329,19 +178378,19 @@ func rbuVfsLock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c: } // Unlock an rbuVfs-file. -func rbuVfsUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203710:12: */ +func rbuVfsUnlock(tls *libc.TLS, pFile uintptr, eLock int32) int32 { /* sqlite3.c:203722:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 64 /* &.xUnlock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, eLock) } // Check if another file-handle holds a RESERVED lock on an rbuVfs-file. -func rbuVfsCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* sqlite3.c:203718:12: */ +func rbuVfsCheckReservedLock(tls *libc.TLS, pFile uintptr, pResOut uintptr) int32 { /* sqlite3.c:203730:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 72 /* &.xCheckReservedLock */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal, pResOut) } // File control method. For custom operations on an rbuVfs-file. -func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:203726:12: */ +func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int32 { /* sqlite3.c:203738:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -178398,19 +178447,19 @@ func rbuVfsFileControl(tls *libc.TLS, pFile uintptr, op int32, pArg uintptr) int } // Return the sector-size in bytes for an rbuVfs-file. -func rbuVfsSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203782:12: */ +func rbuVfsSectorSize(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203794:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 88 /* &.xSectorSize */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Return the device characteristic flags supported by an rbuVfs-file. -func rbuVfsDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203790:12: */ +func rbuVfsDeviceCharacteristics(tls *libc.TLS, pFile uintptr) int32 { /* sqlite3.c:203802:12: */ var p uintptr = pFile return (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 96 /* &.xDeviceCharacteristics */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // Take or release a shared-memory lock. -func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) int32 { /* sqlite3.c:203798:12: */ +func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int32) int32 { /* sqlite3.c:203810:12: */ var p uintptr = pFile var pRbu uintptr = (*Rbu_file)(unsafe.Pointer(p)).FpRbu var rc int32 = SQLITE_OK @@ -178441,7 +178490,7 @@ func rbuVfsShmLock(tls *libc.TLS, pFile uintptr, ofst int32, n int32, flags int3 } // Obtain a pointer to a mapping of a single 32KiB page of the *-shm file. -func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, isWrite int32, pp uintptr) int32 { /* sqlite3.c:203836:12: */ +func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, isWrite int32, pp uintptr) int32 { /* sqlite3.c:203848:12: */ var p uintptr = pFile var rc int32 = SQLITE_OK var eStage int32 = func() int32 { @@ -178496,13 +178545,13 @@ func rbuVfsShmMap(tls *libc.TLS, pFile uintptr, iRegion int32, szRegion int32, i } // Memory barrier. -func rbuVfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:203894:13: */ +func rbuVfsShmBarrier(tls *libc.TLS, pFile uintptr) { /* sqlite3.c:203906:13: */ var p uintptr = pFile (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(((*Sqlite3_file)(unsafe.Pointer((*Rbu_file)(unsafe.Pointer(p)).FpReal)).FpMethods + 120 /* &.xShmBarrier */))))(tls, (*Rbu_file)(unsafe.Pointer(p)).FpReal) } // The xShmUnmap method. -func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqlite3.c:203902:12: */ +func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqlite3.c:203914:12: */ var p uintptr = pFile var rc int32 = SQLITE_OK var eStage int32 = func() int32 { @@ -178523,7 +178572,7 @@ func rbuVfsShmUnmap(tls *libc.TLS, pFile uintptr, delFlag int32) int32 { /* sqli } // Open an rbu file handle. -func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags int32, pOutFlags uintptr) int32 { /* sqlite3.c:203921:12: */ +func rbuVfsOpen(tls *libc.TLS, pVfs uintptr, zName uintptr, pFile uintptr, flags int32, pOutFlags uintptr) int32 { /* sqlite3.c:203933:12: */ var pRbuVfs uintptr = pVfs var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pRbuVfs)).FpRealVfs var pFd uintptr = pFile @@ -178621,17 +178670,17 @@ var rbuvfs_io_methods = Sqlite3_io_methods{ FxShmLock: 0, // xShmLock FxShmBarrier: 0, // xShmBarrier FxShmUnmap: 0, // xFetch, xUnfetch -} /* sqlite3.c:203928:29 */ +} /* sqlite3.c:203940:29 */ // Delete the file located at zPath. -func rbuVfsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:204033:12: */ +func rbuVfsDelete(tls *libc.TLS, pVfs uintptr, zPath uintptr, dirSync int32) int32 { /* sqlite3.c:204045:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 48 /* &.xDelete */))))(tls, pRealVfs, zPath, dirSync) } // Test for access permissions. Return true if the requested permission // is available, or false otherwise. -func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* sqlite3.c:204042:12: */ +func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResOut uintptr) int32 { /* sqlite3.c:204054:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -178674,13 +178723,13 @@ func rbuVfsAccess(tls *libc.TLS, pVfs uintptr, zPath uintptr, flags int32, pResO // Populate buffer zOut with the full canonical pathname corresponding // to the pathname in zPath. zOut is guaranteed to point to a buffer // of at least (DEVSYM_MAX_PATHNAME+1) bytes. -func rbuVfsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* sqlite3.c:204090:12: */ +func rbuVfsFullPathname(tls *libc.TLS, pVfs uintptr, zPath uintptr, nOut int32, zOut uintptr) int32 { /* sqlite3.c:204102:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 64 /* &.xFullPathname */))))(tls, pRealVfs, zPath, nOut, zOut) } // Open the dynamic library located at zPath and return a handle. -func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:204104:13: */ +func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlite3.c:204116:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 72 /* &.xDlOpen */))))(tls, pRealVfs, zPath) } @@ -178688,51 +178737,51 @@ func rbuVfsDlOpen(tls *libc.TLS, pVfs uintptr, zPath uintptr) uintptr { /* sqlit // Populate the buffer zErrMsg (size nByte bytes) with a human readable // utf-8 string describing the most recent error encountered associated // with dynamic libraries. -func rbuVfsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:204114:13: */ +func rbuVfsDlError(tls *libc.TLS, pVfs uintptr, nByte int32, zErrMsg uintptr) { /* sqlite3.c:204126:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs (*(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer((pRealVfs + 80 /* &.xDlError */))))(tls, pRealVfs, nByte, zErrMsg) } // Return a pointer to the symbol zSymbol in the dynamic library pHandle. -func rbuVfsDlSym(tls *libc.TLS, pVfs uintptr, pArg uintptr, zSym uintptr) uintptr { /* sqlite3.c:204122:13: */ +func rbuVfsDlSym(tls *libc.TLS, pVfs uintptr, pArg uintptr, zSym uintptr) uintptr { /* sqlite3.c:204134:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer((pRealVfs + 88 /* &.xDlSym */))))(tls, pRealVfs, pArg, zSym) } // Close the dynamic library handle pHandle. -func rbuVfsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:204134:13: */ +func rbuVfsDlClose(tls *libc.TLS, pVfs uintptr, pHandle uintptr) { /* sqlite3.c:204146:13: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer((pRealVfs + 96 /* &.xDlClose */))))(tls, pRealVfs, pHandle) } // Populate the buffer pointed to by zBufOut with nByte bytes of // random data. -func rbuVfsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:204144:12: */ +func rbuVfsRandomness(tls *libc.TLS, pVfs uintptr, nByte int32, zBufOut uintptr) int32 { /* sqlite3.c:204156:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer((pRealVfs + 104 /* &.xRandomness */))))(tls, pRealVfs, nByte, zBufOut) } // Sleep for nMicro microseconds. Return the number of microseconds // actually slept. -func rbuVfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:204153:12: */ +func rbuVfsSleep(tls *libc.TLS, pVfs uintptr, nMicro int32) int32 { /* sqlite3.c:204165:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer((pRealVfs + 112 /* &.xSleep */))))(tls, pRealVfs, nMicro) } // Return the current time as a Julian Day number in *pTimeOut. -func rbuVfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* sqlite3.c:204161:12: */ +func rbuVfsCurrentTime(tls *libc.TLS, pVfs uintptr, pTimeOut uintptr) int32 { /* sqlite3.c:204173:12: */ var pRealVfs uintptr = (*Rbu_vfs)(unsafe.Pointer(pVfs)).FpRealVfs return (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer((pRealVfs + 120 /* &.xCurrentTime */))))(tls, pRealVfs, pTimeOut) } // No-op. -func rbuVfsGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* sqlite3.c:204169:12: */ +func rbuVfsGetLastError(tls *libc.TLS, pVfs uintptr, a int32, b uintptr) int32 { /* sqlite3.c:204181:12: */ return 0 } // Deregister and destroy an RBU vfs created by an earlier call to // sqlite3rbu_create_vfs(). -func Xsqlite3rbu_destroy_vfs(tls *libc.TLS, zName uintptr) { /* sqlite3.c:204177:17: */ +func Xsqlite3rbu_destroy_vfs(tls *libc.TLS, zName uintptr) { /* sqlite3.c:204189:17: */ var pVfs uintptr = Xsqlite3_vfs_find(tls, zName) if (pVfs != 0) && ((*Sqlite3_vfs)(unsafe.Pointer(pVfs)).FxOpen == *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32 @@ -178746,7 +178795,7 @@ func Xsqlite3rbu_destroy_vfs(tls *libc.TLS, zName uintptr) { /* sqlite3.c:204177 // Create an RBU VFS named zName that accesses the underlying file-system // via existing VFS zParent. The new object is registered as a non-default // VFS with SQLite before returning. -func Xsqlite3rbu_create_vfs(tls *libc.TLS, zName uintptr, zParent uintptr) int32 { /* sqlite3.c:204191:16: */ +func Xsqlite3rbu_create_vfs(tls *libc.TLS, zName uintptr, zParent uintptr) int32 { /* sqlite3.c:204203:16: */ var pNew uintptr = uintptr(0) // Newly allocated VFS var rc int32 = SQLITE_OK @@ -178807,17 +178856,17 @@ var vfs_template = Sqlite3_vfs{ FxSleep: 0, // xSleep FxCurrentTime: 0, // xCurrentTime FxGetLastError: 0, // Unimplemented version 3 methods -} /* sqlite3.c:204194:22 */ +} /* sqlite3.c:204206:22 */ // Configure the aggregate temp file size limit for this RBU handle. -func Xsqlite3rbu_temp_size_limit(tls *libc.TLS, pRbu uintptr, n Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:204269:26: */ +func Xsqlite3rbu_temp_size_limit(tls *libc.TLS, pRbu uintptr, n Sqlite3_int64) Sqlite3_int64 { /* sqlite3.c:204281:26: */ if n >= int64(0) { (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FszTempLimit = n } return (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FszTempLimit } -func Xsqlite3rbu_temp_size(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:204276:26: */ +func Xsqlite3rbu_temp_size(tls *libc.TLS, pRbu uintptr) Sqlite3_int64 { /* sqlite3.c:204288:26: */ return (*Sqlite3rbu)(unsafe.Pointer(pRbu)).FszTemp } @@ -178891,7 +178940,7 @@ var zDbstatSchema = // 9 Size of the page (sum for aggregate) // 10 Database schema being analyzed // 11 aggregate info for each table -*(*[258]int8)(unsafe.Pointer(ts + 37369 /* "CREATE TABLE x( ..." */)) /* sqlite3.c:204345:19 */ +*(*[258]int8)(unsafe.Pointer(ts + 37369 /* "CREATE TABLE x( ..." */)) /* sqlite3.c:204357:19 */ // Forward reference to data structured used in this module type StatTable1 = struct { @@ -178899,10 +178948,10 @@ type StatTable1 = struct { Fdb uintptr FiDb int32 _ [4]byte -} /* sqlite3.c:204363:9 */ +} /* sqlite3.c:204375:9 */ // Forward reference to data structured used in this module -type StatTable = StatTable1 /* sqlite3.c:204363:26 */ +type StatTable = StatTable1 /* sqlite3.c:204375:26 */ type StatCursor1 = struct { Fbase Sqlite3_vtab_cursor FpStmt uintptr @@ -178924,9 +178973,9 @@ type StatCursor1 = struct { FnPayload I64 FiOffset I64 FszPage I64 -} /* sqlite3.c:204364:9 */ +} /* sqlite3.c:204376:9 */ -type StatCursor = StatCursor1 /* sqlite3.c:204364:27 */ +type StatCursor = StatCursor1 /* sqlite3.c:204376:27 */ type StatPage1 = struct { FiPgno U32 _ [4]byte @@ -178942,9 +178991,9 @@ type StatPage1 = struct { FaCell uintptr FiRightChildPg U32 FnMxPayload int32 -} /* sqlite3.c:204364:9 */ +} /* sqlite3.c:204376:9 */ -type StatPage = StatPage1 /* sqlite3.c:204365:25 */ +type StatPage = StatPage1 /* sqlite3.c:204377:25 */ type StatCell1 = struct { FnLocal int32 FiChildPg U32 @@ -178953,12 +179002,12 @@ type StatCell1 = struct { FaOvfl uintptr FnLastOvfl int32 FiOvfl int32 -} /* sqlite3.c:204364:9 */ +} /* sqlite3.c:204376:9 */ -type StatCell = StatCell1 /* sqlite3.c:204366:25 */ +type StatCell = StatCell1 /* sqlite3.c:204378:25 */ // Connect to or create a new DBSTAT virtual table. -func statConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:204434:12: */ +func statConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:204446:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -178998,7 +179047,7 @@ func statConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintp } // Disconnect from or destroy the DBSTAT virtual table. -func statDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:204477:12: */ +func statDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:204489:12: */ Xsqlite3_free(tls, pVtab) return SQLITE_OK } @@ -179011,7 +179060,7 @@ func statDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:204477:12 // 0x02 There is a name=? term in the WHERE clause // 0x04 There is an aggregate=? term in the WHERE clause // 0x08 Output should be ordered by name and path -func statBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:204492:12: */ +func statBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:204504:12: */ var i int32 var iSchema int32 = -1 var iName int32 = -1 @@ -179084,7 +179133,7 @@ func statBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqli } // Open a new DBSTAT cursor. -func statOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:204565:12: */ +func statOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:204577:12: */ var pTab uintptr = pVTab var pCsr uintptr @@ -179101,7 +179150,7 @@ func statOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3 return SQLITE_OK } -func statClearCells(tls *libc.TLS, p uintptr) { /* sqlite3.c:204582:13: */ +func statClearCells(tls *libc.TLS, p uintptr) { /* sqlite3.c:204594:13: */ var i int32 if (*StatPage)(unsafe.Pointer(p)).FaCell != 0 { for i = 0; i < (*StatPage)(unsafe.Pointer(p)).FnCell; i++ { @@ -179113,14 +179162,14 @@ func statClearCells(tls *libc.TLS, p uintptr) { /* sqlite3.c:204582:13: */ (*StatPage)(unsafe.Pointer(p)).FaCell = uintptr(0) } -func statClearPage(tls *libc.TLS, p uintptr) { /* sqlite3.c:204594:13: */ +func statClearPage(tls *libc.TLS, p uintptr) { /* sqlite3.c:204606:13: */ statClearCells(tls, p) Xsqlite3PagerUnref(tls, (*StatPage)(unsafe.Pointer(p)).FpPg) Xsqlite3_free(tls, (*StatPage)(unsafe.Pointer(p)).FzPath) libc.X__builtin___memset_chk(tls, p, 0, uint64(unsafe.Sizeof(StatPage{})), libc.X__builtin_object_size(tls, p, 0)) } -func statResetCsr(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204601:13: */ +func statResetCsr(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204613:13: */ var i int32 Xsqlite3_reset(tls, (*StatCursor)(unsafe.Pointer(pCsr)).FpStmt) for i = 0; i < (int32(uint64(unsafe.Sizeof([32]StatPage{})) / uint64(unsafe.Sizeof(StatPage{})))); i++ { @@ -179133,7 +179182,7 @@ func statResetCsr(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204601:13: */ } // Resize the space-used counters inside of the cursor -func statResetCounts(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204614:13: */ +func statResetCounts(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204626:13: */ (*StatCursor)(unsafe.Pointer(pCsr)).FnCell = 0 (*StatCursor)(unsafe.Pointer(pCsr)).FnMxPayload = 0 (*StatCursor)(unsafe.Pointer(pCsr)).FnUnused = int64(0) @@ -179143,7 +179192,7 @@ func statResetCounts(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204614:13: */ } // Close a DBSTAT cursor. -func statClose(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204626:12: */ +func statClose(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204638:12: */ var pCsr uintptr = pCursor statResetCsr(tls, pCsr) Xsqlite3_finalize(tls, (*StatCursor)(unsafe.Pointer(pCsr)).FpStmt) @@ -179154,7 +179203,7 @@ func statClose(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204626:12: * // For a single cell on a btree page, compute the number of bytes of // content (payload) stored on that page. That is to say, compute the // number of bytes of content not found on overflow pages. -func getLocalPayload(tls *libc.TLS, nUsable int32, flags U8, nTotal int32) int32 { /* sqlite3.c:204639:12: */ +func getLocalPayload(tls *libc.TLS, nUsable int32, flags U8, nTotal int32) int32 { /* sqlite3.c:204651:12: */ var nLocal int32 var nMinLocal int32 var nMaxLocal int32 @@ -179176,7 +179225,7 @@ func getLocalPayload(tls *libc.TLS, nUsable int32, flags U8, nTotal int32) int32 // Populate the StatPage object with information about the all // cells found on the page currently under analysis. -func statDecodePage(tls *libc.TLS, pBt uintptr, p uintptr) int32 { /* sqlite3.c:204664:12: */ +func statDecodePage(tls *libc.TLS, pBt uintptr, p uintptr) int32 { /* sqlite3.c:204676:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -179414,7 +179463,7 @@ statPageIsCorrupt: // Populate the pCsr->iOffset and pCsr->szPage member variables. Based on // the current value of pCsr->iPageno. -func statSizeAndOffset(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204779:13: */ +func statSizeAndOffset(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204791:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -179441,7 +179490,7 @@ func statSizeAndOffset(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:204779:13: */ // Move a DBSTAT cursor to the next entry. Normally, the next // entry will be the next page, but in aggregated mode (pCsr->isAgg!=0), // the next entry is the next btree. -func statNext(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204806:12: */ +func statNext(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204818:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -179604,7 +179653,7 @@ __17: goto __21 } statResetCsr(tls, pCsr) - return Xsqlite3CorruptError(tls, 204894) + return Xsqlite3CorruptError(tls, 204906) __21: ; @@ -179729,7 +179778,7 @@ __26: return rc } -func statEof(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204963:12: */ +func statEof(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204975:12: */ var pCsr uintptr = pCursor return int32((*StatCursor)(unsafe.Pointer(pCsr)).FisEof) } @@ -179737,7 +179786,7 @@ func statEof(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:204963:12: */ // Initialize a cursor according to the query plan idxNum using the // arguments in argv[0]. See statBestIndex() for a description of the // meaning of the bits in idxNum. -func statFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:204972:12: */ +func statFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:204984:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -179799,7 +179848,7 @@ func statFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, ar return rc } -func statColumn(tls *libc.TLS, pCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:205038:12: */ +func statColumn(tls *libc.TLS, pCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:205050:12: */ var pCsr uintptr = pCursor switch i { case 0: // name @@ -179860,14 +179909,14 @@ func statColumn(tls *libc.TLS, pCursor uintptr, ctx uintptr, i int32) int32 { /* return SQLITE_OK } -func statRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:205099:12: */ +func statRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:205111:12: */ var pCsr uintptr = pCursor *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = Sqlite_int64((*StatCursor)(unsafe.Pointer(pCsr)).FiPageno) return SQLITE_OK } // Invoke this routine to register the "dbstat" virtual table module -func Xsqlite3DbstatRegister(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:205108:20: */ +func Xsqlite3DbstatRegister(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:205120:20: */ return Xsqlite3_create_module(tls, db, ts+37864 /* "dbstat" */, uintptr(unsafe.Pointer(&dbstat_module)), uintptr(0)) } @@ -179884,7 +179933,7 @@ var dbstat_module = Sqlite3_module{ // iVersion FxEof: 0, // xEof - check for end of scan FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:205109:25 */ +} /* sqlite3.c:205121:25 */ //************* End of dbstat.c ********************************************* //************* Begin file dbpage.c ***************************************** @@ -179924,7 +179973,7 @@ var dbstat_module = Sqlite3_module{ // iVersion type DbpageTable1 = struct { Fbase Sqlite3_vtab Fdb uintptr -} /* sqlite3.c:205180:9 */ +} /* sqlite3.c:205192:9 */ //************* End of dbstat.c ********************************************* //************* Begin file dbpage.c ***************************************** @@ -179961,7 +180010,7 @@ type DbpageTable1 = struct { // #include "sqliteInt.h" ** Requires access to internal data structures ** -type DbpageTable = DbpageTable1 /* sqlite3.c:205180:28 */ +type DbpageTable = DbpageTable1 /* sqlite3.c:205192:28 */ type DbpageCursor1 = struct { Fbase Sqlite3_vtab_cursor Fpgno int32 @@ -179970,14 +180019,14 @@ type DbpageCursor1 = struct { FpPage1 uintptr FiDb int32 FszPage int32 -} /* sqlite3.c:205181:9 */ +} /* sqlite3.c:205193:9 */ -type DbpageCursor = DbpageCursor1 /* sqlite3.c:205181:29 */ +type DbpageCursor = DbpageCursor1 /* sqlite3.c:205193:29 */ // Columns // Connect to or create a dbpagevfs virtual table. -func dbpageConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:205208:12: */ +func dbpageConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:205220:12: */ var pTab uintptr = uintptr(0) var rc int32 = SQLITE_OK @@ -180001,7 +180050,7 @@ func dbpageConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uin } // Disconnect from or destroy a dbpagevfs virtual table. -func dbpageDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:205239:12: */ +func dbpageDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:205251:12: */ Xsqlite3_free(tls, pVtab) return SQLITE_OK } @@ -180012,7 +180061,7 @@ func dbpageDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:205239: // 1 schema=main, pgno=?1 // 2 schema=?1, full table scan // 3 schema=?1, pgno=?2 -func dbpageBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:205252:12: */ +func dbpageBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:205264:12: */ var i int32 var iPlan int32 = 0 @@ -180071,7 +180120,7 @@ func dbpageBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sq } // Open a new dbpagevfs cursor. -func dbpageOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:205307:12: */ +func dbpageOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlite3.c:205319:12: */ var pCsr uintptr pCsr = Xsqlite3_malloc64(tls, uint64(unsafe.Sizeof(DbpageCursor{}))) @@ -180088,7 +180137,7 @@ func dbpageOpen(tls *libc.TLS, pVTab uintptr, ppCursor uintptr) int32 { /* sqlit } // Close a dbpagevfs cursor. -func dbpageClose(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205326:12: */ +func dbpageClose(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205338:12: */ var pCsr uintptr = pCursor if (*DbpageCursor)(unsafe.Pointer(pCsr)).FpPage1 != 0 { Xsqlite3PagerUnrefPageOne(tls, (*DbpageCursor)(unsafe.Pointer(pCsr)).FpPage1) @@ -180098,14 +180147,14 @@ func dbpageClose(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205326:12: } // Move a dbpagevfs cursor to the next entry in the file. -func dbpageNext(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205336:12: */ +func dbpageNext(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205348:12: */ var rc int32 = SQLITE_OK var pCsr uintptr = pCursor (*DbpageCursor)(unsafe.Pointer(pCsr)).Fpgno++ return rc } -func dbpageEof(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205343:12: */ +func dbpageEof(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205355:12: */ var pCsr uintptr = pCursor return (libc.Bool32((*DbpageCursor)(unsafe.Pointer(pCsr)).Fpgno > (*DbpageCursor)(unsafe.Pointer(pCsr)).FmxPgno)) } @@ -180118,7 +180167,7 @@ func dbpageEof(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:205343:12: * // 3 schema=?1, pgno=?2 // // idxStr is not used -func dbpageFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:205358:12: */ +func dbpageFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:205370:12: */ var pCsr uintptr = pCursor var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var rc int32 @@ -180166,7 +180215,7 @@ func dbpageFilter(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, return rc } -func dbpageColumn(tls *libc.TLS, pCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:205404:12: */ +func dbpageColumn(tls *libc.TLS, pCursor uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:205416:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -180202,13 +180251,13 @@ func dbpageColumn(tls *libc.TLS, pCursor uintptr, ctx uintptr, i int32) int32 { return SQLITE_OK } -func dbpageRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:205435:12: */ +func dbpageRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:205447:12: */ var pCsr uintptr = pCursor *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = Sqlite_int64((*DbpageCursor)(unsafe.Pointer(pCsr)).Fpgno) return SQLITE_OK } -func dbpageUpdate(tls *libc.TLS, pVtab uintptr, argc int32, argv uintptr, pRowid uintptr) int32 { /* sqlite3.c:205441:12: */ +func dbpageUpdate(tls *libc.TLS, pVtab uintptr, argc int32, argv uintptr, pRowid uintptr) int32 { /* sqlite3.c:205453:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -180306,7 +180355,7 @@ update_fail: // Since we do not know in advance which database files will be // written by the sqlite_dbpage virtual table, start a write transaction // on them all. -func dbpageBegin(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:205512:12: */ +func dbpageBegin(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:205524:12: */ var pTab uintptr = pVtab var db uintptr = (*DbpageTable)(unsafe.Pointer(pTab)).Fdb var i int32 @@ -180320,7 +180369,7 @@ func dbpageBegin(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:205512:12: * } // Invoke this routine to register the "dbpage" virtual table module -func Xsqlite3DbpageRegister(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:205527:20: */ +func Xsqlite3DbpageRegister(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:205539:20: */ return Xsqlite3_create_module(tls, db, ts+38022 /* "sqlite_dbpage" */, uintptr(unsafe.Pointer(&dbpage_module)), uintptr(0)) } @@ -180339,7 +180388,7 @@ var dbpage_module = Sqlite3_module{ // iVersion FxRowid: 0, // xRowid - read data FxUpdate: 0, // xUpdate FxBegin: 0, // xShadowName -} /* sqlite3.c:205528:25 */ +} /* sqlite3.c:205540:25 */ //************* End of dbpage.c ********************************************* //************* Begin file sqlite3session.c ********************************* @@ -180412,7 +180461,7 @@ type Fts5Global1 = struct { FpTok uintptr FpDfltTok uintptr FpCsr uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ //************* End of dbpage.c ********************************************* //************* Begin file sqlite3session.c ********************************* @@ -180477,13 +180526,13 @@ type Fts5Global1 = struct { // Mark a function parameter as unused, to suppress nuisance compiler // warnings. -type Fts5Global = Fts5Global1 /* sqlite3.c:211872:27 */ +type Fts5Global = Fts5Global1 /* sqlite3.c:211884:27 */ type Fts5Colset1 = struct { FnCol int32 FaiCol [1]int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Colset = Fts5Colset1 /* sqlite3.c:211873:27 */ +type Fts5Colset = Fts5Colset1 /* sqlite3.c:211885:27 */ // ************************************************************************* // @@ -180521,14 +180570,14 @@ type Fts5Config1 = struct { FzRank uintptr FzRankArgs uintptr FpzErrmsg uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // ************************************************************************* // // Interface to code in fts5_config.c. fts5_config.c contains contains code // to parse the arguments passed to the CREATE VIRTUAL TABLE statement. -type Fts5Config = Fts5Config1 /* sqlite3.c:211893:27 */ +type Fts5Config = Fts5Config1 /* sqlite3.c:211905:27 */ // // End of interface to code in fts5_config.c. @@ -180543,7 +180592,7 @@ type Fts5Buffer1 = struct { Fp uintptr Fn int32 FnSpace int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5_config.c. @@ -180554,7 +180603,7 @@ type Fts5Buffer1 = struct { // Interface to code in fts5_buffer.c. // Buffer object for the incremental building of string data. -type Fts5Buffer = Fts5Buffer1 /* sqlite3.c:212019:27 */ +type Fts5Buffer = Fts5Buffer1 /* sqlite3.c:212031:27 */ type Fts5PoslistReader1 = struct { Fa uintptr @@ -180564,19 +180613,19 @@ type Fts5PoslistReader1 = struct { FbEof U8 _ [6]byte FiPos I64 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5PoslistReader = Fts5PoslistReader1 /* sqlite3.c:212055:34 */ +type Fts5PoslistReader = Fts5PoslistReader1 /* sqlite3.c:212067:34 */ -type Fts5PoslistWriter1 = struct{ FiPrev I64 } /* sqlite3.c:212074:9 */ +type Fts5PoslistWriter1 = struct{ FiPrev I64 } /* sqlite3.c:212086:9 */ -type Fts5PoslistWriter = Fts5PoslistWriter1 /* sqlite3.c:212074:34 */ +type Fts5PoslistWriter = Fts5PoslistWriter1 /* sqlite3.c:212086:34 */ // Bucket of terms object used by the integrity-check in offsets=0 mode. -type Fts5Termset1 = struct{ FapHash [512]uintptr } /* sqlite3.c:212096:9 */ +type Fts5Termset1 = struct{ FapHash [512]uintptr } /* sqlite3.c:212108:9 */ // Bucket of terms object used by the integrity-check in offsets=0 mode. -type Fts5Termset = Fts5Termset1 /* sqlite3.c:212096:28 */ +type Fts5Termset = Fts5Termset1 /* sqlite3.c:212108:28 */ // // End of interface to code in fts5_buffer.c. @@ -180609,7 +180658,7 @@ type Fts5Index1 = struct { FpDataVersion uintptr FiStructVersion I64 FpStruct uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5_buffer.c. @@ -180620,16 +180669,16 @@ type Fts5Index1 = struct { // Interface to code in fts5_index.c. fts5_index.c contains contains code // to access the data stored in the %_data table. -type Fts5Index = Fts5Index1 /* sqlite3.c:212110:26 */ +type Fts5Index = Fts5Index1 /* sqlite3.c:212122:26 */ type Fts5IndexIter1 = struct { FiRowid I64 FpData uintptr FnData int32 FbEof U8 _ [3]byte -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5IndexIter = Fts5IndexIter1 /* sqlite3.c:212111:30 */ +type Fts5IndexIter = Fts5IndexIter1 /* sqlite3.c:212123:30 */ // // End of interface to code in fts5_varint.c. @@ -180644,7 +180693,7 @@ type Fts5Table1 = struct { Fbase Sqlite3_vtab FpConfig uintptr FpIndex uintptr -} /* sqlite3.c:212310:9 */ +} /* sqlite3.c:212322:9 */ // // End of interface to code in fts5_varint.c. @@ -180655,7 +180704,7 @@ type Fts5Table1 = struct { // Interface to code in fts5_main.c. // Virtual-table object. -type Fts5Table = Fts5Table1 /* sqlite3.c:212310:26 */ +type Fts5Table = Fts5Table1 /* sqlite3.c:212322:26 */ // // End of interface to code in fts5.c. @@ -180672,7 +180721,7 @@ type Fts5Hash1 = struct { FnSlot int32 FpScan uintptr FaSlot uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5.c. @@ -180681,7 +180730,7 @@ type Fts5Hash1 = struct { // ************************************************************************* // // Interface to code in fts5_hash.c. -type Fts5Hash = Fts5Hash1 /* sqlite3.c:212336:25 */ +type Fts5Hash = Fts5Hash1 /* sqlite3.c:212348:25 */ // // End of interface to code in fts5_hash.c. @@ -180700,7 +180749,7 @@ type Fts5Storage1 = struct { FnTotalRow I64 FaTotalSize uintptr FaStmt [11]uintptr -} /* sqlite3.c:212392:9 */ +} /* sqlite3.c:212404:9 */ // // End of interface to code in fts5_hash.c. @@ -180711,7 +180760,7 @@ type Fts5Storage1 = struct { // Interface to code in fts5_storage.c. fts5_storage.c contains contains // code to access the data stored in the %_content and %_docsize tables. -type Fts5Storage = Fts5Storage1 /* sqlite3.c:212392:28 */ +type Fts5Storage = Fts5Storage1 /* sqlite3.c:212404:28 */ // // End of interface to code in fts5_storage.c. @@ -180727,7 +180776,7 @@ type Fts5Expr1 = struct { FbDesc int32 FnPhrase int32 FapExprPhrase uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // // End of interface to code in fts5_storage.c. @@ -180736,7 +180785,7 @@ type Fts5Expr1 = struct { // ************************************************************************* // // Interface to code in fts5_expr.c. -type Fts5Expr = Fts5Expr1 /* sqlite3.c:212435:25 */ +type Fts5Expr = Fts5Expr1 /* sqlite3.c:212447:25 */ type Fts5ExprNode1 = struct { FeType int32 FbEof int32 @@ -180748,9 +180797,9 @@ type Fts5ExprNode1 = struct { FnChild int32 _ [4]byte FapChild [1]uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5ExprNode = Fts5ExprNode1 /* sqlite3.c:212436:29 */ +type Fts5ExprNode = Fts5ExprNode1 /* sqlite3.c:212448:29 */ type Fts5Parse1 = struct { FpConfig uintptr FzErr uintptr @@ -180760,25 +180809,25 @@ type Fts5Parse1 = struct { FpExpr uintptr FbPhraseToAnd int32 _ [4]byte -} /* sqlite3.c:212437:9 */ +} /* sqlite3.c:212449:9 */ -type Fts5Parse = Fts5Parse1 /* sqlite3.c:212437:26 */ +type Fts5Parse = Fts5Parse1 /* sqlite3.c:212449:26 */ type Fts5Token1 = struct { Fp uintptr Fn int32 _ [4]byte -} /* sqlite3.c:212438:9 */ +} /* sqlite3.c:212450:9 */ -type Fts5Token = Fts5Token1 /* sqlite3.c:212438:26 */ +type Fts5Token = Fts5Token1 /* sqlite3.c:212450:26 */ type Fts5ExprPhrase1 = struct { FpNode uintptr Fposlist Fts5Buffer FnTerm int32 _ [4]byte FaTerm [1]Fts5ExprTerm -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5ExprPhrase = Fts5ExprPhrase1 /* sqlite3.c:212439:31 */ +type Fts5ExprPhrase = Fts5ExprPhrase1 /* sqlite3.c:212451:31 */ type Fts5ExprNearset1 = struct { FnNear int32 _ [4]byte @@ -180786,17 +180835,17 @@ type Fts5ExprNearset1 = struct { FnPhrase int32 _ [4]byte FapPhrase [1]uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5ExprNearset = Fts5ExprNearset1 /* sqlite3.c:212440:32 */ +type Fts5ExprNearset = Fts5ExprNearset1 /* sqlite3.c:212452:32 */ type Fts5PoslistPopulator1 = struct { Fwriter Fts5PoslistWriter FbOk int32 FbMiss int32 -} /* sqlite3.c:212488:9 */ +} /* sqlite3.c:212500:9 */ -type Fts5PoslistPopulator = Fts5PoslistPopulator1 /* sqlite3.c:212488:37 */ +type Fts5PoslistPopulator = Fts5PoslistPopulator1 /* sqlite3.c:212500:37 */ // // End of interface to code in fts5_unicode2.c. // @@ -180901,7 +180950,7 @@ type Fts5YYMINORTYPE = struct { _ [0]uint64 Ffts5yyinit int32 _ [12]byte -} /* sqlite3.c:212764:3 */ +} /* sqlite3.c:212776:3 */ //************ End control #defines ****************************************** // Define the fts5yytestcase() macro to be a no-op if is not already defined @@ -180974,7 +181023,7 @@ var fts5yy_action = [105]uint8{ /* 80 */ uint8(5), uint8(3), uint8(63), uint8(5), uint8(3), uint8(62), uint8(12), uint8(2), uint8(86), uint8(13), /* 90 */ uint8(9), uint8(30), uint8(10), uint8(10), uint8(54), uint8(57), uint8(75), uint8(78), uint8(78), uint8(53), /* 100 */ uint8(57), uint8(15), uint8(82), uint8(82), uint8(71), -} /* sqlite3.c:212857:31 */ +} /* sqlite3.c:212869:31 */ var fts5yy_lookahead = [121]uint8{ /* 0 */ uint8(16), uint8(17), uint8(18), uint8(19), uint8(20), uint8(22), uint8(22), uint8(24), uint8(24), uint8(17), /* 10 */ uint8(18), uint8(19), uint8(20), uint8(7), uint8(22), uint8(9), uint8(24), uint8(17), uint8(18), uint8(19), @@ -180989,23 +181038,23 @@ var fts5yy_lookahead = [121]uint8{ /* 100 */ uint8(9), uint8(9), uint8(27), uint8(27), uint8(11), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), /* 110 */ uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), uint8(27), /* 120 */ uint8(27), -} /* sqlite3.c:212870:29 */ +} /* sqlite3.c:212882:29 */ var fts5yy_shift_ofst = [35]uint8{ /* 0 */ uint8(44), uint8(44), uint8(44), uint8(44), uint8(44), uint8(44), uint8(51), uint8(77), uint8(43), uint8(12), /* 10 */ uint8(14), uint8(83), uint8(82), uint8(14), uint8(23), uint8(23), uint8(31), uint8(31), uint8(71), uint8(74), /* 20 */ uint8(78), uint8(81), uint8(86), uint8(91), uint8(6), uint8(53), uint8(53), uint8(60), uint8(64), uint8(68), /* 30 */ uint8(53), uint8(87), uint8(92), uint8(53), uint8(93), -} /* sqlite3.c:212888:28 */ +} /* sqlite3.c:212900:28 */ var fts5yy_reduce_ofst = [18]int8{ /* 0 */ int8(-16), int8(-8), int8(0), int8(9), int8(17), int8(25), int8(46), int8(-17), int8(-17), int8(37), /* 10 */ int8(67), int8(4), int8(4), int8(8), int8(4), int8(20), int8(27), int8(38), -} /* sqlite3.c:212897:26 */ +} /* sqlite3.c:212909:26 */ var fts5yy_default = [35]uint8{ /* 0 */ uint8(80), uint8(80), uint8(80), uint8(80), uint8(80), uint8(80), uint8(95), uint8(80), uint8(80), uint8(105), /* 10 */ uint8(80), uint8(110), uint8(110), uint8(80), uint8(110), uint8(110), uint8(80), uint8(80), uint8(80), uint8(80), /* 20 */ uint8(80), uint8(91), uint8(80), uint8(80), uint8(80), uint8(101), uint8(100), uint8(80), uint8(80), uint8(90), /* 30 */ uint8(103), uint8(80), uint8(80), uint8(104), uint8(80), -} /* sqlite3.c:212901:31 */ +} /* sqlite3.c:212913:31 */ //********* End of lemon-generated parsing tables **************************** // The next table maps tokens (terminal symbols) into fallback tokens. @@ -181042,9 +181091,9 @@ type fts5yyStackEntry = struct { Fmajor uint8 _ [6]byte Fminor Fts5YYMINORTYPE -} /* sqlite3.c:212944:1 */ +} /* sqlite3.c:212956:1 */ -type Fts5yyStackEntry = fts5yyStackEntry /* sqlite3.c:212951:33 */ +type Fts5yyStackEntry = fts5yyStackEntry /* sqlite3.c:212963:33 */ // The state of the parser is completely contained in an instance of // the following structure @@ -181053,9 +181102,9 @@ type fts5yyParser = struct { FpParse uintptr Ffts5yystack [100]Fts5yyStackEntry Ffts5yystackEnd uintptr -} /* sqlite3.c:212955:1 */ +} /* sqlite3.c:212967:1 */ -type Fts5yyParser = fts5yyParser /* sqlite3.c:212974:29 */ +type Fts5yyParser = fts5yyParser /* sqlite3.c:212986:29 */ // Datatype of the argument to the memory allocated passed as the // second argument to sqlite3Fts5ParserAlloc() below. This can be changed by @@ -181063,7 +181112,7 @@ type Fts5yyParser = fts5yyParser /* sqlite3.c:212974:29 */ // grammar. // Initialize a new parser that has already been allocated. -func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3.c:213123:13: */ +func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3.c:213135:13: */ var fts5yypParser uintptr = fts5yypRawParser (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos = fts5yypParser + 16 /* &.fts5yystack */ @@ -181082,7 +181131,7 @@ func sqlite3Fts5ParserInit(tls *libc.TLS, fts5yypRawParser uintptr) { /* sqlite3 // Outputs: // A pointer to a parser. This pointer is used in subsequent calls // to sqlite3Fts5Parser and sqlite3Fts5ParserFree. -func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqlite3.c:213162:13: */ +func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqlite3.c:213174:13: */ var fts5yypParser uintptr fts5yypParser = (*(*func(*libc.TLS, U64) uintptr)(unsafe.Pointer(&mallocProc)))(tls, U64(unsafe.Sizeof(Fts5yyParser{}))) if fts5yypParser != 0 { @@ -181098,7 +181147,7 @@ func sqlite3Fts5ParserAlloc(tls *libc.TLS, mallocProc uintptr) uintptr { /* sqli // a pointer to the value to be deleted. The code used to do the // deletions is derived from the %destructor and/or %token_destructor // directives of the input grammar. -func fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, fts5yypminor uintptr) { /* sqlite3.c:213181:13: */ +func fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, fts5yypminor uintptr) { /* sqlite3.c:213193:13: */ var pParse uintptr = (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse _ = pParse @@ -181156,7 +181205,7 @@ func fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, // // If there is a destructor routine associated with the token which // is popped from the stack, then call it. -func fts5yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:213240:13: */ +func fts5yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:213252:13: */ var fts5yytos uintptr fts5yytos = libc.PostDecUintptr(&(*Fts5yyParser)(unsafe.Pointer(pParser)).Ffts5yytos, 24) @@ -181164,7 +181213,7 @@ func fts5yy_pop_parser_stack(tls *libc.TLS, pParser uintptr) { /* sqlite3.c:2132 } // Clear all secondary memory allocations from the parser -func sqlite3Fts5ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:213258:13: */ +func sqlite3Fts5ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:213270:13: */ var pParser uintptr = p for (*Fts5yyParser)(unsafe.Pointer(pParser)).Ffts5yytos > pParser+16 /* &.fts5yystack */ { fts5yy_pop_parser_stack(tls, pParser) @@ -181177,7 +181226,7 @@ func sqlite3Fts5ParserFinalize(tls *libc.TLS, p uintptr) { /* sqlite3.c:213258:1 // If the fts5YYPARSEFREENEVERNULL macro exists (for example because it // is defined in a %include section of the input grammar) then it is // assumed that the input pointer is never NULL. -func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqlite3.c:213275:13: */ +func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqlite3.c:213287:13: */ if p == uintptr(0) { return } @@ -181201,7 +181250,7 @@ func sqlite3Fts5ParserFree(tls *libc.TLS, p uintptr, freeProc uintptr) { /* sqli // Find the appropriate action for a parser given the terminal // look-ahead token iLookAhead. -func fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) uint8 { /* sqlite3.c:213338:25: */ +func fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) uint8 { /* sqlite3.c:213350:25: */ var i int32 if int32(stateno) > Fts5YY_MAX_SHIFT { @@ -181225,7 +181274,7 @@ func fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) ui // Find the appropriate action for a parser given the non-terminal // look-ahead token iLookAhead. -func fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) uint8 { /* sqlite3.c:213403:25: */ +func fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) uint8 { /* sqlite3.c:213415:25: */ var i int32 i = int32(fts5yy_reduce_ofst[stateno]) @@ -181236,7 +181285,7 @@ func fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) u } // The following routine is called if the stack overflows. -func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213432:13: */ +func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213444:13: */ var pParse uintptr = (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse for (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos > fts5yypParser+16 /* &.fts5yystack */ { @@ -181255,7 +181304,7 @@ func fts5yyStackOverflow(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:21 // Print tracing information for a SHIFT action // Perform a shift action. -func fts5yy_shift(tls *libc.TLS, fts5yypParser uintptr, fts5yyNewState uint8, fts5yyMajor uint8, fts5yyMinor Fts5Token) { /* sqlite3.c:213475:13: */ +func fts5yy_shift(tls *libc.TLS, fts5yypParser uintptr, fts5yyNewState uint8, fts5yyMajor uint8, fts5yyMinor Fts5Token) { /* sqlite3.c:213487:13: */ var fts5yytos uintptr (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos += 24 if (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yytos > (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yystackEnd { @@ -181304,7 +181353,7 @@ var fts5yyRuleInfoLhs = [28]uint8{ uint8(24), // (25) phrase ::= STRING star_opt uint8(26), // (26) star_opt ::= STAR uint8(26), // (27) star_opt ::= -} /* sqlite3.c:213516:29 */ +} /* sqlite3.c:213528:29 */ // For rule J, fts5yyRuleInfoNRhs[J] contains the negative of the number // of symbols on the right-hand side of that rule. @@ -181337,7 +181386,7 @@ var fts5yyRuleInfoNRhs = [28]int8{ int8(-2), // (25) phrase ::= STRING star_opt int8(-1), // (26) star_opt ::= STAR int8(0), // (27) star_opt ::= -} /* sqlite3.c:213549:26 */ +} /* sqlite3.c:213561:26 */ // Forward Declaration @@ -181349,7 +181398,7 @@ var fts5yyRuleInfoNRhs = [28]int8{ // if the lookahead token has already been consumed. As this procedure is // only called from one place, optimizing compilers will in-line it, which // means that the extra parameters have no performance impact. -func fts5yy_reduce(tls *libc.TLS, fts5yypParser uintptr, fts5yyruleno uint32, fts5yyLookahead int32, fts5yyLookaheadToken Fts5Token) uint8 { /* sqlite3.c:213592:25: */ +func fts5yy_reduce(tls *libc.TLS, fts5yypParser uintptr, fts5yyruleno uint32, fts5yyLookahead int32, fts5yyLookaheadToken Fts5Token) uint8 { /* sqlite3.c:213604:25: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -181559,7 +181608,7 @@ func fts5yy_reduce(tls *libc.TLS, fts5yypParser uintptr, fts5yyruleno uint32, ft // The following code executes when the parse fails // The following code executes when a syntax error first occurs. -func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32, fts5yyminor Fts5Token) { /* sqlite3.c:213810:13: */ +func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32, fts5yyminor Fts5Token) { /* sqlite3.c:213822:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -181576,7 +181625,7 @@ func fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32 } // The following is executed when the parser accepts -func fts5yy_accept(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213832:13: */ +func fts5yy_accept(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213844:13: */ var pParse uintptr = (*Fts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse // Here code is inserted which will be executed whenever the @@ -181605,7 +181654,7 @@ func fts5yy_accept(tls *libc.TLS, fts5yypParser uintptr) { /* sqlite3.c:213832:1 // // Outputs: // None. -func sqlite3Fts5Parser(tls *libc.TLS, fts5yyp uintptr, fts5yymajor int32, fts5yyminor Fts5Token, pParse uintptr) { /* sqlite3.c:213873:13: */ +func sqlite3Fts5Parser(tls *libc.TLS, fts5yyp uintptr, fts5yymajor int32, fts5yyminor Fts5Token, pParse uintptr) { /* sqlite3.c:213885:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -181660,7 +181709,7 @@ func sqlite3Fts5Parser(tls *libc.TLS, fts5yyp uintptr, fts5yymajor int32, fts5yy // Return the fallback token corresponding to canonical token iToken, or // 0 if iToken has no fallback. -func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:214091:12: */ +func sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) int32 { /* sqlite3.c:214103:12: */ _ = iToken return 0 } @@ -181712,7 +181761,7 @@ type CInstIter1 = struct { FiStart int32 FiEnd int32 _ [4]byte -} /* sqlite3.c:214137:9 */ +} /* sqlite3.c:214149:9 */ // 2014 May 31 // @@ -181752,11 +181801,11 @@ type CInstIter1 = struct { // printf("instance starts at %d, ends at %d\n", iter.iStart, iter.iEnd); // } // -type CInstIter = CInstIter1 /* sqlite3.c:214137:26 */ +type CInstIter = CInstIter1 /* sqlite3.c:214149:26 */ // Advance the iterator to the next coalesced phrase instance. Return // an SQLite error code if an error occurs, or SQLITE_OK otherwise. -func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:214154:12: */ +func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:214166:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -181795,7 +181844,7 @@ func fts5CInstIterNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:214154 // Initialize the iterator object indicated by the final parameter to // iterate through coalesced phrase instances in column iCol. -func fts5CInstIterInit(tls *libc.TLS, pApi uintptr, pFts uintptr, iCol int32, pIter uintptr) int32 { /* sqlite3.c:214185:12: */ +func fts5CInstIterInit(tls *libc.TLS, pApi uintptr, pFts uintptr, iCol int32, pIter uintptr) int32 { /* sqlite3.c:214197:12: */ var rc int32 libc.X__builtin___memset_chk(tls, pIter, 0, uint64(unsafe.Sizeof(CInstIter{})), libc.X__builtin_object_size(tls, pIter, 0)) @@ -181826,12 +181875,12 @@ type HighlightContext1 = struct { FnIn int32 FiOff int32 FzOut uintptr -} /* sqlite3.c:214211:9 */ +} /* sqlite3.c:214223:9 */ // ************************************************************************ // // Start of highlight() implementation. -type HighlightContext = HighlightContext1 /* sqlite3.c:214211:33 */ +type HighlightContext = HighlightContext1 /* sqlite3.c:214223:33 */ // Append text to the HighlightContext output string - p->zOut. Argument // z points to a buffer containing n bytes of text to append. If n is @@ -181840,7 +181889,7 @@ type HighlightContext = HighlightContext1 /* sqlite3.c:214211:33 */ // If *pRc is set to any value other than SQLITE_OK when this function is // called, it is a no-op. If an error (i.e. an OOM condition) is encountered, // *pRc is set to an error code before returning. -func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int32) { /* sqlite3.c:214234:13: */ +func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int32) { /* sqlite3.c:214246:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -181856,7 +181905,7 @@ func fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int } // Tokenizer callback used by implementation of highlight() function. -func fts5HighlightCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214249:12: */ +func fts5HighlightCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214261:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -181911,7 +181960,7 @@ func fts5HighlightCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintp } // Implementation of highlight() function. -func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214303:13: */ +func fts5HighlightFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214315:13: */ bp := tls.Alloc(100) defer tls.Free(100) @@ -181967,19 +182016,19 @@ type Fts5SFinder1 = struct { _ [4]byte FaFirst uintptr FzDoc uintptr -} /* sqlite3.c:214352:9 */ +} /* sqlite3.c:214364:9 */ // // End of highlight() implementation. // // Context object passed to the fts5SentenceFinderCb() function. -type Fts5SFinder = Fts5SFinder1 /* sqlite3.c:214352:28 */ +type Fts5SFinder = Fts5SFinder1 /* sqlite3.c:214364:28 */ // Add an entry to the Fts5SFinder.aFirst[] array. Grow the array if // necessary. Return SQLITE_OK if successful, or SQLITE_NOMEM if an // error occurs. -func fts5SentenceFinderAdd(tls *libc.TLS, p uintptr, iAdd int32) int32 { /* sqlite3.c:214366:12: */ +func fts5SentenceFinderAdd(tls *libc.TLS, p uintptr, iAdd int32) int32 { /* sqlite3.c:214378:12: */ if (*Fts5SFinder)(unsafe.Pointer(p)).FnFirstAlloc == (*Fts5SFinder)(unsafe.Pointer(p)).FnFirst { var nNew int32 if (*Fts5SFinder)(unsafe.Pointer(p)).FnFirstAlloc != 0 { @@ -182003,7 +182052,7 @@ func fts5SentenceFinderAdd(tls *libc.TLS, p uintptr, iAdd int32) int32 { /* sqli // This function is an xTokenize() callback used by the auxiliary snippet() // function. Its job is to identify tokens that are the first in a sentence. // For each such token, an entry is added to the SFinder.aFirst[] array. -func fts5SentenceFinderCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214385:12: */ +func fts5SentenceFinderCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iStartOff int32, iEndOff int32) int32 { /* sqlite3.c:214397:12: */ var rc int32 = SQLITE_OK _ = pToken @@ -182032,7 +182081,7 @@ func fts5SentenceFinderCb(tls *libc.TLS, pContext uintptr, tflags int32, pToken return rc } -func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, aSeen uintptr, iCol int32, iPos int32, nToken int32, pnScore uintptr, piPos uintptr) int32 { /* sqlite3.c:214418:12: */ +func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, aSeen uintptr, iCol int32, iPos int32, nToken int32, pnScore uintptr, piPos uintptr) int32 { /* sqlite3.c:214430:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -182084,7 +182133,7 @@ func fts5SnippetScore(tls *libc.TLS, pApi uintptr, pFts uintptr, nDocsize int32, // Return the value in pVal interpreted as utf-8 text. Except, if pVal // contains a NULL value, return a pointer to a static string zero // bytes in length instead of a NULL pointer. -func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:214467:19: */ +func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:214479:19: */ var zRet uintptr = Xsqlite3_value_text(tls, pVal) if zRet != 0 { return zRet @@ -182093,7 +182142,7 @@ func fts5ValueToText(tls *libc.TLS, pVal uintptr) uintptr { /* sqlite3.c:214467: } // Implementation of snippet() function. -func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214475:13: */ +func fts5SnippetFunction(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214487:13: */ bp := tls.Alloc(172) defer tls.Free(172) @@ -182288,17 +182337,17 @@ type Fts5Bm25Data1 = struct { Favgdl float64 FaIDF uintptr FaFreq uintptr -} /* sqlite3.c:214633:9 */ +} /* sqlite3.c:214645:9 */ //********************************************************************** // The first time the bm25() function is called for a query, an instance // of the following structure is allocated and populated. -type Fts5Bm25Data = Fts5Bm25Data1 /* sqlite3.c:214633:29 */ +type Fts5Bm25Data = Fts5Bm25Data1 /* sqlite3.c:214645:29 */ // Callback used by fts5Bm25GetData() to count the number of rows in the // table matched by each individual phrase within the query. -func fts5CountCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintptr) int32 { /* sqlite3.c:214645:12: */ +func fts5CountCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintptr) int32 { /* sqlite3.c:214657:12: */ var pn uintptr = pUserData _ = pApi _ = pFts @@ -182309,7 +182358,7 @@ func fts5CountCb(tls *libc.TLS, pApi uintptr, pFts uintptr, pUserData uintptr) i // Set *ppData to point to the Fts5Bm25Data object for the current query. // If the object has not already been allocated, allocate and populate it // now. -func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) int32 { /* sqlite3.c:214661:12: */ +func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) int32 { /* sqlite3.c:214673:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -182391,7 +182440,7 @@ func fts5Bm25GetData(tls *libc.TLS, pApi uintptr, pFts uintptr, ppData uintptr) } // Implementation of bm25() function. -func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214734:13: */ +func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, nVal int32, apVal uintptr) { /* sqlite3.c:214746:13: */ bp := tls.Alloc(28) defer tls.Free(28) @@ -182453,7 +182502,7 @@ func fts5Bm25Function(tls *libc.TLS, pApi uintptr, pFts uintptr, pCtx uintptr, n } } -func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:214790:12: */ +func sqlite3Fts5AuxInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:214802:12: */ bp := tls.Alloc(96) defer tls.Free(96) @@ -182487,7 +182536,7 @@ type Builtin = struct { FpUserData uintptr FxFunc Fts5_extension_function FxDestroy uintptr -} /* sqlite3.c:214791:3 */ +} /* sqlite3.c:214803:3 */ // 2014 May 31 // @@ -182502,7 +182551,7 @@ type Builtin = struct { // #include "fts5Int.h" -func sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte U32) int32 { /* sqlite3.c:214833:12: */ +func sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte U32) int32 { /* sqlite3.c:214845:12: */ if U32((*Fts5Buffer)(unsafe.Pointer(pBuf)).FnSpace) < nByte { var nNew U64 if (*Fts5Buffer)(unsafe.Pointer(pBuf)).FnSpace != 0 { @@ -182528,7 +182577,7 @@ func sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte U32) // Encode value iVal as an SQLite varint and append it to the buffer object // pBuf. If an OOM error occurs, set the error code in p. -func sqlite3Fts5BufferAppendVarint(tls *libc.TLS, pRc uintptr, pBuf uintptr, iVal I64) { /* sqlite3.c:214857:13: */ +func sqlite3Fts5BufferAppendVarint(tls *libc.TLS, pRc uintptr, pBuf uintptr, iVal I64) { /* sqlite3.c:214869:13: */ if func() int32 { if ((U32((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn)) + (U32(9))) <= (U32((*Fts5Buffer)(unsafe.Pointer(pBuf)).FnSpace)) { return 0 @@ -182540,21 +182589,21 @@ func sqlite3Fts5BufferAppendVarint(tls *libc.TLS, pRc uintptr, pBuf uintptr, iVa *(*int32)(unsafe.Pointer(pBuf + 8 /* &.n */)) += (sqlite3Fts5PutVarint(tls, ((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp + uintptr((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn)), uint64(iVal))) } -func sqlite3Fts5Put32(tls *libc.TLS, aBuf uintptr, iVal int32) { /* sqlite3.c:214862:13: */ +func sqlite3Fts5Put32(tls *libc.TLS, aBuf uintptr, iVal int32) { /* sqlite3.c:214874:13: */ *(*U8)(unsafe.Pointer(aBuf)) = (U8((iVal >> 24) & 0x00FF)) *(*U8)(unsafe.Pointer(aBuf + 1)) = (U8((iVal >> 16) & 0x00FF)) *(*U8)(unsafe.Pointer(aBuf + 2)) = (U8((iVal >> 8) & 0x00FF)) *(*U8)(unsafe.Pointer(aBuf + 3)) = (U8((iVal >> 0) & 0x00FF)) } -func sqlite3Fts5Get32(tls *libc.TLS, aBuf uintptr) int32 { /* sqlite3.c:214869:12: */ +func sqlite3Fts5Get32(tls *libc.TLS, aBuf uintptr) int32 { /* sqlite3.c:214881:12: */ return (int32(((((U32(*(*U8)(unsafe.Pointer(aBuf)))) << 24) + (U32(int32(*(*U8)(unsafe.Pointer(aBuf + 1))) << 16))) + (U32(int32(*(*U8)(unsafe.Pointer(aBuf + 2))) << 8))) + U32(*(*U8)(unsafe.Pointer(aBuf + 3))))) } // Append buffer nData/pData to buffer pBuf. If an OOM error occurs, set // the error code in p. If an error has already occurred when this function // is called, it is a no-op. -func sqlite3Fts5BufferAppendBlob(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData U32, pData uintptr) { /* sqlite3.c:214878:13: */ +func sqlite3Fts5BufferAppendBlob(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData U32, pData uintptr) { /* sqlite3.c:214890:13: */ if nData != 0 { if func() int32 { @@ -182573,7 +182622,7 @@ func sqlite3Fts5BufferAppendBlob(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData // Append the nul-terminated string zStr to the buffer pBuf. This function // ensures that the byte following the buffer data is set to 0x00, even // though this byte is not included in the pBuf->n count. -func sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zStr uintptr) { /* sqlite3.c:214897:13: */ +func sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zStr uintptr) { /* sqlite3.c:214909:13: */ var nStr int32 = int32(libc.Xstrlen(tls, zStr)) sqlite3Fts5BufferAppendBlob(tls, pRc, pBuf, (uint32(nStr + 1)), zStr) (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn-- @@ -182585,7 +182634,7 @@ func sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zSt // Like sqlite3Fts5BufferAppendString(), this function ensures that the byte // following the buffer data is set to 0x00, even though this byte is not // included in the pBuf->n count. -func sqlite3Fts5BufferAppendPrintf(tls *libc.TLS, pRc uintptr, pBuf uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:214915:13: */ +func sqlite3Fts5BufferAppendPrintf(tls *libc.TLS, pRc uintptr, pBuf uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:214927:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var zTmp uintptr var ap Va_list @@ -182603,7 +182652,7 @@ func sqlite3Fts5BufferAppendPrintf(tls *libc.TLS, pRc uintptr, pBuf uintptr, zFm } } -func sqlite3Fts5Mprintf(tls *libc.TLS, pRc uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:214936:13: */ +func sqlite3Fts5Mprintf(tls *libc.TLS, pRc uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:214948:13: */ var zRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var ap Va_list @@ -182619,26 +182668,26 @@ func sqlite3Fts5Mprintf(tls *libc.TLS, pRc uintptr, zFmt uintptr, va uintptr) ui } // Free any buffer allocated by pBuf. Zero the structure before returning. -func sqlite3Fts5BufferFree(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214954:13: */ +func sqlite3Fts5BufferFree(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214966:13: */ Xsqlite3_free(tls, (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp) libc.X__builtin___memset_chk(tls, pBuf, 0, uint64(unsafe.Sizeof(Fts5Buffer{})), libc.X__builtin_object_size(tls, pBuf, 0)) } // Zero the contents of the buffer object. But do not free the associated // memory allocation. -func sqlite3Fts5BufferZero(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214963:13: */ +func sqlite3Fts5BufferZero(tls *libc.TLS, pBuf uintptr) { /* sqlite3.c:214975:13: */ (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn = 0 } // Set the buffer to contain nData/pData. If an OOM error occurs, leave an // the error code in p. If an error has already occurred when this function // is called, it is a no-op. -func sqlite3Fts5BufferSet(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData int32, pData uintptr) { /* sqlite3.c:214972:13: */ +func sqlite3Fts5BufferSet(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData int32, pData uintptr) { /* sqlite3.c:214984:13: */ (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn = 0 sqlite3Fts5BufferAppendBlob(tls, pRc, pBuf, uint32(nData), pData) } -func sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piOff uintptr) int32 { /* sqlite3.c:214982:12: */ +func sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piOff uintptr) int32 { /* sqlite3.c:214994:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -182696,14 +182745,14 @@ func sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piO // Advance the iterator object passed as the only argument. Return true // if the iterator reaches EOF, or false otherwise. -func sqlite3Fts5PoslistReaderNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:215021:12: */ +func sqlite3Fts5PoslistReaderNext(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:215033:12: */ if sqlite3Fts5PoslistNext64(tls, (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fa, (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fn, (pIter+12 /* &.i */), (pIter+24 /* &.iPos */)) != 0 { (*Fts5PoslistReader)(unsafe.Pointer(pIter)).FbEof = U8(1) } return int32((*Fts5PoslistReader)(unsafe.Pointer(pIter)).FbEof) } -func sqlite3Fts5PoslistReaderInit(tls *libc.TLS, a uintptr, n int32, pIter uintptr) int32 { /* sqlite3.c:215028:12: */ +func sqlite3Fts5PoslistReaderInit(tls *libc.TLS, a uintptr, n int32, pIter uintptr) int32 { /* sqlite3.c:215040:12: */ libc.X__builtin___memset_chk(tls, pIter, 0, uint64(unsafe.Sizeof(Fts5PoslistReader{})), libc.X__builtin_object_size(tls, pIter, 0)) (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fa = a (*Fts5PoslistReader)(unsafe.Pointer(pIter)).Fn = n @@ -182715,7 +182764,7 @@ func sqlite3Fts5PoslistReaderInit(tls *libc.TLS, a uintptr, n int32, pIter uintp // pBuf, which must be already be large enough to hold the new data. // The previous position written to this list is *piPrev. *piPrev is set // to iPos before returning. -func sqlite3Fts5PoslistSafeAppend(tls *libc.TLS, pBuf uintptr, piPrev uintptr, iPos I64) { /* sqlite3.c:215045:13: */ +func sqlite3Fts5PoslistSafeAppend(tls *libc.TLS, pBuf uintptr, piPrev uintptr, iPos I64) { /* sqlite3.c:215057:13: */ if (iPos & colmask) != (*(*I64)(unsafe.Pointer(piPrev)) & colmask) { *(*U8)(unsafe.Pointer((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp + uintptr(libc.PostIncInt32(&(*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn, 1)))) = U8(1) *(*int32)(unsafe.Pointer(pBuf + 8 /* &.n */)) += (sqlite3Fts5PutVarint(tls, ((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp + uintptr((*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn)), (uint64(iPos >> 32)))) @@ -182725,9 +182774,9 @@ func sqlite3Fts5PoslistSafeAppend(tls *libc.TLS, pBuf uintptr, piPrev uintptr, i *(*I64)(unsafe.Pointer(piPrev)) = iPos } -var colmask I64 = (I64((int64(0x7FFFFFFF))) << 32) /* sqlite3.c:215050:20 */ +var colmask I64 = (I64((int64(0x7FFFFFFF))) << 32) /* sqlite3.c:215062:20 */ -func sqlite3Fts5PoslistWriterAppend(tls *libc.TLS, pBuf uintptr, pWriter uintptr, iPos I64) int32 { /* sqlite3.c:215060:12: */ +func sqlite3Fts5PoslistWriterAppend(tls *libc.TLS, pBuf uintptr, pWriter uintptr, iPos I64) int32 { /* sqlite3.c:215072:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -182744,7 +182793,7 @@ func sqlite3Fts5PoslistWriterAppend(tls *libc.TLS, pBuf uintptr, pWriter uintptr return SQLITE_OK } -func sqlite3Fts5MallocZero(tls *libc.TLS, pRc uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:215071:13: */ +func sqlite3Fts5MallocZero(tls *libc.TLS, pRc uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:215083:13: */ var pRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { pRet = Xsqlite3_malloc64(tls, uint64(nByte)) @@ -182765,7 +182814,7 @@ func sqlite3Fts5MallocZero(tls *libc.TLS, pRc uintptr, nByte Sqlite3_int64) uint // // It is the responsibility of the caller to eventually free the returned // buffer using sqlite3_free(). If an OOM error occurs, NULL is returned. -func sqlite3Fts5Strndup(tls *libc.TLS, pRc uintptr, pIn uintptr, nIn int32) uintptr { /* sqlite3.c:215092:13: */ +func sqlite3Fts5Strndup(tls *libc.TLS, pRc uintptr, pIn uintptr, nIn int32) uintptr { /* sqlite3.c:215104:13: */ var zRet uintptr = uintptr(0) if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { if nIn < 0 { @@ -182790,7 +182839,7 @@ func sqlite3Fts5Strndup(tls *libc.TLS, pRc uintptr, pIn uintptr, nIn int32) uint // * The 10 integer ASCII characters. // * The underscore character "_" (0x5F). // * The unicode "subsitute" character (0x1A). -func sqlite3Fts5IsBareword(tls *libc.TLS, t int8) int32 { /* sqlite3.c:215120:12: */ +func sqlite3Fts5IsBareword(tls *libc.TLS, t int8) int32 { /* sqlite3.c:215132:12: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -182815,13 +182864,13 @@ type Fts5TermsetEntry1 = struct { FnTerm int32 FiIdx int32 FpNext uintptr -} /* sqlite3.c:212096:9 */ +} /* sqlite3.c:212108:9 */ // ************************************************************************ // -type Fts5TermsetEntry = Fts5TermsetEntry1 /* sqlite3.c:215138:33 */ +type Fts5TermsetEntry = Fts5TermsetEntry1 /* sqlite3.c:215150:33 */ -func sqlite3Fts5TermsetNew(tls *libc.TLS, pp uintptr) int32 { /* sqlite3.c:215150:12: */ +func sqlite3Fts5TermsetNew(tls *libc.TLS, pp uintptr) int32 { /* sqlite3.c:215162:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -182830,7 +182879,7 @@ func sqlite3Fts5TermsetNew(tls *libc.TLS, pp uintptr) int32 { /* sqlite3.c:21515 return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func sqlite3Fts5TermsetAdd(tls *libc.TLS, p uintptr, iIdx int32, pTerm uintptr, nTerm int32, pbPresent uintptr) int32 { /* sqlite3.c:215156:12: */ +func sqlite3Fts5TermsetAdd(tls *libc.TLS, p uintptr, iIdx int32, pTerm uintptr, nTerm int32, pbPresent uintptr) int32 { /* sqlite3.c:215168:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -182876,7 +182925,7 @@ func sqlite3Fts5TermsetAdd(tls *libc.TLS, p uintptr, iIdx int32, pTerm uintptr, return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func sqlite3Fts5TermsetFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:215205:13: */ +func sqlite3Fts5TermsetFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:215217:13: */ if p != 0 { var i U32 for i = U32(0); i < (U32((int32(uint64(unsafe.Sizeof([512]uintptr{})) / uint64(unsafe.Sizeof(uintptr(0))))))); i++ { @@ -182908,18 +182957,18 @@ func sqlite3Fts5TermsetFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:215205:13: // Maximum allowed page size -func fts5_iswhitespace(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215247:12: */ +func fts5_iswhitespace(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215259:12: */ return (libc.Bool32(int32(x) == ' ')) } -func fts5_isopenquote(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215251:12: */ +func fts5_isopenquote(tls *libc.TLS, x int8) int32 { /* sqlite3.c:215263:12: */ return (libc.Bool32((((int32(x) == '"') || (int32(x) == '\'')) || (int32(x) == '[')) || (int32(x) == '`'))) } // Argument pIn points to a character that is part of a nul-terminated // string. Return a pointer to the first character following *pIn in // the string that is not a white-space character. -func fts5ConfigSkipWhitespace(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215260:19: */ +func fts5ConfigSkipWhitespace(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215272:19: */ var p uintptr = pIn if p != 0 { for fts5_iswhitespace(tls, *(*int8)(unsafe.Pointer(p))) != 0 { @@ -182932,7 +182981,7 @@ func fts5ConfigSkipWhitespace(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c // Argument pIn points to a character that is part of a nul-terminated // string. Return a pointer to the first character following *pIn in // the string that is not a "bareword" character. -func fts5ConfigSkipBareword(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215273:19: */ +func fts5ConfigSkipBareword(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215285:19: */ var p uintptr = pIn for sqlite3Fts5IsBareword(tls, *(*int8)(unsafe.Pointer(p))) != 0 { p++ @@ -182943,11 +182992,11 @@ func fts5ConfigSkipBareword(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:2 return p } -func fts5_isdigit(tls *libc.TLS, a int8) int32 { /* sqlite3.c:215280:12: */ +func fts5_isdigit(tls *libc.TLS, a int8) int32 { /* sqlite3.c:215292:12: */ return (libc.Bool32((int32(a) >= '0') && (int32(a) <= '9'))) } -func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215286:19: */ +func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215298:19: */ var p uintptr = pIn switch int32(*(*int8)(unsafe.Pointer(p))) { case 'n': @@ -183036,7 +183085,7 @@ func fts5ConfigSkipLiteral(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:21 // the character immediately following it. Or, if the close-quote is not // found, -1 is returned. If -1 is returned, the buffer is left in an // undefined state. -func fts5Dequote(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:215362:12: */ +func fts5Dequote(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:215374:12: */ var q int8 var iIn int32 = 1 var iOut int32 = 0 @@ -183081,7 +183130,7 @@ func fts5Dequote(tls *libc.TLS, z uintptr) int32 { /* sqlite3.c:215362:12: */ // 'xyz' becomes xyz // [pqr] becomes pqr // `mno` becomes mno -func sqlite3Fts5Dequote(tls *libc.TLS, z uintptr) { /* sqlite3.c:215407:13: */ +func sqlite3Fts5Dequote(tls *libc.TLS, z uintptr) { /* sqlite3.c:215419:13: */ var quote int8 // Quote character (if any ) quote = *(*int8)(unsafe.Pointer(z)) @@ -183094,11 +183143,11 @@ type Fts5Enum1 = struct { FzName uintptr FeVal int32 _ [4]byte -} /* sqlite3.c:215418:1 */ +} /* sqlite3.c:215430:1 */ -type Fts5Enum = Fts5Enum1 /* sqlite3.c:215422:25 */ +type Fts5Enum = Fts5Enum1 /* sqlite3.c:215434:25 */ -func fts5ConfigSetEnum(tls *libc.TLS, aEnum uintptr, zEnum uintptr, peVal uintptr) int32 { /* sqlite3.c:215424:12: */ +func fts5ConfigSetEnum(tls *libc.TLS, aEnum uintptr, zEnum uintptr, peVal uintptr) int32 { /* sqlite3.c:215436:12: */ var nEnum int32 = int32(libc.Xstrlen(tls, zEnum)) var i int32 var iVal int32 = -1 @@ -183126,7 +183175,7 @@ func fts5ConfigSetEnum(tls *libc.TLS, aEnum uintptr, zEnum uintptr, peVal uintpt // an error occurs, an SQLite error code is returned and an error message // may be left in *pzErr. It is the responsibility of the caller to // eventually free any such error message using sqlite3_free(). -func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCmd uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215453:12: */ +func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCmd uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215465:12: */ bp := tls.Alloc(112) defer tls.Free(112) @@ -183289,7 +183338,7 @@ func fts5ConfigParseSpecial(tls *libc.TLS, pGlobal uintptr, pConfig uintptr, zCm // Allocate an instance of the default tokenizer ("simple") at // Fts5Config.pTokenizer. Return SQLITE_OK if successful, or an SQLite error // code if an error occurs. -func fts5ConfigDefaultTokenizer(tls *libc.TLS, pGlobal uintptr, pConfig uintptr) int32 { /* sqlite3.c:215617:12: */ +func fts5ConfigDefaultTokenizer(tls *libc.TLS, pGlobal uintptr, pConfig uintptr) int32 { /* sqlite3.c:215629:12: */ return sqlite3Fts5GetTokenizer(tls, pGlobal, uintptr(0), 0, pConfig, uintptr(0)) } @@ -183307,7 +183356,7 @@ func fts5ConfigDefaultTokenizer(tls *libc.TLS, pGlobal uintptr, pConfig uintptr) // a no-op (NULL is returned). Otherwise, if an OOM occurs within this // function, *pRc is set to SQLITE_NOMEM before returning. *pRc is *not* // set if a parse error (failed to find close quote) occurs. -func fts5ConfigGobbleWord(tls *libc.TLS, pRc uintptr, zIn uintptr, pzOut uintptr, pbQuoted uintptr) uintptr { /* sqlite3.c:215637:19: */ +func fts5ConfigGobbleWord(tls *libc.TLS, pRc uintptr, zIn uintptr, pzOut uintptr, pbQuoted uintptr) uintptr { /* sqlite3.c:215649:19: */ var zRet uintptr = uintptr(0) var nIn Sqlite3_int64 = Sqlite3_int64(libc.Xstrlen(tls, zIn)) @@ -183341,7 +183390,7 @@ func fts5ConfigGobbleWord(tls *libc.TLS, pRc uintptr, zIn uintptr, pzOut uintptr return zRet } -func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215677:12: */ +func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, pzErr uintptr) int32 { /* sqlite3.c:215689:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -183364,7 +183413,7 @@ func fts5ConfigParseColumn(tls *libc.TLS, p uintptr, zCol uintptr, zArg uintptr, } // Populate the Fts5Config.zContentExprlist string. -func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:215705:12: */ +func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:215717:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -183397,7 +183446,7 @@ func fts5ConfigMakeExprlist(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:21570 // returned, *ppOut is set to NULL and an error message may be left in // *pzErr. It is the responsibility of the caller to eventually free any // such error message using sqlite3_free(). -func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int32, azArg uintptr, ppOut uintptr, pzErr uintptr) int32 { /* sqlite3.c:215738:12: */ +func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int32, azArg uintptr, ppOut uintptr, pzErr uintptr) int32 { /* sqlite3.c:215750:12: */ bp := tls.Alloc(76) defer tls.Free(76) @@ -183516,7 +183565,7 @@ func sqlite3Fts5ConfigParse(tls *libc.TLS, pGlobal uintptr, db uintptr, nArg int } // Free the configuration object passed as the only argument. -func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:215857:13: */ +func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:215869:13: */ if pConfig != 0 { var i int32 if (*Fts5Config)(unsafe.Pointer(pConfig)).FpTok != 0 { @@ -183541,7 +183590,7 @@ func sqlite3Fts5ConfigFree(tls *libc.TLS, pConfig uintptr) { /* sqlite3.c:215857 // Call sqlite3_declare_vtab() based on the contents of the configuration // object passed as the only argument. Return SQLITE_OK if successful, or // an SQLite error code if an error occurs. -func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:215884:12: */ +func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:215896:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -183591,7 +183640,7 @@ func sqlite3Fts5ConfigDeclareVtab(tls *libc.TLS, pConfig uintptr) int32 { /* sql // still returns SQLITE_OK. Or, if the tokenization was abandoned early // because the callback returned another non-zero value, it is assumed // to be an SQLite error code and returned to the caller. -func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uintptr, nText int32, pCtx uintptr, xToken uintptr) int32 { /* sqlite3.c:215930:12: */ +func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uintptr, nText int32, pCtx uintptr, xToken uintptr) int32 { /* sqlite3.c:215942:12: */ if pText == uintptr(0) { return SQLITE_OK } @@ -183603,7 +183652,7 @@ func sqlite3Fts5Tokenize(tls *libc.TLS, pConfig uintptr, flags int32, pText uint // a comma-separated list of SQL literals followed by a ')' character. // If it actually is this, return a pointer to the ')'. Otherwise, return // NULL to indicate a parse error. -func fts5ConfigSkipArgs(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215949:19: */ +func fts5ConfigSkipArgs(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:215961:19: */ var p uintptr = pIn for 1 != 0 { @@ -183630,7 +183679,7 @@ func fts5ConfigSkipArgs(tls *libc.TLS, pIn uintptr) uintptr { /* sqlite3.c:21594 // + Open parenthesis - "(" // + Zero or more SQL literals in a comma separated list // + Close parenthesis - ")" -func sqlite3Fts5ConfigParseRank(tls *libc.TLS, zIn uintptr, pzRank uintptr, pzRankArgs uintptr) int32 { /* sqlite3.c:215976:12: */ +func sqlite3Fts5ConfigParseRank(tls *libc.TLS, zIn uintptr, pzRank uintptr, pzRankArgs uintptr) int32 { /* sqlite3.c:215988:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -183694,7 +183743,7 @@ func sqlite3Fts5ConfigParseRank(tls *libc.TLS, zIn uintptr, pzRank uintptr, pzRa return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVal uintptr, pbBadkey uintptr) int32 { /* sqlite3.c:216035:12: */ +func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVal uintptr, pbBadkey uintptr) int32 { /* sqlite3.c:216047:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -183782,7 +183831,7 @@ func sqlite3Fts5ConfigSetValue(tls *libc.TLS, pConfig uintptr, zKey uintptr, pVa } // Load the contents of the %_config table into memory. -func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 { /* sqlite3.c:216129:12: */ +func sqlite3Fts5ConfigLoad(tls *libc.TLS, pConfig uintptr, iCookie int32) int32 { /* sqlite3.c:216141:12: */ bp := tls.Alloc(52) defer tls.Free(52) @@ -183859,7 +183908,7 @@ type Fts5ExprTerm1 = struct { FzTerm uintptr FpIter uintptr FpSynonym uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // 2014 May 31 // @@ -183878,9 +183927,9 @@ type Fts5ExprTerm1 = struct { // All token types in the generated fts5parse.h file are greater than 0. -type Fts5ExprTerm = Fts5ExprTerm1 /* sqlite3.c:216207:29 */ +type Fts5ExprTerm = Fts5ExprTerm1 /* sqlite3.c:216219:29 */ -func sqlite3Fts5ParseError(tls *libc.TLS, pParse uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:216314:13: */ +func sqlite3Fts5ParseError(tls *libc.TLS, pParse uintptr, zFmt uintptr, va uintptr) { /* sqlite3.c:216326:13: */ var ap Va_list _ = ap ap = va @@ -183891,12 +183940,12 @@ func sqlite3Fts5ParseError(tls *libc.TLS, pParse uintptr, zFmt uintptr, va uintp _ = ap } -func fts5ExprIsspace(tls *libc.TLS, t int8) int32 { /* sqlite3.c:216324:12: */ +func fts5ExprIsspace(tls *libc.TLS, t int8) int32 { /* sqlite3.c:216336:12: */ return (libc.Bool32((((int32(t) == ' ') || (int32(t) == '\t')) || (int32(t) == '\n')) || (int32(t) == '\r'))) } // Read the first token from the nul-terminated string at *pz. -func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) int32 { /* sqlite3.c:216331:12: */ +func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) int32 { /* sqlite3.c:216343:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -183996,15 +184045,15 @@ func fts5ExprGetToken(tls *libc.TLS, pParse uintptr, pz uintptr, pToken uintptr) return tok } -func fts5ParseAlloc(tls *libc.TLS, t U64) uintptr { /* sqlite3.c:216395:13: */ +func fts5ParseAlloc(tls *libc.TLS, t U64) uintptr { /* sqlite3.c:216407:13: */ return Xsqlite3_malloc64(tls, uint64(Sqlite3_int64(t))) } -func fts5ParseFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216396:13: */ +func fts5ParseFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216408:13: */ Xsqlite3_free(tls, p) } -func sqlite3Fts5ExprNew(tls *libc.TLS, pConfig uintptr, bPhraseToAnd int32, iCol int32, zExpr uintptr, ppNew uintptr, pzErr uintptr) int32 { /* sqlite3.c:216398:12: */ +func sqlite3Fts5ExprNew(tls *libc.TLS, pConfig uintptr, bPhraseToAnd int32, iCol int32, zExpr uintptr, ppNew uintptr, pzErr uintptr) int32 { /* sqlite3.c:216410:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -184082,7 +184131,7 @@ func sqlite3Fts5ExprNew(tls *libc.TLS, pConfig uintptr, bPhraseToAnd int32, iCol // expression that will match a superset of the rows matched by the LIKE or // GLOB. If successful, SQLITE_OK is returned. Otherwise, an SQLite error // code. -func sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol int32, zText uintptr, pp uintptr) int32 { /* sqlite3.c:216479:12: */ +func sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol int32, zText uintptr, pp uintptr) int32 { /* sqlite3.c:216491:12: */ bp := tls.Alloc(3) defer tls.Free(3) @@ -184157,7 +184206,7 @@ func sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol in } // Free the expression node object passed as the only argument. -func sqlite3Fts5ParseNodeFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216549:13: */ +func sqlite3Fts5ParseNodeFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216561:13: */ if p != 0 { var i int32 for i = 0; i < (*Fts5ExprNode)(unsafe.Pointer(p)).FnChild; i++ { @@ -184169,7 +184218,7 @@ func sqlite3Fts5ParseNodeFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216549:13 } // Free the expression object passed as the only argument. -func sqlite3Fts5ExprFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216563:13: */ +func sqlite3Fts5ExprFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216575:13: */ if p != 0 { sqlite3Fts5ParseNodeFree(tls, (*Fts5Expr)(unsafe.Pointer(p)).FpRoot) Xsqlite3_free(tls, (*Fts5Expr)(unsafe.Pointer(p)).FapExprPhrase) @@ -184177,7 +184226,7 @@ func sqlite3Fts5ExprFree(tls *libc.TLS, p uintptr) { /* sqlite3.c:216563:13: */ } } -func sqlite3Fts5ExprAnd(tls *libc.TLS, pp1 uintptr, p2 uintptr) int32 { /* sqlite3.c:216571:12: */ +func sqlite3Fts5ExprAnd(tls *libc.TLS, pp1 uintptr, p2 uintptr) int32 { /* sqlite3.c:216583:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -184218,7 +184267,7 @@ func sqlite3Fts5ExprAnd(tls *libc.TLS, pp1 uintptr, p2 uintptr) int32 { /* sqlit // Argument pTerm must be a synonym iterator. Return the current rowid // that it points to. -func fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintptr) I64 { /* sqlite3.c:216611:12: */ +func fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintptr) I64 { /* sqlite3.c:216623:12: */ var iRet I64 = int64(0) var bRetValid int32 = 0 var p uintptr @@ -184240,7 +184289,7 @@ func fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintp } // Argument pTerm must be a synonym iterator. -func fts5ExprSynonymList(tls *libc.TLS, pTerm uintptr, iRowid I64, pBuf uintptr, pa uintptr, pn uintptr) int32 { /* sqlite3.c:216635:12: */ +func fts5ExprSynonymList(tls *libc.TLS, pTerm uintptr, iRowid I64, pBuf uintptr, pa uintptr, pn uintptr) int32 { /* sqlite3.c:216647:12: */ bp := tls.Alloc(136) defer tls.Free(136) @@ -184404,7 +184453,7 @@ __22: // SQLITE_OK is returned if an error occurs, or an SQLite error code // otherwise. It is not considered an error code if the current rowid is // not a match. -func fts5ExprPhraseIsMatch(tls *libc.TLS, pNode uintptr, pPhrase uintptr, pbMatch uintptr) int32 { /* sqlite3.c:216718:12: */ +func fts5ExprPhraseIsMatch(tls *libc.TLS, pNode uintptr, pPhrase uintptr, pbMatch uintptr) int32 { /* sqlite3.c:216730:12: */ bp := tls.Alloc(168) defer tls.Free(168) @@ -184629,11 +184678,11 @@ type Fts5LookaheadReader1 = struct { Fi int32 FiPos I64 FiLookahead I64 -} /* sqlite3.c:216802:9 */ +} /* sqlite3.c:216814:9 */ -type Fts5LookaheadReader = Fts5LookaheadReader1 /* sqlite3.c:216802:36 */ +type Fts5LookaheadReader = Fts5LookaheadReader1 /* sqlite3.c:216814:36 */ -func fts5LookaheadReaderNext(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:216813:12: */ +func fts5LookaheadReaderNext(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:216825:12: */ (*Fts5LookaheadReader)(unsafe.Pointer(p)).FiPos = (*Fts5LookaheadReader)(unsafe.Pointer(p)).FiLookahead if sqlite3Fts5PoslistNext64(tls, (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fa, (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fn, (p+12 /* &.i */), (p+24 /* &.iLookahead */)) != 0 { (*Fts5LookaheadReader)(unsafe.Pointer(p)).FiLookahead = (I64((int64(1))) << 62) @@ -184641,7 +184690,7 @@ func fts5LookaheadReaderNext(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:2168 return (libc.Bool32((*Fts5LookaheadReader)(unsafe.Pointer(p)).FiPos == (I64((int64(1))) << 62))) } -func fts5LookaheadReaderInit(tls *libc.TLS, a uintptr, n int32, p uintptr) int32 { /* sqlite3.c:216821:12: */ +func fts5LookaheadReaderInit(tls *libc.TLS, a uintptr, n int32, p uintptr) int32 { /* sqlite3.c:216833:12: */ libc.X__builtin___memset_chk(tls, p, 0, uint64(unsafe.Sizeof(Fts5LookaheadReader{})), libc.X__builtin_object_size(tls, p, 0)) (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fa = a (*Fts5LookaheadReader)(unsafe.Pointer(p)).Fn = n @@ -184653,9 +184702,9 @@ type Fts5NearTrimmer1 = struct { Freader Fts5LookaheadReader Fwriter Fts5PoslistWriter FpOut uintptr -} /* sqlite3.c:216832:9 */ +} /* sqlite3.c:216844:9 */ -type Fts5NearTrimmer = Fts5NearTrimmer1 /* sqlite3.c:216832:32 */ +type Fts5NearTrimmer = Fts5NearTrimmer1 /* sqlite3.c:216844:32 */ // The near-set object passed as the first argument contains more than // one phrase. All phrases currently point to the same row. The @@ -184672,7 +184721,7 @@ type Fts5NearTrimmer = Fts5NearTrimmer1 /* sqlite3.c:216832:32 */ // If no error occurs and non-zero (a match) is returned, the position-list // of each phrase object is edited to contain only those entries that // meet the constraint before returning. -func fts5ExprNearIsMatch(tls *libc.TLS, pRc uintptr, pNear uintptr) int32 { /* sqlite3.c:216856:12: */ +func fts5ExprNearIsMatch(tls *libc.TLS, pRc uintptr, pNear uintptr) int32 { /* sqlite3.c:216868:12: */ bp := tls.Alloc(196) defer tls.Free(196) @@ -184874,7 +184923,7 @@ __29: // If the iterator reaches EOF, set *pbEof to true before returning. If // an error occurs, set *pRc to an error code. If either *pbEof or *pRc // are set, return a non-zero value. Otherwise, return zero. -func fts5ExprAdvanceto(tls *libc.TLS, pIter uintptr, bDesc int32, piLast uintptr, pRc uintptr, pbEof uintptr) int32 { /* sqlite3.c:216955:12: */ +func fts5ExprAdvanceto(tls *libc.TLS, pIter uintptr, bDesc int32, piLast uintptr, pRc uintptr, pbEof uintptr) int32 { /* sqlite3.c:216967:12: */ var iLast I64 = *(*I64)(unsafe.Pointer(piLast)) var iRowid I64 @@ -184894,7 +184943,7 @@ func fts5ExprAdvanceto(tls *libc.TLS, pIter uintptr, bDesc int32, piLast uintptr return 0 } -func fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast uintptr, pRc uintptr) int32 { /* sqlite3.c:216981:12: */ +func fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast uintptr, pRc uintptr) int32 { /* sqlite3.c:216993:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -184921,7 +184970,7 @@ func fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast return *(*int32)(unsafe.Pointer(bp /* bEof */)) } -func fts5ExprNearTest(tls *libc.TLS, pRc uintptr, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217011:12: */ +func fts5ExprNearTest(tls *libc.TLS, pRc uintptr, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217023:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -184978,7 +185027,7 @@ func fts5ExprNearTest(tls *libc.TLS, pRc uintptr, pExpr uintptr, pNode uintptr) // If an error occurs, return an SQLite error code. Otherwise, return // SQLITE_OK. It is not considered an error if some term matches zero // documents. -func fts5ExprNearInitAll(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217070:12: */ +func fts5ExprNearInitAll(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217082:12: */ var pNear uintptr = (*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear var i int32 @@ -185044,7 +185093,7 @@ func fts5ExprNearInitAll(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* // Otherwise, if this is a DESC iterator, the opposite is returned: // // (iRhs - iLhs) -func fts5RowidCmp(tls *libc.TLS, pExpr uintptr, iLhs I64, iRhs I64) int32 { /* sqlite3.c:217132:12: */ +func fts5RowidCmp(tls *libc.TLS, pExpr uintptr, iLhs I64, iRhs I64) int32 { /* sqlite3.c:217144:12: */ if (*Fts5Expr)(unsafe.Pointer(pExpr)).FbDesc == 0 { if iLhs < iRhs { @@ -185060,7 +185109,7 @@ func fts5RowidCmp(tls *libc.TLS, pExpr uintptr, iLhs I64, iRhs I64) int32 { /* s return int32(0) } -func fts5ExprSetEof(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217147:13: */ +func fts5ExprSetEof(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217159:13: */ var i int32 (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = 1 (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = 0 @@ -185069,7 +185118,7 @@ func fts5ExprSetEof(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217147:13: */ } } -func fts5ExprNodeZeroPoslist(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217156:13: */ +func fts5ExprNodeZeroPoslist(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217168:13: */ if ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_STRING) || ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_TERM) { var pNear uintptr = (*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear var i int32 @@ -185095,7 +185144,7 @@ func fts5ExprNodeZeroPoslist(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:217156 // This means that if the iteration order is ASC, then numerically larger // rowids are considered larger. Or if it is the default DESC, numerically // smaller rowids are larger. -func fts5NodeCompare(tls *libc.TLS, pExpr uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:217186:12: */ +func fts5NodeCompare(tls *libc.TLS, pExpr uintptr, p1 uintptr, p2 uintptr) int32 { /* sqlite3.c:217198:12: */ if (*Fts5ExprNode)(unsafe.Pointer(p2)).FbEof != 0 { return -1 } @@ -185114,7 +185163,7 @@ func fts5NodeCompare(tls *libc.TLS, pExpr uintptr, p1 uintptr, p2 uintptr) int32 // SQLITE_OK is returned if an error occurs, or an SQLite error code // otherwise. It is not considered an error code if an iterator reaches // EOF. -func fts5ExprNodeTest_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217207:12: */ +func fts5ExprNodeTest_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217219:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -185182,7 +185231,7 @@ func fts5ExprNodeTest_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5ExprNodeNext_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217277:12: */ +func fts5ExprNodeNext_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217289:12: */ var pTerm uintptr = (*(*uintptr)(unsafe.Pointer(((*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear + 24 /* &.apPhrase */))) + 32 /* &.aTerm */) var rc int32 = SQLITE_OK @@ -185241,7 +185290,7 @@ func fts5ExprNodeNext_STRING(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromV return rc } -func fts5ExprNodeTest_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217342:12: */ +func fts5ExprNodeTest_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217354:12: */ // As this "NEAR" object is actually a single phrase that consists // of a single term only, grab pointers into the poslist managed by the // fts5_index.c iterator object. This is much faster than synthesizing @@ -185260,7 +185309,7 @@ func fts5ExprNodeTest_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { } // xNext() method for a node of type FTS5_TERM. -func fts5ExprNodeNext_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217370:12: */ +func fts5ExprNodeNext_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217382:12: */ var rc int32 var pIter uintptr = (*Fts5ExprTerm)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(((*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear + 24 /* &.apPhrase */))) + 32 /* &.aTerm */))).FpIter @@ -185278,7 +185327,7 @@ func fts5ExprNodeNext_TERM(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromVal return rc } -func fts5ExprNodeTest_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr) { /* sqlite3.c:217394:13: */ +func fts5ExprNodeTest_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr) { /* sqlite3.c:217406:13: */ var pNext uintptr = *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) var i int32 @@ -185294,7 +185343,7 @@ func fts5ExprNodeTest_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr) { /* sqlit (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = (*Fts5ExprNode)(unsafe.Pointer(pNext)).FbNomatch } -func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217413:12: */ +func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217425:12: */ var i int32 var iLast I64 = (*Fts5ExprNode)(unsafe.Pointer(pNode)).FiRowid @@ -185318,7 +185367,7 @@ func fts5ExprNodeNext_OR(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid } // Argument pNode is an FTS5_AND node. -func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* sqlite3.c:217445:12: */ +func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* sqlite3.c:217457:12: */ var iChild int32 var iLast I64 = (*Fts5ExprNode)(unsafe.Pointer(pAnd)).FiRowid var rc int32 = SQLITE_OK @@ -185366,7 +185415,7 @@ func fts5ExprNodeTest_AND(tls *libc.TLS, pExpr uintptr, pAnd uintptr) int32 { /* return SQLITE_OK } -func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217497:12: */ +func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217509:12: */ var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) + 16 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_AND(tls, pExpr, pNode) @@ -185376,7 +185425,7 @@ func fts5ExprNodeNext_AND(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromVali return rc } -func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217512:12: */ +func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217524:12: */ var rc int32 = SQLITE_OK var p1 uintptr = *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) var p2 uintptr = *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */) + 1*8)) @@ -185402,7 +185451,7 @@ func fts5ExprNodeTest_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { / return rc } -func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217540:12: */ +func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromValid int32, iFrom I64) int32 { /* sqlite3.c:217552:12: */ var rc int32 = (*(*func(*libc.TLS, uintptr, uintptr, int32, I64) int32)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))) + 16 /* &.xNext */))))(tls, pExpr, *(*uintptr)(unsafe.Pointer((pNode + 48 /* &.apChild */))), bFromValid, iFrom) if rc == SQLITE_OK { rc = fts5ExprNodeTest_NOT(tls, pExpr, pNode) @@ -185416,7 +185465,7 @@ func fts5ExprNodeNext_NOT(tls *libc.TLS, pExpr uintptr, pNode uintptr, bFromVali // If pNode currently points to a match, this function returns SQLITE_OK // without modifying it. Otherwise, pNode is advanced until it does point // to a match or EOF is reached. -func fts5ExprNodeTest(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217561:12: */ +func fts5ExprNodeTest(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217573:12: */ var rc int32 = SQLITE_OK if (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof == 0 { switch (*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType { @@ -185469,7 +185518,7 @@ func fts5ExprNodeTest(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sq // // Return an SQLite error code if an error occurs, or SQLITE_OK otherwise. // It is not an error if there are no matches. -func fts5ExprNodeFirst(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217606:12: */ +func fts5ExprNodeFirst(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* sqlite3.c:217618:12: */ var rc int32 = SQLITE_OK (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = 0 (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbNomatch = 0 @@ -185531,7 +185580,7 @@ func fts5ExprNodeFirst(tls *libc.TLS, pExpr uintptr, pNode uintptr) int32 { /* s // // Return SQLITE_OK if successful, or an SQLite error code otherwise. It // is not considered an error if the query does not match any documents. -func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bDesc int32) int32 { /* sqlite3.c:217665:12: */ +func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bDesc int32) int32 { /* sqlite3.c:217677:12: */ var pRoot uintptr = (*Fts5Expr)(unsafe.Pointer(p)).FpRoot var rc int32 // Return code @@ -185559,7 +185608,7 @@ func sqlite3Fts5ExprFirst(tls *libc.TLS, p uintptr, pIdx uintptr, iFirst I64, bD // // Return SQLITE_OK if successful, or an SQLite error code otherwise. It // is not considered an error if the query does not match any documents. -func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3.c:217696:12: */ +func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3.c:217708:12: */ var rc int32 var pRoot uintptr = (*Fts5Expr)(unsafe.Pointer(p)).FpRoot @@ -185573,15 +185622,15 @@ func sqlite3Fts5ExprNext(tls *libc.TLS, p uintptr, iLast I64) int32 { /* sqlite3 return rc } -func sqlite3Fts5ExprEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:217710:12: */ +func sqlite3Fts5ExprEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:217722:12: */ return (*Fts5ExprNode)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(p)).FpRoot)).FbEof } -func sqlite3Fts5ExprRowid(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:217714:12: */ +func sqlite3Fts5ExprRowid(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:217726:12: */ return (*Fts5ExprNode)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(p)).FpRoot)).FiRowid } -func fts5ParseStringFromToken(tls *libc.TLS, pToken uintptr, pz uintptr) int32 { /* sqlite3.c:217718:12: */ +func fts5ParseStringFromToken(tls *libc.TLS, pToken uintptr, pz uintptr) int32 { /* sqlite3.c:217730:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -185591,7 +185640,7 @@ func fts5ParseStringFromToken(tls *libc.TLS, pToken uintptr, pz uintptr) int32 { } // Free the phrase object passed as the only argument. -func fts5ExprPhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217727:13: */ +func fts5ExprPhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217739:13: */ if pPhrase != 0 { var i int32 for i = 0; i < (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FnTerm; i++ { @@ -185616,7 +185665,7 @@ func fts5ExprPhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217727:13 // Set the "bFirst" flag on the first token of the phrase passed as the // only argument. -func sqlite3Fts5ParseSetCaret(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217752:13: */ +func sqlite3Fts5ParseSetCaret(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217764:13: */ if (pPhrase != 0) && ((*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FnTerm != 0) { (*Fts5ExprTerm)(unsafe.Pointer((pPhrase + 32 /* &.aTerm */))).FbFirst = U8(1) } @@ -185628,7 +185677,7 @@ func sqlite3Fts5ParseSetCaret(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217 // // If an OOM error occurs, both the pNear and pPhrase objects are freed and // NULL returned. -func sqlite3Fts5ParseNearset(tls *libc.TLS, pParse uintptr, pNear uintptr, pPhrase uintptr) uintptr { /* sqlite3.c:217766:24: */ +func sqlite3Fts5ParseNearset(tls *libc.TLS, pParse uintptr, pNear uintptr, pPhrase uintptr) uintptr { /* sqlite3.c:217778:24: */ var SZALLOC int32 = 8 var pRet uintptr = uintptr(0) @@ -185688,12 +185737,12 @@ type TokenCtx1 = struct { FpPhrase uintptr Frc int32 _ [4]byte -} /* sqlite3.c:217826:9 */ +} /* sqlite3.c:217838:9 */ -type TokenCtx = TokenCtx1 /* sqlite3.c:217826:25 */ +type TokenCtx = TokenCtx1 /* sqlite3.c:217838:25 */ // Callback for tokenizing terms used by ParseTerm(). -func fts5ParseTokenize(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:217835:12: */ +func fts5ParseTokenize(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:217847:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -185762,12 +185811,12 @@ func fts5ParseTokenize(tls *libc.TLS, pContext uintptr, tflags int32, pToken uin } // Free the phrase object passed as the only argument. -func sqlite3Fts5ParsePhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217900:13: */ +func sqlite3Fts5ParsePhraseFree(tls *libc.TLS, pPhrase uintptr) { /* sqlite3.c:217912:13: */ fts5ExprPhraseFree(tls, pPhrase) } // Free the phrase object passed as the second argument. -func sqlite3Fts5ParseNearsetFree(tls *libc.TLS, pNear uintptr) { /* sqlite3.c:217907:13: */ +func sqlite3Fts5ParseNearsetFree(tls *libc.TLS, pNear uintptr) { /* sqlite3.c:217919:13: */ if pNear != 0 { var i int32 for i = 0; i < (*Fts5ExprNearset)(unsafe.Pointer(pNear)).FnPhrase; i++ { @@ -185778,12 +185827,12 @@ func sqlite3Fts5ParseNearsetFree(tls *libc.TLS, pNear uintptr) { /* sqlite3.c:21 } } -func sqlite3Fts5ParseFinished(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:217918:13: */ +func sqlite3Fts5ParseFinished(tls *libc.TLS, pParse uintptr, p uintptr) { /* sqlite3.c:217930:13: */ (*Fts5Parse)(unsafe.Pointer(pParse)).FpExpr = p } -func parseGrowPhraseArray(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:217923:12: */ +func parseGrowPhraseArray(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:217935:12: */ if ((*Fts5Parse)(unsafe.Pointer(pParse)).FnPhrase % 8) == 0 { var nByte Sqlite3_int64 = (Sqlite3_int64(uint64(unsafe.Sizeof(uintptr(0))) * (uint64((*Fts5Parse)(unsafe.Pointer(pParse)).FnPhrase + 8)))) var apNew uintptr @@ -185800,7 +185849,7 @@ func parseGrowPhraseArray(tls *libc.TLS, pParse uintptr) int32 { /* sqlite3.c:21 // This function is called by the parser to process a string token. The // string may or may not be quoted. In any case it is tokenized and a // phrase object consisting of all tokens returned. -func sqlite3Fts5ParseTerm(tls *libc.TLS, pParse uintptr, pAppend uintptr, pToken uintptr, bPrefix int32) uintptr { /* sqlite3.c:217942:23: */ +func sqlite3Fts5ParseTerm(tls *libc.TLS, pParse uintptr, pAppend uintptr, pToken uintptr, bPrefix int32) uintptr { /* sqlite3.c:217954:23: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -185858,7 +185907,7 @@ func sqlite3Fts5ParseTerm(tls *libc.TLS, pParse uintptr, pAppend uintptr, pToken // Create a new FTS5 expression by cloning phrase iPhrase of the // expression passed as the second argument. -func sqlite3Fts5ExprClonePhrase(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppNew uintptr) int32 { /* sqlite3.c:217996:12: */ +func sqlite3Fts5ExprClonePhrase(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppNew uintptr) int32 { /* sqlite3.c:218008:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -185953,7 +186002,7 @@ func sqlite3Fts5ExprClonePhrase(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppN // Token pTok has appeared in a MATCH expression where the NEAR operator // is expected. If token pTok does not contain "NEAR", store an error // in the pParse object. -func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqlite3.c:218092:13: */ +func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqlite3.c:218104:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185963,7 +186012,7 @@ func sqlite3Fts5ParseNear(tls *libc.TLS, pParse uintptr, pTok uintptr) { /* sqli } } -func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p uintptr) { /* sqlite3.c:218100:13: */ +func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p uintptr) { /* sqlite3.c:218112:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -185994,7 +186043,7 @@ func sqlite3Fts5ParseSetDistance(tls *libc.TLS, pParse uintptr, pNear uintptr, p // // If an OOM error occurs, store an error code in pParse and return NULL. // The old colset object (if any) is not freed in this case. -func fts5ParseColset(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:218135:19: */ +func fts5ParseColset(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintptr { /* sqlite3.c:218147:19: */ var nCol int32 if p != 0 { nCol = (*Fts5Colset)(unsafe.Pointer(p)).FnCol @@ -186032,7 +186081,7 @@ func fts5ParseColset(tls *libc.TLS, pParse uintptr, p uintptr, iCol int32) uintp // Allocate and return an Fts5Colset object specifying the inverse of // the colset passed as the second argument. Free the colset passed // as the second argument before returning. -func sqlite3Fts5ParseColsetInvert(tls *libc.TLS, pParse uintptr, p uintptr) uintptr { /* sqlite3.c:218176:19: */ +func sqlite3Fts5ParseColsetInvert(tls *libc.TLS, pParse uintptr, p uintptr) uintptr { /* sqlite3.c:218188:19: */ var pRet uintptr var nCol int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Parse)(unsafe.Pointer(pParse)).FpConfig)).FnCol @@ -186054,7 +186103,7 @@ func sqlite3Fts5ParseColsetInvert(tls *libc.TLS, pParse uintptr, p uintptr) uint return pRet } -func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p uintptr) uintptr { /* sqlite3.c:218199:19: */ +func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p uintptr) uintptr { /* sqlite3.c:218211:19: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -186093,7 +186142,7 @@ func sqlite3Fts5ParseColset(tls *libc.TLS, pParse uintptr, pColset uintptr, p ui // Otherwise, a copy of (*pOrig) is made into memory obtained from // sqlite3Fts5MallocZero() and a pointer to it returned. If the allocation // fails, (*pRc) is set to SQLITE_NOMEM and NULL is returned. -func fts5CloneColset(tls *libc.TLS, pRc uintptr, pOrig uintptr) uintptr { /* sqlite3.c:218239:19: */ +func fts5CloneColset(tls *libc.TLS, pRc uintptr, pOrig uintptr) uintptr { /* sqlite3.c:218251:19: */ var pRet uintptr if pOrig != 0 { var nByte Sqlite3_int64 = (Sqlite3_int64(uint64(unsafe.Sizeof(Fts5Colset{})) + ((uint64((*Fts5Colset)(unsafe.Pointer(pOrig)).FnCol - 1)) * uint64(unsafe.Sizeof(int32(0)))))) @@ -186108,7 +186157,7 @@ func fts5CloneColset(tls *libc.TLS, pRc uintptr, pOrig uintptr) uintptr { /* sql } // Remove from colset pColset any columns that are not also in colset pMerge. -func fts5MergeColset(tls *libc.TLS, pColset uintptr, pMerge uintptr) { /* sqlite3.c:218256:13: */ +func fts5MergeColset(tls *libc.TLS, pColset uintptr, pMerge uintptr) { /* sqlite3.c:218268:13: */ var iIn int32 = 0 // Next input in pColset var iMerge int32 = 0 // Next input in pMerge var iOut int32 = 0 // Next output slot in pColset @@ -186132,7 +186181,7 @@ func fts5MergeColset(tls *libc.TLS, pColset uintptr, pMerge uintptr) { /* sqlite // its decendents. If (*ppFree) is not NULL, it contains a spare copy // of pColset. This function may use the spare copy and set (*ppFree) to // zero, or it may create copies of pColset using fts5CloneColset(). -func fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pNode uintptr, pColset uintptr, ppFree uintptr) { /* sqlite3.c:218282:13: */ +func fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pNode uintptr, pColset uintptr, ppFree uintptr) { /* sqlite3.c:218294:13: */ if (*Fts5Parse)(unsafe.Pointer(pParse)).Frc == SQLITE_OK { if ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_STRING) || ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_TERM) { @@ -186160,7 +186209,7 @@ func fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pNode uintptr, pColset ui } // Apply colset pColset to expression node pExpr and all of its descendents. -func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pColset uintptr) { /* sqlite3.c:218320:13: */ +func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pColset uintptr) { /* sqlite3.c:218332:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -186175,7 +186224,7 @@ func sqlite3Fts5ParseSetColset(tls *libc.TLS, pParse uintptr, pExpr uintptr, pCo Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp /* pFree */))) } -func fts5ExprAssignXNext(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:218337:13: */ +func fts5ExprAssignXNext(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:218349:13: */ switch (*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType { case FTS5_STRING: { @@ -186226,7 +186275,7 @@ func fts5ExprAssignXNext(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:218337:13: } } -func fts5ExprAddChildren(tls *libc.TLS, p uintptr, pSub uintptr) { /* sqlite3.c:218370:13: */ +func fts5ExprAddChildren(tls *libc.TLS, p uintptr, pSub uintptr) { /* sqlite3.c:218382:13: */ if ((*Fts5ExprNode)(unsafe.Pointer(p)).FeType != FTS5_NOT) && ((*Fts5ExprNode)(unsafe.Pointer(pSub)).FeType == (*Fts5ExprNode)(unsafe.Pointer(p)).FeType) { var nByte int32 = (int32(uint64(unsafe.Sizeof(uintptr(0))) * uint64((*Fts5ExprNode)(unsafe.Pointer(pSub)).FnChild))) libc.X__builtin___memcpy_chk(tls, ((p + 48 /* &.apChild */) + uintptr((*Fts5ExprNode)(unsafe.Pointer(p)).FnChild)*8), pSub+48 /* &.apChild */, uint64(nByte), libc.X__builtin_object_size(tls, ((p+48 /* &.apChild */)+uintptr((*Fts5ExprNode)(unsafe.Pointer(p)).FnChild)*8), 0)) @@ -186246,7 +186295,7 @@ func fts5ExprAddChildren(tls *libc.TLS, p uintptr, pSub uintptr) { /* sqlite3.c: // into an AND tree: // // abc AND def AND ghi -func fts5ParsePhraseToAnd(tls *libc.TLS, pParse uintptr, pNear uintptr) uintptr { /* sqlite3.c:218392:21: */ +func fts5ParsePhraseToAnd(tls *libc.TLS, pParse uintptr, pNear uintptr) uintptr { /* sqlite3.c:218404:21: */ var nTerm int32 = (*Fts5ExprPhrase)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer((pNear + 24 /* &.apPhrase */))))).FnTerm var ii int32 var nByte int32 @@ -186289,7 +186338,7 @@ func fts5ParsePhraseToAnd(tls *libc.TLS, pParse uintptr, pNear uintptr) uintptr // Allocate and return a new expression object. If anything goes wrong (i.e. // OOM error), leave an error code in pParse and return NULL. -func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uintptr, pRight uintptr, pNear uintptr) uintptr { /* sqlite3.c:218446:21: */ +func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uintptr, pRight uintptr, pNear uintptr) uintptr { /* sqlite3.c:218458:21: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -186380,7 +186429,7 @@ func sqlite3Fts5ParseNode(tls *libc.TLS, pParse uintptr, eType int32, pLeft uint return pRet } -func sqlite3Fts5ParseImplicitAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:218531:21: */ +func sqlite3Fts5ParseImplicitAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:218543:21: */ var pRet uintptr = uintptr(0) var pPrev uintptr @@ -186424,7 +186473,7 @@ func sqlite3Fts5ParseImplicitAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, p return pRet } -func fts5ExprTermPrint(tls *libc.TLS, pTerm uintptr) uintptr { /* sqlite3.c:218595:13: */ +func fts5ExprTermPrint(tls *libc.TLS, pTerm uintptr) uintptr { /* sqlite3.c:218607:13: */ var nByte Sqlite3_int64 = int64(0) var p uintptr var zQuoted uintptr @@ -186460,7 +186509,7 @@ func fts5ExprTermPrint(tls *libc.TLS, pTerm uintptr) uintptr { /* sqlite3.c:2185 return zQuoted } -func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:218627:13: */ +func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uintptr { /* sqlite3.c:218639:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -186483,7 +186532,7 @@ func fts5PrintfAppend(tls *libc.TLS, zApp uintptr, zFmt uintptr, va uintptr) uin // pointer to a buffer containing that representation. It is the // responsibility of the caller to at some point free the buffer using // sqlite3_free(). -func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218648:13: */ +func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218660:13: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -186584,7 +186633,7 @@ func fts5ExprPrintTcl(tls *libc.TLS, pConfig uintptr, zNearsetCmd uintptr, pExpr return zRet } -func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218727:13: */ +func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* sqlite3.c:218739:13: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -186721,7 +186770,7 @@ func fts5ExprPrint(tls *libc.TLS, pConfig uintptr, pExpr uintptr) uintptr { /* s // The implementation of user-defined scalar functions fts5_expr() (bTcl==0) // and fts5_expr_tcl() (bTcl!=0). -func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bTcl int32) { /* sqlite3.c:218818:13: */ +func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bTcl int32) { /* sqlite3.c:218830:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -186814,18 +186863,18 @@ func fts5ExprFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr, bT sqlite3Fts5ExprFree(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pExpr */))) } -func fts5ExprFunctionHr(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218903:13: */ +func fts5ExprFunctionHr(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218915:13: */ fts5ExprFunction(tls, pCtx, nArg, apVal, 0) } -func fts5ExprFunctionTcl(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218910:13: */ +func fts5ExprFunctionTcl(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218922:13: */ fts5ExprFunction(tls, pCtx, nArg, apVal, 1) } // The implementation of an SQLite user-defined-function that accepts a // single integer as an argument. If the integer is an alpha-numeric // unicode code point, 1 is returned. Otherwise 0. -func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218923:13: */ +func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218935:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -186845,7 +186894,7 @@ func fts5ExprIsAlnum(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { / Xsqlite3_result_int(tls, pCtx, int32(*(*U8)(unsafe.Pointer(bp /* &aArr[0] */ + uintptr(sqlite3Fts5UnicodeCategory(tls, U32(iCode))))))) } -func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218944:13: */ +func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:218956:13: */ if (nArg != 1) && (nArg != 2) { Xsqlite3_result_error(tls, pCtx, ts+39410 /* "wrong number of ..." */, -1) @@ -186862,7 +186911,7 @@ func fts5ExprFold(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* s // This is called during initialization to register the fts5_expr() scalar // UDF with the SQLite handle passed as the only argument. -func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:218966:12: */ +func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:218978:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -186899,10 +186948,10 @@ func sqlite3Fts5ExprInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* type Fts5ExprFunc = struct { Fz uintptr Fx uintptr -} /* sqlite3.c:218967:3 */ +} /* sqlite3.c:218979:3 */ // Return the number of phrases in expression pExpr. -func sqlite3Fts5ExprPhraseCount(tls *libc.TLS, pExpr uintptr) int32 { /* sqlite3.c:218998:12: */ +func sqlite3Fts5ExprPhraseCount(tls *libc.TLS, pExpr uintptr) int32 { /* sqlite3.c:219010:12: */ return func() int32 { if pExpr != 0 { return (*Fts5Expr)(unsafe.Pointer(pExpr)).FnPhrase @@ -186912,7 +186961,7 @@ func sqlite3Fts5ExprPhraseCount(tls *libc.TLS, pExpr uintptr) int32 { /* sqlite3 } // Return the number of terms in the iPhrase'th phrase in pExpr. -func sqlite3Fts5ExprPhraseSize(tls *libc.TLS, pExpr uintptr, iPhrase int32) int32 { /* sqlite3.c:219005:12: */ +func sqlite3Fts5ExprPhraseSize(tls *libc.TLS, pExpr uintptr, iPhrase int32) int32 { /* sqlite3.c:219017:12: */ if (iPhrase < 0) || (iPhrase >= (*Fts5Expr)(unsafe.Pointer(pExpr)).FnPhrase) { return 0 } @@ -186921,7 +186970,7 @@ func sqlite3Fts5ExprPhraseSize(tls *libc.TLS, pExpr uintptr, iPhrase int32) int3 // This function is used to access the current position list for phrase // iPhrase. -func sqlite3Fts5ExprPoslist(tls *libc.TLS, pExpr uintptr, iPhrase int32, pa uintptr) int32 { /* sqlite3.c:219014:12: */ +func sqlite3Fts5ExprPoslist(tls *libc.TLS, pExpr uintptr, iPhrase int32, pa uintptr) int32 { /* sqlite3.c:219026:12: */ var nRet int32 var pPhrase uintptr = *(*uintptr)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(pExpr)).FapExprPhrase + uintptr(iPhrase)*8)) var pNode uintptr = (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FpNode @@ -186935,7 +186984,7 @@ func sqlite3Fts5ExprPoslist(tls *libc.TLS, pExpr uintptr, iPhrase int32, pa uint return nRet } -func sqlite3Fts5ExprClearPoslists(tls *libc.TLS, pExpr uintptr, bLive int32) uintptr { /* sqlite3.c:219034:29: */ +func sqlite3Fts5ExprClearPoslists(tls *libc.TLS, pExpr uintptr, bLive int32) uintptr { /* sqlite3.c:219046:29: */ var pRet uintptr pRet = Xsqlite3_malloc64(tls, (uint64(uint64(unsafe.Sizeof(Fts5PoslistPopulator{})) * uint64((*Fts5Expr)(unsafe.Pointer(pExpr)).FnPhrase)))) if pRet != 0 { @@ -186959,12 +187008,12 @@ type Fts5ExprCtx1 = struct { FpExpr uintptr FaPopulator uintptr FiOff I64 -} /* sqlite3.c:219056:1 */ +} /* sqlite3.c:219068:1 */ -type Fts5ExprCtx = Fts5ExprCtx1 /* sqlite3.c:219061:28 */ +type Fts5ExprCtx = Fts5ExprCtx1 /* sqlite3.c:219073:28 */ // TODO: Make this more efficient! -func fts5ExprColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:219066:12: */ +func fts5ExprColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:219078:12: */ var i int32 for i = 0; i < (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol; i++ { if *(*int32)(unsafe.Pointer((pColset + 4 /* &.aiCol */) + uintptr(i)*4)) == iCol { @@ -186974,7 +187023,7 @@ func fts5ExprColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* s return 0 } -func fts5ExprPopulatePoslistsCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:219074:12: */ +func fts5ExprPopulatePoslistsCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:219086:12: */ var p uintptr = pCtx var pExpr uintptr = (*Fts5ExprCtx)(unsafe.Pointer(p)).FpExpr var i int32 @@ -187009,7 +187058,7 @@ func fts5ExprPopulatePoslistsCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToke return SQLITE_OK } -func sqlite3Fts5ExprPopulatePoslists(tls *libc.TLS, pConfig uintptr, pExpr uintptr, aPopulator uintptr, iCol int32, z uintptr, n int32) int32 { /* sqlite3.c:219109:12: */ +func sqlite3Fts5ExprPopulatePoslists(tls *libc.TLS, pConfig uintptr, pExpr uintptr, aPopulator uintptr, iCol int32, z uintptr, n int32) int32 { /* sqlite3.c:219121:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -187037,7 +187086,7 @@ func sqlite3Fts5ExprPopulatePoslists(tls *libc.TLS, pConfig uintptr, pExpr uintp }{fts5ExprPopulatePoslistsCb}))) } -func fts5ExprClearPoslists(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:219139:13: */ +func fts5ExprClearPoslists(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:219151:13: */ if ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_TERM) || ((*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType == FTS5_STRING) { (*Fts5ExprPhrase)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(((*Fts5ExprNode)(unsafe.Pointer(pNode)).FpNear + 24 /* &.apPhrase */))))).Fposlist.Fn = 0 } else { @@ -187048,7 +187097,7 @@ func fts5ExprClearPoslists(tls *libc.TLS, pNode uintptr) { /* sqlite3.c:219139:1 } } -func fts5ExprCheckPoslists(tls *libc.TLS, pNode uintptr, iRowid I64) int32 { /* sqlite3.c:219150:12: */ +func fts5ExprCheckPoslists(tls *libc.TLS, pNode uintptr, iRowid I64) int32 { /* sqlite3.c:219162:12: */ (*Fts5ExprNode)(unsafe.Pointer(pNode)).FiRowid = iRowid (*Fts5ExprNode)(unsafe.Pointer(pNode)).FbEof = 0 switch (*Fts5ExprNode)(unsafe.Pointer(pNode)).FeType { @@ -187098,12 +187147,12 @@ func fts5ExprCheckPoslists(tls *libc.TLS, pNode uintptr, iRowid I64) int32 { /* return 1 } -func sqlite3Fts5ExprCheckPoslists(tls *libc.TLS, pExpr uintptr, iRowid I64) { /* sqlite3.c:219194:13: */ +func sqlite3Fts5ExprCheckPoslists(tls *libc.TLS, pExpr uintptr, iRowid I64) { /* sqlite3.c:219206:13: */ fts5ExprCheckPoslists(tls, (*Fts5Expr)(unsafe.Pointer(pExpr)).FpRoot, iRowid) } // This function is only called for detail=columns tables. -func sqlite3Fts5ExprPhraseCollist(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppCollist uintptr, pnCollist uintptr) int32 { /* sqlite3.c:219201:12: */ +func sqlite3Fts5ExprPhraseCollist(tls *libc.TLS, pExpr uintptr, iPhrase int32, ppCollist uintptr, pnCollist uintptr) int32 { /* sqlite3.c:219213:12: */ var pPhrase uintptr = *(*uintptr)(unsafe.Pointer((*Fts5Expr)(unsafe.Pointer(pExpr)).FapExprPhrase + uintptr(iPhrase)*8)) var pNode uintptr = (*Fts5ExprPhrase)(unsafe.Pointer(pPhrase)).FpNode var rc int32 = SQLITE_OK @@ -187154,7 +187203,7 @@ type Fts5HashEntry1 = struct { FiCol I16 FiPos int32 FiRowid I64 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ // 2014 August 11 // @@ -187170,14 +187219,14 @@ type Fts5HashEntry1 = struct { // #include "fts5Int.h" -type Fts5HashEntry = Fts5HashEntry1 /* sqlite3.c:219254:30 */ +type Fts5HashEntry = Fts5HashEntry1 /* sqlite3.c:219266:30 */ // Eqivalent to: // // char *fts5EntryKey(Fts5HashEntry *pEntry){ return zKey; } // Allocate a new hash table. -func sqlite3Fts5HashNew(tls *libc.TLS, pConfig uintptr, ppNew uintptr, pnByte uintptr) int32 { /* sqlite3.c:219320:12: */ +func sqlite3Fts5HashNew(tls *libc.TLS, pConfig uintptr, ppNew uintptr, pnByte uintptr) int32 { /* sqlite3.c:219332:12: */ var rc int32 = SQLITE_OK var pNew uintptr @@ -187205,7 +187254,7 @@ func sqlite3Fts5HashNew(tls *libc.TLS, pConfig uintptr, ppNew uintptr, pnByte ui } // Free a hash table object. -func sqlite3Fts5HashFree(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219350:13: */ +func sqlite3Fts5HashFree(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219362:13: */ if pHash != 0 { sqlite3Fts5HashClear(tls, pHash) Xsqlite3_free(tls, (*Fts5Hash)(unsafe.Pointer(pHash)).FaSlot) @@ -187214,7 +187263,7 @@ func sqlite3Fts5HashFree(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219350:13: } // Empty (but do not delete) a hash table. -func sqlite3Fts5HashClear(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219361:13: */ +func sqlite3Fts5HashClear(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219373:13: */ var i int32 for i = 0; i < (*Fts5Hash)(unsafe.Pointer(pHash)).FnSlot; i++ { var pNext uintptr @@ -187228,7 +187277,7 @@ func sqlite3Fts5HashClear(tls *libc.TLS, pHash uintptr) { /* sqlite3.c:219361:13 (*Fts5Hash)(unsafe.Pointer(pHash)).FnEntry = 0 } -func fts5HashKey(tls *libc.TLS, nSlot int32, p uintptr, n int32) uint32 { /* sqlite3.c:219375:21: */ +func fts5HashKey(tls *libc.TLS, nSlot int32, p uintptr, n int32) uint32 { /* sqlite3.c:219387:21: */ var i int32 var h uint32 = uint32(13) for i = (n - 1); i >= 0; i-- { @@ -187237,7 +187286,7 @@ func fts5HashKey(tls *libc.TLS, nSlot int32, p uintptr, n int32) uint32 { /* sql return (h % uint32(nSlot)) } -func fts5HashKey2(tls *libc.TLS, nSlot int32, b U8, p uintptr, n int32) uint32 { /* sqlite3.c:219384:21: */ +func fts5HashKey2(tls *libc.TLS, nSlot int32, b U8, p uintptr, n int32) uint32 { /* sqlite3.c:219396:21: */ var i int32 var h uint32 = uint32(13) for i = (n - 1); i >= 0; i-- { @@ -187248,7 +187297,7 @@ func fts5HashKey2(tls *libc.TLS, nSlot int32, b U8, p uintptr, n int32) uint32 { } // Resize the hash table by doubling the number of slots. -func fts5HashResize(tls *libc.TLS, pHash uintptr) int32 { /* sqlite3.c:219397:12: */ +func fts5HashResize(tls *libc.TLS, pHash uintptr) int32 { /* sqlite3.c:219409:12: */ var nNew int32 = ((*Fts5Hash)(unsafe.Pointer(pHash)).FnSlot * 2) var i int32 var apNew uintptr @@ -187278,7 +187327,7 @@ func fts5HashResize(tls *libc.TLS, pHash uintptr) int32 { /* sqlite3.c:219397:12 return SQLITE_OK } -func fts5HashAddPoslistSize(tls *libc.TLS, pHash uintptr, p uintptr, p2 uintptr) int32 { /* sqlite3.c:219425:12: */ +func fts5HashAddPoslistSize(tls *libc.TLS, pHash uintptr, p uintptr, p2 uintptr) int32 { /* sqlite3.c:219437:12: */ var nRet int32 = 0 if (*Fts5HashEntry)(unsafe.Pointer(p)).FiSzPoslist != 0 { var pPtr uintptr @@ -187327,7 +187376,7 @@ func fts5HashAddPoslistSize(tls *libc.TLS, pHash uintptr, p uintptr, p2 uintptr) // (bByte || pToken) -> (iRowid,iCol,iPos) // // Or, if iCol is negative, then the value is a delete marker. -func sqlite3Fts5HashWrite(tls *libc.TLS, pHash uintptr, iRowid I64, iCol int32, iPos int32, bByte int8, pToken uintptr, nToken int32) int32 { /* sqlite3.c:219476:12: */ +func sqlite3Fts5HashWrite(tls *libc.TLS, pHash uintptr, iRowid I64, iCol int32, iPos int32, bByte int8, pToken uintptr, nToken int32) int32 { /* sqlite3.c:219488:12: */ var iHash uint32 var p uintptr var pPtr uintptr @@ -187486,7 +187535,7 @@ func sqlite3Fts5HashWrite(tls *libc.TLS, pHash uintptr, iRowid I64, iCol int32, // Arguments pLeft and pRight point to linked-lists of hash-entry objects, // each sorted in key order. This function merges the two lists into a // single list and returns a pointer to its first element. -func fts5HashEntryMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:219629:22: */ +func fts5HashEntryMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { /* sqlite3.c:219641:22: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -187532,7 +187581,7 @@ func fts5HashEntryMerge(tls *libc.TLS, pLeft uintptr, pRight uintptr) uintptr { // in sorted order. The hash table is cleared before returning. It is // the responsibility of the caller to free the elements of the returned // list. -func fts5HashEntrySort(tls *libc.TLS, pHash uintptr, pTerm uintptr, nTerm int32, ppSorted uintptr) int32 { /* sqlite3.c:219675:12: */ +func fts5HashEntrySort(tls *libc.TLS, pHash uintptr, pTerm uintptr, nTerm int32, ppSorted uintptr) int32 { /* sqlite3.c:219687:12: */ var nMergeSlot int32 = 32 var ap uintptr var pList uintptr @@ -187574,7 +187623,7 @@ func fts5HashEntrySort(tls *libc.TLS, pHash uintptr, pTerm uintptr, nTerm int32, } // Query the hash table for a doclist associated with term pTerm/nTerm. -func sqlite3Fts5HashQuery(tls *libc.TLS, pHash uintptr, nPre int32, pTerm uintptr, nTerm int32, ppOut uintptr, pnDoclist uintptr) int32 { /* sqlite3.c:219722:12: */ +func sqlite3Fts5HashQuery(tls *libc.TLS, pHash uintptr, nPre int32, pTerm uintptr, nTerm int32, ppOut uintptr, pnDoclist uintptr) int32 { /* sqlite3.c:219734:12: */ var iHash uint32 = fts5HashKey(tls, (*Fts5Hash)(unsafe.Pointer(pHash)).FnSlot, pTerm, nTerm) var zKey uintptr = uintptr(0) var p uintptr @@ -187608,20 +187657,20 @@ func sqlite3Fts5HashQuery(tls *libc.TLS, pHash uintptr, nPre int32, pTerm uintpt return SQLITE_OK } -func sqlite3Fts5HashScanInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32) int32 { /* sqlite3.c:219760:12: */ +func sqlite3Fts5HashScanInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32) int32 { /* sqlite3.c:219772:12: */ return fts5HashEntrySort(tls, p, pTerm, nTerm, (p + 24 /* &.pScan */)) } -func sqlite3Fts5HashScanNext(tls *libc.TLS, p uintptr) { /* sqlite3.c:219767:13: */ +func sqlite3Fts5HashScanNext(tls *libc.TLS, p uintptr) { /* sqlite3.c:219779:13: */ (*Fts5Hash)(unsafe.Pointer(p)).FpScan = (*Fts5HashEntry)(unsafe.Pointer((*Fts5Hash)(unsafe.Pointer(p)).FpScan)).FpScanNext } -func sqlite3Fts5HashScanEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:219772:12: */ +func sqlite3Fts5HashScanEof(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:219784:12: */ return (libc.Bool32((*Fts5Hash)(unsafe.Pointer(p)).FpScan == uintptr(0))) } -func sqlite3Fts5HashScanEntry(tls *libc.TLS, pHash uintptr, pzTerm uintptr, ppDoclist uintptr, pnDoclist uintptr) { /* sqlite3.c:219776:13: */ +func sqlite3Fts5HashScanEntry(tls *libc.TLS, pHash uintptr, pzTerm uintptr, ppDoclist uintptr, pnDoclist uintptr) { /* sqlite3.c:219788:13: */ var p uintptr if libc.AssignUintptr(&p, (*Fts5Hash)(unsafe.Pointer(pHash)).FpScan) != 0 { var zKey uintptr = ((p) + 1*48) @@ -187847,7 +187896,7 @@ type Fts5Data1 = struct { Fp uintptr Fnn int32 FszLeaf int32 -} /* sqlite3.c:220051:9 */ +} /* sqlite3.c:220063:9 */ // 2014 May 31 // @@ -188055,14 +188104,14 @@ type Fts5Data1 = struct { // many zero bytes. This makes it easier to decode the various record formats // without overreading if the records are corrupt. -type Fts5Data = Fts5Data1 /* sqlite3.c:220051:25 */ +type Fts5Data = Fts5Data1 /* sqlite3.c:220063:25 */ type Fts5DlidxIter1 = struct { FnLvl int32 FiSegid int32 FaLvl [1]Fts5DlidxLvl -} /* sqlite3.c:220052:9 */ +} /* sqlite3.c:220064:9 */ -type Fts5DlidxIter = Fts5DlidxIter1 /* sqlite3.c:220052:30 */ +type Fts5DlidxIter = Fts5DlidxIter1 /* sqlite3.c:220064:30 */ type Fts5DlidxLvl1 = struct { FpData uintptr FiOff int32 @@ -188070,17 +188119,17 @@ type Fts5DlidxLvl1 = struct { FiFirstOff int32 FiLeafPgno int32 FiRowid I64 -} /* sqlite3.c:220052:9 */ +} /* sqlite3.c:220064:9 */ -type Fts5DlidxLvl = Fts5DlidxLvl1 /* sqlite3.c:220053:29 */ +type Fts5DlidxLvl = Fts5DlidxLvl1 /* sqlite3.c:220065:29 */ type Fts5DlidxWriter1 = struct { Fpgno int32 FbPrevValid int32 FiPrev I64 Fbuf Fts5Buffer -} /* sqlite3.c:220054:9 */ +} /* sqlite3.c:220066:9 */ -type Fts5DlidxWriter = Fts5DlidxWriter1 /* sqlite3.c:220054:32 */ +type Fts5DlidxWriter = Fts5DlidxWriter1 /* sqlite3.c:220066:32 */ type Fts5Iter1 = struct { Fbase Fts5IndexIter FpIndex uintptr @@ -188094,18 +188143,18 @@ type Fts5Iter1 = struct { FiSwitchRowid I64 FaFirst uintptr FaSeg [1]Fts5SegIter -} /* sqlite3.c:220055:9 */ +} /* sqlite3.c:220067:9 */ -type Fts5Iter = Fts5Iter1 /* sqlite3.c:220055:25 */ +type Fts5Iter = Fts5Iter1 /* sqlite3.c:220067:25 */ type Fts5PageWriter1 = struct { Fpgno int32 FiPrevPgidx int32 Fbuf Fts5Buffer Fpgidx Fts5Buffer Fterm Fts5Buffer -} /* sqlite3.c:220056:9 */ +} /* sqlite3.c:220068:9 */ -type Fts5PageWriter = Fts5PageWriter1 /* sqlite3.c:220056:31 */ +type Fts5PageWriter = Fts5PageWriter1 /* sqlite3.c:220068:31 */ type Fts5SegIter1 = struct { FpSeg uintptr Fflags int32 @@ -188128,18 +188177,18 @@ type Fts5SegIter1 = struct { FnPos int32 FbDel U8 _ [3]byte -} /* sqlite3.c:220055:9 */ +} /* sqlite3.c:220067:9 */ -type Fts5SegIter = Fts5SegIter1 /* sqlite3.c:220057:28 */ +type Fts5SegIter = Fts5SegIter1 /* sqlite3.c:220069:28 */ type Fts5DoclistIter1 = struct { FaEof uintptr FiRowid I64 FaPoslist uintptr FnPoslist int32 FnSize int32 -} /* sqlite3.c:220058:9 */ +} /* sqlite3.c:220070:9 */ -type Fts5DoclistIter = Fts5DoclistIter1 /* sqlite3.c:220058:32 */ +type Fts5DoclistIter = Fts5DoclistIter1 /* sqlite3.c:220070:32 */ type Fts5SegWriter1 = struct { FiSegid int32 _ [4]byte @@ -188156,9 +188205,9 @@ type Fts5SegWriter1 = struct { Fbtterm Fts5Buffer FiBtPage int32 _ [4]byte -} /* sqlite3.c:220059:9 */ +} /* sqlite3.c:220071:9 */ -type Fts5SegWriter = Fts5SegWriter1 /* sqlite3.c:220059:30 */ +type Fts5SegWriter = Fts5SegWriter1 /* sqlite3.c:220071:30 */ type Fts5Structure1 = struct { FnRef int32 _ [4]byte @@ -188166,38 +188215,38 @@ type Fts5Structure1 = struct { FnSegment int32 FnLevel int32 FaLevel [1]Fts5StructureLevel -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Structure = Fts5Structure1 /* sqlite3.c:220060:30 */ +type Fts5Structure = Fts5Structure1 /* sqlite3.c:220072:30 */ type Fts5StructureLevel1 = struct { FnMerge int32 FnSeg int32 FaSeg uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5StructureLevel = Fts5StructureLevel1 /* sqlite3.c:220061:35 */ +type Fts5StructureLevel = Fts5StructureLevel1 /* sqlite3.c:220073:35 */ type Fts5StructureSegment1 = struct { FiSegid int32 FpgnoFirst int32 FpgnoLast int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5StructureSegment = Fts5StructureSegment1 /* sqlite3.c:220062:37 */ +type Fts5StructureSegment = Fts5StructureSegment1 /* sqlite3.c:220074:37 */ type Fts5CResult1 = struct { FiFirst U16 FbTermEq U8 _ [1]byte -} /* sqlite3.c:220055:9 */ +} /* sqlite3.c:220067:9 */ -type Fts5CResult = Fts5CResult1 /* sqlite3.c:220172:28 */ +type Fts5CResult = Fts5CResult1 /* sqlite3.c:220184:28 */ -func fts5PutU16(tls *libc.TLS, aOut uintptr, iVal U16) { /* sqlite3.c:220351:13: */ +func fts5PutU16(tls *libc.TLS, aOut uintptr, iVal U16) { /* sqlite3.c:220363:13: */ *(*U8)(unsafe.Pointer(aOut)) = (U8(int32(iVal) >> 8)) *(*U8)(unsafe.Pointer(aOut + 1)) = (U8(int32(iVal) & 0xFF)) } -func fts5GetU16(tls *libc.TLS, aIn uintptr) U16 { /* sqlite3.c:220356:12: */ +func fts5GetU16(tls *libc.TLS, aIn uintptr) U16 { /* sqlite3.c:220368:12: */ return (U16((int32(U16(*(*U8)(unsafe.Pointer(aIn)))) << 8) + int32(*(*U8)(unsafe.Pointer(aIn + 1))))) } @@ -188205,7 +188254,7 @@ func fts5GetU16(tls *libc.TLS, aIn uintptr) U16 { /* sqlite3.c:220356:12: */ // // If an OOM error is encountered, return NULL and set the error code in // the Fts5Index handle passed as the first argument. -func fts5IdxMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:220366:13: */ +func fts5IdxMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* sqlite3.c:220378:13: */ return sqlite3Fts5MallocZero(tls, (p + 52 /* &.rc */), nByte) } @@ -188223,7 +188272,7 @@ func fts5IdxMalloc(tls *libc.TLS, p uintptr, nByte Sqlite3_int64) uintptr { /* s // +ve if pRight is smaller than pLeft. In other words: // // res = *pLeft - *pRight -func fts5BufferCompare(tls *libc.TLS, pLeft uintptr, pRight uintptr) int32 { /* sqlite3.c:220398:12: */ +func fts5BufferCompare(tls *libc.TLS, pLeft uintptr, pRight uintptr) int32 { /* sqlite3.c:220410:12: */ var nCmp int32 = func() int32 { if ((*Fts5Buffer)(unsafe.Pointer(pLeft)).Fn) < ((*Fts5Buffer)(unsafe.Pointer(pRight)).Fn) { return (*Fts5Buffer)(unsafe.Pointer(pLeft)).Fn @@ -188244,7 +188293,7 @@ func fts5BufferCompare(tls *libc.TLS, pLeft uintptr, pRight uintptr) int32 { /* }() } -func fts5LeafFirstTermOff(tls *libc.TLS, pLeaf uintptr) int32 { /* sqlite3.c:220404:12: */ +func fts5LeafFirstTermOff(tls *libc.TLS, pLeaf uintptr) int32 { /* sqlite3.c:220416:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -188255,7 +188304,7 @@ func fts5LeafFirstTermOff(tls *libc.TLS, pLeaf uintptr) int32 { /* sqlite3.c:220 } // Close the read-only blob handle, if it is open. -func sqlite3Fts5IndexCloseReader(tls *libc.TLS, p uintptr) { /* sqlite3.c:220413:13: */ +func sqlite3Fts5IndexCloseReader(tls *libc.TLS, p uintptr) { /* sqlite3.c:220425:13: */ if (*Fts5Index)(unsafe.Pointer(p)).FpReader != 0 { var pReader uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpReader (*Fts5Index)(unsafe.Pointer(p)).FpReader = uintptr(0) @@ -188267,7 +188316,7 @@ func sqlite3Fts5IndexCloseReader(tls *libc.TLS, p uintptr) { /* sqlite3.c:220413 // // If an error occurs, NULL is returned and an error left in the // Fts5Index object. -func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220427:17: */ +func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220439:17: */ var pRet uintptr = uintptr(0) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var rc int32 = SQLITE_OK @@ -188340,11 +188389,11 @@ func fts5DataRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:2 // Release a reference to data record returned by an earlier call to // fts5DataRead(). -func fts5DataRelease(tls *libc.TLS, pData uintptr) { /* sqlite3.c:220500:13: */ +func fts5DataRelease(tls *libc.TLS, pData uintptr) { /* sqlite3.c:220512:13: */ Xsqlite3_free(tls, pData) } -func fts5LeafRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220504:17: */ +func fts5LeafRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:220516:17: */ var pRet uintptr = fts5DataRead(tls, p, iRowid) if pRet != 0 { if ((*Fts5Data)(unsafe.Pointer(pRet)).Fnn < 4) || ((*Fts5Data)(unsafe.Pointer(pRet)).FszLeaf > (*Fts5Data)(unsafe.Pointer(pRet)).Fnn) { @@ -188356,7 +188405,7 @@ func fts5LeafRead(tls *libc.TLS, p uintptr, iRowid I64) uintptr { /* sqlite3.c:2 return pRet } -func fts5IndexPrepareStmt(tls *libc.TLS, p uintptr, ppStmt uintptr, zSql uintptr) int32 { /* sqlite3.c:220516:12: */ +func fts5IndexPrepareStmt(tls *libc.TLS, p uintptr, ppStmt uintptr, zSql uintptr) int32 { /* sqlite3.c:220528:12: */ if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { if zSql != 0 { (*Fts5Index)(unsafe.Pointer(p)).Frc = Xsqlite3_prepare_v3(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).Fdb, zSql, -1, @@ -188371,7 +188420,7 @@ func fts5IndexPrepareStmt(tls *libc.TLS, p uintptr, ppStmt uintptr, zSql uintptr } // INSERT OR REPLACE a record into the %_data table. -func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData int32) { /* sqlite3.c:220538:13: */ +func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData int32) { /* sqlite3.c:220550:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188399,7 +188448,7 @@ func fts5DataWrite(tls *libc.TLS, p uintptr, iRowid I64, pData uintptr, nData in // Execute the following SQL: // // DELETE FROM %_data WHERE id BETWEEN $iFirst AND $iLast -func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite3.c:220562:13: */ +func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite3.c:220574:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188424,7 +188473,7 @@ func fts5DataDelete(tls *libc.TLS, p uintptr, iFirst I64, iLast I64) { /* sqlite } // Remove all records associated with segment iSegid. -func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3.c:220583:13: */ +func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3.c:220595:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188446,7 +188495,7 @@ func fts5DataRemoveSegment(tls *libc.TLS, p uintptr, iSegid int32) { /* sqlite3. // Release a reference to an Fts5Structure object returned by an earlier // call to fts5StructureRead() or fts5StructureDecode(). -func fts5StructureRelease(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220605:13: */ +func fts5StructureRelease(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220617:13: */ if (pStruct != 0) && (0 >= (libc.PreDecInt32(&(*Fts5Structure)(unsafe.Pointer(pStruct)).FnRef, 1))) { var i int32 @@ -188457,7 +188506,7 @@ func fts5StructureRelease(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220605: } } -func fts5StructureRef(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220616:13: */ +func fts5StructureRef(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220628:13: */ (*Fts5Structure)(unsafe.Pointer(pStruct)).FnRef++ } @@ -188471,7 +188520,7 @@ func fts5StructureRef(tls *libc.TLS, pStruct uintptr) { /* sqlite3.c:220616:13: // If an error occurs, *ppOut is set to NULL and an SQLite error code // returned. Otherwise, *ppOut is set to point to the new object and // SQLITE_OK returned. -func fts5StructureDecode(tls *libc.TLS, pData uintptr, nData int32, piCookie uintptr, ppOut uintptr) int32 { /* sqlite3.c:220632:12: */ +func fts5StructureDecode(tls *libc.TLS, pData uintptr, nData int32, piCookie uintptr, ppOut uintptr) int32 { /* sqlite3.c:220644:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188563,7 +188612,7 @@ func fts5StructureDecode(tls *libc.TLS, pData uintptr, nData int32, piCookie uin } // -func fts5StructureAddLevel(tls *libc.TLS, pRc uintptr, ppStruct uintptr) { /* sqlite3.c:220723:13: */ +func fts5StructureAddLevel(tls *libc.TLS, pRc uintptr, ppStruct uintptr) { /* sqlite3.c:220735:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var pStruct uintptr = *(*uintptr)(unsafe.Pointer(ppStruct)) var nLevel int32 = (*Fts5Structure)(unsafe.Pointer(pStruct)).FnLevel @@ -188582,7 +188631,7 @@ func fts5StructureAddLevel(tls *libc.TLS, pRc uintptr, ppStruct uintptr) { /* sq // Extend level iLvl so that there is room for at least nExtra more // segments. -func fts5StructureExtendLevel(tls *libc.TLS, pRc uintptr, pStruct uintptr, iLvl int32, nExtra int32, bInsert int32) { /* sqlite3.c:220747:13: */ +func fts5StructureExtendLevel(tls *libc.TLS, pRc uintptr, pStruct uintptr, iLvl int32, nExtra int32, bInsert int32) { /* sqlite3.c:220759:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var pLvl uintptr = ((pStruct + 24 /* &.aLevel */) + uintptr(iLvl)*16) var aNew uintptr @@ -188605,7 +188654,7 @@ func fts5StructureExtendLevel(tls *libc.TLS, pRc uintptr, pStruct uintptr, iLvl } } -func fts5StructureReadUncached(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220776:22: */ +func fts5StructureReadUncached(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220788:22: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188633,7 +188682,7 @@ func fts5StructureReadUncached(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c: return *(*uintptr)(unsafe.Pointer(bp + 8 /* pRet */)) } -func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:220800:12: */ +func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:220812:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -188666,7 +188715,7 @@ func fts5IndexDataVersion(tls *libc.TLS, p uintptr) I64 { /* sqlite3.c:220800:12 // If an error occurs, NULL is returned and an error code left in the // Fts5Index handle. If an error has already occurred when this function // is called, it is a no-op. -func fts5StructureRead(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220831:22: */ +func fts5StructureRead(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220843:22: */ if (*Fts5Index)(unsafe.Pointer(p)).FpStruct == uintptr(0) { (*Fts5Index)(unsafe.Pointer(p)).FiStructVersion = fts5IndexDataVersion(tls, p) @@ -188683,7 +188732,7 @@ func fts5StructureRead(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:220831:2 return (*Fts5Index)(unsafe.Pointer(p)).FpStruct } -func fts5StructureInvalidate(tls *libc.TLS, p uintptr) { /* sqlite3.c:220870:13: */ +func fts5StructureInvalidate(tls *libc.TLS, p uintptr) { /* sqlite3.c:220882:13: */ if (*Fts5Index)(unsafe.Pointer(p)).FpStruct != 0 { fts5StructureRelease(tls, (*Fts5Index)(unsafe.Pointer(p)).FpStruct) (*Fts5Index)(unsafe.Pointer(p)).FpStruct = uintptr(0) @@ -188697,7 +188746,7 @@ func fts5StructureInvalidate(tls *libc.TLS, p uintptr) { /* sqlite3.c:220870:13: // // If an error occurs, leave an error code in the Fts5Index object. If an // error has already occurred, this function is a no-op. -func fts5StructureWrite(tls *libc.TLS, p uintptr, pStruct uintptr) { /* sqlite3.c:220913:13: */ +func fts5StructureWrite(tls *libc.TLS, p uintptr, pStruct uintptr) { /* sqlite3.c:220925:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -188750,14 +188799,14 @@ func fts5StructureWrite(tls *libc.TLS, p uintptr, pStruct uintptr) { /* sqlite3. } } -func fts5SegmentSize(tls *libc.TLS, pSeg uintptr) int32 { /* sqlite3.c:220968:12: */ +func fts5SegmentSize(tls *libc.TLS, pSeg uintptr) int32 { /* sqlite3.c:220980:12: */ return ((1 + (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoLast) - (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoFirst) } // Return a copy of index structure pStruct. Except, promote as many // segments as possible to level iPromote. If an OOM occurs, NULL is // returned. -func fts5StructurePromoteTo(tls *libc.TLS, p uintptr, iPromote int32, szPromote int32, pStruct uintptr) { /* sqlite3.c:220977:13: */ +func fts5StructurePromoteTo(tls *libc.TLS, p uintptr, iPromote int32, szPromote int32, pStruct uintptr) { /* sqlite3.c:220989:13: */ var il int32 var is int32 var pOut uintptr = ((pStruct + 24 /* &.aLevel */) + uintptr(iPromote)*16) @@ -188800,7 +188849,7 @@ func fts5StructurePromoteTo(tls *libc.TLS, p uintptr, iPromote int32, szPromote // // If one or more segments are promoted, the structure object is updated // to reflect this. -func fts5StructurePromote(tls *libc.TLS, p uintptr, iLvl int32, pStruct uintptr) { /* sqlite3.c:221020:13: */ +func fts5StructurePromote(tls *libc.TLS, p uintptr, iLvl int32, pStruct uintptr) { /* sqlite3.c:221032:13: */ if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var iTst int32 var iPromote int32 = -1 @@ -188849,7 +188898,7 @@ func fts5StructurePromote(tls *libc.TLS, p uintptr, iLvl int32, pStruct uintptr) // Advance the iterator passed as the only argument. If the end of the // doclist-index page is reached, return non-zero. -func fts5DlidxLvlNext(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221071:12: */ +func fts5DlidxLvlNext(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221083:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -188885,7 +188934,7 @@ func fts5DlidxLvlNext(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221071:1 } // Advance the iterator passed as the only argument. -func fts5DlidxIterNextR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221103:12: */ +func fts5DlidxIterNextR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221115:12: */ var pLvl uintptr = ((pIter + 8 /* &.aLvl */) + uintptr(iLvl)*32) if fts5DlidxLvlNext(tls, pLvl) != 0 { @@ -188906,7 +188955,7 @@ func fts5DlidxIterNextR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof } -func fts5DlidxIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221123:12: */ +func fts5DlidxIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221135:12: */ return fts5DlidxIterNextR(tls, p, pIter, 0) } @@ -188919,7 +188968,7 @@ func fts5DlidxIterNext(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlit // // When this function is called pIter->iLeafPgno is the page number the // doclist is associated with (the one featuring the term). -func fts5DlidxIterFirst(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221138:12: */ +func fts5DlidxIterFirst(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221150:12: */ var i int32 for i = 0; i < (*Fts5DlidxIter)(unsafe.Pointer(pIter)).FnLvl; i++ { fts5DlidxLvlNext(tls, ((pIter + 8 /* &.aLvl */) + uintptr(i)*32)) @@ -188927,11 +188976,11 @@ func fts5DlidxIterFirst(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:22113 return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof } -func fts5DlidxIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221147:12: */ +func fts5DlidxIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221159:12: */ return (libc.Bool32(((*Fts5Index)(unsafe.Pointer(p)).Frc != SQLITE_OK) || ((*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof != 0))) } -func fts5DlidxIterLast(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221151:13: */ +func fts5DlidxIterLast(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221163:13: */ var i int32 // Advance each level to the last entry on the last page @@ -188952,7 +189001,7 @@ func fts5DlidxIterLast(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:2 } // Move the iterator passed as the only argument to the previous entry. -func fts5DlidxLvlPrev(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221174:12: */ +func fts5DlidxLvlPrev(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221186:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -189014,7 +189063,7 @@ func fts5DlidxLvlPrev(tls *libc.TLS, pLvl uintptr) int32 { /* sqlite3.c:221174:1 return (*Fts5DlidxLvl)(unsafe.Pointer(pLvl)).FbEof } -func fts5DlidxIterPrevR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221223:12: */ +func fts5DlidxIterPrevR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int32 { /* sqlite3.c:221235:12: */ var pLvl uintptr = ((pIter + 8 /* &.aLvl */) + uintptr(iLvl)*32) if fts5DlidxLvlPrev(tls, pLvl) != 0 { @@ -189037,12 +189086,12 @@ func fts5DlidxIterPrevR(tls *libc.TLS, p uintptr, pIter uintptr, iLvl int32) int return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FbEof } -func fts5DlidxIterPrev(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221246:12: */ +func fts5DlidxIterPrev(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221258:12: */ return fts5DlidxIterPrevR(tls, p, pIter, 0) } // Free a doclist-index iterator object allocated by fts5DlidxIterInit(). -func fts5DlidxIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:221253:13: */ +func fts5DlidxIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:221265:13: */ if pIter != 0 { var i int32 for i = 0; i < (*Fts5DlidxIter)(unsafe.Pointer(pIter)).FnLvl; i++ { @@ -189052,7 +189101,7 @@ func fts5DlidxIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:221253:13: * } } -func fts5DlidxIterInit(tls *libc.TLS, p uintptr, bRev int32, iSegid int32, iLeafPg int32) uintptr { /* sqlite3.c:221263:22: */ +func fts5DlidxIterInit(tls *libc.TLS, p uintptr, bRev int32, iSegid int32, iLeafPg int32) uintptr { /* sqlite3.c:221275:22: */ var pIter uintptr = uintptr(0) var i int32 var bDone int32 = 0 @@ -189094,16 +189143,16 @@ func fts5DlidxIterInit(tls *libc.TLS, p uintptr, bRev int32, iSegid int32, iLeaf return pIter } -func fts5DlidxIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:221310:12: */ +func fts5DlidxIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:221322:12: */ return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FiRowid } -func fts5DlidxIterPgno(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221313:12: */ +func fts5DlidxIterPgno(tls *libc.TLS, pIter uintptr) int32 { /* sqlite3.c:221325:12: */ return (*Fts5DlidxLvl)(unsafe.Pointer((pIter + 8 /* &.aLvl */))).FiLeafPgno } // Load the next leaf page into the segment iterator. -func fts5SegIterNextPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221320:13: */ +func fts5SegIterNextPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221332:13: */ var pLeaf uintptr var pSeg uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpSeg fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf) @@ -189133,7 +189182,7 @@ func fts5SegIterNextPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c // position list size field. Read the varint and return the number of bytes // read. Before returning, set *pnSz to the number of bytes in the position // list, and *pbDel to true if the delete flag is set, or false otherwise. -func fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) int32 { /* sqlite3.c:221358:12: */ +func fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) int32 { /* sqlite3.c:221370:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -189162,7 +189211,7 @@ func fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) i // // Leave Fts5SegIter.iLeafOffset pointing to the first byte of the // position list content (if any). -func fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221379:13: */ +func fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221391:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -189207,7 +189256,7 @@ func fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c } } -func fts5SegIterLoadRowid(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221408:13: */ +func fts5SegIterLoadRowid(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221420:13: */ var a uintptr = (*Fts5Data)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).Fp // Buffer to read data from var iOff int32 = (*Fts5SegIter)(unsafe.Pointer(pIter)).FiLeafOffset @@ -189239,7 +189288,7 @@ func fts5SegIterLoadRowid(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3. // accordingly and leaves (Fts5SegIter.iLeafOffset) set to the content of // the first position list. The position list belonging to document // (Fts5SegIter.iRowid). -func fts5SegIterLoadTerm(tls *libc.TLS, p uintptr, pIter uintptr, nKeep int32) { /* sqlite3.c:221441:13: */ +func fts5SegIterLoadTerm(tls *libc.TLS, p uintptr, pIter uintptr, nKeep int32) { /* sqlite3.c:221453:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -189273,7 +189322,7 @@ func fts5SegIterLoadTerm(tls *libc.TLS, p uintptr, pIter uintptr, nKeep int32) { fts5SegIterLoadRowid(tls, p, pIter) } -func fts5SegIterSetNext(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221474:13: */ +func fts5SegIterSetNext(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221486:13: */ if ((*Fts5SegIter)(unsafe.Pointer(pIter)).Fflags & FTS5_SEGITER_REVERSE) != 0 { (*Fts5SegIter)(unsafe.Pointer(pIter)).FxNext = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, uintptr) @@ -189295,7 +189344,7 @@ func fts5SegIterSetNext(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c: // // If an error occurs, Fts5Index.rc is set to an appropriate error code. If // an error has already occurred when this function is called, it is a no-op. -func fts5SegIterInit(tls *libc.TLS, p uintptr, pSeg uintptr, pIter uintptr) { /* sqlite3.c:221492:13: */ +func fts5SegIterInit(tls *libc.TLS, p uintptr, pSeg uintptr, pIter uintptr) { /* sqlite3.c:221504:13: */ if (*Fts5StructureSegment)(unsafe.Pointer(pSeg)).FpgnoFirst == 0 { // This happens if the segment is being used as an input to an incremental // merge and all data has already been "trimmed". See function @@ -189336,7 +189385,7 @@ func fts5SegIterInit(tls *libc.TLS, p uintptr, pSeg uintptr, pIter uintptr) { /* // aRowidOffset[] and iRowidOffset variables. At this point the iterator // is in its regular state - Fts5SegIter.iLeafOffset points to the first // byte of the position list content associated with said rowid. -func fts5SegIterReverseInitPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221540:13: */ +func fts5SegIterReverseInitPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221552:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -189395,7 +189444,7 @@ func fts5SegIterReverseInitPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sq } // -func fts5SegIterReverseNewPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221593:13: */ +func fts5SegIterReverseNewPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221605:13: */ fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf) (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf = uintptr(0) @@ -189441,7 +189490,7 @@ func fts5SegIterReverseNewPage(tls *libc.TLS, p uintptr, pIter uintptr) { /* sql // Return true if the iterator passed as the second argument currently // points to a delete marker. A delete marker is an entry with a 0 byte // position-list. -func fts5MultiIterIsEmpty(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221645:12: */ +func fts5MultiIterIsEmpty(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:221657:12: */ var pSeg uintptr = ((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120) return (libc.Bool32((((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf != 0)) && ((*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos == 0))) } @@ -189449,7 +189498,7 @@ func fts5MultiIterIsEmpty(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sq // Advance iterator pIter to the next entry. // // This version of fts5SegIterNext() is only used by reverse iterators. -func fts5SegIterNext_Reverse(tls *libc.TLS, p uintptr, pIter uintptr, pbUnused uintptr) { /* sqlite3.c:221655:13: */ +func fts5SegIterNext_Reverse(tls *libc.TLS, p uintptr, pIter uintptr, pbUnused uintptr) { /* sqlite3.c:221667:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -189478,7 +189527,7 @@ func fts5SegIterNext_Reverse(tls *libc.TLS, p uintptr, pIter uintptr, pbUnused u // // This version of fts5SegIterNext() is only used if detail=none and the // iterator is not a reverse direction iterator. -func fts5SegIterNext_None(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221689:13: */ +func fts5SegIterNext_None(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221701:13: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -189583,7 +189632,7 @@ next_none_eof: // If an error occurs, Fts5Index.rc is set to an appropriate error code. It // is not considered an error if the iterator reaches EOF. If an error has // already occurred when this function is called, it is a no-op. -func fts5SegIterNext(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221761:13: */ +func fts5SegIterNext(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:221773:13: */ bp := tls.Alloc(44) defer tls.Free(44) @@ -189708,7 +189757,7 @@ func fts5SegIterNext(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) // Iterator pIter currently points to the first rowid in a doclist. This // function sets the iterator up so that iterates in reverse order through // the doclist. -func fts5SegIterReverse(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221893:13: */ +func fts5SegIterReverse(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221905:13: */ var pDlidx uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpDlidx var pLast uintptr = uintptr(0) var pgnoLast int32 = 0 @@ -189805,7 +189854,7 @@ func fts5SegIterReverse(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c: // There is a doclist-index associated with the final term on the current // page. If the current term is the last term on the page, load the // doclist-index from disk and initialize an iterator at (pIter->pDlidx). -func fts5SegIterLoadDlidx(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221979:13: */ +func fts5SegIterLoadDlidx(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:221991:13: */ var iSeg int32 = (*Fts5StructureSegment)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pIter)).FpSeg)).FiSegid var bRev int32 = ((*Fts5SegIter)(unsafe.Pointer(pIter)).Fflags & FTS5_SEGITER_REVERSE) var pLeaf uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf // Current leaf data @@ -189833,7 +189882,7 @@ func fts5SegIterLoadDlidx(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3. // iterator is left pointing to the smallest term in the segment that // is larger than the specified term, even if this term is not on the // current page. -func fts5LeafSeek(tls *libc.TLS, p uintptr, bGe int32, pIter uintptr, pTerm uintptr, nTerm int32) { /* sqlite3.c:222013:13: */ +func fts5LeafSeek(tls *libc.TLS, p uintptr, bGe int32, pIter uintptr, pTerm uintptr, nTerm int32) { /* sqlite3.c:222025:13: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -190069,7 +190118,7 @@ __31: fts5SegIterLoadNPos(tls, p, pIter) } -func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:222140:21: */ +func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:222152:21: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -190088,7 +190137,7 @@ func fts5IdxSelectStmt(tls *libc.TLS, p uintptr) uintptr { /* sqlite3.c:222140:2 // // If an error occurs, Fts5Index.rc is set to an appropriate error code. If // an error has already occurred when this function is called, it is a no-op. -func fts5SegIterSeekInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pSeg uintptr, pIter uintptr) { /* sqlite3.c:222159:13: */ +func fts5SegIterSeekInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pSeg uintptr, pIter uintptr) { /* sqlite3.c:222171:13: */ var iPg int32 = 1 var bGe int32 = (flags & FTS5INDEX_QUERY_SCAN) var bDlidx int32 = 0 // True if there is a doclist-index @@ -190158,7 +190207,7 @@ func fts5SegIterSeekInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, f // // If an error occurs, Fts5Index.rc is set to an appropriate error code. If // an error has already occurred when this function is called, it is a no-op. -func fts5SegIterHashInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pIter uintptr) { /* sqlite3.c:222242:13: */ +func fts5SegIterHashInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, flags int32, pIter uintptr) { /* sqlite3.c:222254:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -190214,7 +190263,7 @@ func fts5SegIterHashInit(tls *libc.TLS, p uintptr, pTerm uintptr, nTerm int32, f } // Zero the iterator passed as the only argument. -func fts5SegIterClear(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222301:13: */ +func fts5SegIterClear(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222313:13: */ sqlite3Fts5BufferFree(tls, (pIter + 88 /* &.term */)) fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpLeaf) fts5DataRelease(tls, (*Fts5SegIter)(unsafe.Pointer(pIter)).FpNextLeaf) @@ -190229,7 +190278,7 @@ func fts5SegIterClear(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222301:13: */ // in the pIter->aSeg[] array that is (a) not at EOF, and (b) pointing // to a key that is a duplicate of another, higher priority, // segment-iterator in the pSeg->aSeg[] array. -func fts5MultiIterDoCompare(tls *libc.TLS, pIter uintptr, iOut int32) int32 { /* sqlite3.c:222405:12: */ +func fts5MultiIterDoCompare(tls *libc.TLS, pIter uintptr, iOut int32) int32 { /* sqlite3.c:222417:12: */ var i1 int32 // Index of left-hand Fts5SegIter var i2 int32 // Index of right-hand Fts5SegIter var iRes int32 @@ -190281,7 +190330,7 @@ func fts5MultiIterDoCompare(tls *libc.TLS, pIter uintptr, iOut int32) int32 { /* // Move the seg-iter so that it points to the first rowid on page iLeafPgno. // It is an error if leaf iLeafPgno does not exist or contains no rowids. -func fts5SegIterGotoPage(tls *libc.TLS, p uintptr, pIter uintptr, iLeafPgno int32) { /* sqlite3.c:222459:13: */ +func fts5SegIterGotoPage(tls *libc.TLS, p uintptr, pIter uintptr, iLeafPgno int32) { /* sqlite3.c:222471:13: */ if iLeafPgno > (*Fts5StructureSegment)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pIter)).FpSeg)).FpgnoLast { (*Fts5Index)(unsafe.Pointer(p)).Frc = (SQLITE_CORRUPT | (int32(1) << 8)) @@ -190311,7 +190360,7 @@ func fts5SegIterGotoPage(tls *libc.TLS, p uintptr, pIter uintptr, iLeafPgno int3 // Advance the iterator passed as the second argument until it is at or // past rowid iFrom. Regardless of the value of iFrom, the iterator is // always advanced at least once. -func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:222497:13: */ +func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:222509:13: */ var bRev int32 = ((*Fts5SegIter)(unsafe.Pointer(pIter)).Fflags & FTS5_SEGITER_REVERSE) var pDlidx uintptr = (*Fts5SegIter)(unsafe.Pointer(pIter)).FpDlidx var iLeafPgno int32 = (*Fts5SegIter)(unsafe.Pointer(pIter)).FiLeafPgno @@ -190359,7 +190408,7 @@ func fts5SegIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { } // Free the iterator object passed as the second argument. -func fts5MultiIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222551:13: */ +func fts5MultiIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222563:13: */ if pIter != 0 { var i int32 for i = 0; i < (*Fts5Iter)(unsafe.Pointer(pIter)).FnSeg; i++ { @@ -190370,7 +190419,7 @@ func fts5MultiIterFree(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222551:13: * } } -func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int32, iMinset int32) { /* sqlite3.c:222562:13: */ +func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int32, iMinset int32) { /* sqlite3.c:222574:13: */ var i int32 for i = (((*Fts5Iter)(unsafe.Pointer(pIter)).FnSeg + iChanged) / 2); (i >= iMinset) && ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK); i = (i / 2) { var iEq int32 @@ -190391,7 +190440,7 @@ func fts5MultiIterAdvanced(tls *libc.TLS, p uintptr, pIter uintptr, iChanged int // If non-zero is returned, the caller should call fts5MultiIterAdvanced() // on the iterator instead. That function does the same as this one, except // that it deals with more complicated cases as well. -func fts5MultiIterAdvanceRowid(tls *libc.TLS, pIter uintptr, iChanged int32, ppFirst uintptr) int32 { /* sqlite3.c:222590:12: */ +func fts5MultiIterAdvanceRowid(tls *libc.TLS, pIter uintptr, iChanged int32, ppFirst uintptr) int32 { /* sqlite3.c:222602:12: */ var pNew uintptr = ((pIter + 96 /* &.aSeg */) + uintptr(iChanged)*120) if ((*Fts5SegIter)(unsafe.Pointer(pNew)).FiRowid == (*Fts5Iter)(unsafe.Pointer(pIter)).FiSwitchRowid) || @@ -190431,7 +190480,7 @@ func fts5MultiIterAdvanceRowid(tls *libc.TLS, pIter uintptr, iChanged int32, ppF } // Set the pIter->bEof variable based on the state of the sub-iterators. -func fts5MultiIterSetEof(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222633:13: */ +func fts5MultiIterSetEof(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222645:13: */ var pSeg uintptr = ((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120) (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FbEof = (U8(libc.Bool32((*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf == uintptr(0)))) (*Fts5Iter)(unsafe.Pointer(pIter)).FiSwitchRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid @@ -190442,7 +190491,7 @@ func fts5MultiIterSetEof(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:222633:13: // If an error occurs, an error code is left in Fts5Index.rc. It is not // considered an error if the iterator reaches EOF, or if it is already at // EOF when this function is called. -func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFrom I64) { /* sqlite3.c:222646:13: */ +func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFrom I64) { /* sqlite3.c:222658:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -190477,7 +190526,7 @@ func fts5MultiIterNext(tls *libc.TLS, p uintptr, pIter uintptr, bFrom int32, iFr } } -func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:222684:13: */ +func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintptr) { /* sqlite3.c:222696:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -190500,12 +190549,12 @@ func fts5MultiIterNext2(tls *libc.TLS, p uintptr, pIter uintptr, pbNewTerm uintp } } -func fts5IterSetOutputs_Noop(tls *libc.TLS, pUnused1 uintptr, pUnused2 uintptr) { /* sqlite3.c:222712:13: */ +func fts5IterSetOutputs_Noop(tls *libc.TLS, pUnused1 uintptr, pUnused2 uintptr) { /* sqlite3.c:222724:13: */ _ = pUnused1 _ = pUnused2 } -func fts5MultiIterAlloc(tls *libc.TLS, p uintptr, nSeg int32) uintptr { /* sqlite3.c:222716:17: */ +func fts5MultiIterAlloc(tls *libc.TLS, p uintptr, nSeg int32) uintptr { /* sqlite3.c:222728:17: */ var pNew uintptr var nSlot int32 // Power of two >= nSeg @@ -190524,7 +190573,7 @@ func fts5MultiIterAlloc(tls *libc.TLS, p uintptr, nSeg int32) uintptr { /* sqlit return pNew } -func fts5PoslistCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222738:13: */ +func fts5PoslistCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222750:13: */ _ = pUnused if nChunk > 0 { @@ -190541,21 +190590,21 @@ type PoslistCallbackCtx1 = struct { FpColset uintptr FeState int32 _ [4]byte -} /* sqlite3.c:222750:9 */ +} /* sqlite3.c:222762:9 */ -type PoslistCallbackCtx = PoslistCallbackCtx1 /* sqlite3.c:222750:35 */ +type PoslistCallbackCtx = PoslistCallbackCtx1 /* sqlite3.c:222762:35 */ type PoslistOffsetsCtx1 = struct { FpBuf uintptr FpColset uintptr FiRead int32 FiWrite int32 -} /* sqlite3.c:222757:9 */ +} /* sqlite3.c:222769:9 */ -type PoslistOffsetsCtx = PoslistOffsetsCtx1 /* sqlite3.c:222757:34 */ +type PoslistOffsetsCtx = PoslistOffsetsCtx1 /* sqlite3.c:222769:34 */ // TODO: Make this more efficient! -func fts5IndexColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:222768:12: */ +func fts5IndexColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* sqlite3.c:222780:12: */ var i int32 for i = 0; i < (*Fts5Colset)(unsafe.Pointer(pColset)).FnCol; i++ { if *(*int32)(unsafe.Pointer((pColset + 4 /* &.aiCol */) + uintptr(i)*4)) == iCol { @@ -190565,7 +190614,7 @@ func fts5IndexColsetTest(tls *libc.TLS, pColset uintptr, iCol int32) int32 { /* return 0 } -func fts5PoslistOffsetsCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222776:13: */ +func fts5PoslistOffsetsCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222788:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -190591,7 +190640,7 @@ func fts5PoslistOffsetsCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr } } -func fts5PoslistFilterCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222799:13: */ +func fts5PoslistFilterCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:222811:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -190671,7 +190720,7 @@ func fts5PoslistFilterCallback(tls *libc.TLS, pUnused uintptr, pContext uintptr, } } -func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChunk uintptr) { /* sqlite3.c:222851:13: */ +func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChunk uintptr) { /* sqlite3.c:222863:13: */ var nRem int32 = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos // Number of bytes still to come var pData uintptr = uintptr(0) var pChunk uintptr = ((*Fts5Data)(unsafe.Pointer((*Fts5SegIter)(unsafe.Pointer(pSeg)).FpLeaf)).Fp + uintptr((*Fts5SegIter)(unsafe.Pointer(pSeg)).FiLeafOffset)) @@ -190725,7 +190774,7 @@ func fts5ChunkIterate(tls *libc.TLS, p uintptr, pSeg uintptr, pCtx uintptr, xChu // function appends the position list data for the current entry to // buffer pBuf. It does not make a copy of the position-list size // field. -func fts5SegiterPoslist(tls *libc.TLS, p uintptr, pSeg uintptr, pColset uintptr, pBuf uintptr) { /* sqlite3.c:222901:13: */ +func fts5SegiterPoslist(tls *libc.TLS, p uintptr, pSeg uintptr, pColset uintptr, pBuf uintptr) { /* sqlite3.c:222913:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -190775,7 +190824,7 @@ func fts5SegiterPoslist(tls *libc.TLS, p uintptr, pSeg uintptr, pColset uintptr, // This function is a no-op if *pRc is other than SQLITE_OK when it is // called. If an OOM error is encountered, *pRc is set to SQLITE_NOMEM // before returning. -func fts5IndexExtractColset(tls *libc.TLS, pRc uintptr, pColset uintptr, pPos uintptr, nPos int32, pIter uintptr) { /* sqlite3.c:222942:13: */ +func fts5IndexExtractColset(tls *libc.TLS, pRc uintptr, pColset uintptr, pPos uintptr, nPos int32, pIter uintptr) { /* sqlite3.c:222954:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -190836,7 +190885,7 @@ func fts5IndexExtractColset(tls *libc.TLS, pRc uintptr, pColset uintptr, pPos ui } // xSetOutputs callback used by detail=none tables. -func fts5IterSetOutputs_None(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223002:13: */ +func fts5IterSetOutputs_None(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223014:13: */ (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FnData = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos @@ -190844,7 +190893,7 @@ func fts5IterSetOutputs_None(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sq // xSetOutputs callback used by detail=full and detail=col tables when no // column filters are specified. -func fts5IterSetOutputs_Nocolset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223012:13: */ +func fts5IterSetOutputs_Nocolset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223024:13: */ (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FnData = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FnPos @@ -190864,7 +190913,7 @@ func fts5IterSetOutputs_Nocolset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { / // xSetOutputs callback used when the Fts5Colset object has nCol==0 (match // against no columns at all). -func fts5IterSetOutputs_ZeroColset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223037:13: */ +func fts5IterSetOutputs_ZeroColset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223049:13: */ _ = pSeg (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FnData = 0 } @@ -190872,7 +190921,7 @@ func fts5IterSetOutputs_ZeroColset(tls *libc.TLS, pIter uintptr, pSeg uintptr) { // xSetOutputs callback used by detail=col when there is a column filter // and there are 100 or more columns. Also called as a fallback from // fts5IterSetOutputs_Col100 if the column-list spans more than one page. -func fts5IterSetOutputs_Col(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223047:13: */ +func fts5IterSetOutputs_Col(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223059:13: */ sqlite3Fts5BufferZero(tls, (pIter + 32 /* &.poslist */)) fts5SegiterPoslist(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex, pSeg, (*Fts5Iter)(unsafe.Pointer(pIter)).FpColset, (pIter + 32 /* &.poslist */)) (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid @@ -190888,7 +190937,7 @@ func fts5IterSetOutputs_Col(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sql // // The last point is to ensure all column numbers are stored as // single-byte varints. -func fts5IterSetOutputs_Col100(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223065:13: */ +func fts5IterSetOutputs_Col100(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223077:13: */ var a uintptr var pEnd uintptr var iPrev int32 @@ -190950,7 +190999,7 @@ __2: } // xSetOutputs callback used by detail=full when there is a column filter. -func fts5IterSetOutputs_Full(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223105:13: */ +func fts5IterSetOutputs_Full(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sqlite3.c:223117:13: */ var pColset uintptr = (*Fts5Iter)(unsafe.Pointer(pIter)).FpColset (*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FiRowid = (*Fts5SegIter)(unsafe.Pointer(pSeg)).FiRowid @@ -190972,7 +191021,7 @@ func fts5IterSetOutputs_Full(tls *libc.TLS, pIter uintptr, pSeg uintptr) { /* sq } } -func fts5IterSetOutputCb(tls *libc.TLS, pRc uintptr, pIter uintptr) { /* sqlite3.c:223130:13: */ +func fts5IterSetOutputCb(tls *libc.TLS, pRc uintptr, pIter uintptr) { /* sqlite3.c:223142:13: */ if *(*int32)(unsafe.Pointer(pRc)) == SQLITE_OK { var pConfig uintptr = (*Fts5Index)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex)).FpConfig if (*Fts5Config)(unsafe.Pointer(pConfig)).FeDetail == FTS5_DETAIL_NONE { @@ -191016,7 +191065,7 @@ func fts5IterSetOutputCb(tls *libc.TLS, pRc uintptr, pIter uintptr) { /* sqlite3 // // The iterator initially points to the first term/rowid entry in the // iterated data. -func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pColset uintptr, pTerm uintptr, nTerm int32, iLevel int32, nSegment int32, ppOut uintptr) { /* sqlite3.c:223173:13: */ +func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pColset uintptr, pTerm uintptr, nTerm int32, iLevel int32, nSegment int32, ppOut uintptr) { /* sqlite3.c:223185:13: */ var nSeg int32 = 0 // Number of segment-iters in use var iIter int32 = 0 // var iSeg int32 // Used to iterate through segments @@ -191115,7 +191164,7 @@ func fts5MultiIterNew(tls *libc.TLS, p uintptr, pStruct uintptr, flags int32, pC // Create an Fts5Iter that iterates through the doclist provided // as the second argument. -func fts5MultiIterNew2(tls *libc.TLS, p uintptr, pData uintptr, bDesc int32, ppOut uintptr) { /* sqlite3.c:223272:13: */ +func fts5MultiIterNew2(tls *libc.TLS, p uintptr, pData uintptr, bDesc int32, ppOut uintptr) { /* sqlite3.c:223284:13: */ var pNew uintptr pNew = fts5MultiIterAlloc(tls, p, 2) if pNew != 0 { @@ -191148,7 +191197,7 @@ func fts5MultiIterNew2(tls *libc.TLS, p uintptr, pData uintptr, bDesc int32, ppO // Return true if the iterator is at EOF or if an error has occurred. // False otherwise. -func fts5MultiIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:223312:12: */ +func fts5MultiIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite3.c:223324:12: */ return (libc.Bool32(((*Fts5Index)(unsafe.Pointer(p)).Frc != 0) || ((*Fts5Iter)(unsafe.Pointer(pIter)).Fbase.FbEof != 0))) } @@ -191156,13 +191205,13 @@ func fts5MultiIterEof(tls *libc.TLS, p uintptr, pIter uintptr) int32 { /* sqlite // Return the rowid of the entry that the iterator currently points // to. If the iterator points to EOF when this function is called the // results are undefined. -func fts5MultiIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:223324:12: */ +func fts5MultiIterRowid(tls *libc.TLS, pIter uintptr) I64 { /* sqlite3.c:223336:12: */ return (*Fts5SegIter)(unsafe.Pointer((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120)).FiRowid } // Move the iterator to the next entry at or following iMatch. -func fts5MultiIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:223332:13: */ +func fts5MultiIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) { /* sqlite3.c:223344:13: */ for 1 != 0 { var iRowid I64 fts5MultiIterNext(tls, p, pIter, 1, iMatch) @@ -191181,7 +191230,7 @@ func fts5MultiIterNextFrom(tls *libc.TLS, p uintptr, pIter uintptr, iMatch I64) // Return a pointer to a buffer containing the term associated with the // entry that the iterator currently points to. -func fts5MultiIterTerm(tls *libc.TLS, pIter uintptr, pn uintptr) uintptr { /* sqlite3.c:223351:17: */ +func fts5MultiIterTerm(tls *libc.TLS, pIter uintptr, pn uintptr) uintptr { /* sqlite3.c:223363:17: */ var p uintptr = ((pIter + 96 /* &.aSeg */) + uintptr((*Fts5CResult)(unsafe.Pointer((*Fts5Iter)(unsafe.Pointer(pIter)).FaFirst+1*4)).FiFirst)*120) *(*int32)(unsafe.Pointer(pn)) = (*Fts5SegIter)(unsafe.Pointer(p)).Fterm.Fn return (*Fts5SegIter)(unsafe.Pointer(p)).Fterm.Fp @@ -191194,7 +191243,7 @@ func fts5MultiIterTerm(tls *libc.TLS, pIter uintptr, pn uintptr) uintptr { /* sq // // If an error has already occurred, this function is a no-op. 0 is // returned in this case. -func fts5AllocateSegid(tls *libc.TLS, p uintptr, pStruct uintptr) int32 { /* sqlite3.c:223366:12: */ +func fts5AllocateSegid(tls *libc.TLS, p uintptr, pStruct uintptr) int32 { /* sqlite3.c:223378:12: */ bp := tls.Alloc(252) defer tls.Free(252) @@ -191236,7 +191285,7 @@ func fts5AllocateSegid(tls *libc.TLS, p uintptr, pStruct uintptr) int32 { /* sql } // Discard all data currently cached in the hash-tables. -func fts5IndexDiscardData(tls *libc.TLS, p uintptr) { /* sqlite3.c:223423:13: */ +func fts5IndexDiscardData(tls *libc.TLS, p uintptr) { /* sqlite3.c:223435:13: */ if (*Fts5Index)(unsafe.Pointer(p)).FpHash != 0 { sqlite3Fts5HashClear(tls, (*Fts5Index)(unsafe.Pointer(p)).FpHash) @@ -191249,7 +191298,7 @@ func fts5IndexDiscardData(tls *libc.TLS, p uintptr) { /* sqlite3.c:223423:13: */ // // Buffer (pNew/) is guaranteed to be greater // than buffer (pOld/nOld). -func fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) int32 { /* sqlite3.c:223438:12: */ +func fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) int32 { /* sqlite3.c:223450:12: */ var i int32 for i = 0; i < nOld; i++ { if int32(*(*U8)(unsafe.Pointer(pOld + uintptr(i)))) != int32(*(*U8)(unsafe.Pointer(pNew + uintptr(i)))) { @@ -191259,7 +191308,7 @@ func fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) i return i } -func fts5WriteDlidxClear(tls *libc.TLS, p uintptr, pWriter uintptr, bFlush int32) { /* sqlite3.c:223446:13: */ +func fts5WriteDlidxClear(tls *libc.TLS, p uintptr, pWriter uintptr, bFlush int32) { /* sqlite3.c:223458:13: */ var i int32 for i = 0; i < (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FnDlidx; i++ { @@ -191280,7 +191329,7 @@ func fts5WriteDlidxClear(tls *libc.TLS, p uintptr, pWriter uintptr, bFlush int32 // Grow the pWriter->aDlidx[] array to at least nLvl elements in size. // Any new array elements are zeroed before returning. -func fts5WriteDlidxGrow(tls *libc.TLS, p uintptr, pWriter uintptr, nLvl int32) int32 { /* sqlite3.c:223472:12: */ +func fts5WriteDlidxGrow(tls *libc.TLS, p uintptr, pWriter uintptr, nLvl int32) int32 { /* sqlite3.c:223484:12: */ if ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) && (nLvl >= (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FnDlidx) { var aDlidx uintptr = Xsqlite3_realloc64(tls, (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FaDlidx, (uint64(uint64(unsafe.Sizeof(Fts5DlidxWriter{})) * uint64(nLvl)))) @@ -191299,7 +191348,7 @@ func fts5WriteDlidxGrow(tls *libc.TLS, p uintptr, pWriter uintptr, nLvl int32) i // If the current doclist-index accumulating in pWriter->aDlidx[] is large // enough, flush it to disk and return 1. Otherwise discard it and return // zero. -func fts5WriteFlushDlidx(tls *libc.TLS, p uintptr, pWriter uintptr) int32 { /* sqlite3.c:223498:12: */ +func fts5WriteFlushDlidx(tls *libc.TLS, p uintptr, pWriter uintptr) int32 { /* sqlite3.c:223510:12: */ var bFlag int32 = 0 // If there were FTS5_MIN_DLIDX_SIZE or more empty leaf pages written @@ -191321,7 +191370,7 @@ func fts5WriteFlushDlidx(tls *libc.TLS, p uintptr, pWriter uintptr) int32 { /* s // it. // // Fts5SegWriter.btterm currently contains the first term on page iBtPage. -func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223522:13: */ +func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223534:13: */ var bFlag int32 if (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FiBtPage == 0 { @@ -191354,7 +191403,7 @@ func fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3 // // If an error occurs, an error code is left in Fts5Index.rc. If an error // has already occurred when this function is called, it is a no-op. -func fts5WriteBtreeTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223551:13: */ +func fts5WriteBtreeTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223563:13: */ fts5WriteFlushBtree(tls, p, pWriter) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { sqlite3Fts5BufferSet(tls, (p + 52 /* &.rc */), (pWriter + 96 /* &.btterm */), nTerm, pTerm) @@ -191364,7 +191413,7 @@ func fts5WriteBtreeTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, // This function is called when flushing a leaf page that contains no // terms at all to disk. -func fts5WriteBtreeNoTerm(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223567:13: */ +func fts5WriteBtreeNoTerm(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223579:13: */ // If there were no rowids on the leaf page either and the doclist-index // has already been started, append an 0x00 byte to it. if ((*Fts5SegWriter)(unsafe.Pointer(pWriter)).FbFirstRowidInPage != 0) && ((*Fts5DlidxWriter)(unsafe.Pointer((*Fts5SegWriter)(unsafe.Pointer(pWriter)).FaDlidx)).Fbuf.Fn > 0) { @@ -191377,7 +191426,7 @@ func fts5WriteBtreeNoTerm(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FnEmpty++ } -func fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) I64 { /* sqlite3.c:223583:12: */ +func fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) I64 { /* sqlite3.c:223595:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -191393,7 +191442,7 @@ func fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) I64 { /* sqlite3.c: // Rowid iRowid has just been appended to the current leaf page. It is the // first on the page. This function appends an appropriate entry to the current // doclist-index. -func fts5WriteDlidxAppend(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223597:13: */ +func fts5WriteDlidxAppend(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223609:13: */ var i int32 var bDone int32 = 0 @@ -191453,7 +191502,7 @@ func fts5WriteDlidxAppend(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) } } -func fts5WriteFlushLeaf(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223657:13: */ +func fts5WriteFlushLeaf(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3.c:223669:13: */ var pPage uintptr = (pWriter + 8 /* &.writer */) var iRowid I64 @@ -191489,14 +191538,14 @@ func fts5WriteFlushLeaf(tls *libc.TLS, p uintptr, pWriter uintptr) { /* sqlite3. (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FbFirstRowidInPage = U8(1) } -var zero = [4]U8{U8(0x00), U8(0x00), U8(0x00), U8(0x00)} /* sqlite3.c:223658:19 */ +var zero = [4]U8{U8(0x00), U8(0x00), U8(0x00), U8(0x00)} /* sqlite3.c:223670:19 */ // Append term pTerm/nTerm to the segment being written by the writer passed // as the second argument. // // If an error occurs, set the Fts5Index.rc error code. If an error has // already occurred, this function is a no-op. -func fts5WriteAppendTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223703:13: */ +func fts5WriteAppendTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, pTerm uintptr) { /* sqlite3.c:223715:13: */ var nPrefix int32 // Bytes of prefix compression for term var pPage uintptr = (pWriter + 8 /* &.writer */) var pPgidx uintptr = (pWriter + 8 /* &.writer */ + 24 /* &.pgidx */) @@ -191572,7 +191621,7 @@ func fts5WriteAppendTerm(tls *libc.TLS, p uintptr, pWriter uintptr, nTerm int32, } // Append a rowid and position-list size field to the writers output. -func fts5WriteAppendRowid(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223784:13: */ +func fts5WriteAppendRowid(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) { /* sqlite3.c:223796:13: */ if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { var pPage uintptr = (pWriter + 8 /* &.writer */) @@ -191601,7 +191650,7 @@ func fts5WriteAppendRowid(tls *libc.TLS, p uintptr, pWriter uintptr, iRowid I64) } } -func fts5WriteAppendPoslistData(tls *libc.TLS, p uintptr, pWriter uintptr, aData uintptr, nData int32) { /* sqlite3.c:223817:13: */ +func fts5WriteAppendPoslistData(tls *libc.TLS, p uintptr, pWriter uintptr, aData uintptr, nData int32) { /* sqlite3.c:223829:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -191630,7 +191679,7 @@ func fts5WriteAppendPoslistData(tls *libc.TLS, p uintptr, pWriter uintptr, aData // Flush any data cached by the writer object to the database. Free any // allocations associated with the writer. -func fts5WriteFinish(tls *libc.TLS, p uintptr, pWriter uintptr, pnLeaf uintptr) { /* sqlite3.c:223851:13: */ +func fts5WriteFinish(tls *libc.TLS, p uintptr, pWriter uintptr, pnLeaf uintptr) { /* sqlite3.c:223863:13: */ var i int32 var pLeaf uintptr = (pWriter + 8 /* &.writer */) if (*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { @@ -191654,7 +191703,7 @@ func fts5WriteFinish(tls *libc.TLS, p uintptr, pWriter uintptr, pnLeaf uintptr) Xsqlite3_free(tls, (*Fts5SegWriter)(unsafe.Pointer(pWriter)).FaDlidx) } -func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* sqlite3.c:223879:13: */ +func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* sqlite3.c:223891:13: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -191694,7 +191743,7 @@ func fts5WriteInit(tls *libc.TLS, p uintptr, pWriter uintptr, iSegid int32) { /* // Iterator pIter was used to iterate through the input segments of on an // incremental merge operation. This function is called if the incremental // merge step has finished but the input has not been completely exhausted. -func fts5TrimSegments(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:223926:13: */ +func fts5TrimSegments(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:223938:13: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -191763,13 +191812,13 @@ func fts5TrimSegments(tls *libc.TLS, p uintptr, pIter uintptr) { /* sqlite3.c:22 sqlite3Fts5BufferFree(tls, bp /* &buf */) } -func fts5MergeChunkCallback(tls *libc.TLS, p uintptr, pCtx uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:223992:13: */ +func fts5MergeChunkCallback(tls *libc.TLS, p uintptr, pCtx uintptr, pChunk uintptr, nChunk int32) { /* sqlite3.c:224004:13: */ var pWriter uintptr = pCtx fts5WriteAppendPoslistData(tls, p, pWriter, pChunk, nChunk) } // -func fts5IndexMergeLevel(tls *libc.TLS, p uintptr, ppStruct uintptr, iLvl int32, pnRem uintptr) { /* sqlite3.c:224004:13: */ +func fts5IndexMergeLevel(tls *libc.TLS, p uintptr, ppStruct uintptr, iLvl int32, pnRem uintptr) { /* sqlite3.c:224016:13: */ bp := tls.Alloc(148) defer tls.Free(148) @@ -191928,7 +191977,7 @@ func fts5IndexMergeLevel(tls *libc.TLS, p uintptr, ppStruct uintptr, iLvl int32, // Do up to nPg pages of automerge work on the index. // // Return true if any changes were actually made, or false otherwise. -func fts5IndexMerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nPg int32, nMin int32) int32 { /* sqlite3.c:224153:12: */ +func fts5IndexMerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nPg int32, nMin int32) int32 { /* sqlite3.c:224165:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -191978,7 +192027,7 @@ func fts5IndexMerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nPg int32, nMin // // If an error occurs, set the Fts5Index.rc error code. If an error has // already occurred, this function is a no-op. -func fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) { /* sqlite3.c:224212:13: */ +func fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) { /* sqlite3.c:224224:13: */ if ((*Fts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK) && ((*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FnAutomerge > 0) { var pStruct uintptr = *(*uintptr)(unsafe.Pointer(ppStruct)) var nWrite U64 // Initial value of write-counter @@ -191995,7 +192044,7 @@ func fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) } } -func fts5IndexCrisismerge(tls *libc.TLS, p uintptr, ppStruct uintptr) { /* sqlite3.c:224233:13: */ +func fts5IndexCrisismerge(tls *libc.TLS, p uintptr, ppStruct uintptr) { /* sqlite3.c:224245:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -192012,7 +192061,7 @@ func fts5IndexCrisismerge(tls *libc.TLS, p uintptr, ppStruct uintptr) { /* sqlit *(*uintptr)(unsafe.Pointer(ppStruct)) = *(*uintptr)(unsafe.Pointer(bp /* pStruct */)) } -func fts5IndexReturn(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224251:12: */ +func fts5IndexReturn(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224263:12: */ var rc int32 = (*Fts5Index)(unsafe.Pointer(p)).Frc (*Fts5Index)(unsafe.Pointer(p)).Frc = SQLITE_OK return rc @@ -192021,14 +192070,14 @@ func fts5IndexReturn(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224251:12: * type Fts5FlushCtx1 = struct { FpIdx uintptr Fwriter Fts5SegWriter -} /* sqlite3.c:224257:9 */ +} /* sqlite3.c:224269:9 */ -type Fts5FlushCtx = Fts5FlushCtx1 /* sqlite3.c:224257:29 */ +type Fts5FlushCtx = Fts5FlushCtx1 /* sqlite3.c:224269:29 */ // Buffer aBuf[] contains a list of varints, all small enough to fit // in a 32-bit integer. Return the size of the largest prefix of this // list nMax bytes or less in size. -func fts5PoslistPrefix(tls *libc.TLS, aBuf uintptr, nMax int32) int32 { /* sqlite3.c:224268:12: */ +func fts5PoslistPrefix(tls *libc.TLS, aBuf uintptr, nMax int32) int32 { /* sqlite3.c:224280:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -192053,7 +192102,7 @@ func fts5PoslistPrefix(tls *libc.TLS, aBuf uintptr, nMax int32) int32 { /* sqlit // // If an error occurs, set the Fts5Index.rc error code. If an error has // already occurred, this function is a no-op. -func fts5FlushOneHash(tls *libc.TLS, p uintptr) { /* sqlite3.c:224289:13: */ +func fts5FlushOneHash(tls *libc.TLS, p uintptr) { /* sqlite3.c:224301:13: */ bp := tls.Alloc(176) defer tls.Free(176) @@ -192231,7 +192280,7 @@ func fts5FlushOneHash(tls *libc.TLS, p uintptr) { /* sqlite3.c:224289:13: */ } // Flush any data stored in the in-memory hash tables to the database. -func fts5IndexFlush(tls *libc.TLS, p uintptr) { /* sqlite3.c:224443:13: */ +func fts5IndexFlush(tls *libc.TLS, p uintptr) { /* sqlite3.c:224455:13: */ // Unless it is empty, flush the hash table to disk if (*Fts5Index)(unsafe.Pointer(p)).FnPendingData != 0 { @@ -192240,7 +192289,7 @@ func fts5IndexFlush(tls *libc.TLS, p uintptr) { /* sqlite3.c:224443:13: */ } } -func fts5IndexOptimizeStruct(tls *libc.TLS, p uintptr, pStruct uintptr) uintptr { /* sqlite3.c:224452:22: */ +func fts5IndexOptimizeStruct(tls *libc.TLS, p uintptr, pStruct uintptr) uintptr { /* sqlite3.c:224464:22: */ var pNew uintptr = uintptr(0) var nByte Sqlite3_int64 = Sqlite3_int64(unsafe.Sizeof(Fts5Structure{})) var nSeg int32 = (*Fts5Structure)(unsafe.Pointer(pStruct)).FnSegment @@ -192301,7 +192350,7 @@ func fts5IndexOptimizeStruct(tls *libc.TLS, p uintptr, pStruct uintptr) uintptr return pNew } -func sqlite3Fts5IndexOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224514:12: */ +func sqlite3Fts5IndexOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224526:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -192335,7 +192384,7 @@ func sqlite3Fts5IndexOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:224 // This is called to implement the special "VALUES('merge', $nMerge)" // INSERT command. -func sqlite3Fts5IndexMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:224548:12: */ +func sqlite3Fts5IndexMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:224560:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -192360,12 +192409,12 @@ func sqlite3Fts5IndexMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sq return fts5IndexReturn(tls, p) } -func fts5AppendRowid(tls *libc.TLS, p uintptr, iDelta I64, pUnused uintptr, pBuf uintptr) { /* sqlite3.c:224570:13: */ +func fts5AppendRowid(tls *libc.TLS, p uintptr, iDelta I64, pUnused uintptr, pBuf uintptr) { /* sqlite3.c:224582:13: */ _ = pUnused sqlite3Fts5BufferAppendVarint(tls, (p + 52 /* &.rc */), pBuf, iDelta) } -func fts5AppendPoslist(tls *libc.TLS, p uintptr, iDelta I64, pMulti uintptr, pBuf uintptr) { /* sqlite3.c:224580:13: */ +func fts5AppendPoslist(tls *libc.TLS, p uintptr, iDelta I64, pMulti uintptr, pBuf uintptr) { /* sqlite3.c:224592:13: */ var nData int32 = (*Fts5Iter)(unsafe.Pointer(pMulti)).Fbase.FnData var nByte int32 = (((nData + 9) + 9) + FTS5_DATA_ZERO_PADDING) @@ -192392,7 +192441,7 @@ func fts5AppendPoslist(tls *libc.TLS, p uintptr, iDelta I64, pMulti uintptr, pBu } } -func fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:224598:13: */ +func fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:224610:13: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -192424,7 +192473,7 @@ func fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { /* sqlite3.c:224598:13: } } -func fts5DoclistIterInit(tls *libc.TLS, pBuf uintptr, pIter uintptr) { /* sqlite3.c:224627:13: */ +func fts5DoclistIterInit(tls *libc.TLS, pBuf uintptr, pIter uintptr) { /* sqlite3.c:224639:13: */ libc.X__builtin___memset_chk(tls, pIter, 0, uint64(unsafe.Sizeof(Fts5DoclistIter{})), libc.X__builtin_object_size(tls, pIter, 0)) if (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fn > 0 { (*Fts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist = (*Fts5Buffer)(unsafe.Pointer(pBuf)).Fp @@ -192434,13 +192483,13 @@ func fts5DoclistIterInit(tls *libc.TLS, pBuf uintptr, pIter uintptr) { /* sqlite } // Swap the contents of buffer *p1 with that of *p2. -func fts5BufferSwap(tls *libc.TLS, p1 uintptr, p2 uintptr) { /* sqlite3.c:224666:13: */ +func fts5BufferSwap(tls *libc.TLS, p1 uintptr, p2 uintptr) { /* sqlite3.c:224678:13: */ var tmp = *(*Fts5Buffer)(unsafe.Pointer(p1)) *(*Fts5Buffer)(unsafe.Pointer(p1)) = *(*Fts5Buffer)(unsafe.Pointer(p2)) *(*Fts5Buffer)(unsafe.Pointer(p2)) = tmp } -func fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) { /* sqlite3.c:224672:13: */ +func fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) { /* sqlite3.c:224684:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -192457,7 +192506,7 @@ func fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) // This is the equivalent of fts5MergePrefixLists() for detail=none mode. // In this case the buffers consist of a delta-encoded list of rowids only. -func fts5MergeRowidLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224687:13: */ +func fts5MergeRowidLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224699:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -192513,11 +192562,11 @@ type PrefixMerger1 = struct { _ [4]byte FaPos uintptr FpNext uintptr -} /* sqlite3.c:224730:9 */ +} /* sqlite3.c:224742:9 */ -type PrefixMerger = PrefixMerger1 /* sqlite3.c:224730:29 */ +type PrefixMerger = PrefixMerger1 /* sqlite3.c:224742:29 */ -func fts5PrefixMergerInsertByRowid(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224739:13: */ +func fts5PrefixMergerInsertByRowid(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224751:13: */ if (*PrefixMerger)(unsafe.Pointer(p)).Fiter.FaPoslist != 0 { var pp uintptr = ppHead for (*(*uintptr)(unsafe.Pointer(pp)) != 0) && ((*PrefixMerger)(unsafe.Pointer(p)).Fiter.FiRowid > (*PrefixMerger)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pp))))).Fiter.FiRowid) { @@ -192528,7 +192577,7 @@ func fts5PrefixMergerInsertByRowid(tls *libc.TLS, ppHead uintptr, p uintptr) { / } } -func fts5PrefixMergerInsertByPosition(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224753:13: */ +func fts5PrefixMergerInsertByPosition(tls *libc.TLS, ppHead uintptr, p uintptr) { /* sqlite3.c:224765:13: */ if (*PrefixMerger)(unsafe.Pointer(p)).FiPos >= int64(0) { var pp uintptr = ppHead for (*(*uintptr)(unsafe.Pointer(pp)) != 0) && ((*PrefixMerger)(unsafe.Pointer(p)).FiPos > (*PrefixMerger)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(pp))))).FiPos) { @@ -192541,7 +192590,7 @@ func fts5PrefixMergerInsertByPosition(tls *libc.TLS, ppHead uintptr, p uintptr) // Array aBuf[] contains nBuf doclists. These are all merged in with the // doclist in buffer p1. -func fts5MergePrefixLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224772:13: */ +func fts5MergePrefixLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf uintptr) { /* sqlite3.c:224784:13: */ bp := tls.Alloc(1072) defer tls.Free(1072) @@ -192709,7 +192758,7 @@ func fts5MergePrefixLists(tls *libc.TLS, p uintptr, p1 uintptr, nBuf int32, aBuf *(*Fts5Buffer)(unsafe.Pointer(p1)) = *(*Fts5Buffer)(unsafe.Pointer(bp + 1032 /* out */)) } -func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pToken uintptr, nToken int32, pColset uintptr, ppIter uintptr) { /* sqlite3.c:224915:13: */ +func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pToken uintptr, nToken int32, pColset uintptr, ppIter uintptr) { /* sqlite3.c:224927:13: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -192844,7 +192893,7 @@ func fts5SetupPrefixIter(tls *libc.TLS, p uintptr, bDesc int32, iIdx int32, pTok // Indicate that all subsequent calls to sqlite3Fts5IndexWrite() pertain // to the document with rowid iRowid. -func sqlite3Fts5IndexBeginWrite(tls *libc.TLS, p uintptr, bDelete int32, iRowid I64) int32 { /* sqlite3.c:225052:12: */ +func sqlite3Fts5IndexBeginWrite(tls *libc.TLS, p uintptr, bDelete int32, iRowid I64) int32 { /* sqlite3.c:225064:12: */ // Allocate the hash table if it has not already been allocated if (*Fts5Index)(unsafe.Pointer(p)).FpHash == uintptr(0) { @@ -192864,7 +192913,7 @@ func sqlite3Fts5IndexBeginWrite(tls *libc.TLS, p uintptr, bDelete int32, iRowid } // Commit data to disk. -func sqlite3Fts5IndexSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225076:12: */ +func sqlite3Fts5IndexSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225088:12: */ fts5IndexFlush(tls, p) sqlite3Fts5IndexCloseReader(tls, p) @@ -192875,7 +192924,7 @@ func sqlite3Fts5IndexSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225076: // to the database. Additionally, assume that the contents of the %_data // table may have changed on disk. So any in-memory caches of %_data // records must be invalidated. -func sqlite3Fts5IndexRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225089:12: */ +func sqlite3Fts5IndexRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225101:12: */ sqlite3Fts5IndexCloseReader(tls, p) fts5IndexDiscardData(tls, p) fts5StructureInvalidate(tls, p) @@ -192886,7 +192935,7 @@ func sqlite3Fts5IndexRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225 // The %_data table is completely empty when this function is called. This // function populates it with the initial structure objects for each index, // and the initial version of the "averages" record (a zero-byte blob). -func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225102:12: */ +func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225114:12: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -192905,7 +192954,7 @@ func sqlite3Fts5IndexReinit(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:22510 // // If successful, set *pp to point to the new object and return SQLITE_OK. // Otherwise, set *pp to NULL and return an SQLite error code. -func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:225119:12: */ +func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:225131:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -192939,7 +192988,7 @@ func sqlite3Fts5IndexOpen(tls *libc.TLS, pConfig uintptr, bCreate int32, pp uint } // Close a handle opened by an earlier call to sqlite3Fts5IndexOpen(). -func sqlite3Fts5IndexClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225160:12: */ +func sqlite3Fts5IndexClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225172:12: */ var rc int32 = SQLITE_OK if p != 0 { @@ -192960,7 +193009,7 @@ func sqlite3Fts5IndexClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225160 // Argument p points to a buffer containing utf-8 text that is n bytes in // size. Return the number of bytes in the nChar character prefix of the // buffer, or 0 if there are less than nChar characters in total. -func sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nChar int32) int32 { /* sqlite3.c:225183:12: */ +func sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nChar int32) int32 { /* sqlite3.c:225195:12: */ var n int32 = 0 var i int32 for i = 0; i < nChar; i++ { @@ -192987,7 +193036,7 @@ func sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nCh // pIn is a UTF-8 encoded string, nIn bytes in size. Return the number of // unicode characters in the string. -func fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) int32 { /* sqlite3.c:225210:12: */ +func fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) int32 { /* sqlite3.c:225222:12: */ var nChar int32 = 0 var i int32 = 0 for i < nIn { @@ -193009,7 +193058,7 @@ func fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) int32 { /* sqlite3. // If the operation is a delete, it must be called (at least) once for each // unique token in the document with an iCol value less than zero. The iPos // argument is ignored for a delete. -func sqlite3Fts5IndexWrite(tls *libc.TLS, p uintptr, iCol int32, iPos int32, pToken uintptr, nToken int32) int32 { /* sqlite3.c:225232:12: */ +func sqlite3Fts5IndexWrite(tls *libc.TLS, p uintptr, iCol int32, iPos int32, pToken uintptr, nToken int32) int32 { /* sqlite3.c:225244:12: */ var i int32 // Used to iterate through indexes var rc int32 = SQLITE_OK // Return code var pConfig uintptr = (*Fts5Index)(unsafe.Pointer(p)).FpConfig @@ -193033,7 +193082,7 @@ func sqlite3Fts5IndexWrite(tls *libc.TLS, p uintptr, iCol int32, iPos int32, pTo // Open a new iterator to iterate though all rowid that match the // specified token or token prefix. -func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int32, flags int32, pColset uintptr, ppIter uintptr) int32 { /* sqlite3.c:225268:12: */ +func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int32, flags int32, pColset uintptr, ppIter uintptr) int32 { /* sqlite3.c:225280:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -193110,7 +193159,7 @@ func sqlite3Fts5IndexQuery(tls *libc.TLS, p uintptr, pToken uintptr, nToken int3 // Return true if the iterator passed as the only argument is at EOF. // Move to the next matching rowid. -func sqlite3Fts5IterNext(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225352:12: */ +func sqlite3Fts5IterNext(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225364:12: */ var pIter uintptr = pIndexIter fts5MultiIterNext(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex, pIter, 0, int64(0)) @@ -193118,7 +193167,7 @@ func sqlite3Fts5IterNext(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c } // Move to the next matching term/rowid. Used by the fts5vocab module. -func sqlite3Fts5IterNextScan(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225362:12: */ +func sqlite3Fts5IterNextScan(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlite3.c:225374:12: */ var pIter uintptr = pIndexIter var p uintptr = (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex @@ -193138,14 +193187,14 @@ func sqlite3Fts5IterNextScan(tls *libc.TLS, pIndexIter uintptr) int32 { /* sqlit // Move to the next matching rowid that occurs at or after iMatch. The // definition of "at or after" depends on whether this iterator iterates // in ascending or descending rowid order. -func sqlite3Fts5IterNextFrom(tls *libc.TLS, pIndexIter uintptr, iMatch I64) int32 { /* sqlite3.c:225386:12: */ +func sqlite3Fts5IterNextFrom(tls *libc.TLS, pIndexIter uintptr, iMatch I64) int32 { /* sqlite3.c:225398:12: */ var pIter uintptr = pIndexIter fts5MultiIterNextFrom(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex, pIter, iMatch) return fts5IndexReturn(tls, (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex) } // Return the current term. -func sqlite3Fts5IterTerm(tls *libc.TLS, pIndexIter uintptr, pn uintptr) uintptr { /* sqlite3.c:225395:19: */ +func sqlite3Fts5IterTerm(tls *libc.TLS, pIndexIter uintptr, pn uintptr) uintptr { /* sqlite3.c:225407:19: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -193163,7 +193212,7 @@ func sqlite3Fts5IterTerm(tls *libc.TLS, pIndexIter uintptr, pn uintptr) uintptr } // Close an iterator opened by an earlier call to sqlite3Fts5IndexQuery(). -func sqlite3Fts5IterClose(tls *libc.TLS, pIndexIter uintptr) { /* sqlite3.c:225406:13: */ +func sqlite3Fts5IterClose(tls *libc.TLS, pIndexIter uintptr) { /* sqlite3.c:225418:13: */ if pIndexIter != 0 { var pIter uintptr = pIndexIter var pIndex uintptr = (*Fts5Iter)(unsafe.Pointer(pIter)).FpIndex @@ -193176,7 +193225,7 @@ func sqlite3Fts5IterClose(tls *libc.TLS, pIndexIter uintptr) { /* sqlite3.c:2254 // // Parameter anSize must point to an array of size nCol, where nCol is // the number of user defined columns in the FTS table. -func sqlite3Fts5IndexGetAverages(tls *libc.TLS, p uintptr, pnRow uintptr, anSize uintptr) int32 { /* sqlite3.c:225421:12: */ +func sqlite3Fts5IndexGetAverages(tls *libc.TLS, p uintptr, pnRow uintptr, anSize uintptr) int32 { /* sqlite3.c:225433:12: */ var nCol int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Index)(unsafe.Pointer(p)).FpConfig)).FnCol var pData uintptr @@ -193198,7 +193247,7 @@ func sqlite3Fts5IndexGetAverages(tls *libc.TLS, p uintptr, pnRow uintptr, anSize // Replace the current "averages" record with the contents of the buffer // supplied as the second argument. -func sqlite3Fts5IndexSetAverages(tls *libc.TLS, p uintptr, pData uintptr, nData int32) int32 { /* sqlite3.c:225445:12: */ +func sqlite3Fts5IndexSetAverages(tls *libc.TLS, p uintptr, pData uintptr, nData int32) int32 { /* sqlite3.c:225457:12: */ fts5DataWrite(tls, p, int64(FTS5_AVERAGES_ROWID), pData, nData) return fts5IndexReturn(tls, p) @@ -193206,7 +193255,7 @@ func sqlite3Fts5IndexSetAverages(tls *libc.TLS, p uintptr, pData uintptr, nData // Return the total number of blocks this module has read from the %_data // table since it was created. -func sqlite3Fts5IndexReads(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225455:12: */ +func sqlite3Fts5IndexReads(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225467:12: */ return (*Fts5Index)(unsafe.Pointer(p)).FnRead } @@ -193215,7 +193264,7 @@ func sqlite3Fts5IndexReads(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225455 // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* sqlite3.c:225466:12: */ +func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* sqlite3.c:225478:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -193237,7 +193286,7 @@ func sqlite3Fts5IndexSetCookie(tls *libc.TLS, p uintptr, iNew int32) int32 { /* return rc } -func sqlite3Fts5IndexLoadConfig(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225486:12: */ +func sqlite3Fts5IndexLoadConfig(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:225498:12: */ var pStruct uintptr pStruct = fts5StructureRead(tls, p) fts5StructureRelease(tls, pStruct) @@ -193251,7 +193300,7 @@ func sqlite3Fts5IndexLoadConfig(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:2 // functionality. // Return a simple checksum value based on the arguments. -func sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid I64, iCol int32, iPos int32, iIdx int32, pTerm uintptr, nTerm int32) U64 { /* sqlite3.c:225503:12: */ +func sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid I64, iCol int32, iPos int32, iIdx int32, pTerm uintptr, nTerm int32) U64 { /* sqlite3.c:225515:12: */ var i int32 var ret U64 = U64(iRowid) ret = ret + ((ret << 3) + U64(iCol)) @@ -193271,7 +193320,7 @@ func sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid I64, iCol int32, iPos int3 // contain zero terms. // 2) All leaves of pSeg between iNoRowid and iLast (inclusive) exist and // contain zero rowids. -func fts5IndexIntegrityCheckEmpty(tls *libc.TLS, p uintptr, pSeg uintptr, iFirst int32, iNoRowid int32, iLast int32) { /* sqlite3.c:225721:13: */ +func fts5IndexIntegrityCheckEmpty(tls *libc.TLS, p uintptr, pSeg uintptr, iFirst int32, iNoRowid int32, iLast int32) { /* sqlite3.c:225733:13: */ var i int32 // Now check that the iter.nEmpty leaves following the current leaf @@ -193290,7 +193339,7 @@ func fts5IndexIntegrityCheckEmpty(tls *libc.TLS, p uintptr, pSeg uintptr, iFirst } } -func fts5IntegrityCheckPgidx(tls *libc.TLS, p uintptr, pLeaf uintptr) { /* sqlite3.c:225742:13: */ +func fts5IntegrityCheckPgidx(tls *libc.TLS, p uintptr, pLeaf uintptr) { /* sqlite3.c:225754:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -193349,7 +193398,7 @@ func fts5IntegrityCheckPgidx(tls *libc.TLS, p uintptr, pLeaf uintptr) { /* sqlit sqlite3Fts5BufferFree(tls, bp+32 /* &buf2 */) } -func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* sqlite3.c:225792:13: */ +func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* sqlite3.c:225804:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -193518,7 +193567,7 @@ func fts5IndexIntegrityCheckSegment(tls *libc.TLS, p uintptr, pSeg uintptr) { /* // checksum does not match. Return SQLITE_OK if all checks pass without // error, or some other SQLite error code if another error (e.g. OOM) // occurs. -func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCksum int32) int32 { /* sqlite3.c:225937:12: */ +func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCksum int32) int32 { /* sqlite3.c:225949:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -193602,7 +193651,7 @@ func sqlite3Fts5IndexIntegrityCheck(tls *libc.TLS, p uintptr, cksum U64, bUseCks // Decode a segment-data rowid from the %_data table. This function is // the opposite of macro FTS5_SEGMENT_ROWID(). -func fts5DecodeRowid(tls *libc.TLS, iRowid I64, piSegid uintptr, pbDlidx uintptr, piHeight uintptr, piPgno uintptr) { /* sqlite3.c:226029:13: */ +func fts5DecodeRowid(tls *libc.TLS, iRowid I64, piSegid uintptr, pbDlidx uintptr, piHeight uintptr, piPgno uintptr) { /* sqlite3.c:226041:13: */ *(*int32)(unsafe.Pointer(piPgno)) = (int32(iRowid & ((I64(int64(1)) << FTS5_DATA_PAGE_B) - int64(1)))) iRowid >>= FTS5_DATA_PAGE_B @@ -193615,7 +193664,7 @@ func fts5DecodeRowid(tls *libc.TLS, iRowid I64, piSegid uintptr, pbDlidx uintptr *(*int32)(unsafe.Pointer(piSegid)) = (int32(iRowid & ((I64(int64(1)) << FTS5_DATA_ID_B) - int64(1)))) } -func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sqlite3.c:226048:13: */ +func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sqlite3.c:226060:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -193646,7 +193695,7 @@ func fts5DebugRowid(tls *libc.TLS, pRc uintptr, pBuf uintptr, iKey I64) { /* sql } } -func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { /* sqlite3.c:226066:13: */ +func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { /* sqlite3.c:226078:13: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -193671,7 +193720,7 @@ func fts5DebugStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, p uintptr) { / // Arguments pBlob/nBlob contain a serialized Fts5Structure object. This // function appends a human-readable representation of the same object // to the buffer passed as the second argument. -func fts5DecodeStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226095:13: */ +func fts5DecodeStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226107:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -193693,7 +193742,7 @@ func fts5DecodeStructure(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr // Arguments pBlob/nBlob contain an "averages" record. This function // appends a human-readable representation of record to the buffer passed // as the second argument. -func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226120:13: */ +func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, nBlob int32) { /* sqlite3.c:226132:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -193714,7 +193763,7 @@ func fts5DecodeAverages(tls *libc.TLS, pRc uintptr, pBuf uintptr, pBlob uintptr, // after either the input buffer is exhausted or a 0 value is read. // // The return value is the number of bytes read from the input buffer. -func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226143:12: */ +func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226155:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -193734,7 +193783,7 @@ func fts5DecodePoslist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in // pBuf. // // The return value is the number of bytes read from the input buffer. -func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226161:12: */ +func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n int32) int32 { /* sqlite3.c:226173:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -193786,7 +193835,7 @@ func fts5DecodeDoclist(tls *libc.TLS, pRc uintptr, pBuf uintptr, a uintptr, n in // no-op. If an OOM or other error occurs within this function, *pRc is // set to an SQLite error code before returning. The final state of buffer // pBuf is undefined in this case. -func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr, nData int32) { /* sqlite3.c:226199:13: */ +func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr, nData int32) { /* sqlite3.c:226211:13: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -193815,7 +193864,7 @@ func fts5DecodeRowidList(tls *libc.TLS, pRc uintptr, pBuf uintptr, pData uintptr } // The implementation of user-defined scalar function fts5_decode(). -func fts5DecodeFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226230:13: */ +func fts5DecodeFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226242:13: */ bp := tls.Alloc(192) defer tls.Free(192) @@ -194162,7 +194211,7 @@ __41: } // The implementation of user-defined scalar function fts5_rowid(). -func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226439:13: */ +func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { /* sqlite3.c:226451:13: */ var zArg uintptr if nArg == 0 { Xsqlite3_result_error(tls, pCtx, ts+40140 /* "should be: fts5_..." */, -1) @@ -194194,7 +194243,7 @@ func fts5RowidFunction(tls *libc.TLS, pCtx uintptr, nArg int32, apVal uintptr) { // // If successful, SQLITE_OK is returned. If an error occurs, some other // SQLite error code is returned instead. -func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:226478:12: */ +func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:226490:12: */ var rc int32 = Xsqlite3_create_function(tls, db, ts+40276 /* "fts5_decode" */, 2, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, uintptr) @@ -194217,7 +194266,7 @@ func sqlite3Fts5IndexInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:226478 return rc } -func sqlite3Fts5IndexReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:226499:12: */ +func sqlite3Fts5IndexReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:226511:12: */ if fts5IndexDataVersion(tls, p) != (*Fts5Index)(unsafe.Pointer(p)).FiStructVersion { fts5StructureInvalidate(tls, p) @@ -194244,16 +194293,16 @@ func sqlite3Fts5IndexReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:226499 // structures should not be corrupt. Otherwise, true. If it is false, extra // assert() conditions in the fts5 code are activated - conditions that are // only true if it is guaranteed that the fts5 database is not corrupt. -var Xsqlite3_fts5_may_be_corrupt int32 = 1 /* sqlite3.c:226531:16 */ +var Xsqlite3_fts5_may_be_corrupt int32 = 1 /* sqlite3.c:226543:16 */ type Fts5Auxdata1 = struct { FpAux uintptr FpPtr uintptr FxDelete uintptr FpNext uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Auxdata = Fts5Auxdata1 /* sqlite3.c:226534:28 */ +type Fts5Auxdata = Fts5Auxdata1 /* sqlite3.c:226546:28 */ type Fts5Auxiliary1 = struct { FpGlobal uintptr FzFunc uintptr @@ -194261,9 +194310,9 @@ type Fts5Auxiliary1 = struct { FxFunc Fts5_extension_function FxDestroy uintptr FpNext uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Auxiliary = Fts5Auxiliary1 /* sqlite3.c:226535:30 */ +type Fts5Auxiliary = Fts5Auxiliary1 /* sqlite3.c:226547:30 */ type Fts5Cursor1 = struct { Fbase Sqlite3_vtab_cursor FpNext uintptr @@ -194292,35 +194341,35 @@ type Fts5Cursor1 = struct { FnInstAlloc int32 FnInstCount int32 FaInst uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Cursor = Fts5Cursor1 /* sqlite3.c:226536:27 */ +type Fts5Cursor = Fts5Cursor1 /* sqlite3.c:226548:27 */ type Fts5FullTable1 = struct { Fp Fts5Table FpStorage uintptr FpGlobal uintptr FpSortCsr uintptr -} /* sqlite3.c:226537:9 */ +} /* sqlite3.c:226549:9 */ -type Fts5FullTable = Fts5FullTable1 /* sqlite3.c:226537:30 */ +type Fts5FullTable = Fts5FullTable1 /* sqlite3.c:226549:30 */ type Fts5Sorter1 = struct { FpStmt uintptr FiRowid I64 FaPoslist uintptr FnIdx int32 FaIdx [1]int32 -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5Sorter = Fts5Sorter1 /* sqlite3.c:226538:27 */ +type Fts5Sorter = Fts5Sorter1 /* sqlite3.c:226550:27 */ type Fts5TokenizerModule1 = struct { FzName uintptr FpUserData uintptr Fx Fts5_tokenizer FxDestroy uintptr FpNext uintptr -} /* sqlite3.c:211872:9 */ +} /* sqlite3.c:211884:9 */ -type Fts5TokenizerModule = Fts5TokenizerModule1 /* sqlite3.c:226539:36 */ +type Fts5TokenizerModule = Fts5TokenizerModule1 /* sqlite3.c:226551:36 */ // NOTES ON TRANSACTIONS: // @@ -194354,21 +194403,21 @@ type Fts5TokenizerModule = Fts5TokenizerModule1 /* sqlite3.c:226539:36 */ type Fts5TransactionState = struct { FeState int32 FiSavepoint int32 -} /* sqlite3.c:226572:1 */ +} /* sqlite3.c:226584:1 */ type Fts5MatchPhrase = struct { FpPoslist uintptr FnTerm int32 _ [4]byte -} /* sqlite3.c:226629:1 */ +} /* sqlite3.c:226641:1 */ // Return true if pTab is a contentless table. -func fts5IsContentless(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:226813:12: */ +func fts5IsContentless(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:226825:12: */ return (libc.Bool32((*Fts5Config)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig)).FeContent == FTS5_CONTENT_NONE)) } // Delete a virtual table handle allocated by fts5InitVtab(). -func fts5FreeVtab(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:226820:13: */ +func fts5FreeVtab(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:226832:13: */ if pTab != 0 { sqlite3Fts5IndexClose(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex) sqlite3Fts5StorageClose(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) @@ -194378,13 +194427,13 @@ func fts5FreeVtab(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:226820:13: */ } // The xDisconnect() virtual table method. -func fts5DisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226832:12: */ +func fts5DisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226844:12: */ fts5FreeVtab(tls, pVtab) return SQLITE_OK } // The xDestroy() virtual table method. -func fts5DestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226840:12: */ +func fts5DestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226852:12: */ var pTab uintptr = pVtab var rc int32 = sqlite3Fts5DropAll(tls, (*Fts5Table)(unsafe.Pointer(pTab)).FpConfig) if rc == SQLITE_OK { @@ -194402,7 +194451,7 @@ func fts5DestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:226840 // argv[1] -> database name // argv[2] -> table name // argv[...] -> "column name" and other module argument fields. -func fts5InitVtab(tls *libc.TLS, bCreate int32, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226860:12: */ +func fts5InitVtab(tls *libc.TLS, bCreate int32, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226872:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -194460,11 +194509,11 @@ func fts5InitVtab(tls *libc.TLS, bCreate int32, db uintptr, pAux uintptr, argc i // The xConnect() and xCreate() methods for the virtual table. All the // work is done in function fts5InitVtab(). -func fts5ConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226926:12: */ +func fts5ConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226938:12: */ return fts5InitVtab(tls, 0, db, pAux, argc, argv, ppVtab, pzErr) } -func fts5CreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226936:12: */ +func fts5CreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:226948:12: */ return fts5InitVtab(tls, 1, db, pAux, argc, argv, ppVtab, pzErr) } @@ -194473,14 +194522,14 @@ func fts5CreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv // Set the SQLITE_INDEX_SCAN_UNIQUE flag in pIdxInfo->flags. Unless this // extension is currently being used by a version of SQLite too old to // support index-info flags. In that case this function is a no-op. -func fts5SetUniqueFlag(tls *libc.TLS, pIdxInfo uintptr) { /* sqlite3.c:226962:13: */ +func fts5SetUniqueFlag(tls *libc.TLS, pIdxInfo uintptr) { /* sqlite3.c:226974:13: */ { *(*int32)(unsafe.Pointer(pIdxInfo + 80 /* &.idxFlags */)) |= (SQLITE_INDEX_SCAN_UNIQUE) } } -func fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) int32 { /* sqlite3.c:226973:12: */ +func fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) int32 { /* sqlite3.c:226985:12: */ if ((*Fts5Config)(unsafe.Pointer(pConfig)).FePattern == FTS5_PATTERN_GLOB) && (int32((*sqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == FTS5_PATTERN_GLOB) { return 1 @@ -194551,7 +194600,7 @@ func fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) int32 { /* s // * An == rowid constraint: cost=10.0 // // Costs are not modified by the ORDER BY clause. -func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* sqlite3.c:227051:12: */ +func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* sqlite3.c:227063:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -194713,7 +194762,7 @@ func fts5BestIndexMethod(tls *libc.TLS, pVTab uintptr, pInfo uintptr) int32 { /* return SQLITE_OK } -func fts5NewTransaction(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:227186:12: */ +func fts5NewTransaction(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:227198:12: */ var pCsr uintptr for pCsr = (*Fts5Global)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).FpGlobal)).FpCsr; pCsr != 0; pCsr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpNext { if (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab == pTab { @@ -194724,7 +194773,7 @@ func fts5NewTransaction(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:227186 } // Implementation of xOpen method. -func fts5OpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:227197:12: */ +func fts5OpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:227209:12: */ var pTab uintptr = pVTab var pConfig uintptr = (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig var pCsr uintptr = uintptr(0) // New cursor object @@ -194750,7 +194799,7 @@ func fts5OpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqli return rc } -func fts5StmtType(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227223:12: */ +func fts5StmtType(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227235:12: */ if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan == FTS5_PLAN_SCAN { if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FbDesc != 0 { return FTS5_STMT_SCAN_DESC @@ -194763,11 +194812,11 @@ func fts5StmtType(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227223:12: * // This function is called after the cursor passed as the only argument // is moved to point at a different row. It clears all cached data // specific to the previous row stored by the cursor object. -func fts5CsrNewrow(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227235:13: */ +func fts5CsrNewrow(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227247:13: */ *(*int32)(unsafe.Pointer(pCsr + 80 /* &.csrflags */)) |= (((FTS5CSR_REQUIRE_CONTENT | FTS5CSR_REQUIRE_DOCSIZE) | FTS5CSR_REQUIRE_INST) | FTS5CSR_REQUIRE_POSLIST) } -func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227244:13: */ +func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227256:13: */ var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab var pData uintptr var pNext uintptr @@ -194810,7 +194859,7 @@ func fts5FreeCursorComponents(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:227244 // Close the cursor. For additional information see the documentation // on the xClose method of the virtual table interface. -func fts5CloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227288:12: */ +func fts5CloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227300:12: */ if pCursor != 0 { var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var pCsr uintptr = pCursor @@ -194827,7 +194876,7 @@ func fts5CloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227288 return SQLITE_OK } -func fts5SorterNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227304:12: */ +func fts5SorterNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227316:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -194871,7 +194920,7 @@ func fts5SorterNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227304:12: // Set the FTS5CSR_REQUIRE_RESEEK flag on all FTS5_PLAN_MATCH cursors // open on table pTab. -func fts5TripCursors(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:227347:13: */ +func fts5TripCursors(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:227359:13: */ var pCsr uintptr for pCsr = (*Fts5Global)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).FpGlobal)).FpCsr; pCsr != 0; pCsr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpNext { if ((*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan == FTS5_PLAN_MATCH) && @@ -194891,7 +194940,7 @@ func fts5TripCursors(tls *libc.TLS, pTab uintptr) { /* sqlite3.c:227347:13: */ // // Return SQLITE_OK if successful or if no reseek was required, or an // error code if an error occurred. -func fts5CursorReseek(tls *libc.TLS, pCsr uintptr, pbSkip uintptr) int32 { /* sqlite3.c:227370:12: */ +func fts5CursorReseek(tls *libc.TLS, pCsr uintptr, pbSkip uintptr) int32 { /* sqlite3.c:227382:12: */ var rc int32 = SQLITE_OK if ((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_REQUIRE_RESEEK)) != 0 { @@ -194920,7 +194969,7 @@ func fts5CursorReseek(tls *libc.TLS, pCsr uintptr, pbSkip uintptr) int32 { /* sq // Return SQLITE_OK if nothing goes wrong. SQLITE_OK is returned // even if we reach end-of-file. The fts5EofMethod() will be called // subsequently to determine whether or not an EOF was hit. -func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227402:12: */ +func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227414:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -194979,7 +195028,7 @@ func fts5NextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227402: return rc } -func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:227455:12: */ +func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt uintptr, va uintptr) int32 { /* sqlite3.c:227467:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -195007,7 +195056,7 @@ func fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt u return rc } -func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227484:12: */ +func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227496:12: */ bp := tls.Alloc(56) defer tls.Free(56) @@ -195074,7 +195123,7 @@ func fts5CursorFirstSorted(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int3 return rc } -func fts5CursorFirst(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227536:12: */ +func fts5CursorFirst(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int32 { /* sqlite3.c:227548:12: */ var rc int32 var pExpr uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpExpr rc = sqlite3Fts5ExprFirst(tls, pExpr, (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiFirstRowid, bDesc) @@ -195089,7 +195138,7 @@ func fts5CursorFirst(tls *libc.TLS, pTab uintptr, pCsr uintptr, bDesc int32) int // MATCH expression that begins with a '*' character. The remainder of // the text passed to the MATCH operator are used as the special query // parameters. -func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) int32 { /* sqlite3.c:227553:12: */ +func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) int32 { /* sqlite3.c:227565:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -195121,7 +195170,7 @@ func fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) // Search for an auxiliary function named zName that can be used with table // pTab. If one is found, return a pointer to the corresponding Fts5Auxiliary // structure. Otherwise, if no such function exists, return NULL. -func fts5FindAuxiliary(tls *libc.TLS, pTab uintptr, zName uintptr) uintptr { /* sqlite3.c:227588:22: */ +func fts5FindAuxiliary(tls *libc.TLS, pTab uintptr, zName uintptr) uintptr { /* sqlite3.c:227600:22: */ var pAux uintptr for pAux = (*Fts5Global)(unsafe.Pointer((*Fts5FullTable)(unsafe.Pointer(pTab)).FpGlobal)).FpAux; pAux != 0; pAux = (*Fts5Auxiliary)(unsafe.Pointer(pAux)).FpNext { @@ -195134,7 +195183,7 @@ func fts5FindAuxiliary(tls *libc.TLS, pTab uintptr, zName uintptr) uintptr { /* return uintptr(0) } -func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227600:12: */ +func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:227612:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -195187,7 +195236,7 @@ func fts5FindRankFunction(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:2276 return *(*int32)(unsafe.Pointer(bp + 16 /* rc */)) } -func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uintptr) int32 { /* sqlite3.c:227651:12: */ +func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uintptr) int32 { /* sqlite3.c:227663:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -195224,7 +195273,7 @@ func fts5CursorParseRank(tls *libc.TLS, pConfig uintptr, pCsr uintptr, pRank uin return rc } -func fts5GetRowidLimit(tls *libc.TLS, pVal uintptr, iDefault I64) I64 { /* sqlite3.c:227688:12: */ +func fts5GetRowidLimit(tls *libc.TLS, pVal uintptr, iDefault I64) I64 { /* sqlite3.c:227700:12: */ if pVal != 0 { var eType int32 = Xsqlite3_value_numeric_type(tls, pVal) if eType == SQLITE_INTEGER { @@ -195243,7 +195292,7 @@ func fts5GetRowidLimit(tls *libc.TLS, pVal uintptr, iDefault I64) I64 { /* sqlit // 1. Full-text search using a MATCH operator. // 2. A by-rowid lookup. // 3. A full-table scan. -func fts5FilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, nVal int32, apVal uintptr) int32 { /* sqlite3.c:227709:12: */ +func fts5FilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, idxStr uintptr, nVal int32, apVal uintptr) int32 { /* sqlite3.c:227721:12: */ bp := tls.Alloc(16) defer tls.Free(16) @@ -195563,7 +195612,7 @@ filter_out: // This is the xEof method of the virtual table. SQLite calls this // routine to find out if it has reached the end of a result set. -func fts5EofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227901:12: */ +func fts5EofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227913:12: */ var pCsr uintptr = pCursor return func() int32 { if ((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_EOF)) != 0 { @@ -195574,7 +195623,7 @@ func fts5EofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:227901:1 } // Return the rowid that the cursor currently points to. -func fts5CursorRowid(tls *libc.TLS, pCsr uintptr) I64 { /* sqlite3.c:227909:12: */ +func fts5CursorRowid(tls *libc.TLS, pCsr uintptr) I64 { /* sqlite3.c:227921:12: */ if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpSorter != 0 { return (*Fts5Sorter)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).FpSorter)).FiRowid @@ -195588,7 +195637,7 @@ func fts5CursorRowid(tls *libc.TLS, pCsr uintptr) I64 { /* sqlite3.c:227909:12: // retrieve the rowid for the current row of the result set. fts5 // exposes %_content.rowid as the rowid for the virtual table. The // rowid should be written to *pRowid. -func fts5RowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:227927:12: */ +func fts5RowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:227939:12: */ var pCsr uintptr = pCursor var ePlan int32 = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FePlan @@ -195618,7 +195667,7 @@ func fts5RowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* // // If argument bErrormsg is true and an error occurs, an error message may // be left in sqlite3_vtab.zErrMsg. -func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sqlite3.c:227958:12: */ +func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sqlite3.c:227970:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -195662,7 +195711,7 @@ func fts5SeekCursor(tls *libc.TLS, pCsr uintptr, bErrormsg int32) int32 { /* sql return rc } -func fts5SetVtabError(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:227997:13: */ +func fts5SetVtabError(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) { /* sqlite3.c:228009:13: */ var ap Va_list _ = ap // ... printf arguments ap = va @@ -195684,7 +195733,7 @@ func fts5SetVtabError(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) { / // The commands implemented by this function are documented in the "Special // INSERT Directives" section of the documentation. It should be updated if // more commands are added to this function. -func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) int32 { /* sqlite3.c:228020:12: */ +func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) int32 { /* sqlite3.c:228032:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -195733,7 +195782,7 @@ func fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) return rc } -func fts5SpecialDelete(tls *libc.TLS, pTab uintptr, apVal uintptr) int32 { /* sqlite3.c:228076:12: */ +func fts5SpecialDelete(tls *libc.TLS, pTab uintptr, apVal uintptr) int32 { /* sqlite3.c:228088:12: */ var rc int32 = SQLITE_OK var eType1 int32 = Xsqlite3_value_type(tls, *(*uintptr)(unsafe.Pointer(apVal + 1*8))) if eType1 == SQLITE_INTEGER { @@ -195743,7 +195792,7 @@ func fts5SpecialDelete(tls *libc.TLS, pTab uintptr, apVal uintptr) int32 { /* sq return rc } -func fts5StorageInsert(tls *libc.TLS, pRc uintptr, pTab uintptr, apVal uintptr, piRowid uintptr) { /* sqlite3.c:228089:13: */ +func fts5StorageInsert(tls *libc.TLS, pRc uintptr, pTab uintptr, apVal uintptr, piRowid uintptr) { /* sqlite3.c:228101:13: */ var rc int32 = *(*int32)(unsafe.Pointer(pRc)) if rc == SQLITE_OK { rc = sqlite3Fts5StorageContentInsert(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, apVal, piRowid) @@ -195766,7 +195815,7 @@ func fts5StorageInsert(tls *libc.TLS, pRc uintptr, pTab uintptr, apVal uintptr, // 2. The "new" rowid. // 3. Values for each of the nCol matchable columns. // 4. Values for the two hidden columns ( and "rank"). -func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, pRowid uintptr) int32 { /* sqlite3.c:228119:12: */ +func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, pRowid uintptr) int32 { /* sqlite3.c:228131:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -195868,7 +195917,7 @@ func fts5UpdateMethod(tls *libc.TLS, pVtab uintptr, nArg int32, apVal uintptr, p } // Implementation of xSync() method. -func fts5SyncMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228245:12: */ +func fts5SyncMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228257:12: */ var rc int32 var pTab uintptr = pVtab @@ -195880,7 +195929,7 @@ func fts5SyncMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228245:12 } // Implementation of xBegin() method. -func fts5BeginMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228259:12: */ +func fts5BeginMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228271:12: */ fts5NewTransaction(tls, pVtab) return SQLITE_OK @@ -195889,7 +195938,7 @@ func fts5BeginMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228259:1 // Implementation of xCommit() method. This is a no-op. The contents of // the pending-terms hash-table have already been flushed into the database // by fts5SyncMethod(). -func fts5CommitMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228270:12: */ +func fts5CommitMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228282:12: */ _ = pVtab // Call below is a no-op for NDEBUG builds return SQLITE_OK @@ -195897,7 +195946,7 @@ func fts5CommitMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228270: // Implementation of xRollback(). Discard the contents of the pending-terms // hash-table. Any changes made to the database are reverted by SQLite. -func fts5RollbackMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228280:12: */ +func fts5RollbackMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:228292:12: */ var rc int32 var pTab uintptr = pVtab @@ -195905,46 +195954,46 @@ func fts5RollbackMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:22828 return rc } -func fts5ApiUserData(tls *libc.TLS, pCtx uintptr) uintptr { /* sqlite3.c:228290:13: */ +func fts5ApiUserData(tls *libc.TLS, pCtx uintptr) uintptr { /* sqlite3.c:228302:13: */ var pCsr uintptr = pCtx return (*Fts5Auxiliary)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux)).FpUserData } -func fts5ApiColumnCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228295:12: */ +func fts5ApiColumnCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228307:12: */ var pCsr uintptr = pCtx return (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer((*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab)).FpConfig)).FnCol } -func fts5ApiColumnTotalSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228300:12: */ +func fts5ApiColumnTotalSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228312:12: */ var pCsr uintptr = pCtx var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab return sqlite3Fts5StorageSize(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, iCol, pnToken) } -func fts5ApiRowCount(tls *libc.TLS, pCtx uintptr, pnRow uintptr) int32 { /* sqlite3.c:228310:12: */ +func fts5ApiRowCount(tls *libc.TLS, pCtx uintptr, pnRow uintptr) int32 { /* sqlite3.c:228322:12: */ var pCsr uintptr = pCtx var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab return sqlite3Fts5StorageRowCount(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, pnRow) } -func fts5ApiTokenize(tls *libc.TLS, pCtx uintptr, pText uintptr, nText int32, pUserData uintptr, xToken uintptr) int32 { /* sqlite3.c:228316:12: */ +func fts5ApiTokenize(tls *libc.TLS, pCtx uintptr, pText uintptr, nText int32, pUserData uintptr, xToken uintptr) int32 { /* sqlite3.c:228328:12: */ var pCsr uintptr = pCtx var pTab uintptr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab return sqlite3Fts5Tokenize(tls, (*Fts5Table)(unsafe.Pointer(pTab)).FpConfig, FTS5_TOKENIZE_AUX, pText, nText, pUserData, xToken) } -func fts5ApiPhraseCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228329:12: */ +func fts5ApiPhraseCount(tls *libc.TLS, pCtx uintptr) int32 { /* sqlite3.c:228341:12: */ var pCsr uintptr = pCtx return sqlite3Fts5ExprPhraseCount(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpExpr) } -func fts5ApiPhraseSize(tls *libc.TLS, pCtx uintptr, iPhrase int32) int32 { /* sqlite3.c:228334:12: */ +func fts5ApiPhraseSize(tls *libc.TLS, pCtx uintptr, iPhrase int32) int32 { /* sqlite3.c:228346:12: */ var pCsr uintptr = pCtx return sqlite3Fts5ExprPhraseSize(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpExpr, iPhrase) } -func fts5ApiColumnText(tls *libc.TLS, pCtx uintptr, iCol int32, pz uintptr, pn uintptr) int32 { /* sqlite3.c:228339:12: */ +func fts5ApiColumnText(tls *libc.TLS, pCtx uintptr, iCol int32, pz uintptr, pn uintptr) int32 { /* sqlite3.c:228351:12: */ var rc int32 = SQLITE_OK var pCsr uintptr = pCtx if (fts5IsContentless(tls, (*Fts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab) != 0) || @@ -195961,7 +196010,7 @@ func fts5ApiColumnText(tls *libc.TLS, pCtx uintptr, iCol int32, pz uintptr, pn u return rc } -func fts5CsrPoslist(tls *libc.TLS, pCsr uintptr, iPhrase int32, pa uintptr, pn uintptr) int32 { /* sqlite3.c:228362:12: */ +func fts5CsrPoslist(tls *libc.TLS, pCsr uintptr, iPhrase int32, pa uintptr, pn uintptr) int32 { /* sqlite3.c:228374:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -196018,7 +196067,7 @@ func fts5CsrPoslist(tls *libc.TLS, pCsr uintptr, iPhrase int32, pa uintptr, pn u // Ensure that the Fts5Cursor.nInstCount and aInst[] variables are populated // correctly for the current view. Return SQLITE_OK if successful, or an // SQLite error code otherwise. -func fts5CacheInstArray(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:228414:12: */ +func fts5CacheInstArray(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:228426:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -196100,7 +196149,7 @@ func fts5CacheInstArray(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:228414 return *(*int32)(unsafe.Pointer(bp /* rc */)) } -func fts5ApiInstCount(tls *libc.TLS, pCtx uintptr, pnInst uintptr) int32 { /* sqlite3.c:228486:12: */ +func fts5ApiInstCount(tls *libc.TLS, pCtx uintptr, pnInst uintptr) int32 { /* sqlite3.c:228498:12: */ var pCsr uintptr = pCtx var rc int32 = SQLITE_OK if (((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_REQUIRE_INST)) == 0) || @@ -196110,7 +196159,7 @@ func fts5ApiInstCount(tls *libc.TLS, pCtx uintptr, pnInst uintptr) int32 { /* sq return rc } -func fts5ApiInst(tls *libc.TLS, pCtx uintptr, iIdx int32, piPhrase uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228496:12: */ +func fts5ApiInst(tls *libc.TLS, pCtx uintptr, iIdx int32, piPhrase uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228508:12: */ var pCsr uintptr = pCtx var rc int32 = SQLITE_OK if (((*Fts5Cursor)(unsafe.Pointer((pCsr))).Fcsrflags & (FTS5CSR_REQUIRE_INST)) == 0) || @@ -196126,11 +196175,11 @@ func fts5ApiInst(tls *libc.TLS, pCtx uintptr, iIdx int32, piPhrase uintptr, piCo return rc } -func fts5ApiRowid(tls *libc.TLS, pCtx uintptr) Sqlite3_int64 { /* sqlite3.c:228525:22: */ +func fts5ApiRowid(tls *libc.TLS, pCtx uintptr) Sqlite3_int64 { /* sqlite3.c:228537:22: */ return fts5CursorRowid(tls, pCtx) } -func fts5ColumnSizeCb(tls *libc.TLS, pContext uintptr, tflags int32, pUnused uintptr, nUnused int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:228529:12: */ +func fts5ColumnSizeCb(tls *libc.TLS, pContext uintptr, tflags int32, pUnused uintptr, nUnused int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:228541:12: */ var pCnt uintptr = pContext _ = pUnused _ = nUnused @@ -196142,7 +196191,7 @@ func fts5ColumnSizeCb(tls *libc.TLS, pContext uintptr, tflags int32, pUnused uin return SQLITE_OK } -func fts5ApiColumnSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228546:12: */ +func fts5ApiColumnSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:228558:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -196200,7 +196249,7 @@ func fts5ApiColumnSize(tls *libc.TLS, pCtx uintptr, iCol int32, pnToken uintptr) } // Implementation of the xSetAuxdata() method. -func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintptr) int32 { /* sqlite3.c:228599:12: */ +func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintptr) int32 { /* sqlite3.c:228611:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -196238,7 +196287,7 @@ func fts5ApiSetAuxdata(tls *libc.TLS, pCtx uintptr, pPtr uintptr, xDelete uintpt return SQLITE_OK } -func fts5ApiGetAuxdata(tls *libc.TLS, pCtx uintptr, bClear int32) uintptr { /* sqlite3.c:228634:13: */ +func fts5ApiGetAuxdata(tls *libc.TLS, pCtx uintptr, bClear int32) uintptr { /* sqlite3.c:228646:13: */ var pCsr uintptr = pCtx var pData uintptr var pRet uintptr = uintptr(0) @@ -196260,7 +196309,7 @@ func fts5ApiGetAuxdata(tls *libc.TLS, pCtx uintptr, bClear int32) uintptr { /* s return pRet } -func fts5ApiPhraseNext(tls *libc.TLS, pUnused uintptr, pIter uintptr, piCol uintptr, piOff uintptr) { /* sqlite3.c:228654:13: */ +func fts5ApiPhraseNext(tls *libc.TLS, pUnused uintptr, pIter uintptr, piCol uintptr, piOff uintptr) { /* sqlite3.c:228666:13: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -196282,7 +196331,7 @@ func fts5ApiPhraseNext(tls *libc.TLS, pUnused uintptr, pIter uintptr, piCol uint } } -func fts5ApiPhraseFirst(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228676:12: */ +func fts5ApiPhraseFirst(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr, piOff uintptr) int32 { /* sqlite3.c:228688:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -196305,7 +196354,7 @@ func fts5ApiPhraseFirst(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintpt return rc } -func fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol uintptr) { /* sqlite3.c:228695:13: */ +func fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol uintptr) { /* sqlite3.c:228707:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -196338,7 +196387,7 @@ func fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol u } } -func fts5ApiPhraseFirstColumn(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr) int32 { /* sqlite3.c:228725:12: */ +func fts5ApiPhraseFirstColumn(tls *libc.TLS, pCtx uintptr, iPhrase int32, pIter uintptr, piCol uintptr) int32 { /* sqlite3.c:228737:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -196419,10 +196468,10 @@ var sFts5Api = Fts5ExtensionApi{ FxPhraseNext: 0, FxPhraseFirstColumn: 0, FxPhraseNextColumn: 0, -} /* sqlite3.c:228775:31 */ +} /* sqlite3.c:228787:31 */ // Implementation of API function xQueryPhrase(). -func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData uintptr, xCallback uintptr) int32 { /* sqlite3.c:228801:12: */ +func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData uintptr, xCallback uintptr) int32 { /* sqlite3.c:228813:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -196456,14 +196505,14 @@ func fts5ApiQueryPhrase(tls *libc.TLS, pCtx uintptr, iPhrase int32, pUserData ui return rc } -func fts5ApiInvoke(tls *libc.TLS, pAux uintptr, pCsr uintptr, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228838:13: */ +func fts5ApiInvoke(tls *libc.TLS, pAux uintptr, pCsr uintptr, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228850:13: */ (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = pAux (*(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr))(unsafe.Pointer((pAux + 24 /* &.xFunc */))))(tls, uintptr(unsafe.Pointer(&sFts5Api)), pCsr, context, argc, argv) (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpAux = uintptr(0) } -func fts5CursorFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228851:19: */ +func fts5CursorFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228863:19: */ var pCsr uintptr for pCsr = (*Fts5Global)(unsafe.Pointer(pGlobal)).FpCsr; pCsr != 0; pCsr = (*Fts5Cursor)(unsafe.Pointer(pCsr)).FpNext { if (*Fts5Cursor)(unsafe.Pointer(pCsr)).FiCsrId == iCsrId { @@ -196473,7 +196522,7 @@ func fts5CursorFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { / return pCsr } -func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228859:13: */ +func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* sqlite3.c:228871:13: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -196496,7 +196545,7 @@ func fts5ApiCallback(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { // Given cursor id iId, return a pointer to the corresponding Fts5Table // object. Or NULL If the cursor id does not exist. -func sqlite3Fts5TableFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228888:18: */ +func sqlite3Fts5TableFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintptr { /* sqlite3.c:228900:18: */ var pCsr uintptr pCsr = fts5CursorFromCsrid(tls, pGlobal, iCsrId) if pCsr != 0 { @@ -196518,7 +196567,7 @@ func sqlite3Fts5TableFromCsrid(tls *libc.TLS, pGlobal uintptr, iCsrId I64) uintp // for phrase 0. The second (same disclaimer) contains the size of position // list 1. And so on. There is no size field for the final position list, // as it can be derived from the total size of the blob. -func fts5PoslistBlob(tls *libc.TLS, pCtx uintptr, pCsr uintptr) int32 { /* sqlite3.c:228915:12: */ +func fts5PoslistBlob(tls *libc.TLS, pCtx uintptr, pCsr uintptr) int32 { /* sqlite3.c:228927:12: */ bp := tls.Alloc(68) defer tls.Free(68) @@ -196582,7 +196631,7 @@ func fts5PoslistBlob(tls *libc.TLS, pCtx uintptr, pCsr uintptr) int32 { /* sqlit // This is the xColumn method, called by SQLite to request a value from // the row that the supplied cursor currently points to. -func fts5ColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:228972:12: */ +func fts5ColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:228984:12: */ var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var pConfig uintptr = (*Fts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig var pCsr uintptr = pCursor @@ -196622,7 +196671,7 @@ func fts5ColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) // This routine implements the xFindFunction method for the FTS3 // virtual table. -func fts5FindFunctionMethod(tls *libc.TLS, pVtab uintptr, nUnused int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:229025:12: */ +func fts5FindFunctionMethod(tls *libc.TLS, pVtab uintptr, nUnused int32, zName uintptr, pxFunc uintptr, ppArg uintptr) int32 { /* sqlite3.c:229037:12: */ var pTab uintptr = pVtab var pAux uintptr @@ -196641,12 +196690,12 @@ func fts5FindFunctionMethod(tls *libc.TLS, pVtab uintptr, nUnused int32, zName u } // Implementation of FTS5 xRename method. Rename an fts5 table. -func fts5RenameMethod(tls *libc.TLS, pVtab uintptr, zName uintptr) int32 { /* sqlite3.c:229050:12: */ +func fts5RenameMethod(tls *libc.TLS, pVtab uintptr, zName uintptr) int32 { /* sqlite3.c:229062:12: */ var pTab uintptr = pVtab return sqlite3Fts5StorageRename(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage, zName) } -func sqlite3Fts5FlushToDisk(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:229058:12: */ +func sqlite3Fts5FlushToDisk(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:229070:12: */ fts5TripCursors(tls, pTab) return sqlite3Fts5StorageSync(tls, (*Fts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } @@ -196654,7 +196703,7 @@ func sqlite3Fts5FlushToDisk(tls *libc.TLS, pTab uintptr) int32 { /* sqlite3.c:22 // The xSavepoint() method. // // Flush the contents of the pending-terms table to disk. -func fts5SavepointMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229068:12: */ +func fts5SavepointMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229080:12: */ _ = iSavepoint // Call below is a no-op for NDEBUG builds return sqlite3Fts5FlushToDisk(tls, pVtab) @@ -196663,7 +196712,7 @@ func fts5SavepointMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { // The xRelease() method. // // This is a no-op. -func fts5ReleaseMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229079:12: */ +func fts5ReleaseMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229091:12: */ _ = iSavepoint // Call below is a no-op for NDEBUG builds return sqlite3Fts5FlushToDisk(tls, pVtab) @@ -196672,7 +196721,7 @@ func fts5ReleaseMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { / // The xRollbackTo() method. // // Discard the contents of the pending terms table. -func fts5RollbackToMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229090:12: */ +func fts5RollbackToMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 { /* sqlite3.c:229102:12: */ var pTab uintptr = pVtab _ = iSavepoint // Call below is a no-op for NDEBUG builds @@ -196681,7 +196730,7 @@ func fts5RollbackToMethod(tls *libc.TLS, pVtab uintptr, iSavepoint int32) int32 } // Register a new auxiliary function with global context pGlobal. -func fts5CreateAux(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, xFunc Fts5_extension_function, xDestroy uintptr) int32 { /* sqlite3.c:229101:12: */ +func fts5CreateAux(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, xFunc Fts5_extension_function, xDestroy uintptr) int32 { /* sqlite3.c:229113:12: */ var pGlobal uintptr = pApi var rc int32 = Xsqlite3_overload_function(tls, (*Fts5Global)(unsafe.Pointer(pGlobal)).Fdb, zName, -1) if rc == SQLITE_OK { @@ -196712,7 +196761,7 @@ func fts5CreateAux(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr // Register a new tokenizer. This is the implementation of the // fts5_api.xCreateTokenizer() method. -func fts5CreateTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, pTokenizer uintptr, xDestroy uintptr) int32 { /* sqlite3.c:229140:12: */ +func fts5CreateTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData uintptr, pTokenizer uintptr, xDestroy uintptr) int32 { /* sqlite3.c:229152:12: */ var pGlobal uintptr = pApi var pNew uintptr var nName Sqlite3_int64 // Size of zName and its \0 terminator @@ -196741,7 +196790,7 @@ func fts5CreateTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, pUserData u return rc } -func fts5LocateTokenizer(tls *libc.TLS, pGlobal uintptr, zName uintptr) uintptr { /* sqlite3.c:229175:28: */ +func fts5LocateTokenizer(tls *libc.TLS, pGlobal uintptr, zName uintptr) uintptr { /* sqlite3.c:229187:28: */ var pMod uintptr = uintptr(0) if zName == uintptr(0) { @@ -196759,7 +196808,7 @@ func fts5LocateTokenizer(tls *libc.TLS, pGlobal uintptr, zName uintptr) uintptr // Find a tokenizer. This is the implementation of the // fts5_api.xFindTokenizer() method. -func fts5FindTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, ppUserData uintptr, pTokenizer uintptr) int32 { /* sqlite3.c:229196:12: */ +func fts5FindTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, ppUserData uintptr, pTokenizer uintptr) int32 { /* sqlite3.c:229208:12: */ var rc int32 = SQLITE_OK var pMod uintptr @@ -196775,7 +196824,7 @@ func fts5FindTokenizer(tls *libc.TLS, pApi uintptr, zName uintptr, ppUserData ui return rc } -func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg int32, pConfig uintptr, pzErr uintptr) int32 { /* sqlite3.c:229217:12: */ +func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg int32, pConfig uintptr, pzErr uintptr) int32 { /* sqlite3.c:229229:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -196824,7 +196873,7 @@ func sqlite3Fts5GetTokenizer(tls *libc.TLS, pGlobal uintptr, azArg uintptr, nArg return rc } -func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:229254:13: */ +func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:229266:13: */ var pTok uintptr var pNextTok uintptr var pAux uintptr @@ -196850,7 +196899,7 @@ func fts5ModuleDestroy(tls *libc.TLS, pCtx uintptr) { /* sqlite3.c:229254:13: */ Xsqlite3_free(tls, pGlobal) } -func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:229274:13: */ +func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* sqlite3.c:229286:13: */ var pGlobal uintptr = Xsqlite3_user_data(tls, pCtx) var ppApi uintptr _ = nArg @@ -196862,16 +196911,16 @@ func fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { /* s } // Implementation of fts5_source_id() function. -func fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) { /* sqlite3.c:229290:13: */ +func fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) { /* sqlite3.c:229302:13: */ _ = nArg _ = apUnused - Xsqlite3_result_text(tls, pCtx, ts+40866 /* "fts5: 2021-04-02..." */, -1, libc.UintptrFromInt32(-1)) + Xsqlite3_result_text(tls, pCtx, ts+40866 /* "fts5: 2021-04-19..." */, -1, libc.UintptrFromInt32(-1)) } // Return true if zName is the extension on one of the shadow tables used // by this module. -func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:229304:12: */ +func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:229316:12: */ var i uint32 for i = uint32(0); uint64(i) < (uint64(unsafe.Sizeof(azName2)) / uint64(unsafe.Sizeof(uintptr(0)))); i++ { if Xsqlite3_stricmp(tls, zName, azName2[i]) == 0 { @@ -196883,9 +196932,9 @@ func fts5ShadowName(tls *libc.TLS, zName uintptr) int32 { /* sqlite3.c:229304:12 var azName2 = [5]uintptr{ ts + 40957 /* "config" */, ts + 38407 /* "content" */, ts + 30141 /* "data" */, ts + 38758 /* "docsize" */, ts + 14229, /* "idx" */ -} /* sqlite3.c:229305:21 */ +} /* sqlite3.c:229317:21 */ -func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229315:12: */ +func fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229327:12: */ var rc int32 var pGlobal uintptr = uintptr(0) @@ -196968,7 +197017,7 @@ var fts5Mod = Sqlite3_module{ /* xRelease */ FxRelease: 0, /* xRollbackTo */ FxRollbackTo: 0, /* xShadowName */ FxShadowName: 0, -} /* sqlite3.c:229316:31 */ +} /* sqlite3.c:229328:31 */ // The following functions are used to register the module with SQLite. If // this module is being built as part of the SQLite core (SQLITE_CORE is @@ -196977,7 +197026,7 @@ var fts5Mod = Sqlite3_module{ // Or, if this module is being built as a loadable extension, // sqlite3Fts5Init() is omitted and the two standard entry points // sqlite3_fts_init() and sqlite3_fts5_init() defined instead. -func Xsqlite3Fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229424:20: */ +func Xsqlite3Fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229436:20: */ return fts5Init(tls, db) } @@ -196985,7 +197034,7 @@ func Xsqlite3Fts5Init(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:229424:20: // Fts5Storage.pInsertDocsize - if they have not already been prepared. // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:229482:12: */ +func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:229494:12: */ bp := tls.Alloc(216) defer tls.Free(216) @@ -197086,7 +197135,7 @@ func fts5StorageGetStmt(tls *libc.TLS, p uintptr, eStmt int32, ppStmt uintptr, p return rc } -func fts5ExecPrintf(tls *libc.TLS, db uintptr, pzErr uintptr, zFormat uintptr, va uintptr) int32 { /* sqlite3.c:229585:12: */ +func fts5ExecPrintf(tls *libc.TLS, db uintptr, pzErr uintptr, zFormat uintptr, va uintptr) int32 { /* sqlite3.c:229597:12: */ var rc int32 var ap Va_list _ = ap // ... printf arguments @@ -197108,7 +197157,7 @@ func fts5ExecPrintf(tls *libc.TLS, db uintptr, pzErr uintptr, zFormat uintptr, v // Drop all shadow tables. Return SQLITE_OK if successful or an SQLite error // code otherwise. -func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:229613:12: */ +func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:229625:12: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -197131,7 +197180,7 @@ func sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) int32 { /* sqlite3.c:229 return rc } -func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uintptr, zName uintptr) { /* sqlite3.c:229637:13: */ +func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uintptr, zName uintptr) { /* sqlite3.c:229649:13: */ bp := tls.Alloc(40) defer tls.Free(40) @@ -197142,7 +197191,7 @@ func fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uin } } -func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) int32 { /* sqlite3.c:229651:12: */ +func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) int32 { /* sqlite3.c:229663:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -197163,7 +197212,7 @@ func sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) in // Create the shadow table named zPost, with definition zDefn. Return // SQLITE_OK if successful, or an SQLite error code otherwise. -func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn uintptr, bWithout int32, pzErr uintptr) int32 { /* sqlite3.c:229671:12: */ +func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn uintptr, bWithout int32, pzErr uintptr) int32 { /* sqlite3.c:229683:12: */ bp := tls.Alloc(72) defer tls.Free(72) @@ -197193,7 +197242,7 @@ func sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn // // If successful, set *pp to point to the new object and return SQLITE_OK. // Otherwise, set *pp to NULL and return an SQLite error code. -func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:229706:12: */ +func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCreate int32, pp uintptr, pzErr uintptr) int32 { /* sqlite3.c:229718:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197254,7 +197303,7 @@ func sqlite3Fts5StorageOpen(tls *libc.TLS, pConfig uintptr, pIndex uintptr, bCre } // Close a handle opened by an earlier call to sqlite3Fts5StorageOpen(). -func sqlite3Fts5StorageClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229772:12: */ +func sqlite3Fts5StorageClose(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229784:12: */ var rc int32 = SQLITE_OK if p != 0 { var i int32 @@ -197273,12 +197322,12 @@ type Fts5InsertCtx1 = struct { FpStorage uintptr FiCol int32 FszCol int32 -} /* sqlite3.c:229787:9 */ +} /* sqlite3.c:229799:9 */ -type Fts5InsertCtx = Fts5InsertCtx1 /* sqlite3.c:229787:30 */ +type Fts5InsertCtx = Fts5InsertCtx1 /* sqlite3.c:229799:30 */ // Tokenization callback used when inserting tokens into the FTS index. -func fts5StorageInsertCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:229797:12: */ +func fts5StorageInsertCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:229809:12: */ var pCtx uintptr = pContext var pIdx uintptr = (*Fts5Storage)(unsafe.Pointer((*Fts5InsertCtx)(unsafe.Pointer(pCtx)).FpStorage)).FpIndex _ = iUnused1 @@ -197295,7 +197344,7 @@ func fts5StorageInsertCallback(tls *libc.TLS, pContext uintptr, tflags int32, pT // If a row with rowid iDel is present in the %_content table, add the // delete-markers to the FTS index necessary to delete it. Do not actually // remove the %_content row at this time though. -func fts5StorageDeleteFromIndex(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229820:12: */ +func fts5StorageDeleteFromIndex(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229832:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -197361,7 +197410,7 @@ func fts5StorageDeleteFromIndex(tls *libc.TLS, p uintptr, iDel I64, apVal uintpt // // If there is no %_docsize table (as happens if the columnsize=0 option // is specified when the FTS5 table is created), this function is a no-op. -func fts5StorageInsertDocsize(tls *libc.TLS, p uintptr, iRowid I64, pBuf uintptr) int32 { /* sqlite3.c:229885:12: */ +func fts5StorageInsertDocsize(tls *libc.TLS, p uintptr, iRowid I64, pBuf uintptr) int32 { /* sqlite3.c:229897:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197388,7 +197437,7 @@ func fts5StorageInsertDocsize(tls *libc.TLS, p uintptr, iRowid I64, pBuf uintptr // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5StorageLoadTotals(tls *libc.TLS, p uintptr, bCache int32) int32 { /* sqlite3.c:229915:12: */ +func fts5StorageLoadTotals(tls *libc.TLS, p uintptr, bCache int32) int32 { /* sqlite3.c:229927:12: */ var rc int32 = SQLITE_OK if (*Fts5Storage)(unsafe.Pointer(p)).FbTotalsValid == 0 { rc = sqlite3Fts5IndexGetAverages(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex, (p + 24 /* &.nTotalRow */), (*Fts5Storage)(unsafe.Pointer(p)).FaTotalSize) @@ -197402,7 +197451,7 @@ func fts5StorageLoadTotals(tls *libc.TLS, p uintptr, bCache int32) int32 { /* sq // // Return SQLITE_OK if successful, or an SQLite error code if an error // occurs. -func fts5StorageSaveTotals(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229931:12: */ +func fts5StorageSaveTotals(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229943:12: */ bp := tls.Alloc(20) defer tls.Free(20) @@ -197426,7 +197475,7 @@ func fts5StorageSaveTotals(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229931 } // Remove a row from the FTS table. -func sqlite3Fts5StorageDelete(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229953:12: */ +func sqlite3Fts5StorageDelete(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) int32 { /* sqlite3.c:229965:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197467,7 +197516,7 @@ func sqlite3Fts5StorageDelete(tls *libc.TLS, p uintptr, iDel I64, apVal uintptr) } // Delete all entries in the FTS5 index. -func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:229994:12: */ +func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230006:12: */ bp := tls.Alloc(48) defer tls.Free(48) @@ -197499,7 +197548,7 @@ func sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c: return rc } -func sqlite3Fts5StorageRebuild(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230025:12: */ +func sqlite3Fts5StorageRebuild(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230037:12: */ bp := tls.Alloc(44) defer tls.Free(44) @@ -197563,15 +197612,15 @@ func sqlite3Fts5StorageRebuild(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:23 return *(*int32)(unsafe.Pointer(bp + 40 /* rc */)) } -func sqlite3Fts5StorageOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230080:12: */ +func sqlite3Fts5StorageOptimize(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230092:12: */ return sqlite3Fts5IndexOptimize(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } -func sqlite3Fts5StorageMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:230084:12: */ +func sqlite3Fts5StorageMerge(tls *libc.TLS, p uintptr, nMerge int32) int32 { /* sqlite3.c:230096:12: */ return sqlite3Fts5IndexMerge(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex, nMerge) } -func sqlite3Fts5StorageReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230088:12: */ +func sqlite3Fts5StorageReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230100:12: */ return sqlite3Fts5IndexReset(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } @@ -197582,7 +197631,7 @@ func sqlite3Fts5StorageReset(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:2300 // // If the %_docsize table does not exist, SQLITE_MISMATCH is returned. In // this case the user is required to provide a rowid explicitly. -func fts5StorageNewRowid(tls *libc.TLS, p uintptr, piRowid uintptr) int32 { /* sqlite3.c:230101:12: */ +func fts5StorageNewRowid(tls *libc.TLS, p uintptr, piRowid uintptr) int32 { /* sqlite3.c:230113:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197604,7 +197653,7 @@ func fts5StorageNewRowid(tls *libc.TLS, p uintptr, piRowid uintptr) int32 { /* s } // Insert a new row into the FTS content table. -func sqlite3Fts5StorageContentInsert(tls *libc.TLS, p uintptr, apVal uintptr, piRowid uintptr) int32 { /* sqlite3.c:230122:12: */ +func sqlite3Fts5StorageContentInsert(tls *libc.TLS, p uintptr, apVal uintptr, piRowid uintptr) int32 { /* sqlite3.c:230134:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197636,7 +197685,7 @@ func sqlite3Fts5StorageContentInsert(tls *libc.TLS, p uintptr, apVal uintptr, pi } // Insert new entries into the FTS index and %_docsize table. -func sqlite3Fts5StorageIndexInsert(tls *libc.TLS, p uintptr, apVal uintptr, iRowid I64) int32 { /* sqlite3.c:230157:12: */ +func sqlite3Fts5StorageIndexInsert(tls *libc.TLS, p uintptr, apVal uintptr, iRowid I64) int32 { /* sqlite3.c:230169:12: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -197681,7 +197730,7 @@ func sqlite3Fts5StorageIndexInsert(tls *libc.TLS, p uintptr, apVal uintptr, iRow return *(*int32)(unsafe.Pointer(bp + 32 /* rc */)) } -func fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) int32 { /* sqlite3.c:230200:12: */ +func fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) int32 { /* sqlite3.c:230212:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -197716,13 +197765,13 @@ type Fts5IntegrityCtx1 = struct { Fcksum U64 FpTermset uintptr FpConfig uintptr -} /* sqlite3.c:230228:9 */ +} /* sqlite3.c:230240:9 */ // Context object used by sqlite3Fts5StorageIntegrity(). -type Fts5IntegrityCtx = Fts5IntegrityCtx1 /* sqlite3.c:230228:33 */ +type Fts5IntegrityCtx = Fts5IntegrityCtx1 /* sqlite3.c:230240:33 */ // Tokenization callback used by integrity check. -func fts5StorageIntegrityCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:230242:12: */ +func fts5StorageIntegrityCallback(tls *libc.TLS, pContext uintptr, tflags int32, pToken uintptr, nToken int32, iUnused1 int32, iUnused2 int32) int32 { /* sqlite3.c:230254:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -197788,7 +197837,7 @@ func fts5StorageIntegrityCallback(tls *libc.TLS, pContext uintptr, tflags int32, // table. Return SQLITE_OK if they do, or SQLITE_CORRUPT if not. Return // some other SQLite error code if an error occurs while attempting to // determine this. -func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { /* sqlite3.c:230312:12: */ +func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { /* sqlite3.c:230324:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -197913,7 +197962,7 @@ func sqlite3Fts5StorageIntegrity(tls *libc.TLS, p uintptr, iArg int32) int32 { / // Obtain an SQLite statement handle that may be used to read data from the // %_content table. -func sqlite3Fts5StorageStmt(tls *libc.TLS, p uintptr, eStmt int32, pp uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:230420:12: */ +func sqlite3Fts5StorageStmt(tls *libc.TLS, p uintptr, eStmt int32, pp uintptr, pzErrMsg uintptr) int32 { /* sqlite3.c:230432:12: */ var rc int32 rc = fts5StorageGetStmt(tls, p, eStmt, pp, pzErrMsg) @@ -197927,7 +197976,7 @@ func sqlite3Fts5StorageStmt(tls *libc.TLS, p uintptr, eStmt int32, pp uintptr, p // Release an SQLite statement handle obtained via an earlier call to // sqlite3Fts5StorageStmt(). The eStmt parameter passed to this function // must match that passed to the sqlite3Fts5StorageStmt() call. -func sqlite3Fts5StorageStmtRelease(tls *libc.TLS, p uintptr, eStmt int32, pStmt uintptr) { /* sqlite3.c:230444:13: */ +func sqlite3Fts5StorageStmtRelease(tls *libc.TLS, p uintptr, eStmt int32, pStmt uintptr) { /* sqlite3.c:230456:13: */ if *(*uintptr)(unsafe.Pointer((p + 40 /* &.aStmt */) + uintptr(eStmt)*8)) == uintptr(0) { Xsqlite3_reset(tls, pStmt) @@ -197937,7 +197986,7 @@ func sqlite3Fts5StorageStmtRelease(tls *libc.TLS, p uintptr, eStmt int32, pStmt } } -func fts5StorageDecodeSizeArray(tls *libc.TLS, aCol uintptr, nCol int32, aBlob uintptr, nBlob int32) int32 { /* sqlite3.c:230461:12: */ +func fts5StorageDecodeSizeArray(tls *libc.TLS, aCol uintptr, nCol int32, aBlob uintptr, nBlob int32) int32 { /* sqlite3.c:230473:12: */ var i int32 var iOff int32 = 0 for i = 0; i < nCol; i++ { @@ -197955,7 +198004,7 @@ func fts5StorageDecodeSizeArray(tls *libc.TLS, aCol uintptr, nCol int32, aBlob u // // An SQLite error code is returned if an error occurs, or SQLITE_OK // otherwise. -func sqlite3Fts5StorageDocsize(tls *libc.TLS, p uintptr, iRowid I64, aCol uintptr) int32 { /* sqlite3.c:230482:12: */ +func sqlite3Fts5StorageDocsize(tls *libc.TLS, p uintptr, iRowid I64, aCol uintptr) int32 { /* sqlite3.c:230494:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -197983,7 +198032,7 @@ func sqlite3Fts5StorageDocsize(tls *libc.TLS, p uintptr, iRowid I64, aCol uintpt return rc } -func sqlite3Fts5StorageSize(tls *libc.TLS, p uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:230508:12: */ +func sqlite3Fts5StorageSize(tls *libc.TLS, p uintptr, iCol int32, pnToken uintptr) int32 { /* sqlite3.c:230520:12: */ var rc int32 = fts5StorageLoadTotals(tls, p, 0) if rc == SQLITE_OK { *(*I64)(unsafe.Pointer(pnToken)) = int64(0) @@ -198001,7 +198050,7 @@ func sqlite3Fts5StorageSize(tls *libc.TLS, p uintptr, iCol int32, pnToken uintpt return rc } -func sqlite3Fts5StorageRowCount(tls *libc.TLS, p uintptr, pnRow uintptr) int32 { /* sqlite3.c:230526:12: */ +func sqlite3Fts5StorageRowCount(tls *libc.TLS, p uintptr, pnRow uintptr) int32 { /* sqlite3.c:230538:12: */ var rc int32 = fts5StorageLoadTotals(tls, p, 0) if rc == SQLITE_OK { // nTotalRow being zero does not necessarily indicate a corrupt @@ -198018,7 +198067,7 @@ func sqlite3Fts5StorageRowCount(tls *libc.TLS, p uintptr, pnRow uintptr) int32 { } // Flush any data currently held in-memory to disk. -func sqlite3Fts5StorageSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230543:12: */ +func sqlite3Fts5StorageSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230555:12: */ var rc int32 = SQLITE_OK var iLastRowid I64 = Xsqlite3_last_insert_rowid(tls, (*Fts5Config)(unsafe.Pointer((*Fts5Storage)(unsafe.Pointer(p)).FpConfig)).Fdb) if (*Fts5Storage)(unsafe.Pointer(p)).FbTotalsValid != 0 { @@ -198032,12 +198081,12 @@ func sqlite3Fts5StorageSync(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:23054 return rc } -func sqlite3Fts5StorageRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230557:12: */ +func sqlite3Fts5StorageRollback(tls *libc.TLS, p uintptr) int32 { /* sqlite3.c:230569:12: */ (*Fts5Storage)(unsafe.Pointer(p)).FbTotalsValid = 0 return sqlite3Fts5IndexRollback(tls, (*Fts5Storage)(unsafe.Pointer(p)).FpIndex) } -func sqlite3Fts5StorageConfigValue(tls *libc.TLS, p uintptr, z uintptr, pVal uintptr, iVal int32) int32 { /* sqlite3.c:230562:12: */ +func sqlite3Fts5StorageConfigValue(tls *libc.TLS, p uintptr, z uintptr, pVal uintptr, iVal int32) int32 { /* sqlite3.c:230574:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -198092,13 +198141,13 @@ var aAsciiTokenChar = [128]uint8{ uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), // 0x50..0x5F uint8(0), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), // 0x60..0x6F uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(1), uint8(0), uint8(0), uint8(0), uint8(0), uint8(0), // 0x70..0x7F -} /* sqlite3.c:230615:22 */ +} /* sqlite3.c:230627:22 */ -type AsciiTokenizer1 = struct{ FaTokenChar [128]uint8 } /* sqlite3.c:230626:9 */ +type AsciiTokenizer1 = struct{ FaTokenChar [128]uint8 } /* sqlite3.c:230638:9 */ -type AsciiTokenizer = AsciiTokenizer1 /* sqlite3.c:230626:31 */ +type AsciiTokenizer = AsciiTokenizer1 /* sqlite3.c:230638:31 */ -func fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars int32) { /* sqlite3.c:230631:13: */ +func fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars int32) { /* sqlite3.c:230643:13: */ var i int32 for i = 0; *(*int8)(unsafe.Pointer(zArg + uintptr(i))) != 0; i++ { if (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) & 0x80) == 0 { @@ -198108,12 +198157,12 @@ func fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars } // Delete a "ascii" tokenizer. -func fts5AsciiDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:230647:13: */ +func fts5AsciiDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:230659:13: */ Xsqlite3_free(tls, p) } // Create an "ascii" tokenizer. -func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230654:12: */ +func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230666:12: */ var rc int32 = SQLITE_OK var p uintptr = uintptr(0) _ = pUnused @@ -198148,7 +198197,7 @@ func fts5AsciiCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, return rc } -func asciiFold(tls *libc.TLS, aOut uintptr, aIn uintptr, nByte int32) { /* sqlite3.c:230695:13: */ +func asciiFold(tls *libc.TLS, aOut uintptr, aIn uintptr, nByte int32) { /* sqlite3.c:230707:13: */ var i int32 for i = 0; i < nByte; i++ { var c int8 = *(*int8)(unsafe.Pointer(aIn + uintptr(i))) @@ -198160,7 +198209,7 @@ func asciiFold(tls *libc.TLS, aOut uintptr, aIn uintptr, nByte int32) { /* sqlit } // Tokenize some text using the ascii tokenizer. -func fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:230707:12: */ +func fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:230719:12: */ bp := tls.Alloc(64) defer tls.Free(64) @@ -198239,7 +198288,7 @@ type Unicode61Tokenizer1 = struct { _ [4]byte FaiException uintptr FaCategory [32]uint8 -} /* sqlite3.c:230822:9 */ +} /* sqlite3.c:230834:9 */ // ************************************************************************* // @@ -198249,11 +198298,11 @@ type Unicode61Tokenizer1 = struct { // from the sqlite3 source file utf.c. If this file is compiled as part // of the amalgamation, they are not required. -type Unicode61Tokenizer = Unicode61Tokenizer1 /* sqlite3.c:230822:35 */ +type Unicode61Tokenizer = Unicode61Tokenizer1 /* sqlite3.c:230834:35 */ // Values for eRemoveDiacritic (must match internals of fts5_unicode2.c) -func fts5UnicodeAddExceptions(tls *libc.TLS, p uintptr, z uintptr, bTokenChars int32) int32 { /* sqlite3.c:230839:12: */ +func fts5UnicodeAddExceptions(tls *libc.TLS, p uintptr, z uintptr, bTokenChars int32) int32 { /* sqlite3.c:230851:12: */ var rc int32 = SQLITE_OK var n int32 = int32(libc.Xstrlen(tls, z)) var aNew uintptr @@ -198308,7 +198357,7 @@ func fts5UnicodeAddExceptions(tls *libc.TLS, p uintptr, z uintptr, bTokenChars i } // Return true if the p->aiException[] array contains the value iCode. -func fts5UnicodeIsException(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:230889:12: */ +func fts5UnicodeIsException(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:230901:12: */ if (*Unicode61Tokenizer)(unsafe.Pointer(p)).FnException > 0 { var a uintptr = (*Unicode61Tokenizer)(unsafe.Pointer(p)).FaiException var iLo int32 = 0 @@ -198330,7 +198379,7 @@ func fts5UnicodeIsException(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sq } // Delete a "unicode61" tokenizer. -func fts5UnicodeDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:230913:13: */ +func fts5UnicodeDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:230925:13: */ if pTok != 0 { var p uintptr = pTok Xsqlite3_free(tls, (*Unicode61Tokenizer)(unsafe.Pointer(p)).FaiException) @@ -198340,7 +198389,7 @@ func fts5UnicodeDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:230913:13: */ return } -func unicodeSetCategories(tls *libc.TLS, p uintptr, zCat uintptr) int32 { /* sqlite3.c:230923:12: */ +func unicodeSetCategories(tls *libc.TLS, p uintptr, zCat uintptr) int32 { /* sqlite3.c:230935:12: */ var z uintptr = zCat for *(*int8)(unsafe.Pointer(z)) != 0 { @@ -198360,7 +198409,7 @@ func unicodeSetCategories(tls *libc.TLS, p uintptr, zCat uintptr) int32 { /* sql } // Create a "unicode61" tokenizer. -func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230941:12: */ +func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:230953:12: */ var rc int32 = SQLITE_OK // Return code var p uintptr = uintptr(0) // New tokenizer object @@ -198428,12 +198477,12 @@ func fts5UnicodeCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32 // Return true if, for the purposes of tokenizing with the tokenizer // passed as the first argument, codepoint iCode is considered a token // character (not a separator). -func fts5UnicodeIsAlnum(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:231021:12: */ +func fts5UnicodeIsAlnum(tls *libc.TLS, p uintptr, iCode int32) int32 { /* sqlite3.c:231033:12: */ return (int32(*(*uint8)(unsafe.Pointer((p + 160 /* &.aCategory */) + uintptr(sqlite3Fts5UnicodeCategory(tls, U32(iCode)))))) ^ fts5UnicodeIsException(tls, p, iCode)) } -func fts5UnicodeTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231028:12: */ +func fts5UnicodeTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231040:12: */ var p uintptr var rc int32 var a uintptr @@ -198687,7 +198736,7 @@ type PorterTokenizer1 = struct { Ftokenizer Fts5_tokenizer FpTokenizer uintptr FaBuf [128]int8 -} /* sqlite3.c:231140:9 */ +} /* sqlite3.c:231152:9 */ // ************************************************************************* // @@ -198696,10 +198745,10 @@ type PorterTokenizer1 = struct { // Any tokens larger than this (in bytes) are passed through without // stemming. -type PorterTokenizer = PorterTokenizer1 /* sqlite3.c:231140:32 */ +type PorterTokenizer = PorterTokenizer1 /* sqlite3.c:231152:32 */ // Delete a "porter" tokenizer. -func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:231150:13: */ +func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:231162:13: */ if pTok != 0 { var p uintptr = pTok if (*PorterTokenizer)(unsafe.Pointer(p)).FpTokenizer != 0 { @@ -198710,7 +198759,7 @@ func fts5PorterDelete(tls *libc.TLS, pTok uintptr) { /* sqlite3.c:231150:13: */ } // Create a "porter" tokenizer. -func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231163:12: */ +func fts5PorterCreate(tls *libc.TLS, pCtx uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231175:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -198759,9 +198808,9 @@ type PorterContext1 = struct { FpCtx uintptr FxToken uintptr FaBuf uintptr -} /* sqlite3.c:231199:9 */ +} /* sqlite3.c:231211:9 */ -type PorterContext = PorterContext1 /* sqlite3.c:231199:30 */ +type PorterContext = PorterContext1 /* sqlite3.c:231211:30 */ type PorterRule1 = struct { FzSuffix uintptr @@ -198771,15 +198820,15 @@ type PorterRule1 = struct { FzOutput uintptr FnOutput int32 _ [4]byte -} /* sqlite3.c:231206:9 */ +} /* sqlite3.c:231218:9 */ -type PorterRule = PorterRule1 /* sqlite3.c:231206:27 */ +type PorterRule = PorterRule1 /* sqlite3.c:231218:27 */ -func fts5PorterIsVowel(tls *libc.TLS, c int8, bYIsVowel int32) int32 { /* sqlite3.c:231241:12: */ +func fts5PorterIsVowel(tls *libc.TLS, c int8, bYIsVowel int32) int32 { /* sqlite3.c:231253:12: */ return (libc.Bool32((((((int32(c) == 'a') || (int32(c) == 'e')) || (int32(c) == 'i')) || (int32(c) == 'o')) || (int32(c) == 'u')) || ((bYIsVowel != 0) && (int32(c) == 'y')))) } -func fts5PorterGobbleVC(tls *libc.TLS, zStem uintptr, nStem int32, bPrevCons int32) int32 { /* sqlite3.c:231247:12: */ +func fts5PorterGobbleVC(tls *libc.TLS, zStem uintptr, nStem int32, bPrevCons int32) int32 { /* sqlite3.c:231259:12: */ var i int32 var bCons int32 = bPrevCons @@ -198800,12 +198849,12 @@ func fts5PorterGobbleVC(tls *libc.TLS, zStem uintptr, nStem int32, bPrevCons int } // porter rule condition: (m > 0) -func fts5Porter_MGt0(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231264:12: */ +func fts5Porter_MGt0(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231276:12: */ return libc.BoolInt32(!(!(fts5PorterGobbleVC(tls, zStem, nStem, 0) != 0))) } // porter rule condition: (m > 1) -func fts5Porter_MGt1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231269:12: */ +func fts5Porter_MGt1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231281:12: */ var n int32 n = fts5PorterGobbleVC(tls, zStem, nStem, 0) if (n != 0) && (fts5PorterGobbleVC(tls, (zStem+uintptr(n)), (nStem-n), 1) != 0) { @@ -198815,7 +198864,7 @@ func fts5Porter_MGt1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlit } // porter rule condition: (m = 1) -func fts5Porter_MEq1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231279:12: */ +func fts5Porter_MEq1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231291:12: */ var n int32 n = fts5PorterGobbleVC(tls, zStem, nStem, 0) if (n != 0) && (0 == fts5PorterGobbleVC(tls, (zStem+uintptr(n)), (nStem-n), 1)) { @@ -198825,7 +198874,7 @@ func fts5Porter_MEq1(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlit } // porter rule condition: (*o) -func fts5Porter_Ostar(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231289:12: */ +func fts5Porter_Ostar(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231301:12: */ if ((int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 'w') || (int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 'x')) || (int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 'y') { return 0 } else { @@ -198843,14 +198892,14 @@ func fts5Porter_Ostar(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqli } // porter rule condition: (m > 1 and (*S or *T)) -func fts5Porter_MGt1_and_S_or_T(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231306:12: */ +func fts5Porter_MGt1_and_S_or_T(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231318:12: */ return (libc.Bool32(((int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 's') || (int32(*(*int8)(unsafe.Pointer(zStem + uintptr((nStem - 1))))) == 't')) && (fts5Porter_MGt1(tls, zStem, nStem) != 0))) } // porter rule condition: (*v*) -func fts5Porter_Vowel(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231313:12: */ +func fts5Porter_Vowel(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqlite3.c:231325:12: */ var i int32 for i = 0; i < nStem; i++ { if fts5PorterIsVowel(tls, *(*int8)(unsafe.Pointer(zStem + uintptr(i))), (libc.Bool32(i > 0))) != 0 { @@ -198865,7 +198914,7 @@ func fts5Porter_Vowel(tls *libc.TLS, zStem uintptr, nStem int32) int32 { /* sqli // // GENERATED CODE STARTS HERE (mkportersteps.tcl) -func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231329:12: */ +func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231341:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -198998,7 +199047,7 @@ func fts5PorterStep4(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli return ret } -func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231463:12: */ +func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231475:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -199031,7 +199080,7 @@ func fts5PorterStep1B2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sq return ret } -func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231497:12: */ +func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231509:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -199177,7 +199226,7 @@ func fts5PorterStep2(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli return ret } -func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231644:12: */ +func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231656:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -199242,7 +199291,7 @@ func fts5PorterStep3(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqli return ret } -func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231710:12: */ +func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sqlite3.c:231722:12: */ var ret int32 = 0 var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) switch int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) { @@ -199279,7 +199328,7 @@ func fts5PorterStep1B(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) int32 { /* sql // // -func fts5PorterStep1A(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) { /* sqlite3.c:231747:13: */ +func fts5PorterStep1A(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) { /* sqlite3.c:231759:13: */ var nBuf int32 = *(*int32)(unsafe.Pointer(pnBuf)) if int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 1))))) == 's' { if int32(*(*int8)(unsafe.Pointer(aBuf + uintptr((nBuf - 2))))) == 'e' { @@ -199295,7 +199344,7 @@ func fts5PorterStep1A(tls *libc.TLS, aBuf uintptr, pnBuf uintptr) { /* sqlite3.c } } -func fts5PorterCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iStart int32, iEnd int32) int32 { /* sqlite3.c:231765:12: */ +func fts5PorterCb(tls *libc.TLS, pCtx uintptr, tflags int32, pToken uintptr, nToken int32, iStart int32, iEnd int32) int32 { /* sqlite3.c:231777:12: */ bp := tls.Alloc(4) defer tls.Free(4) @@ -199389,7 +199438,7 @@ pass_through: } // Tokenize using the porter tokenizer. -func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231834:12: */ +func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231846:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -199408,20 +199457,20 @@ func fts5PorterTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, flags i // ************************************************************************* // // Start of trigram implementation. -type TrigramTokenizer1 = struct{ FbFold int32 } /* sqlite3.c:231854:9 */ +type TrigramTokenizer1 = struct{ FbFold int32 } /* sqlite3.c:231866:9 */ // ************************************************************************* // // Start of trigram implementation. -type TrigramTokenizer = TrigramTokenizer1 /* sqlite3.c:231854:33 */ +type TrigramTokenizer = TrigramTokenizer1 /* sqlite3.c:231866:33 */ // Free a trigram tokenizer. -func fts5TriDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:231862:13: */ +func fts5TriDelete(tls *libc.TLS, p uintptr) { /* sqlite3.c:231874:13: */ Xsqlite3_free(tls, p) } // Allocate a trigram tokenizer. -func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231869:12: */ +func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, ppOut uintptr) int32 { /* sqlite3.c:231881:12: */ var rc int32 = SQLITE_OK var pNew uintptr = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(TrigramTokenizer{}))) _ = pUnused @@ -199452,7 +199501,7 @@ func fts5TriCreate(tls *libc.TLS, pUnused uintptr, azArg uintptr, nArg int32, pp } // Trigram tokenizer tokenize routine. -func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231907:12: */ +func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int32, pText uintptr, nText int32, xToken uintptr) int32 { /* sqlite3.c:231919:12: */ bp := tls.Alloc(32) defer tls.Free(32) @@ -199603,7 +199652,7 @@ func fts5TriTokenize(tls *libc.TLS, pTok uintptr, pCtx uintptr, unusedFlags int3 // "trigram" tokenizer, case_sensitive=1 - FTS5_PATTERN_GLOB // "trigram" tokenizer, case_sensitive=0 (the default) - FTS5_PATTERN_LIKE // all other tokenizers - FTS5_PATTERN_NONE -func sqlite3Fts5TokenizerPattern(tls *libc.TLS, xCreate uintptr, pTok uintptr) int32 { /* sqlite3.c:231967:12: */ +func sqlite3Fts5TokenizerPattern(tls *libc.TLS, xCreate uintptr, pTok uintptr) int32 { /* sqlite3.c:231979:12: */ if xCreate == *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32 }{fts5TriCreate})) { @@ -199617,7 +199666,7 @@ func sqlite3Fts5TokenizerPattern(tls *libc.TLS, xCreate uintptr, pTok uintptr) i } // Register all built-in tokenizers with FTS5. -func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:231981:12: */ +func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c:231993:12: */ bp := tls.Alloc(128) defer tls.Free(128) @@ -199661,7 +199710,7 @@ func sqlite3Fts5TokenizerInit(tls *libc.TLS, pApi uintptr) int32 { /* sqlite3.c: type BuiltinTokenizer = struct { FzName uintptr Fx Fts5_tokenizer -} /* sqlite3.c:231982:3 */ +} /* sqlite3.c:231994:3 */ // 2012-05-25 // @@ -199684,7 +199733,7 @@ type BuiltinTokenizer = struct { // SMALL LETTER E WITH DIAERESIS" - return 65 ("LATIN SMALL LETTER // E"). The resuls of passing a codepoint that corresponds to an // uppercase letter are undefined. -func fts5_remove_diacritic(tls *libc.TLS, c int32, bComplex int32) int32 { /* sqlite3.c:232037:12: */ +func fts5_remove_diacritic(tls *libc.TLS, c int32, bComplex int32) int32 { /* sqlite3.c:232049:12: */ bp := tls.Alloc(378) defer tls.Free(378) @@ -199755,7 +199804,7 @@ func fts5_remove_diacritic(tls *libc.TLS, c int32, bComplex int32) int32 { /* sq // Return true if the argument interpreted as a unicode codepoint // is a diacritical modifier character. -func sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) int32 { /* sqlite3.c:232104:12: */ +func sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) int32 { /* sqlite3.c:232116:12: */ var mask0 uint32 = uint32(0x08029FDF) var mask1 uint32 = uint32(0x000361F8) if (c < 768) || (c > 817) { @@ -199774,7 +199823,7 @@ func sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) int32 { /* sqlite3.c: // // The results are undefined if the value passed to this function // is less than zero. -func sqlite3Fts5UnicodeFold(tls *libc.TLS, c int32, eRemoveDiacritic int32) int32 { /* sqlite3.c:232123:12: */ +func sqlite3Fts5UnicodeFold(tls *libc.TLS, c int32, eRemoveDiacritic int32) int32 { /* sqlite3.c:232135:12: */ var ret int32 = c @@ -199835,7 +199884,7 @@ type TableEntry = struct { FiCode uint16 Fflags uint8 FnRange uint8 -} /* sqlite3.c:232141:16 */ +} /* sqlite3.c:232153:16 */ var aEntry = [163]TableEntry{ {FiCode: uint16(65), Fflags: uint8(14), FnRange: uint8(26)}, {FiCode: uint16(181), Fflags: uint8(64), FnRange: uint8(1)}, {FiCode: uint16(192), Fflags: uint8(14), FnRange: uint8(23)}, @@ -199893,7 +199942,7 @@ var aEntry = [163]TableEntry{ {FiCode: uint16(42878), Fflags: uint8(1), FnRange: uint8(10)}, {FiCode: uint16(42891), FnRange: uint8(1)}, {FiCode: uint16(42893), Fflags: uint8(74), FnRange: uint8(1)}, {FiCode: uint16(42896), Fflags: uint8(1), FnRange: uint8(4)}, {FiCode: uint16(42912), Fflags: uint8(1), FnRange: uint8(10)}, {FiCode: uint16(42922), Fflags: uint8(72), FnRange: uint8(1)}, {FiCode: uint16(65313), Fflags: uint8(14), FnRange: uint8(26)}, -} /* sqlite3.c:232145:5 */ +} /* sqlite3.c:232157:5 */ var aiOff = [77]uint16{ uint16(1), uint16(2), uint16(8), uint16(15), uint16(16), uint16(26), uint16(28), uint16(32), uint16(37), uint16(38), uint16(40), uint16(48), uint16(63), uint16(64), uint16(69), uint16(71), @@ -199905,9 +199954,9 @@ var aiOff = [77]uint16{ uint16(65408), uint16(65410), uint16(65415), uint16(65424), uint16(65436), uint16(65439), uint16(65450), uint16(65462), uint16(65472), uint16(65476), uint16(65478), uint16(65480), uint16(65482), uint16(65488), uint16(65506), uint16(65511), uint16(65514), uint16(65521), uint16(65527), uint16(65528), uint16(65529), -} /* sqlite3.c:232202:31 */ +} /* sqlite3.c:232214:31 */ -func sqlite3Fts5UnicodeCatParse(tls *libc.TLS, zCat uintptr, aArray uintptr) int32 { /* sqlite3.c:232259:12: */ +func sqlite3Fts5UnicodeCatParse(tls *libc.TLS, zCat uintptr, aArray uintptr) int32 { /* sqlite3.c:232271:12: */ *(*U8)(unsafe.Pointer(aArray)) = U8(1) switch int32(*(*int8)(unsafe.Pointer(zCat))) { case 'C': @@ -200104,7 +200153,7 @@ func sqlite3Fts5UnicodeCatParse(tls *libc.TLS, zCat uintptr, aArray uintptr) int var aFts5UnicodeBlock = [17]U16{ U16(0), U16(1471), U16(1753), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1760), U16(1763), U16(1765), -} /* sqlite3.c:232377:12 */ +} /* sqlite3.c:232389:12 */ var aFts5UnicodeMap = [1765]U16{ U16(0), U16(32), U16(33), U16(36), U16(37), U16(40), U16(41), U16(42), U16(43), U16(44), U16(45), U16(46), U16(48), U16(58), U16(60), U16(63), U16(65), U16(91), U16(92), U16(93), @@ -200283,7 +200332,7 @@ var aFts5UnicodeMap = [1765]U16{ U16(62406), U16(62432), U16(62464), U16(62528), U16(62530), U16(62713), U16(62720), U16(62784), U16(62800), U16(62971), U16(63045), U16(63104), U16(63232), U16(0), U16(42710), U16(42752), U16(46900), U16(46912), U16(47133), U16(63488), U16(1), U16(32), U16(256), U16(0), U16(65533), -} /* sqlite3.c:232381:12 */ +} /* sqlite3.c:232393:12 */ var aFts5UnicodeData = [1765]U16{ U16(1025), U16(61), U16(117), U16(55), U16(117), U16(54), U16(50), U16(53), U16(57), U16(53), U16(49), U16(85), U16(333), U16(85), U16(121), U16(85), U16(841), U16(54), U16(53), U16(50), @@ -200462,9 +200511,9 @@ var aFts5UnicodeData = [1765]U16{ U16(186), U16(570), U16(2042), U16(58), U16(5850), U16(154), U16(2010), U16(154), U16(794), U16(2266), U16(378), U16(2266), U16(3738), U16(39), U16(39), U16(39), U16(39), U16(39), U16(39), U16(17351), U16(34), U16(3074), U16(7692), U16(63), U16(63), -} /* sqlite3.c:232560:12 */ +} /* sqlite3.c:232572:12 */ -func sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode U32) int32 { /* sqlite3.c:232740:12: */ +func sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode U32) int32 { /* sqlite3.c:232752:12: */ var iRes int32 = -1 var iHi int32 var iLo int32 @@ -200504,7 +200553,7 @@ func sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode U32) int32 { /* sqlite3.c:2 return 9 } -func sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { /* sqlite3.c:232771:13: */ +func sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { /* sqlite3.c:232783:13: */ var i int32 = 0 var iTbl int32 = 0 for i < 128 { @@ -200536,7 +200585,7 @@ func sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { /* // This is a copy of the sqlite3GetVarint32() routine from the SQLite core. // Except, this version does handle the single byte case that the core // version depends on being handled before its function is called. -func sqlite3Fts5GetVarint32(tls *libc.TLS, p uintptr, v uintptr) int32 { /* sqlite3.c:232809:12: */ +func sqlite3Fts5GetVarint32(tls *libc.TLS, p uintptr, v uintptr) int32 { /* sqlite3.c:232821:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -200611,7 +200660,7 @@ func sqlite3Fts5GetVarint32(tls *libc.TLS, p uintptr, v uintptr) int32 { /* sqli // Read a 64-bit variable-length integer from memory starting at p[0]. // Return the number of bytes read. The value is stored in *v. -func sqlite3Fts5GetVarint(tls *libc.TLS, p uintptr, v uintptr) U8 { /* sqlite3.c:232887:11: */ +func sqlite3Fts5GetVarint(tls *libc.TLS, p uintptr, v uintptr) U8 { /* sqlite3.c:232899:11: */ var a U32 var b U32 var s U32 @@ -200787,7 +200836,7 @@ func sqlite3Fts5GetVarint(tls *libc.TLS, p uintptr, v uintptr) U8 { /* sqlite3.c // for all bytes that have the 8th bit set and one byte with the 8th // bit clear. Except, if we get to the 9th byte, it stores the full // 8 bits and is the last byte. -func fts5PutVarint64(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233081:26: */ +func fts5PutVarint64(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233093:26: */ bp := tls.Alloc(10) defer tls.Free(10) @@ -200833,7 +200882,7 @@ __3: return n } -func sqlite3Fts5PutVarint(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233106:12: */ +func sqlite3Fts5PutVarint(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c:233118:12: */ if v <= uint64(0x7f) { *(*uint8)(unsafe.Pointer(p)) = (uint8(v & uint64(0x7f))) return 1 @@ -200846,7 +200895,7 @@ func sqlite3Fts5PutVarint(tls *libc.TLS, p uintptr, v U64) int32 { /* sqlite3.c: return fts5PutVarint64(tls, p, v) } -func sqlite3Fts5GetVarintLen(tls *libc.TLS, iVal U32) int32 { /* sqlite3.c:233120:12: */ +func sqlite3Fts5GetVarintLen(tls *libc.TLS, iVal U32) int32 { /* sqlite3.c:233132:12: */ if iVal < (U32(int32(1) << 14)) { return 2 @@ -200906,7 +200955,7 @@ type Fts5VocabTable1 = struct { FpGlobal uintptr FeType int32 FbBusy uint32 -} /* sqlite3.c:233173:9 */ +} /* sqlite3.c:233185:9 */ // 2015 May 08 // @@ -200946,7 +200995,7 @@ type Fts5VocabTable1 = struct { // #include "fts5Int.h" -type Fts5VocabTable = Fts5VocabTable1 /* sqlite3.c:233173:31 */ +type Fts5VocabTable = Fts5VocabTable1 /* sqlite3.c:233185:31 */ type Fts5VocabCursor1 = struct { Fbase Sqlite3_vtab_cursor FpStmt uintptr @@ -200966,9 +201015,9 @@ type Fts5VocabCursor1 = struct { FiInstPos I64 FiInstOff int32 _ [4]byte -} /* sqlite3.c:233174:9 */ +} /* sqlite3.c:233186:9 */ -type Fts5VocabCursor = Fts5VocabCursor1 /* sqlite3.c:233174:32 */ +type Fts5VocabCursor = Fts5VocabCursor1 /* sqlite3.c:233186:32 */ // Bits for the mask used as the idxNum value by xBestIndex/xFilter. @@ -200976,7 +201025,7 @@ type Fts5VocabCursor = Fts5VocabCursor1 /* sqlite3.c:233174:32 */ // FTS5_VOCAB_XXX constant. If successful, set *peType to the output // value and return SQLITE_OK. Otherwise, set *pzErr to an error message // and return SQLITE_ERROR. -func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uintptr) int32 { /* sqlite3.c:233233:12: */ +func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uintptr) int32 { /* sqlite3.c:233245:12: */ bp := tls.Alloc(12) defer tls.Free(12) @@ -201001,14 +201050,14 @@ func fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uint } // The xDisconnect() virtual table method. -func fts5VocabDisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233262:12: */ +func fts5VocabDisconnectMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233274:12: */ var pTab uintptr = pVtab Xsqlite3_free(tls, pTab) return SQLITE_OK } // The xDestroy() virtual table method. -func fts5VocabDestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233271:12: */ +func fts5VocabDestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:233283:12: */ var pTab uintptr = pVtab Xsqlite3_free(tls, pTab) return SQLITE_OK @@ -201033,7 +201082,7 @@ func fts5VocabDestroyMethod(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:2 // argv[3] -> name of fts5 tables database // argv[4] -> name of fts5 table // argv[5] -> type of fts5vocab table -func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233298:12: */ +func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVTab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233310:12: */ bp := tls.Alloc(36) defer tls.Free(36) @@ -201103,11 +201152,11 @@ func fts5VocabInitVtab(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv // The xConnect() and xCreate() methods for the virtual table. All the // work is done in function fts5VocabInitVtab(). -func fts5VocabConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233360:12: */ +func fts5VocabConnectMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233372:12: */ return fts5VocabInitVtab(tls, db, pAux, argc, argv, ppVtab, pzErr) } -func fts5VocabCreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233370:12: */ +func fts5VocabCreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233382:12: */ return fts5VocabInitVtab(tls, db, pAux, argc, argv, ppVtab, pzErr) } @@ -201121,7 +201170,7 @@ func fts5VocabCreateMethod(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, // // are interpreted. Less-than and less-than-or-equal are treated // identically, as are greater-than and greater-than-or-equal. -func fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) int32 { /* sqlite3.c:233393:12: */ +func fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) int32 { /* sqlite3.c:233405:12: */ var i int32 var iTermEq int32 = -1 var iTermGe int32 = -1 @@ -201189,7 +201238,7 @@ func fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) int } // Implementation of xOpen method. -func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:233455:12: */ +func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* sqlite3.c:233467:12: */ bp := tls.Alloc(80) defer tls.Free(80) @@ -201256,7 +201305,7 @@ func fts5VocabOpenMethod(tls *libc.TLS, pVTab uintptr, ppCsr uintptr) int32 { /* return *(*int32)(unsafe.Pointer(bp + 64 /* rc */)) } -func fts5VocabResetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:233523:13: */ +func fts5VocabResetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:233535:13: */ (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).Frowid = int64(0) sqlite3Fts5IterClose(tls, (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpIter) (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpIter = uintptr(0) @@ -201268,7 +201317,7 @@ func fts5VocabResetCursor(tls *libc.TLS, pCsr uintptr) { /* sqlite3.c:233523:13: // Close the cursor. For additional information see the documentation // on the xClose method of the virtual table interface. -func fts5VocabCloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233537:12: */ +func fts5VocabCloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233549:12: */ var pCsr uintptr = pCursor fts5VocabResetCursor(tls, pCsr) sqlite3Fts5BufferFree(tls, (pCsr + 88 /* &.term */)) @@ -201277,7 +201326,7 @@ func fts5VocabCloseMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:2 return SQLITE_OK } -func fts5VocabInstanceNewTerm(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233546:12: */ +func fts5VocabInstanceNewTerm(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233558:12: */ bp := tls.Alloc(8) defer tls.Free(8) @@ -201308,7 +201357,7 @@ func fts5VocabInstanceNewTerm(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c: return *(*int32)(unsafe.Pointer(bp + 4 /* rc */)) } -func fts5VocabInstanceNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233568:12: */ +func fts5VocabInstanceNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233580:12: */ var eDetail int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer((*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpFts5)).FpConfig)).FeDetail var rc int32 = SQLITE_OK var pIter uintptr = (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpIter @@ -201337,7 +201386,7 @@ func fts5VocabInstanceNext(tls *libc.TLS, pCsr uintptr) int32 { /* sqlite3.c:233 } // Advance the cursor to the next row in the table. -func fts5VocabNextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233600:12: */ +func fts5VocabNextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233612:12: */ bp := tls.Alloc(24) defer tls.Free(24) @@ -201477,7 +201526,7 @@ func fts5VocabNextMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:23 } // This is the xFilter implementation for the virtual table. -func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused uintptr, nUnused int32, apVal uintptr) int32 { /* sqlite3.c:233726:12: */ +func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused uintptr, nUnused int32, apVal uintptr) int32 { /* sqlite3.c:233738:12: */ var pTab uintptr = (*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab var pCsr uintptr = pCursor var eType int32 = (*Fts5VocabTable)(unsafe.Pointer(pTab)).FeType @@ -201548,12 +201597,12 @@ func fts5VocabFilterMethod(tls *libc.TLS, pCursor uintptr, idxNum int32, zUnused // This is the xEof method of the virtual table. SQLite calls this // routine to find out if it has reached the end of a result set. -func fts5VocabEofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233797:12: */ +func fts5VocabEofMethod(tls *libc.TLS, pCursor uintptr) int32 { /* sqlite3.c:233809:12: */ var pCsr uintptr = pCursor return (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FbEof } -func fts5VocabColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:233802:12: */ +func fts5VocabColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol int32) int32 { /* sqlite3.c:233814:12: */ var pCsr uintptr = pCursor var eDetail int32 = (*Fts5Config)(unsafe.Pointer((*Fts5Table)(unsafe.Pointer((*Fts5VocabCursor)(unsafe.Pointer(pCsr)).FpFts5)).FpConfig)).FeDetail var eType int32 = (*Fts5VocabTable)(unsafe.Pointer((*Sqlite3_vtab_cursor)(unsafe.Pointer(pCursor)).FpVtab)).FeType @@ -201626,13 +201675,13 @@ func fts5VocabColumnMethod(tls *libc.TLS, pCursor uintptr, pCtx uintptr, iCol in // This is the xRowid method. The SQLite core calls this routine to // retrieve the rowid for the current row of the result set. The // rowid should be written to *pRowid. -func fts5VocabRowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:233874:12: */ +func fts5VocabRowidMethod(tls *libc.TLS, pCursor uintptr, pRowid uintptr) int32 { /* sqlite3.c:233886:12: */ var pCsr uintptr = pCursor *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = (*Fts5VocabCursor)(unsafe.Pointer(pCsr)).Frowid return SQLITE_OK } -func sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:233883:12: */ +func sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) int32 { /* sqlite3.c:233895:12: */ var p uintptr = pGlobal return Xsqlite3_create_module_v2(tls, db, ts+42637 /* "fts5vocab" */, uintptr(unsafe.Pointer(&fts5Vocab)), p, uintptr(0)) @@ -201652,7 +201701,7 @@ var fts5Vocab = Sqlite3_module{ /* xEof */ FxEof: 0, /* xColumn */ FxColumn: 0, /* xRowid */ FxRowid: 0, -} /* sqlite3.c:233884:31 */ +} /* sqlite3.c:233896:31 */ //************* End of fts5.c *********************************************** //************* Begin file stmt.c ******************************************* @@ -201685,7 +201734,7 @@ var fts5Vocab = Sqlite3_module{ type stmt_vtab = struct { Fbase Sqlite3_vtab Fdb uintptr -} /* sqlite3.c:233956:9 */ +} /* sqlite3.c:233968:9 */ //************* End of fts5.c *********************************************** //************* Begin file stmt.c ******************************************* @@ -201715,7 +201764,7 @@ type stmt_vtab = struct { // stmt_vtab is a subclass of sqlite3_vtab which will // serve as the underlying representation of a stmt virtual table -type Stmt_vtab = stmt_vtab /* sqlite3.c:233956:26 */ +type Stmt_vtab = stmt_vtab /* sqlite3.c:233968:26 */ // stmt_cursor is a subclass of sqlite3_vtab_cursor which will // serve as the underlying representation of a cursor that scans @@ -201725,12 +201774,12 @@ type stmt_cursor = struct { Fdb uintptr FpStmt uintptr FiRowid Sqlite3_int64 -} /* sqlite3.c:233966:9 */ +} /* sqlite3.c:233978:9 */ // stmt_cursor is a subclass of sqlite3_vtab_cursor which will // serve as the underlying representation of a cursor that scans // over rows of the result -type Stmt_cursor = stmt_cursor /* sqlite3.c:233966:28 */ +type Stmt_cursor = stmt_cursor /* sqlite3.c:233978:28 */ // The stmtConnect() method is invoked to create a new // stmt_vtab that describes the stmt virtual table. @@ -201743,7 +201792,7 @@ type Stmt_cursor = stmt_cursor /* sqlite3.c:233966:28 */ // // (2) Tell SQLite (via the sqlite3_declare_vtab() interface) what the // result set of queries against stmt will look like. -func stmtConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233987:12: */ +func stmtConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintptr, ppVtab uintptr, pzErr uintptr) int32 { /* sqlite3.c:233999:12: */ var pNew uintptr var rc int32 @@ -201765,13 +201814,13 @@ func stmtConnect(tls *libc.TLS, db uintptr, pAux uintptr, argc int32, argv uintp } // This method is the destructor for stmt_cursor objects. -func stmtDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:234027:12: */ +func stmtDisconnect(tls *libc.TLS, pVtab uintptr) int32 { /* sqlite3.c:234039:12: */ Xsqlite3_free(tls, pVtab) return SQLITE_OK } // Constructor for a new stmt_cursor object. -func stmtOpen(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:234035:12: */ +func stmtOpen(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:234047:12: */ var pCur uintptr pCur = Xsqlite3_malloc(tls, int32(unsafe.Sizeof(Stmt_cursor{}))) if pCur == uintptr(0) { @@ -201784,13 +201833,13 @@ func stmtOpen(tls *libc.TLS, p uintptr, ppCursor uintptr) int32 { /* sqlite3.c:2 } // Destructor for a stmt_cursor. -func stmtClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234048:12: */ +func stmtClose(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234060:12: */ Xsqlite3_free(tls, cur) return SQLITE_OK } // Advance a stmt_cursor to its next row of output. -func stmtNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234057:12: */ +func stmtNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234069:12: */ var pCur uintptr = cur (*Stmt_cursor)(unsafe.Pointer(pCur)).FiRowid++ (*Stmt_cursor)(unsafe.Pointer(pCur)).FpStmt = Xsqlite3_next_stmt(tls, (*Stmt_cursor)(unsafe.Pointer(pCur)).Fdb, (*Stmt_cursor)(unsafe.Pointer(pCur)).FpStmt) @@ -201799,7 +201848,7 @@ func stmtNext(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234057:12: */ // Return values of columns for the row at which the stmt_cursor // is currently pointing. -func stmtColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:234068:12: */ +func stmtColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sqlite3.c:234080:12: */ var pCur uintptr = cur switch i { case STMT_COLUMN_SQL: @@ -201857,7 +201906,7 @@ func stmtColumn(tls *libc.TLS, cur uintptr, ctx uintptr, i int32) int32 { /* sql // Return the rowid for the current row. In this implementation, the // rowid is the same as the output value. -func stmtRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c:234115:12: */ +func stmtRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c:234127:12: */ var pCur uintptr = cur *(*Sqlite_int64)(unsafe.Pointer(pRowid)) = (*Stmt_cursor)(unsafe.Pointer(pCur)).FiRowid return SQLITE_OK @@ -201865,7 +201914,7 @@ func stmtRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) int32 { /* sqlite3.c: // Return TRUE if the cursor has been moved off of the last // row of output. -func stmtEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234125:12: */ +func stmtEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234137:12: */ var pCur uintptr = cur return (libc.Bool32((*Stmt_cursor)(unsafe.Pointer(pCur)).FpStmt == uintptr(0))) } @@ -201874,7 +201923,7 @@ func stmtEof(tls *libc.TLS, cur uintptr) int32 { /* sqlite3.c:234125:12: */ // to the first row of output. This method is always called at least // once prior to any call to stmtColumn() or stmtRowid() or // stmtEof(). -func stmtFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:234136:12: */ +func stmtFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr, argc int32, argv uintptr) int32 { /* sqlite3.c:234148:12: */ var pCur uintptr = pVtabCursor (*Stmt_cursor)(unsafe.Pointer(pCur)).FpStmt = uintptr(0) (*Stmt_cursor)(unsafe.Pointer(pCur)).FiRowid = int64(0) @@ -201885,7 +201934,7 @@ func stmtFilter(tls *libc.TLS, pVtabCursor uintptr, idxNum int32, idxStr uintptr // that uses the stmt virtual table. This routine needs to create // a query plan for each invocation and compute an estimated cost for that // plan. -func stmtBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:234153:12: */ +func stmtBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) int32 { /* sqlite3.c:234165:12: */ (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(500) (*Sqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(500) return SQLITE_OK @@ -201904,9 +201953,9 @@ var stmtModule = Sqlite3_module{ // xCreate FxEof: 0, // xEof - check for end of scan FxColumn: 0, // xColumn - read data FxRowid: 0, // xShadowName -} /* sqlite3.c:234166:23 */ +} /* sqlite3.c:234178:23 */ -func Xsqlite3StmtVtabInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:234195:20: */ +func Xsqlite3StmtVtabInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:234207:20: */ var rc int32 = SQLITE_OK rc = Xsqlite3_create_module(tls, db, ts+42719 /* "sqlite_stmt" */, uintptr(unsafe.Pointer(&stmtModule)), uintptr(0)) return rc @@ -201914,117 +201963,117 @@ func Xsqlite3StmtVtabInit(tls *libc.TLS, db uintptr) int32 { /* sqlite3.c:234195 //************* End of stmt.c *********************************************** // Return the source-id for this library -func Xsqlite3_sourceid(tls *libc.TLS) uintptr { /* sqlite3.c:234228:23: */ - return ts + 42731 /* "2021-04-02 15:20..." */ +func Xsqlite3_sourceid(tls *libc.TLS) uintptr { /* sqlite3.c:234240:23: */ + return ts + 42731 /* "2021-04-19 18:32..." */ } //************************* End of sqlite3.c ***************************** func init() { - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 16 /* .xStep */)) = jsonArrayStep // sqlite3.c:191128:7: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 24 /* .xFinal */)) = jsonArrayFinal // sqlite3.c:191128:24: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 32 /* .xValue */)) = jsonArrayValue // sqlite3.c:191128:41: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 56 /* .xStep */)) = jsonObjectStep // sqlite3.c:191130:7: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 64 /* .xFinal */)) = jsonObjectFinal // sqlite3.c:191130:24: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 72 /* .xValue */)) = jsonObjectValue // sqlite3.c:191130:41: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 0 /* .xStep */)) = geopolyBBoxStep // sqlite3.c:197341:8: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 8 /* .xFinal */)) = geopolyBBoxFinal // sqlite3.c:197341:25: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 24 /* .xSFunc */)) = renameColumnFunc // sqlite3.c:108746:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 96 /* .xSFunc */)) = renameTableFunc // sqlite3.c:108747:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 168 /* .xSFunc */)) = renameTableTest // sqlite3.c:108748:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 240 /* .xSFunc */)) = dropColumnFunc // sqlite3.c:108749:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 24 /* .xSFunc */)) = versionFunc // sqlite3.c:120539:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 96 /* .xSFunc */)) = versionFunc // sqlite3.c:120540:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 168 /* .xSFunc */)) = versionFunc // sqlite3.c:120541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 240 /* .xSFunc */)) = soundexFunc // sqlite3.c:120547:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 312 /* .xSFunc */)) = loadExt // sqlite3.c:120550:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 384 /* .xSFunc */)) = loadExt // sqlite3.c:120551:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 456 /* .xSFunc */)) = compileoptionusedFunc // sqlite3.c:120557:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 528 /* .xSFunc */)) = compileoptiongetFunc // sqlite3.c:120558:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 600 /* .xSFunc */)) = versionFunc // sqlite3.c:120560:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 672 /* .xSFunc */)) = versionFunc // sqlite3.c:120561:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 744 /* .xSFunc */)) = versionFunc // sqlite3.c:120562:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 816 /* .xSFunc */)) = versionFunc // sqlite3.c:120564:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 888 /* .xSFunc */)) = trimFunc // sqlite3.c:120567:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 960 /* .xSFunc */)) = trimFunc // sqlite3.c:120568:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1032 /* .xSFunc */)) = trimFunc // sqlite3.c:120569:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1104 /* .xSFunc */)) = trimFunc // sqlite3.c:120570:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1176 /* .xSFunc */)) = trimFunc // sqlite3.c:120571:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1248 /* .xSFunc */)) = trimFunc // sqlite3.c:120572:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1320 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120573:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1464 /* .xSFunc */)) = minmaxStep // sqlite3.c:120575:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1472 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120575:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1480 /* .xValue */)) = minMaxValue // sqlite3.c:120575:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1536 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120577:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1680 /* .xSFunc */)) = minmaxStep // sqlite3.c:120579:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1688 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120579:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1696 /* .xValue */)) = minMaxValue // sqlite3.c:120579:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1752 /* .xSFunc */)) = typeofFunc // sqlite3.c:120581:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1824 /* .xSFunc */)) = lengthFunc // sqlite3.c:120582:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1896 /* .xSFunc */)) = instrFunc // sqlite3.c:120583:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1968 /* .xSFunc */)) = printfFunc // sqlite3.c:120584:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2040 /* .xSFunc */)) = unicodeFunc // sqlite3.c:120585:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2112 /* .xSFunc */)) = charFunc // sqlite3.c:120586:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2184 /* .xSFunc */)) = absFunc // sqlite3.c:120587:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2256 /* .xSFunc */)) = roundFunc // sqlite3.c:120589:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2328 /* .xSFunc */)) = roundFunc // sqlite3.c:120590:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2400 /* .xSFunc */)) = upperFunc // sqlite3.c:120592:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2472 /* .xSFunc */)) = lowerFunc // sqlite3.c:120593:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2544 /* .xSFunc */)) = hexFunc // sqlite3.c:120594:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2616 /* .xSFunc */)) = versionFunc // sqlite3.c:120595:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2688 /* .xSFunc */)) = randomFunc // sqlite3.c:120596:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2760 /* .xSFunc */)) = randomBlob // sqlite3.c:120597:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2832 /* .xSFunc */)) = nullifFunc // sqlite3.c:120598:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2904 /* .xSFunc */)) = versionFunc // sqlite3.c:120599:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2976 /* .xSFunc */)) = sourceidFunc // sqlite3.c:120600:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3048 /* .xSFunc */)) = errlogFunc // sqlite3.c:120601:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3120 /* .xSFunc */)) = quoteFunc // sqlite3.c:120602:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3192 /* .xSFunc */)) = last_insert_rowid // sqlite3.c:120603:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3264 /* .xSFunc */)) = changes // sqlite3.c:120604:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3336 /* .xSFunc */)) = total_changes // sqlite3.c:120605:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3408 /* .xSFunc */)) = replaceFunc // sqlite3.c:120606:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3480 /* .xSFunc */)) = zeroblobFunc // sqlite3.c:120607:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3552 /* .xSFunc */)) = substrFunc // sqlite3.c:120608:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3624 /* .xSFunc */)) = substrFunc // sqlite3.c:120609:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3696 /* .xSFunc */)) = substrFunc // sqlite3.c:120610:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3768 /* .xSFunc */)) = substrFunc // sqlite3.c:120611:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3840 /* .xSFunc */)) = sumStep // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3848 /* .xFinalize */)) = sumFinalize // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3856 /* .xValue */)) = sumFinalize // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3864 /* .xInverse */)) = sumInverse // sqlite3.c:120612:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3912 /* .xSFunc */)) = sumStep // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3920 /* .xFinalize */)) = totalFinalize // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3928 /* .xValue */)) = totalFinalize // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3936 /* .xInverse */)) = sumInverse // sqlite3.c:120613:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3984 /* .xSFunc */)) = sumStep // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3992 /* .xFinalize */)) = avgFinalize // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4000 /* .xValue */)) = avgFinalize // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4008 /* .xInverse */)) = sumInverse // sqlite3.c:120614:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4056 /* .xSFunc */)) = countStep // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4064 /* .xFinalize */)) = countFinalize // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4072 /* .xValue */)) = countFinalize // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4080 /* .xInverse */)) = countInverse // sqlite3.c:120615:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4128 /* .xSFunc */)) = countStep // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4136 /* .xFinalize */)) = countFinalize // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4144 /* .xValue */)) = countFinalize // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4152 /* .xInverse */)) = countInverse // sqlite3.c:120617:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4200 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4208 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4216 /* .xValue */)) = groupConcatValue // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4224 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120619:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4272 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120621:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4280 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120621:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4288 /* .xValue */)) = groupConcatValue // sqlite3.c:120621:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4296 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120621:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4328 /* .pUserData */)) = uintptr(unsafe.Pointer(&globInfo)) // sqlite3.c:120624:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4344 /* .xSFunc */)) = likeFunc // sqlite3.c:120624:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4400 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120629:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4416 /* .xSFunc */)) = likeFunc // sqlite3.c:120629:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4472 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120630:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4488 /* .xSFunc */)) = likeFunc // sqlite3.c:120630:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4704 /* .xSFunc */)) = signFunc // sqlite3.c:120673:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4776 /* .xSFunc */)) = versionFunc // sqlite3.c:120674:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4848 /* .xSFunc */)) = versionFunc // sqlite3.c:120675:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 16 /* .xStep */)) = jsonArrayStep // sqlite3.c:191140:7: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 24 /* .xFinal */)) = jsonArrayFinal // sqlite3.c:191140:24: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 32 /* .xValue */)) = jsonArrayValue // sqlite3.c:191140:41: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 56 /* .xStep */)) = jsonObjectStep // sqlite3.c:191142:7: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 64 /* .xFinal */)) = jsonObjectFinal // sqlite3.c:191142:24: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg)) + 72 /* .xValue */)) = jsonObjectValue // sqlite3.c:191142:41: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 0 /* .xStep */)) = geopolyBBoxStep // sqlite3.c:197353:8: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAgg1)) + 8 /* .xFinal */)) = geopolyBBoxFinal // sqlite3.c:197353:25: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 24 /* .xSFunc */)) = renameColumnFunc // sqlite3.c:108757:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 96 /* .xSFunc */)) = renameTableFunc // sqlite3.c:108758:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 168 /* .xSFunc */)) = renameTableTest // sqlite3.c:108759:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aAlterTableFuncs)) + 240 /* .xSFunc */)) = dropColumnFunc // sqlite3.c:108760:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 24 /* .xSFunc */)) = versionFunc // sqlite3.c:120550:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 96 /* .xSFunc */)) = versionFunc // sqlite3.c:120551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 168 /* .xSFunc */)) = versionFunc // sqlite3.c:120552:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 240 /* .xSFunc */)) = soundexFunc // sqlite3.c:120558:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 312 /* .xSFunc */)) = loadExt // sqlite3.c:120561:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 384 /* .xSFunc */)) = loadExt // sqlite3.c:120562:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 456 /* .xSFunc */)) = compileoptionusedFunc // sqlite3.c:120568:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 528 /* .xSFunc */)) = compileoptiongetFunc // sqlite3.c:120569:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 600 /* .xSFunc */)) = versionFunc // sqlite3.c:120571:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 672 /* .xSFunc */)) = versionFunc // sqlite3.c:120572:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 744 /* .xSFunc */)) = versionFunc // sqlite3.c:120573:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 816 /* .xSFunc */)) = versionFunc // sqlite3.c:120575:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 888 /* .xSFunc */)) = trimFunc // sqlite3.c:120578:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 960 /* .xSFunc */)) = trimFunc // sqlite3.c:120579:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1032 /* .xSFunc */)) = trimFunc // sqlite3.c:120580:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1104 /* .xSFunc */)) = trimFunc // sqlite3.c:120581:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1176 /* .xSFunc */)) = trimFunc // sqlite3.c:120582:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1248 /* .xSFunc */)) = trimFunc // sqlite3.c:120583:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1320 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120584:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1464 /* .xSFunc */)) = minmaxStep // sqlite3.c:120586:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1472 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120586:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1480 /* .xValue */)) = minMaxValue // sqlite3.c:120586:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1536 /* .xSFunc */)) = minmaxFunc // sqlite3.c:120588:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1680 /* .xSFunc */)) = minmaxStep // sqlite3.c:120590:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1688 /* .xFinalize */)) = minMaxFinalize // sqlite3.c:120590:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1696 /* .xValue */)) = minMaxValue // sqlite3.c:120590:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1752 /* .xSFunc */)) = typeofFunc // sqlite3.c:120592:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1824 /* .xSFunc */)) = lengthFunc // sqlite3.c:120593:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1896 /* .xSFunc */)) = instrFunc // sqlite3.c:120594:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 1968 /* .xSFunc */)) = printfFunc // sqlite3.c:120595:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2040 /* .xSFunc */)) = unicodeFunc // sqlite3.c:120596:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2112 /* .xSFunc */)) = charFunc // sqlite3.c:120597:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2184 /* .xSFunc */)) = absFunc // sqlite3.c:120598:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2256 /* .xSFunc */)) = roundFunc // sqlite3.c:120600:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2328 /* .xSFunc */)) = roundFunc // sqlite3.c:120601:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2400 /* .xSFunc */)) = upperFunc // sqlite3.c:120603:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2472 /* .xSFunc */)) = lowerFunc // sqlite3.c:120604:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2544 /* .xSFunc */)) = hexFunc // sqlite3.c:120605:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2616 /* .xSFunc */)) = versionFunc // sqlite3.c:120606:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2688 /* .xSFunc */)) = randomFunc // sqlite3.c:120607:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2760 /* .xSFunc */)) = randomBlob // sqlite3.c:120608:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2832 /* .xSFunc */)) = nullifFunc // sqlite3.c:120609:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2904 /* .xSFunc */)) = versionFunc // sqlite3.c:120610:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 2976 /* .xSFunc */)) = sourceidFunc // sqlite3.c:120611:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3048 /* .xSFunc */)) = errlogFunc // sqlite3.c:120612:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3120 /* .xSFunc */)) = quoteFunc // sqlite3.c:120613:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3192 /* .xSFunc */)) = last_insert_rowid // sqlite3.c:120614:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3264 /* .xSFunc */)) = changes // sqlite3.c:120615:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3336 /* .xSFunc */)) = total_changes // sqlite3.c:120616:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3408 /* .xSFunc */)) = replaceFunc // sqlite3.c:120617:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3480 /* .xSFunc */)) = zeroblobFunc // sqlite3.c:120618:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3552 /* .xSFunc */)) = substrFunc // sqlite3.c:120619:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3624 /* .xSFunc */)) = substrFunc // sqlite3.c:120620:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3696 /* .xSFunc */)) = substrFunc // sqlite3.c:120621:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3768 /* .xSFunc */)) = substrFunc // sqlite3.c:120622:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3840 /* .xSFunc */)) = sumStep // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3848 /* .xFinalize */)) = sumFinalize // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3856 /* .xValue */)) = sumFinalize // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3864 /* .xInverse */)) = sumInverse // sqlite3.c:120623:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3912 /* .xSFunc */)) = sumStep // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3920 /* .xFinalize */)) = totalFinalize // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3928 /* .xValue */)) = totalFinalize // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3936 /* .xInverse */)) = sumInverse // sqlite3.c:120624:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3984 /* .xSFunc */)) = sumStep // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 3992 /* .xFinalize */)) = avgFinalize // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4000 /* .xValue */)) = avgFinalize // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4008 /* .xInverse */)) = sumInverse // sqlite3.c:120625:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4056 /* .xSFunc */)) = countStep // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4064 /* .xFinalize */)) = countFinalize // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4072 /* .xValue */)) = countFinalize // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4080 /* .xInverse */)) = countInverse // sqlite3.c:120626:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4128 /* .xSFunc */)) = countStep // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4136 /* .xFinalize */)) = countFinalize // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4144 /* .xValue */)) = countFinalize // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4152 /* .xInverse */)) = countInverse // sqlite3.c:120628:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4200 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4208 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4216 /* .xValue */)) = groupConcatValue // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4224 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120630:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4272 /* .xSFunc */)) = groupConcatStep // sqlite3.c:120632:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4280 /* .xFinalize */)) = groupConcatFinalize // sqlite3.c:120632:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4288 /* .xValue */)) = groupConcatValue // sqlite3.c:120632:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4296 /* .xInverse */)) = groupConcatInverse // sqlite3.c:120632:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4328 /* .pUserData */)) = uintptr(unsafe.Pointer(&globInfo)) // sqlite3.c:120635:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4344 /* .xSFunc */)) = likeFunc // sqlite3.c:120635:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4400 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120640:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4416 /* .xSFunc */)) = likeFunc // sqlite3.c:120640:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4472 /* .pUserData */)) = uintptr(unsafe.Pointer(&likeInfoNorm)) // sqlite3.c:120641:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4488 /* .xSFunc */)) = likeFunc // sqlite3.c:120641:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4704 /* .xSFunc */)) = signFunc // sqlite3.c:120684:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4776 /* .xSFunc */)) = versionFunc // sqlite3.c:120685:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aBuiltinFunc)) + 4848 /* .xSFunc */)) = versionFunc // sqlite3.c:120686:5: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 8 /* .pUserData */)) = uintptr(unsafe.Pointer(&Xsqlite3Config)) // sqlite3.c:23227:5: *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 24 /* .xSFunc */)) = juliandayFunc // sqlite3.c:23227:5: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 80 /* .pUserData */)) = uintptr(unsafe.Pointer(&Xsqlite3Config)) // sqlite3.c:23228:5: @@ -202038,40 +202087,40 @@ func init() { *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 384 /* .xSFunc */)) = ctimeFunc // sqlite3.c:23232:5: *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 456 /* .xSFunc */)) = ctimestampFunc // sqlite3.c:23233:5: *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aDateTimeFuncs)) + 528 /* .xSFunc */)) = cdateFunc // sqlite3.c:23234:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 16 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191098:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 40 /* .xFunc */)) = jsonArrayFunc // sqlite3.c:191099:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 64 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191100:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 88 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191101:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 112 /* .xFunc */)) = jsonExtractFunc // sqlite3.c:191102:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 136 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191103:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 160 /* .xFunc */)) = jsonObjectFunc // sqlite3.c:191104:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 184 /* .xFunc */)) = jsonPatchFunc // sqlite3.c:191105:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 208 /* .xFunc */)) = jsonQuoteFunc // sqlite3.c:191106:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 232 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191107:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 256 /* .xFunc */)) = jsonReplaceFunc // sqlite3.c:191108:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 280 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191109:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 304 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191110:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 328 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191111:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 352 /* .xFunc */)) = jsonValidFunc // sqlite3.c:191112:39: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 0 /* .xFunc */)) = geopolyAreaFunc // sqlite3.c:197323:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 24 /* .xFunc */)) = geopolyBlobFunc // sqlite3.c:197324:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 48 /* .xFunc */)) = geopolyJsonFunc // sqlite3.c:197325:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 72 /* .xFunc */)) = geopolySvgFunc // sqlite3.c:197326:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 96 /* .xFunc */)) = geopolyWithinFunc // sqlite3.c:197327:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 120 /* .xFunc */)) = geopolyContainsPointFunc // sqlite3.c:197328:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 144 /* .xFunc */)) = geopolyOverlapFunc // sqlite3.c:197329:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 168 /* .xFunc */)) = geopolyDebugFunc // sqlite3.c:197330:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 192 /* .xFunc */)) = geopolyBBoxFunc // sqlite3.c:197331:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 216 /* .xFunc */)) = geopolyXformFunc // sqlite3.c:197332:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 240 /* .xFunc */)) = geopolyRegularFunc // sqlite3.c:197333:8: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 264 /* .xFunc */)) = geopolyCcwFunc // sqlite3.c:197334:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 16 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191110:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 40 /* .xFunc */)) = jsonArrayFunc // sqlite3.c:191111:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 64 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191112:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 88 /* .xFunc */)) = jsonArrayLengthFunc // sqlite3.c:191113:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 112 /* .xFunc */)) = jsonExtractFunc // sqlite3.c:191114:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 136 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191115:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 160 /* .xFunc */)) = jsonObjectFunc // sqlite3.c:191116:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 184 /* .xFunc */)) = jsonPatchFunc // sqlite3.c:191117:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 208 /* .xFunc */)) = jsonQuoteFunc // sqlite3.c:191118:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 232 /* .xFunc */)) = jsonRemoveFunc // sqlite3.c:191119:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 256 /* .xFunc */)) = jsonReplaceFunc // sqlite3.c:191120:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 280 /* .xFunc */)) = jsonSetFunc // sqlite3.c:191121:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 304 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191122:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 328 /* .xFunc */)) = jsonTypeFunc // sqlite3.c:191123:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc)) + 352 /* .xFunc */)) = jsonValidFunc // sqlite3.c:191124:39: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 0 /* .xFunc */)) = geopolyAreaFunc // sqlite3.c:197335:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 24 /* .xFunc */)) = geopolyBlobFunc // sqlite3.c:197336:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 48 /* .xFunc */)) = geopolyJsonFunc // sqlite3.c:197337:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 72 /* .xFunc */)) = geopolySvgFunc // sqlite3.c:197338:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 96 /* .xFunc */)) = geopolyWithinFunc // sqlite3.c:197339:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 120 /* .xFunc */)) = geopolyContainsPointFunc // sqlite3.c:197340:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 144 /* .xFunc */)) = geopolyOverlapFunc // sqlite3.c:197341:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 168 /* .xFunc */)) = geopolyDebugFunc // sqlite3.c:197342:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 192 /* .xFunc */)) = geopolyBBoxFunc // sqlite3.c:197343:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 216 /* .xFunc */)) = geopolyXformFunc // sqlite3.c:197344:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 240 /* .xFunc */)) = geopolyRegularFunc // sqlite3.c:197345:8: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aFunc1)) + 264 /* .xFunc */)) = geopolyCcwFunc // sqlite3.c:197346:8: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 8 /* .pMethods */)) = uintptr(unsafe.Pointer(&posixIoMethods)) // sqlite3.c:39342:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 24 /* .pMethods */)) = uintptr(unsafe.Pointer(&posixIoMethods)) // sqlite3.c:39343:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 40 /* .pMethods */)) = uintptr(unsafe.Pointer(&afpIoMethods)) // sqlite3.c:39344:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 56 /* .pMethods */)) = uintptr(unsafe.Pointer(&afpIoMethods)) // sqlite3.c:39345:17: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMap)) + 72 /* .pMethods */)) = uintptr(unsafe.Pointer(&nolockIoMethods)) // sqlite3.c:39346:17: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 8 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonEachModule)) // sqlite3.c:191137:31: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 24 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonTreeModule)) // sqlite3.c:191138:31: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 8 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonEachModule)) // sqlite3.c:191149:31: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aMod)) + 24 /* .pModule */)) = uintptr(unsafe.Pointer(&jsonTreeModule)) // sqlite3.c:191150:31: *(*Sqlite3_syscall_ptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aSyscall)) + 8 /* .pCurrent */)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr, int32, int32) int32 }{posixOpen})) // sqlite3.c:34250:21: @@ -202291,81 +202340,81 @@ func init() { *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_syscall_ptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&aVfs)) + 1488 /* .xSetSystemCall */)) = unixSetSystemCall // sqlite3.c:41878:5: *(*func(*libc.TLS, uintptr, uintptr) Sqlite3_syscall_ptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aVfs)) + 1496 /* .xGetSystemCall */)) = unixGetSystemCall // sqlite3.c:41878:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aVfs)) + 1504 /* .xNextSystemCall */)) = unixNextSystemCall // sqlite3.c:41878:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 24 /* .xSFunc */)) = row_numberStepFunc // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 32 /* .xFinalize */)) = row_numberValueFunc // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 40 /* .xValue */)) = row_numberValueFunc // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 48 /* .xInverse */)) = noopStepFunc // sqlite3.c:154537:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 56 /* .zName */)) = uintptr(unsafe.Pointer(&row_numberName)) // sqlite3.c:154537:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 96 /* .xSFunc */)) = dense_rankStepFunc // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 104 /* .xFinalize */)) = dense_rankValueFunc // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 112 /* .xValue */)) = dense_rankValueFunc // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 120 /* .xInverse */)) = noopStepFunc // sqlite3.c:154538:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 128 /* .zName */)) = uintptr(unsafe.Pointer(&dense_rankName)) // sqlite3.c:154538:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 168 /* .xSFunc */)) = rankStepFunc // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 176 /* .xFinalize */)) = rankValueFunc // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 184 /* .xValue */)) = rankValueFunc // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 192 /* .xInverse */)) = noopStepFunc // sqlite3.c:154539:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 200 /* .zName */)) = uintptr(unsafe.Pointer(&rankName)) // sqlite3.c:154539:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 240 /* .xSFunc */)) = percent_rankStepFunc // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 248 /* .xFinalize */)) = percent_rankValueFunc // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 256 /* .xValue */)) = percent_rankValueFunc // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 264 /* .xInverse */)) = percent_rankInvFunc // sqlite3.c:154540:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 272 /* .zName */)) = uintptr(unsafe.Pointer(&percent_rankName)) // sqlite3.c:154540:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 312 /* .xSFunc */)) = cume_distStepFunc // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 320 /* .xFinalize */)) = cume_distValueFunc // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 328 /* .xValue */)) = cume_distValueFunc // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 336 /* .xInverse */)) = cume_distInvFunc // sqlite3.c:154541:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 344 /* .zName */)) = uintptr(unsafe.Pointer(&cume_distName)) // sqlite3.c:154541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 384 /* .xSFunc */)) = ntileStepFunc // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 392 /* .xFinalize */)) = ntileValueFunc // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 400 /* .xValue */)) = ntileValueFunc // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 408 /* .xInverse */)) = ntileInvFunc // sqlite3.c:154542:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 416 /* .zName */)) = uintptr(unsafe.Pointer(&ntileName)) // sqlite3.c:154542:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 456 /* .xSFunc */)) = last_valueStepFunc // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 464 /* .xFinalize */)) = last_valueFinalizeFunc // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 472 /* .xValue */)) = last_valueValueFunc // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 480 /* .xInverse */)) = last_valueInvFunc // sqlite3.c:154543:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 488 /* .zName */)) = uintptr(unsafe.Pointer(&last_valueName)) // sqlite3.c:154543:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 528 /* .xSFunc */)) = nth_valueStepFunc // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 536 /* .xFinalize */)) = nth_valueFinalizeFunc // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 544 /* .xValue */)) = noopValueFunc // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 552 /* .xInverse */)) = noopStepFunc // sqlite3.c:154544:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 560 /* .zName */)) = uintptr(unsafe.Pointer(&nth_valueName)) // sqlite3.c:154544:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 600 /* .xSFunc */)) = first_valueStepFunc // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 608 /* .xFinalize */)) = first_valueFinalizeFunc // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 616 /* .xValue */)) = noopValueFunc // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 624 /* .xInverse */)) = noopStepFunc // sqlite3.c:154545:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 632 /* .zName */)) = uintptr(unsafe.Pointer(&first_valueName)) // sqlite3.c:154545:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 672 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 680 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 688 /* .xValue */)) = noopValueFunc // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 696 /* .xInverse */)) = noopStepFunc // sqlite3.c:154546:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 704 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154546:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 744 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 752 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 760 /* .xValue */)) = noopValueFunc // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 768 /* .xInverse */)) = noopStepFunc // sqlite3.c:154547:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 776 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154547:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 816 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 824 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 832 /* .xValue */)) = noopValueFunc // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 840 /* .xInverse */)) = noopStepFunc // sqlite3.c:154548:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 848 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154548:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 888 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 896 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 904 /* .xValue */)) = noopValueFunc // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 912 /* .xInverse */)) = noopStepFunc // sqlite3.c:154549:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 920 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154549:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 960 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 968 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 976 /* .xValue */)) = noopValueFunc // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 984 /* .xInverse */)) = noopStepFunc // sqlite3.c:154550:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 992 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154550:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1032 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154551:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1040 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154551:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1048 /* .xValue */)) = noopValueFunc // sqlite3.c:154551:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1056 /* .xInverse */)) = noopStepFunc // sqlite3.c:154551:5: - *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1064 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 24 /* .xSFunc */)) = row_numberStepFunc // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 32 /* .xFinalize */)) = row_numberValueFunc // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 40 /* .xValue */)) = row_numberValueFunc // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 48 /* .xInverse */)) = noopStepFunc // sqlite3.c:154549:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 56 /* .zName */)) = uintptr(unsafe.Pointer(&row_numberName)) // sqlite3.c:154549:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 96 /* .xSFunc */)) = dense_rankStepFunc // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 104 /* .xFinalize */)) = dense_rankValueFunc // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 112 /* .xValue */)) = dense_rankValueFunc // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 120 /* .xInverse */)) = noopStepFunc // sqlite3.c:154550:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 128 /* .zName */)) = uintptr(unsafe.Pointer(&dense_rankName)) // sqlite3.c:154550:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 168 /* .xSFunc */)) = rankStepFunc // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 176 /* .xFinalize */)) = rankValueFunc // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 184 /* .xValue */)) = rankValueFunc // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 192 /* .xInverse */)) = noopStepFunc // sqlite3.c:154551:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 200 /* .zName */)) = uintptr(unsafe.Pointer(&rankName)) // sqlite3.c:154551:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 240 /* .xSFunc */)) = percent_rankStepFunc // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 248 /* .xFinalize */)) = percent_rankValueFunc // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 256 /* .xValue */)) = percent_rankValueFunc // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 264 /* .xInverse */)) = percent_rankInvFunc // sqlite3.c:154552:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 272 /* .zName */)) = uintptr(unsafe.Pointer(&percent_rankName)) // sqlite3.c:154552:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 312 /* .xSFunc */)) = cume_distStepFunc // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 320 /* .xFinalize */)) = cume_distValueFunc // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 328 /* .xValue */)) = cume_distValueFunc // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 336 /* .xInverse */)) = cume_distInvFunc // sqlite3.c:154553:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 344 /* .zName */)) = uintptr(unsafe.Pointer(&cume_distName)) // sqlite3.c:154553:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 384 /* .xSFunc */)) = ntileStepFunc // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 392 /* .xFinalize */)) = ntileValueFunc // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 400 /* .xValue */)) = ntileValueFunc // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 408 /* .xInverse */)) = ntileInvFunc // sqlite3.c:154554:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 416 /* .zName */)) = uintptr(unsafe.Pointer(&ntileName)) // sqlite3.c:154554:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 456 /* .xSFunc */)) = last_valueStepFunc // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 464 /* .xFinalize */)) = last_valueFinalizeFunc // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 472 /* .xValue */)) = last_valueValueFunc // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 480 /* .xInverse */)) = last_valueInvFunc // sqlite3.c:154555:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 488 /* .zName */)) = uintptr(unsafe.Pointer(&last_valueName)) // sqlite3.c:154555:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 528 /* .xSFunc */)) = nth_valueStepFunc // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 536 /* .xFinalize */)) = nth_valueFinalizeFunc // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 544 /* .xValue */)) = noopValueFunc // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 552 /* .xInverse */)) = noopStepFunc // sqlite3.c:154556:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 560 /* .zName */)) = uintptr(unsafe.Pointer(&nth_valueName)) // sqlite3.c:154556:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 600 /* .xSFunc */)) = first_valueStepFunc // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 608 /* .xFinalize */)) = first_valueFinalizeFunc // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 616 /* .xValue */)) = noopValueFunc // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 624 /* .xInverse */)) = noopStepFunc // sqlite3.c:154557:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 632 /* .zName */)) = uintptr(unsafe.Pointer(&first_valueName)) // sqlite3.c:154557:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 672 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 680 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 688 /* .xValue */)) = noopValueFunc // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 696 /* .xInverse */)) = noopStepFunc // sqlite3.c:154558:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 704 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154558:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 744 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 752 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 760 /* .xValue */)) = noopValueFunc // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 768 /* .xInverse */)) = noopStepFunc // sqlite3.c:154559:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 776 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154559:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 816 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 824 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 832 /* .xValue */)) = noopValueFunc // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 840 /* .xInverse */)) = noopStepFunc // sqlite3.c:154560:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 848 /* .zName */)) = uintptr(unsafe.Pointer(&leadName)) // sqlite3.c:154560:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 888 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 896 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 904 /* .xValue */)) = noopValueFunc // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 912 /* .xInverse */)) = noopStepFunc // sqlite3.c:154561:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 920 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154561:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 960 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 968 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 976 /* .xValue */)) = noopValueFunc // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 984 /* .xInverse */)) = noopStepFunc // sqlite3.c:154562:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 992 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154562:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1032 /* .xSFunc */)) = noopStepFunc // sqlite3.c:154563:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1040 /* .xFinalize */)) = noopValueFunc // sqlite3.c:154563:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1048 /* .xValue */)) = noopValueFunc // sqlite3.c:154563:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1056 /* .xInverse */)) = noopStepFunc // sqlite3.c:154563:5: + *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&aWindowFuncs)) + 1064 /* .zName */)) = uintptr(unsafe.Pointer(&lagName)) // sqlite3.c:154563:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoFinder)) + 0)) = afpIoFinderImpl // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 8 /* .xClose */)) = afpClose // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39274:1: @@ -202384,7 +202433,7 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39274:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&afpIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39274:1: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&attach_func)) + 24 /* .xSFunc */)) = attachFunc // sqlite3.c:111128:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&attach_func)) + 24 /* .xSFunc */)) = attachFunc // sqlite3.c:111139:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&autolockIoFinder)) + 0)) = autolockIoFinderImpl // sqlite3.c:39388:55: *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&bytecodevtabModule)) + 16 /* .xConnect */)) = bytecodevtabConnect // sqlite3.c:97902:21: *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&bytecodevtabModule)) + 24 /* .xBestIndex */)) = bytecodevtabBestIndex // sqlite3.c:97903:21: @@ -202396,32 +202445,32 @@ func init() { *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&bytecodevtabModule)) + 80 /* .xEof */)) = bytecodevtabEof // sqlite3.c:97910:21: *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&bytecodevtabModule)) + 88 /* .xColumn */)) = bytecodevtabColumn // sqlite3.c:97911:21: *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&bytecodevtabModule)) + 96 /* .xRowid */)) = bytecodevtabRowid // sqlite3.c:97912:21: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 8 /* .xCreate */)) = dbpageConnect // sqlite3.c:205530:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 16 /* .xConnect */)) = dbpageConnect // sqlite3.c:205531:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 24 /* .xBestIndex */)) = dbpageBestIndex // sqlite3.c:205532:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 32 /* .xDisconnect */)) = dbpageDisconnect // sqlite3.c:205533:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 40 /* .xDestroy */)) = dbpageDisconnect // sqlite3.c:205534:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 48 /* .xOpen */)) = dbpageOpen // sqlite3.c:205535:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 56 /* .xClose */)) = dbpageClose // sqlite3.c:205536:5: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 64 /* .xFilter */)) = dbpageFilter // sqlite3.c:205537:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 72 /* .xNext */)) = dbpageNext // sqlite3.c:205538:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 80 /* .xEof */)) = dbpageEof // sqlite3.c:205539:5: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 88 /* .xColumn */)) = dbpageColumn // sqlite3.c:205540:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 96 /* .xRowid */)) = dbpageRowid // sqlite3.c:205541:5: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 104 /* .xUpdate */)) = dbpageUpdate // sqlite3.c:205542:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 112 /* .xBegin */)) = dbpageBegin // sqlite3.c:205543:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 8 /* .xCreate */)) = statConnect // sqlite3.c:205111:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 16 /* .xConnect */)) = statConnect // sqlite3.c:205112:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 24 /* .xBestIndex */)) = statBestIndex // sqlite3.c:205113:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 32 /* .xDisconnect */)) = statDisconnect // sqlite3.c:205114:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 40 /* .xDestroy */)) = statDisconnect // sqlite3.c:205115:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 48 /* .xOpen */)) = statOpen // sqlite3.c:205116:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 56 /* .xClose */)) = statClose // sqlite3.c:205117:5: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 64 /* .xFilter */)) = statFilter // sqlite3.c:205118:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 72 /* .xNext */)) = statNext // sqlite3.c:205119:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 80 /* .xEof */)) = statEof // sqlite3.c:205120:5: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 88 /* .xColumn */)) = statColumn // sqlite3.c:205121:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 96 /* .xRowid */)) = statRowid // sqlite3.c:205122:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 8 /* .xCreate */)) = dbpageConnect // sqlite3.c:205542:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 16 /* .xConnect */)) = dbpageConnect // sqlite3.c:205543:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 24 /* .xBestIndex */)) = dbpageBestIndex // sqlite3.c:205544:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 32 /* .xDisconnect */)) = dbpageDisconnect // sqlite3.c:205545:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 40 /* .xDestroy */)) = dbpageDisconnect // sqlite3.c:205546:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 48 /* .xOpen */)) = dbpageOpen // sqlite3.c:205547:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 56 /* .xClose */)) = dbpageClose // sqlite3.c:205548:5: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 64 /* .xFilter */)) = dbpageFilter // sqlite3.c:205549:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 72 /* .xNext */)) = dbpageNext // sqlite3.c:205550:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 80 /* .xEof */)) = dbpageEof // sqlite3.c:205551:5: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 88 /* .xColumn */)) = dbpageColumn // sqlite3.c:205552:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 96 /* .xRowid */)) = dbpageRowid // sqlite3.c:205553:5: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 104 /* .xUpdate */)) = dbpageUpdate // sqlite3.c:205554:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbpage_module)) + 112 /* .xBegin */)) = dbpageBegin // sqlite3.c:205555:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 8 /* .xCreate */)) = statConnect // sqlite3.c:205123:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 16 /* .xConnect */)) = statConnect // sqlite3.c:205124:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 24 /* .xBestIndex */)) = statBestIndex // sqlite3.c:205125:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 32 /* .xDisconnect */)) = statDisconnect // sqlite3.c:205126:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 40 /* .xDestroy */)) = statDisconnect // sqlite3.c:205127:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 48 /* .xOpen */)) = statOpen // sqlite3.c:205128:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 56 /* .xClose */)) = statClose // sqlite3.c:205129:5: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 64 /* .xFilter */)) = statFilter // sqlite3.c:205130:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 72 /* .xNext */)) = statNext // sqlite3.c:205131:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 80 /* .xEof */)) = statEof // sqlite3.c:205132:5: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 88 /* .xColumn */)) = statColumn // sqlite3.c:205133:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dbstat_module)) + 96 /* .xRowid */)) = statRowid // sqlite3.c:205134:5: *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods)) + 0 /* .xMalloc */)) = sqlite3MemMalloc // sqlite3.c:24117:6: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods)) + 8 /* .xFree */)) = sqlite3MemFree // sqlite3.c:24118:6: *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods)) + 16 /* .xRealloc */)) = sqlite3MemRealloc // sqlite3.c:24119:6: @@ -202440,7 +202489,7 @@ func init() { *(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods1)) + 80 /* .xTruncate */)) = pcache1Truncate // sqlite3.c:51403:5: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods1)) + 88 /* .xDestroy */)) = pcache1Destroy // sqlite3.c:51404:5: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&defaultMethods1)) + 96 /* .xShrink */)) = pcache1Shrink // sqlite3.c:51405:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&detach_func)) + 24 /* .xSFunc */)) = detachFunc // sqlite3.c:111108:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&detach_func)) + 24 /* .xSFunc */)) = detachFunc // sqlite3.c:111119:5: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&dotlockIoFinder)) + 0)) = dotlockIoFinderImpl // sqlite3.c:39236:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dotlockIoMethods)) + 8 /* .xClose */)) = dotlockClose // sqlite3.c:39236:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&dotlockIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39236:1: @@ -202477,82 +202526,82 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&flockIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39248:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&flockIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39248:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&flockIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39248:1: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 8 /* .xCreate */)) = fts5CreateMethod // sqlite3.c:229318:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 16 /* .xConnect */)) = fts5ConnectMethod // sqlite3.c:229319:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 24 /* .xBestIndex */)) = fts5BestIndexMethod // sqlite3.c:229320:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 32 /* .xDisconnect */)) = fts5DisconnectMethod // sqlite3.c:229321:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 40 /* .xDestroy */)) = fts5DestroyMethod // sqlite3.c:229322:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 48 /* .xOpen */)) = fts5OpenMethod // sqlite3.c:229323:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 56 /* .xClose */)) = fts5CloseMethod // sqlite3.c:229324:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 64 /* .xFilter */)) = fts5FilterMethod // sqlite3.c:229325:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 72 /* .xNext */)) = fts5NextMethod // sqlite3.c:229326:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 80 /* .xEof */)) = fts5EofMethod // sqlite3.c:229327:25: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 88 /* .xColumn */)) = fts5ColumnMethod // sqlite3.c:229328:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 96 /* .xRowid */)) = fts5RowidMethod // sqlite3.c:229329:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 104 /* .xUpdate */)) = fts5UpdateMethod // sqlite3.c:229330:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 112 /* .xBegin */)) = fts5BeginMethod // sqlite3.c:229331:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 120 /* .xSync */)) = fts5SyncMethod // sqlite3.c:229332:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 128 /* .xCommit */)) = fts5CommitMethod // sqlite3.c:229333:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 136 /* .xRollback */)) = fts5RollbackMethod // sqlite3.c:229334:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 144 /* .xFindFunction */)) = fts5FindFunctionMethod // sqlite3.c:229335:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 152 /* .xRename */)) = fts5RenameMethod // sqlite3.c:229336:25: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 160 /* .xSavepoint */)) = fts5SavepointMethod // sqlite3.c:229337:25: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 168 /* .xRelease */)) = fts5ReleaseMethod // sqlite3.c:229338:25: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 176 /* .xRollbackTo */)) = fts5RollbackToMethod // sqlite3.c:229339:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 184 /* .xShadowName */)) = fts5ShadowName // sqlite3.c:229340:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 8 /* .xCreate */)) = fts5VocabCreateMethod // sqlite3.c:233886:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 16 /* .xConnect */)) = fts5VocabConnectMethod // sqlite3.c:233887:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 24 /* .xBestIndex */)) = fts5VocabBestIndexMethod // sqlite3.c:233888:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 32 /* .xDisconnect */)) = fts5VocabDisconnectMethod // sqlite3.c:233889:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 40 /* .xDestroy */)) = fts5VocabDestroyMethod // sqlite3.c:233890:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 48 /* .xOpen */)) = fts5VocabOpenMethod // sqlite3.c:233891:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 56 /* .xClose */)) = fts5VocabCloseMethod // sqlite3.c:233892:25: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 64 /* .xFilter */)) = fts5VocabFilterMethod // sqlite3.c:233893:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 72 /* .xNext */)) = fts5VocabNextMethod // sqlite3.c:233894:25: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 80 /* .xEof */)) = fts5VocabEofMethod // sqlite3.c:233895:25: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 88 /* .xColumn */)) = fts5VocabColumnMethod // sqlite3.c:233896:25: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 96 /* .xRowid */)) = fts5VocabRowidMethod // sqlite3.c:233897:25: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 8 /* .xCreate */)) = geopolyCreate // sqlite3.c:197290:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 16 /* .xConnect */)) = geopolyConnect // sqlite3.c:197291:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 24 /* .xBestIndex */)) = geopolyBestIndex // sqlite3.c:197292:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:197293:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:197294:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:197295:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:197296:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 64 /* .xFilter */)) = geopolyFilter // sqlite3.c:197297:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:197298:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:197299:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 88 /* .xColumn */)) = geopolyColumn // sqlite3.c:197300:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:197301:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 104 /* .xUpdate */)) = geopolyUpdate // sqlite3.c:197302:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:197303:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:197304:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:197305:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:197306:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 144 /* .xFindFunction */)) = geopolyFindFunction // sqlite3.c:197307:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:197308:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:197309:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:197312:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191030:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191031:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191032:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 48 /* .xOpen */)) = jsonEachOpenEach // sqlite3.c:191034:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191035:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191036:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191037:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191038:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191039:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191040:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191058:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191059:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191060:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 48 /* .xOpen */)) = jsonEachOpenTree // sqlite3.c:191062:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191063:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191064:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191065:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191066:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191067:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191068:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 8 /* .xCreate */)) = fts5CreateMethod // sqlite3.c:229330:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 16 /* .xConnect */)) = fts5ConnectMethod // sqlite3.c:229331:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 24 /* .xBestIndex */)) = fts5BestIndexMethod // sqlite3.c:229332:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 32 /* .xDisconnect */)) = fts5DisconnectMethod // sqlite3.c:229333:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 40 /* .xDestroy */)) = fts5DestroyMethod // sqlite3.c:229334:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 48 /* .xOpen */)) = fts5OpenMethod // sqlite3.c:229335:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 56 /* .xClose */)) = fts5CloseMethod // sqlite3.c:229336:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 64 /* .xFilter */)) = fts5FilterMethod // sqlite3.c:229337:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 72 /* .xNext */)) = fts5NextMethod // sqlite3.c:229338:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 80 /* .xEof */)) = fts5EofMethod // sqlite3.c:229339:25: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 88 /* .xColumn */)) = fts5ColumnMethod // sqlite3.c:229340:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 96 /* .xRowid */)) = fts5RowidMethod // sqlite3.c:229341:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 104 /* .xUpdate */)) = fts5UpdateMethod // sqlite3.c:229342:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 112 /* .xBegin */)) = fts5BeginMethod // sqlite3.c:229343:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 120 /* .xSync */)) = fts5SyncMethod // sqlite3.c:229344:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 128 /* .xCommit */)) = fts5CommitMethod // sqlite3.c:229345:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 136 /* .xRollback */)) = fts5RollbackMethod // sqlite3.c:229346:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 144 /* .xFindFunction */)) = fts5FindFunctionMethod // sqlite3.c:229347:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 152 /* .xRename */)) = fts5RenameMethod // sqlite3.c:229348:25: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 160 /* .xSavepoint */)) = fts5SavepointMethod // sqlite3.c:229349:25: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 168 /* .xRelease */)) = fts5ReleaseMethod // sqlite3.c:229350:25: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 176 /* .xRollbackTo */)) = fts5RollbackToMethod // sqlite3.c:229351:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Mod)) + 184 /* .xShadowName */)) = fts5ShadowName // sqlite3.c:229352:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 8 /* .xCreate */)) = fts5VocabCreateMethod // sqlite3.c:233898:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 16 /* .xConnect */)) = fts5VocabConnectMethod // sqlite3.c:233899:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 24 /* .xBestIndex */)) = fts5VocabBestIndexMethod // sqlite3.c:233900:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 32 /* .xDisconnect */)) = fts5VocabDisconnectMethod // sqlite3.c:233901:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 40 /* .xDestroy */)) = fts5VocabDestroyMethod // sqlite3.c:233902:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 48 /* .xOpen */)) = fts5VocabOpenMethod // sqlite3.c:233903:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 56 /* .xClose */)) = fts5VocabCloseMethod // sqlite3.c:233904:25: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 64 /* .xFilter */)) = fts5VocabFilterMethod // sqlite3.c:233905:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 72 /* .xNext */)) = fts5VocabNextMethod // sqlite3.c:233906:25: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 80 /* .xEof */)) = fts5VocabEofMethod // sqlite3.c:233907:25: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 88 /* .xColumn */)) = fts5VocabColumnMethod // sqlite3.c:233908:25: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&fts5Vocab)) + 96 /* .xRowid */)) = fts5VocabRowidMethod // sqlite3.c:233909:25: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 8 /* .xCreate */)) = geopolyCreate // sqlite3.c:197302:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 16 /* .xConnect */)) = geopolyConnect // sqlite3.c:197303:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 24 /* .xBestIndex */)) = geopolyBestIndex // sqlite3.c:197304:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:197305:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:197306:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:197307:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:197308:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 64 /* .xFilter */)) = geopolyFilter // sqlite3.c:197309:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:197310:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:197311:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 88 /* .xColumn */)) = geopolyColumn // sqlite3.c:197312:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:197313:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 104 /* .xUpdate */)) = geopolyUpdate // sqlite3.c:197314:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:197315:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:197316:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:197317:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:197318:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 144 /* .xFindFunction */)) = geopolyFindFunction // sqlite3.c:197319:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:197320:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:197321:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&geopolyModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:197324:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191042:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191043:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191044:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 48 /* .xOpen */)) = jsonEachOpenEach // sqlite3.c:191046:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191047:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191048:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191049:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191050:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191051:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonEachModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191052:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 16 /* .xConnect */)) = jsonEachConnect // sqlite3.c:191070:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 24 /* .xBestIndex */)) = jsonEachBestIndex // sqlite3.c:191071:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 32 /* .xDisconnect */)) = jsonEachDisconnect // sqlite3.c:191072:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 48 /* .xOpen */)) = jsonEachOpenTree // sqlite3.c:191074:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 56 /* .xClose */)) = jsonEachClose // sqlite3.c:191075:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 64 /* .xFilter */)) = jsonEachFilter // sqlite3.c:191076:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 72 /* .xNext */)) = jsonEachNext // sqlite3.c:191077:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 80 /* .xEof */)) = jsonEachEof // sqlite3.c:191078:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 88 /* .xColumn */)) = jsonEachColumn // sqlite3.c:191079:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&jsonTreeModule)) + 96 /* .xRowid */)) = jsonEachRowid // sqlite3.c:191080:3: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&memdb_io_methods)) + 8 /* .xClose */)) = memdbClose // sqlite3.c:48368:3: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&memdb_io_methods)) + 16 /* .xRead */)) = memdbRead // sqlite3.c:48369:3: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&memdb_io_methods)) + 24 /* .xWrite */)) = memdbWrite // sqlite3.c:48370:3: @@ -202631,16 +202680,16 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&posixIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39216:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&posixIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39216:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&posixIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39216:1: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 16 /* .xConnect */)) = pragmaVtabConnect // sqlite3.c:130087:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 24 /* .xBestIndex */)) = pragmaVtabBestIndex // sqlite3.c:130088:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 32 /* .xDisconnect */)) = pragmaVtabDisconnect // sqlite3.c:130089:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 48 /* .xOpen */)) = pragmaVtabOpen // sqlite3.c:130091:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 56 /* .xClose */)) = pragmaVtabClose // sqlite3.c:130092:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 64 /* .xFilter */)) = pragmaVtabFilter // sqlite3.c:130093:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 72 /* .xNext */)) = pragmaVtabNext // sqlite3.c:130094:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 80 /* .xEof */)) = pragmaVtabEof // sqlite3.c:130095:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 88 /* .xColumn */)) = pragmaVtabColumn // sqlite3.c:130096:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 96 /* .xRowid */)) = pragmaVtabRowid // sqlite3.c:130097:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 16 /* .xConnect */)) = pragmaVtabConnect // sqlite3.c:130098:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 24 /* .xBestIndex */)) = pragmaVtabBestIndex // sqlite3.c:130099:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 32 /* .xDisconnect */)) = pragmaVtabDisconnect // sqlite3.c:130100:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 48 /* .xOpen */)) = pragmaVtabOpen // sqlite3.c:130102:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 56 /* .xClose */)) = pragmaVtabClose // sqlite3.c:130103:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 64 /* .xFilter */)) = pragmaVtabFilter // sqlite3.c:130104:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 72 /* .xNext */)) = pragmaVtabNext // sqlite3.c:130105:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 80 /* .xEof */)) = pragmaVtabEof // sqlite3.c:130106:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 88 /* .xColumn */)) = pragmaVtabColumn // sqlite3.c:130107:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&pragmaVtabModule)) + 96 /* .xRowid */)) = pragmaVtabRowid // sqlite3.c:130108:3: *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoFinder)) + 0)) = proxyIoFinderImpl // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 8 /* .xClose */)) = proxyClose // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 16 /* .xRead */)) = unixRead // sqlite3.c:39300:1: @@ -202659,61 +202708,61 @@ func init() { *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 128 /* .xShmUnmap */)) = unixShmUnmap // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr, I64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 136 /* .xFetch */)) = unixFetch // sqlite3.c:39300:1: *(*func(*libc.TLS, uintptr, I64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&proxyIoMethods)) + 144 /* .xUnfetch */)) = unixUnfetch // sqlite3.c:39300:1: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 8 /* .xClose */)) = rbuVfsClose // sqlite3.c:203930:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 16 /* .xRead */)) = rbuVfsRead // sqlite3.c:203931:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 24 /* .xWrite */)) = rbuVfsWrite // sqlite3.c:203932:5: - *(*func(*libc.TLS, uintptr, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 32 /* .xTruncate */)) = rbuVfsTruncate // sqlite3.c:203933:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 40 /* .xSync */)) = rbuVfsSync // sqlite3.c:203934:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 48 /* .xFileSize */)) = rbuVfsFileSize // sqlite3.c:203935:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 56 /* .xLock */)) = rbuVfsLock // sqlite3.c:203936:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 64 /* .xUnlock */)) = rbuVfsUnlock // sqlite3.c:203937:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 72 /* .xCheckReservedLock */)) = rbuVfsCheckReservedLock // sqlite3.c:203938:5: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 80 /* .xFileControl */)) = rbuVfsFileControl // sqlite3.c:203939:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 88 /* .xSectorSize */)) = rbuVfsSectorSize // sqlite3.c:203940:5: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 96 /* .xDeviceCharacteristics */)) = rbuVfsDeviceCharacteristics // sqlite3.c:203941:5: - *(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 104 /* .xShmMap */)) = rbuVfsShmMap // sqlite3.c:203942:5: - *(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 112 /* .xShmLock */)) = rbuVfsShmLock // sqlite3.c:203943:5: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 120 /* .xShmBarrier */)) = rbuVfsShmBarrier // sqlite3.c:203944:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 128 /* .xShmUnmap */)) = rbuVfsShmUnmap // sqlite3.c:203945:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 8 /* .xCreate */)) = rtreeCreate // sqlite3.c:194643:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 16 /* .xConnect */)) = rtreeConnect // sqlite3.c:194644:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 24 /* .xBestIndex */)) = rtreeBestIndex // sqlite3.c:194645:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:194646:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:194647:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:194648:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:194649:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 64 /* .xFilter */)) = rtreeFilter // sqlite3.c:194650:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:194651:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:194652:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 88 /* .xColumn */)) = rtreeColumn // sqlite3.c:194653:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:194654:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 104 /* .xUpdate */)) = rtreeUpdate // sqlite3.c:194655:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:194656:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:194657:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:194658:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:194659:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:194661:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:194662:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:194665:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 8 /* .xUserData */)) = fts5ApiUserData // sqlite3.c:228777:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 16 /* .xColumnCount */)) = fts5ApiColumnCount // sqlite3.c:228778:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 24 /* .xRowCount */)) = fts5ApiRowCount // sqlite3.c:228779:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 32 /* .xColumnTotalSize */)) = fts5ApiColumnTotalSize // sqlite3.c:228780:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 40 /* .xTokenize */)) = fts5ApiTokenize // sqlite3.c:228781:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 48 /* .xPhraseCount */)) = fts5ApiPhraseCount // sqlite3.c:228782:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 56 /* .xPhraseSize */)) = fts5ApiPhraseSize // sqlite3.c:228783:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 64 /* .xInstCount */)) = fts5ApiInstCount // sqlite3.c:228784:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 72 /* .xInst */)) = fts5ApiInst // sqlite3.c:228785:3: - *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 80 /* .xRowid */)) = fts5ApiRowid // sqlite3.c:228786:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 88 /* .xColumnText */)) = fts5ApiColumnText // sqlite3.c:228787:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 96 /* .xColumnSize */)) = fts5ApiColumnSize // sqlite3.c:228788:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 104 /* .xQueryPhrase */)) = fts5ApiQueryPhrase // sqlite3.c:228789:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 112 /* .xSetAuxdata */)) = fts5ApiSetAuxdata // sqlite3.c:228790:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 120 /* .xGetAuxdata */)) = fts5ApiGetAuxdata // sqlite3.c:228791:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 128 /* .xPhraseFirst */)) = fts5ApiPhraseFirst // sqlite3.c:228792:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 136 /* .xPhraseNext */)) = fts5ApiPhraseNext // sqlite3.c:228793:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 144 /* .xPhraseFirstColumn */)) = fts5ApiPhraseFirstColumn // sqlite3.c:228794:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 152 /* .xPhraseNextColumn */)) = fts5ApiPhraseNextColumn // sqlite3.c:228795:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 8 /* .xClose */)) = rbuVfsClose // sqlite3.c:203942:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 16 /* .xRead */)) = rbuVfsRead // sqlite3.c:203943:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 24 /* .xWrite */)) = rbuVfsWrite // sqlite3.c:203944:5: + *(*func(*libc.TLS, uintptr, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 32 /* .xTruncate */)) = rbuVfsTruncate // sqlite3.c:203945:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 40 /* .xSync */)) = rbuVfsSync // sqlite3.c:203946:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 48 /* .xFileSize */)) = rbuVfsFileSize // sqlite3.c:203947:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 56 /* .xLock */)) = rbuVfsLock // sqlite3.c:203948:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 64 /* .xUnlock */)) = rbuVfsUnlock // sqlite3.c:203949:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 72 /* .xCheckReservedLock */)) = rbuVfsCheckReservedLock // sqlite3.c:203950:5: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 80 /* .xFileControl */)) = rbuVfsFileControl // sqlite3.c:203951:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 88 /* .xSectorSize */)) = rbuVfsSectorSize // sqlite3.c:203952:5: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 96 /* .xDeviceCharacteristics */)) = rbuVfsDeviceCharacteristics // sqlite3.c:203953:5: + *(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 104 /* .xShmMap */)) = rbuVfsShmMap // sqlite3.c:203954:5: + *(*func(*libc.TLS, uintptr, int32, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 112 /* .xShmLock */)) = rbuVfsShmLock // sqlite3.c:203955:5: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 120 /* .xShmBarrier */)) = rbuVfsShmBarrier // sqlite3.c:203956:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rbuvfs_io_methods)) + 128 /* .xShmUnmap */)) = rbuVfsShmUnmap // sqlite3.c:203957:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 8 /* .xCreate */)) = rtreeCreate // sqlite3.c:194655:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 16 /* .xConnect */)) = rtreeConnect // sqlite3.c:194656:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 24 /* .xBestIndex */)) = rtreeBestIndex // sqlite3.c:194657:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 32 /* .xDisconnect */)) = rtreeDisconnect // sqlite3.c:194658:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 40 /* .xDestroy */)) = rtreeDestroy // sqlite3.c:194659:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 48 /* .xOpen */)) = rtreeOpen // sqlite3.c:194660:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 56 /* .xClose */)) = rtreeClose // sqlite3.c:194661:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 64 /* .xFilter */)) = rtreeFilter // sqlite3.c:194662:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 72 /* .xNext */)) = rtreeNext // sqlite3.c:194663:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 80 /* .xEof */)) = rtreeEof // sqlite3.c:194664:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 88 /* .xColumn */)) = rtreeColumn // sqlite3.c:194665:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 96 /* .xRowid */)) = rtreeRowid // sqlite3.c:194666:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 104 /* .xUpdate */)) = rtreeUpdate // sqlite3.c:194667:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 112 /* .xBegin */)) = rtreeBeginTransaction // sqlite3.c:194668:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 120 /* .xSync */)) = rtreeEndTransaction // sqlite3.c:194669:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 128 /* .xCommit */)) = rtreeEndTransaction // sqlite3.c:194670:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 136 /* .xRollback */)) = rtreeEndTransaction // sqlite3.c:194671:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 152 /* .xRename */)) = rtreeRename // sqlite3.c:194673:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 160 /* .xSavepoint */)) = rtreeSavepoint // sqlite3.c:194674:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&rtreeModule)) + 184 /* .xShadowName */)) = rtreeShadowName // sqlite3.c:194677:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 8 /* .xUserData */)) = fts5ApiUserData // sqlite3.c:228789:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 16 /* .xColumnCount */)) = fts5ApiColumnCount // sqlite3.c:228790:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 24 /* .xRowCount */)) = fts5ApiRowCount // sqlite3.c:228791:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 32 /* .xColumnTotalSize */)) = fts5ApiColumnTotalSize // sqlite3.c:228792:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 40 /* .xTokenize */)) = fts5ApiTokenize // sqlite3.c:228793:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 48 /* .xPhraseCount */)) = fts5ApiPhraseCount // sqlite3.c:228794:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 56 /* .xPhraseSize */)) = fts5ApiPhraseSize // sqlite3.c:228795:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 64 /* .xInstCount */)) = fts5ApiInstCount // sqlite3.c:228796:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 72 /* .xInst */)) = fts5ApiInst // sqlite3.c:228797:3: + *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 80 /* .xRowid */)) = fts5ApiRowid // sqlite3.c:228798:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 88 /* .xColumnText */)) = fts5ApiColumnText // sqlite3.c:228799:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 96 /* .xColumnSize */)) = fts5ApiColumnSize // sqlite3.c:228800:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 104 /* .xQueryPhrase */)) = fts5ApiQueryPhrase // sqlite3.c:228801:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 112 /* .xSetAuxdata */)) = fts5ApiSetAuxdata // sqlite3.c:228802:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 120 /* .xGetAuxdata */)) = fts5ApiGetAuxdata // sqlite3.c:228803:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 128 /* .xPhraseFirst */)) = fts5ApiPhraseFirst // sqlite3.c:228804:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 136 /* .xPhraseNext */)) = fts5ApiPhraseNext // sqlite3.c:228805:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 144 /* .xPhraseFirstColumn */)) = fts5ApiPhraseFirstColumn // sqlite3.c:228806:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sFts5Api)) + 152 /* .xPhraseNextColumn */)) = fts5ApiPhraseNextColumn // sqlite3.c:228807:3: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMemJournalMethods)) + 8 /* .xClose */)) = memjrnlClose // sqlite3.c:98257:3: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMemJournalMethods)) + 16 /* .xRead */)) = memjrnlRead // sqlite3.c:98258:3: *(*func(*libc.TLS, uintptr, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMemJournalMethods)) + 24 /* .xWrite */)) = memjrnlWrite // sqlite3.c:98259:3: @@ -202727,293 +202776,293 @@ func init() { *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sMutex)) + 32 /* .xMutexEnter */)) = noopMutexEnter // sqlite3.c:26354:5: *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sMutex)) + 40 /* .xMutexTry */)) = noopMutexTry // sqlite3.c:26355:5: *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sMutex)) + 48 /* .xMutexLeave */)) = noopMutexLeave // sqlite3.c:26356:5: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 0 /* .aggregate_context */)) = Xsqlite3_aggregate_context // sqlite3.c:126160:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 8 /* .aggregate_count */)) = Xsqlite3_aggregate_count // sqlite3.c:126162:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 16 /* .bind_blob */)) = Xsqlite3_bind_blob // sqlite3.c:126166:3: - *(*func(*libc.TLS, uintptr, int32, float64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 24 /* .bind_double */)) = Xsqlite3_bind_double // sqlite3.c:126167:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 32 /* .bind_int */)) = Xsqlite3_bind_int // sqlite3.c:126168:3: - *(*func(*libc.TLS, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 40 /* .bind_int64 */)) = Xsqlite3_bind_int64 // sqlite3.c:126169:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 48 /* .bind_null */)) = Xsqlite3_bind_null // sqlite3.c:126170:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 56 /* .bind_parameter_count */)) = Xsqlite3_bind_parameter_count // sqlite3.c:126171:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 64 /* .bind_parameter_index */)) = Xsqlite3_bind_parameter_index // sqlite3.c:126172:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 72 /* .bind_parameter_name */)) = Xsqlite3_bind_parameter_name // sqlite3.c:126173:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 80 /* .bind_text */)) = Xsqlite3_bind_text // sqlite3.c:126174:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 88 /* .bind_text16 */)) = Xsqlite3_bind_text16 // sqlite3.c:126175:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 96 /* .bind_value */)) = Xsqlite3_bind_value // sqlite3.c:126176:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 104 /* .busy_handler */)) = Xsqlite3_busy_handler // sqlite3.c:126177:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 112 /* .busy_timeout */)) = Xsqlite3_busy_timeout // sqlite3.c:126178:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 120 /* .changes */)) = Xsqlite3_changes // sqlite3.c:126179:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 128 /* .close */)) = Xsqlite3_close // sqlite3.c:126180:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 136 /* .collation_needed */)) = Xsqlite3_collation_needed // sqlite3.c:126181:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 144 /* .collation_needed16 */)) = Xsqlite3_collation_needed16 // sqlite3.c:126182:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 152 /* .column_blob */)) = Xsqlite3_column_blob // sqlite3.c:126183:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 160 /* .column_bytes */)) = Xsqlite3_column_bytes // sqlite3.c:126184:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 168 /* .column_bytes16 */)) = Xsqlite3_column_bytes16 // sqlite3.c:126185:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 176 /* .column_count */)) = Xsqlite3_column_count // sqlite3.c:126186:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 184 /* .column_database_name */)) = Xsqlite3_column_database_name // sqlite3.c:126187:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 192 /* .column_database_name16 */)) = Xsqlite3_column_database_name16 // sqlite3.c:126188:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 200 /* .column_decltype */)) = Xsqlite3_column_decltype // sqlite3.c:126189:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 208 /* .column_decltype16 */)) = Xsqlite3_column_decltype16 // sqlite3.c:126190:3: - *(*func(*libc.TLS, uintptr, int32) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 216 /* .column_double */)) = Xsqlite3_column_double // sqlite3.c:126191:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 224 /* .column_int */)) = Xsqlite3_column_int // sqlite3.c:126192:3: - *(*func(*libc.TLS, uintptr, int32) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 232 /* .column_int64 */)) = Xsqlite3_column_int64 // sqlite3.c:126193:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 240 /* .column_name */)) = Xsqlite3_column_name // sqlite3.c:126194:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 248 /* .column_name16 */)) = Xsqlite3_column_name16 // sqlite3.c:126195:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 256 /* .column_origin_name */)) = Xsqlite3_column_origin_name // sqlite3.c:126196:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 264 /* .column_origin_name16 */)) = Xsqlite3_column_origin_name16 // sqlite3.c:126197:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 272 /* .column_table_name */)) = Xsqlite3_column_table_name // sqlite3.c:126198:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 280 /* .column_table_name16 */)) = Xsqlite3_column_table_name16 // sqlite3.c:126199:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 288 /* .column_text */)) = Xsqlite3_column_text // sqlite3.c:126200:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 296 /* .column_text16 */)) = Xsqlite3_column_text16 // sqlite3.c:126201:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 304 /* .column_type */)) = Xsqlite3_column_type // sqlite3.c:126202:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 312 /* .column_value */)) = Xsqlite3_column_value // sqlite3.c:126203:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 320 /* .commit_hook */)) = Xsqlite3_commit_hook // sqlite3.c:126204:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 328 /* .complete */)) = Xsqlite3_complete // sqlite3.c:126205:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 336 /* .complete16 */)) = Xsqlite3_complete16 // sqlite3.c:126206:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 344 /* .create_collation */)) = Xsqlite3_create_collation // sqlite3.c:126207:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 352 /* .create_collation16 */)) = Xsqlite3_create_collation16 // sqlite3.c:126208:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 360 /* .create_function */)) = Xsqlite3_create_function // sqlite3.c:126209:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 368 /* .create_function16 */)) = Xsqlite3_create_function16 // sqlite3.c:126210:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 376 /* .create_module */)) = Xsqlite3_create_module // sqlite3.c:126211:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 384 /* .data_count */)) = Xsqlite3_data_count // sqlite3.c:126212:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 392 /* .db_handle */)) = Xsqlite3_db_handle // sqlite3.c:126213:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 400 /* .declare_vtab */)) = Xsqlite3_declare_vtab // sqlite3.c:126214:3: - *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 408 /* .enable_shared_cache */)) = Xsqlite3_enable_shared_cache // sqlite3.c:126215:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 416 /* .errcode */)) = Xsqlite3_errcode // sqlite3.c:126216:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 424 /* .errmsg */)) = Xsqlite3_errmsg // sqlite3.c:126217:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 432 /* .errmsg16 */)) = Xsqlite3_errmsg16 // sqlite3.c:126218:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_callback, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 440 /* .exec */)) = Xsqlite3_exec // sqlite3.c:126219:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 448 /* .expired */)) = Xsqlite3_expired // sqlite3.c:126221:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 456 /* .finalize */)) = Xsqlite3_finalize // sqlite3.c:126225:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 464 /* .free */)) = Xsqlite3_free // sqlite3.c:126226:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 472 /* .free_table */)) = Xsqlite3_free_table // sqlite3.c:126227:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 480 /* .get_autocommit */)) = Xsqlite3_get_autocommit // sqlite3.c:126228:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 488 /* .get_auxdata */)) = Xsqlite3_get_auxdata // sqlite3.c:126229:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 496 /* .get_table */)) = Xsqlite3_get_table // sqlite3.c:126230:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 512 /* .interruptx */)) = Xsqlite3_interrupt // sqlite3.c:126232:3: - *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 520 /* .last_insert_rowid */)) = Xsqlite3_last_insert_rowid // sqlite3.c:126233:3: - *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 528 /* .libversion */)) = Xsqlite3_libversion // sqlite3.c:126234:3: - *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 536 /* .libversion_number */)) = Xsqlite3_libversion_number // sqlite3.c:126235:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 544 /* .malloc */)) = Xsqlite3_malloc // sqlite3.c:126236:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 552 /* .mprintf */)) = Xsqlite3_mprintf // sqlite3.c:126237:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 560 /* .open */)) = Xsqlite3_open // sqlite3.c:126238:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 568 /* .open16 */)) = Xsqlite3_open16 // sqlite3.c:126239:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 576 /* .prepare */)) = Xsqlite3_prepare // sqlite3.c:126240:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 584 /* .prepare16 */)) = Xsqlite3_prepare16 // sqlite3.c:126241:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 592 /* .profile */)) = Xsqlite3_profile // sqlite3.c:126242:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 600 /* .progress_handler */)) = Xsqlite3_progress_handler // sqlite3.c:126243:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 608 /* .realloc */)) = Xsqlite3_realloc // sqlite3.c:126244:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 616 /* .reset */)) = Xsqlite3_reset // sqlite3.c:126245:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 624 /* .result_blob */)) = Xsqlite3_result_blob // sqlite3.c:126246:3: - *(*func(*libc.TLS, uintptr, float64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 632 /* .result_double */)) = Xsqlite3_result_double // sqlite3.c:126247:3: - *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 640 /* .result_error */)) = Xsqlite3_result_error // sqlite3.c:126248:3: - *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 648 /* .result_error16 */)) = Xsqlite3_result_error16 // sqlite3.c:126249:3: - *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 656 /* .result_int */)) = Xsqlite3_result_int // sqlite3.c:126250:3: - *(*func(*libc.TLS, uintptr, I64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 664 /* .result_int64 */)) = Xsqlite3_result_int64 // sqlite3.c:126251:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 672 /* .result_null */)) = Xsqlite3_result_null // sqlite3.c:126252:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 680 /* .result_text */)) = Xsqlite3_result_text // sqlite3.c:126253:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 688 /* .result_text16 */)) = Xsqlite3_result_text16 // sqlite3.c:126254:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 696 /* .result_text16be */)) = Xsqlite3_result_text16be // sqlite3.c:126255:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 704 /* .result_text16le */)) = Xsqlite3_result_text16le // sqlite3.c:126256:3: - *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 712 /* .result_value */)) = Xsqlite3_result_value // sqlite3.c:126257:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 720 /* .rollback_hook */)) = Xsqlite3_rollback_hook // sqlite3.c:126258:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 728 /* .set_authorizer */)) = Xsqlite3_set_authorizer // sqlite3.c:126259:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 736 /* .set_auxdata */)) = Xsqlite3_set_auxdata // sqlite3.c:126260:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 744 /* .xsnprintf */)) = Xsqlite3_snprintf // sqlite3.c:126261:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 752 /* .step */)) = Xsqlite3_step // sqlite3.c:126262:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 760 /* .table_column_metadata */)) = Xsqlite3_table_column_metadata // sqlite3.c:126263:3: - *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 768 /* .thread_cleanup */)) = Xsqlite3_thread_cleanup // sqlite3.c:126265:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 776 /* .total_changes */)) = Xsqlite3_total_changes // sqlite3.c:126269:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 784 /* .trace */)) = Xsqlite3_trace // sqlite3.c:126270:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 792 /* .transfer_bindings */)) = Xsqlite3_transfer_bindings // sqlite3.c:126272:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 800 /* .update_hook */)) = Xsqlite3_update_hook // sqlite3.c:126276:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 808 /* .user_data */)) = Xsqlite3_user_data // sqlite3.c:126277:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 816 /* .value_blob */)) = Xsqlite3_value_blob // sqlite3.c:126278:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 824 /* .value_bytes */)) = Xsqlite3_value_bytes // sqlite3.c:126279:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 832 /* .value_bytes16 */)) = Xsqlite3_value_bytes16 // sqlite3.c:126280:3: - *(*func(*libc.TLS, uintptr) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 840 /* .value_double */)) = Xsqlite3_value_double // sqlite3.c:126281:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 848 /* .value_int */)) = Xsqlite3_value_int // sqlite3.c:126282:3: - *(*func(*libc.TLS, uintptr) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 856 /* .value_int64 */)) = Xsqlite3_value_int64 // sqlite3.c:126283:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 864 /* .value_numeric_type */)) = Xsqlite3_value_numeric_type // sqlite3.c:126284:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 872 /* .value_text */)) = Xsqlite3_value_text // sqlite3.c:126285:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 880 /* .value_text16 */)) = Xsqlite3_value_text16 // sqlite3.c:126286:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 888 /* .value_text16be */)) = Xsqlite3_value_text16be // sqlite3.c:126287:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 896 /* .value_text16le */)) = Xsqlite3_value_text16le // sqlite3.c:126288:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 904 /* .value_type */)) = Xsqlite3_value_type // sqlite3.c:126289:3: - *(*func(*libc.TLS, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 912 /* .vmprintf */)) = Xsqlite3_vmprintf // sqlite3.c:126290:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 920 /* .overload_function */)) = Xsqlite3_overload_function // sqlite3.c:126299:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 928 /* .prepare_v2 */)) = Xsqlite3_prepare_v2 // sqlite3.c:126304:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 936 /* .prepare16_v2 */)) = Xsqlite3_prepare16_v2 // sqlite3.c:126305:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 944 /* .clear_bindings */)) = Xsqlite3_clear_bindings // sqlite3.c:126306:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 952 /* .create_module_v2 */)) = Xsqlite3_create_module_v2 // sqlite3.c:126311:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 960 /* .bind_zeroblob */)) = Xsqlite3_bind_zeroblob // sqlite3.c:126316:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 968 /* .blob_bytes */)) = Xsqlite3_blob_bytes // sqlite3.c:126317:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 976 /* .blob_close */)) = Xsqlite3_blob_close // sqlite3.c:126318:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, Sqlite_int64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 984 /* .blob_open */)) = Xsqlite3_blob_open // sqlite3.c:126319:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 992 /* .blob_read */)) = Xsqlite3_blob_read // sqlite3.c:126320:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1000 /* .blob_write */)) = Xsqlite3_blob_write // sqlite3.c:126321:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1008 /* .create_collation_v2 */)) = Xsqlite3_create_collation_v2 // sqlite3.c:126322:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1016 /* .file_control */)) = Xsqlite3_file_control // sqlite3.c:126323:3: - *(*func(*libc.TLS, int32) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1024 /* .memory_highwater */)) = Xsqlite3_memory_highwater // sqlite3.c:126324:3: - *(*func(*libc.TLS) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1032 /* .memory_used */)) = Xsqlite3_memory_used // sqlite3.c:126325:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1040 /* .mutex_alloc */)) = Xsqlite3_mutex_alloc // sqlite3.c:126333:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1048 /* .mutex_enter */)) = Xsqlite3_mutex_enter // sqlite3.c:126334:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1056 /* .mutex_free */)) = Xsqlite3_mutex_free // sqlite3.c:126335:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1064 /* .mutex_leave */)) = Xsqlite3_mutex_leave // sqlite3.c:126336:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1072 /* .mutex_try */)) = Xsqlite3_mutex_try // sqlite3.c:126337:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1080 /* .open_v2 */)) = Xsqlite3_open_v2 // sqlite3.c:126339:3: - *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1088 /* .release_memory */)) = Xsqlite3_release_memory // sqlite3.c:126340:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1096 /* .result_error_nomem */)) = Xsqlite3_result_error_nomem // sqlite3.c:126341:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1104 /* .result_error_toobig */)) = Xsqlite3_result_error_toobig // sqlite3.c:126342:3: - *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1112 /* .sleep */)) = Xsqlite3_sleep // sqlite3.c:126343:3: - *(*func(*libc.TLS, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1120 /* .soft_heap_limit */)) = Xsqlite3_soft_heap_limit // sqlite3.c:126344:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1128 /* .vfs_find */)) = Xsqlite3_vfs_find // sqlite3.c:126345:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1136 /* .vfs_register */)) = Xsqlite3_vfs_register // sqlite3.c:126346:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1144 /* .vfs_unregister */)) = Xsqlite3_vfs_unregister // sqlite3.c:126347:3: - *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1152 /* .xthreadsafe */)) = Xsqlite3_threadsafe // sqlite3.c:126352:3: - *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1160 /* .result_zeroblob */)) = Xsqlite3_result_zeroblob // sqlite3.c:126353:3: - *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1168 /* .result_error_code */)) = Xsqlite3_result_error_code // sqlite3.c:126354:3: - *(*func(*libc.TLS, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1176 /* .test_control */)) = Xsqlite3_test_control // sqlite3.c:126355:3: - *(*func(*libc.TLS, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1184 /* .randomness */)) = Xsqlite3_randomness // sqlite3.c:126356:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1192 /* .context_db_handle */)) = Xsqlite3_context_db_handle // sqlite3.c:126357:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1200 /* .extended_result_codes */)) = Xsqlite3_extended_result_codes // sqlite3.c:126362:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1208 /* .limit */)) = Xsqlite3_limit // sqlite3.c:126363:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1216 /* .next_stmt */)) = Xsqlite3_next_stmt // sqlite3.c:126364:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1224 /* .sql */)) = Xsqlite3_sql // sqlite3.c:126365:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1232 /* .status */)) = Xsqlite3_status // sqlite3.c:126366:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1240 /* .backup_finish */)) = Xsqlite3_backup_finish // sqlite3.c:126371:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1248 /* .backup_init */)) = Xsqlite3_backup_init // sqlite3.c:126372:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1256 /* .backup_pagecount */)) = Xsqlite3_backup_pagecount // sqlite3.c:126373:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1264 /* .backup_remaining */)) = Xsqlite3_backup_remaining // sqlite3.c:126374:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1272 /* .backup_step */)) = Xsqlite3_backup_step // sqlite3.c:126375:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1280 /* .compileoption_get */)) = Xsqlite3_compileoption_get // sqlite3.c:126377:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1288 /* .compileoption_used */)) = Xsqlite3_compileoption_used // sqlite3.c:126378:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1296 /* .create_function_v2 */)) = Xsqlite3_create_function_v2 // sqlite3.c:126383:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1304 /* .db_config */)) = Xsqlite3_db_config // sqlite3.c:126384:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1312 /* .db_mutex */)) = Xsqlite3_db_mutex // sqlite3.c:126385:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1320 /* .db_status */)) = Xsqlite3_db_status // sqlite3.c:126386:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1328 /* .extended_errcode */)) = Xsqlite3_extended_errcode // sqlite3.c:126387:3: - *(*func(*libc.TLS, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1336 /* .log */)) = Xsqlite3_log // sqlite3.c:126388:3: - *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1344 /* .soft_heap_limit64 */)) = Xsqlite3_soft_heap_limit64 // sqlite3.c:126389:3: - *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1352 /* .sourceid */)) = Xsqlite3_sourceid // sqlite3.c:126390:3: - *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1360 /* .stmt_status */)) = Xsqlite3_stmt_status // sqlite3.c:126391:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1368 /* .strnicmp */)) = Xsqlite3_strnicmp // sqlite3.c:126392:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1376 /* .unlock_notify */)) = Xsqlite3_unlock_notify // sqlite3.c:126394:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1384 /* .wal_autocheckpoint */)) = Xsqlite3_wal_autocheckpoint // sqlite3.c:126399:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1392 /* .wal_checkpoint */)) = Xsqlite3_wal_checkpoint // sqlite3.c:126400:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1400 /* .wal_hook */)) = Xsqlite3_wal_hook // sqlite3.c:126401:3: - *(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1408 /* .blob_reopen */)) = Xsqlite3_blob_reopen // sqlite3.c:126407:3: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1416 /* .vtab_config */)) = Xsqlite3_vtab_config // sqlite3.c:126408:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1424 /* .vtab_on_conflict */)) = Xsqlite3_vtab_on_conflict // sqlite3.c:126409:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1432 /* .close_v2 */)) = Xsqlite3_close_v2 // sqlite3.c:126410:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1440 /* .db_filename */)) = Xsqlite3_db_filename // sqlite3.c:126411:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1448 /* .db_readonly */)) = Xsqlite3_db_readonly // sqlite3.c:126412:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1456 /* .db_release_memory */)) = Xsqlite3_db_release_memory // sqlite3.c:126413:3: - *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1464 /* .errstr */)) = Xsqlite3_errstr // sqlite3.c:126414:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1472 /* .stmt_busy */)) = Xsqlite3_stmt_busy // sqlite3.c:126415:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1480 /* .stmt_readonly */)) = Xsqlite3_stmt_readonly // sqlite3.c:126416:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1488 /* .stricmp */)) = Xsqlite3_stricmp // sqlite3.c:126417:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1496 /* .uri_boolean */)) = Xsqlite3_uri_boolean // sqlite3.c:126418:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1504 /* .uri_int64 */)) = Xsqlite3_uri_int64 // sqlite3.c:126419:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1512 /* .uri_parameter */)) = Xsqlite3_uri_parameter // sqlite3.c:126420:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1520 /* .xvsnprintf */)) = Xsqlite3_vsnprintf // sqlite3.c:126421:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1528 /* .wal_checkpoint_v2 */)) = Xsqlite3_wal_checkpoint_v2 // sqlite3.c:126422:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1536 /* .auto_extension */)) = Xsqlite3_auto_extension // sqlite3.c:126424:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1544 /* .bind_blob64 */)) = Xsqlite3_bind_blob64 // sqlite3.c:126425:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr, uint8) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1552 /* .bind_text64 */)) = Xsqlite3_bind_text64 // sqlite3.c:126426:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1560 /* .cancel_auto_extension */)) = Xsqlite3_cancel_auto_extension // sqlite3.c:126427:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1568 /* .load_extension */)) = Xsqlite3_load_extension // sqlite3.c:126428:3: - *(*func(*libc.TLS, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1576 /* .malloc64 */)) = Xsqlite3_malloc64 // sqlite3.c:126429:3: - *(*func(*libc.TLS, uintptr) Sqlite3_uint64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1584 /* .msize */)) = Xsqlite3_msize // sqlite3.c:126430:3: - *(*func(*libc.TLS, uintptr, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1592 /* .realloc64 */)) = Xsqlite3_realloc64 // sqlite3.c:126431:3: - *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1600 /* .reset_auto_extension */)) = Xsqlite3_reset_auto_extension // sqlite3.c:126432:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1608 /* .result_blob64 */)) = Xsqlite3_result_blob64 // sqlite3.c:126433:3: - *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr, uint8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1616 /* .result_text64 */)) = Xsqlite3_result_text64 // sqlite3.c:126434:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1624 /* .strglob */)) = Xsqlite3_strglob // sqlite3.c:126435:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 0 /* .aggregate_context */)) = Xsqlite3_aggregate_context // sqlite3.c:126171:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 8 /* .aggregate_count */)) = Xsqlite3_aggregate_count // sqlite3.c:126173:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 16 /* .bind_blob */)) = Xsqlite3_bind_blob // sqlite3.c:126177:3: + *(*func(*libc.TLS, uintptr, int32, float64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 24 /* .bind_double */)) = Xsqlite3_bind_double // sqlite3.c:126178:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 32 /* .bind_int */)) = Xsqlite3_bind_int // sqlite3.c:126179:3: + *(*func(*libc.TLS, uintptr, int32, Sqlite_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 40 /* .bind_int64 */)) = Xsqlite3_bind_int64 // sqlite3.c:126180:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 48 /* .bind_null */)) = Xsqlite3_bind_null // sqlite3.c:126181:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 56 /* .bind_parameter_count */)) = Xsqlite3_bind_parameter_count // sqlite3.c:126182:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 64 /* .bind_parameter_index */)) = Xsqlite3_bind_parameter_index // sqlite3.c:126183:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 72 /* .bind_parameter_name */)) = Xsqlite3_bind_parameter_name // sqlite3.c:126184:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 80 /* .bind_text */)) = Xsqlite3_bind_text // sqlite3.c:126185:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 88 /* .bind_text16 */)) = Xsqlite3_bind_text16 // sqlite3.c:126186:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 96 /* .bind_value */)) = Xsqlite3_bind_value // sqlite3.c:126187:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 104 /* .busy_handler */)) = Xsqlite3_busy_handler // sqlite3.c:126188:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 112 /* .busy_timeout */)) = Xsqlite3_busy_timeout // sqlite3.c:126189:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 120 /* .changes */)) = Xsqlite3_changes // sqlite3.c:126190:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 128 /* .close */)) = Xsqlite3_close // sqlite3.c:126191:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 136 /* .collation_needed */)) = Xsqlite3_collation_needed // sqlite3.c:126192:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 144 /* .collation_needed16 */)) = Xsqlite3_collation_needed16 // sqlite3.c:126193:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 152 /* .column_blob */)) = Xsqlite3_column_blob // sqlite3.c:126194:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 160 /* .column_bytes */)) = Xsqlite3_column_bytes // sqlite3.c:126195:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 168 /* .column_bytes16 */)) = Xsqlite3_column_bytes16 // sqlite3.c:126196:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 176 /* .column_count */)) = Xsqlite3_column_count // sqlite3.c:126197:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 184 /* .column_database_name */)) = Xsqlite3_column_database_name // sqlite3.c:126198:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 192 /* .column_database_name16 */)) = Xsqlite3_column_database_name16 // sqlite3.c:126199:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 200 /* .column_decltype */)) = Xsqlite3_column_decltype // sqlite3.c:126200:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 208 /* .column_decltype16 */)) = Xsqlite3_column_decltype16 // sqlite3.c:126201:3: + *(*func(*libc.TLS, uintptr, int32) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 216 /* .column_double */)) = Xsqlite3_column_double // sqlite3.c:126202:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 224 /* .column_int */)) = Xsqlite3_column_int // sqlite3.c:126203:3: + *(*func(*libc.TLS, uintptr, int32) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 232 /* .column_int64 */)) = Xsqlite3_column_int64 // sqlite3.c:126204:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 240 /* .column_name */)) = Xsqlite3_column_name // sqlite3.c:126205:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 248 /* .column_name16 */)) = Xsqlite3_column_name16 // sqlite3.c:126206:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 256 /* .column_origin_name */)) = Xsqlite3_column_origin_name // sqlite3.c:126207:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 264 /* .column_origin_name16 */)) = Xsqlite3_column_origin_name16 // sqlite3.c:126208:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 272 /* .column_table_name */)) = Xsqlite3_column_table_name // sqlite3.c:126209:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 280 /* .column_table_name16 */)) = Xsqlite3_column_table_name16 // sqlite3.c:126210:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 288 /* .column_text */)) = Xsqlite3_column_text // sqlite3.c:126211:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 296 /* .column_text16 */)) = Xsqlite3_column_text16 // sqlite3.c:126212:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 304 /* .column_type */)) = Xsqlite3_column_type // sqlite3.c:126213:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 312 /* .column_value */)) = Xsqlite3_column_value // sqlite3.c:126214:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 320 /* .commit_hook */)) = Xsqlite3_commit_hook // sqlite3.c:126215:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 328 /* .complete */)) = Xsqlite3_complete // sqlite3.c:126216:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 336 /* .complete16 */)) = Xsqlite3_complete16 // sqlite3.c:126217:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 344 /* .create_collation */)) = Xsqlite3_create_collation // sqlite3.c:126218:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 352 /* .create_collation16 */)) = Xsqlite3_create_collation16 // sqlite3.c:126219:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 360 /* .create_function */)) = Xsqlite3_create_function // sqlite3.c:126220:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 368 /* .create_function16 */)) = Xsqlite3_create_function16 // sqlite3.c:126221:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 376 /* .create_module */)) = Xsqlite3_create_module // sqlite3.c:126222:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 384 /* .data_count */)) = Xsqlite3_data_count // sqlite3.c:126223:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 392 /* .db_handle */)) = Xsqlite3_db_handle // sqlite3.c:126224:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 400 /* .declare_vtab */)) = Xsqlite3_declare_vtab // sqlite3.c:126225:3: + *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 408 /* .enable_shared_cache */)) = Xsqlite3_enable_shared_cache // sqlite3.c:126226:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 416 /* .errcode */)) = Xsqlite3_errcode // sqlite3.c:126227:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 424 /* .errmsg */)) = Xsqlite3_errmsg // sqlite3.c:126228:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 432 /* .errmsg16 */)) = Xsqlite3_errmsg16 // sqlite3.c:126229:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_callback, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 440 /* .exec */)) = Xsqlite3_exec // sqlite3.c:126230:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 448 /* .expired */)) = Xsqlite3_expired // sqlite3.c:126232:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 456 /* .finalize */)) = Xsqlite3_finalize // sqlite3.c:126236:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 464 /* .free */)) = Xsqlite3_free // sqlite3.c:126237:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 472 /* .free_table */)) = Xsqlite3_free_table // sqlite3.c:126238:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 480 /* .get_autocommit */)) = Xsqlite3_get_autocommit // sqlite3.c:126239:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 488 /* .get_auxdata */)) = Xsqlite3_get_auxdata // sqlite3.c:126240:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 496 /* .get_table */)) = Xsqlite3_get_table // sqlite3.c:126241:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 512 /* .interruptx */)) = Xsqlite3_interrupt // sqlite3.c:126243:3: + *(*func(*libc.TLS, uintptr) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 520 /* .last_insert_rowid */)) = Xsqlite3_last_insert_rowid // sqlite3.c:126244:3: + *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 528 /* .libversion */)) = Xsqlite3_libversion // sqlite3.c:126245:3: + *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 536 /* .libversion_number */)) = Xsqlite3_libversion_number // sqlite3.c:126246:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 544 /* .malloc */)) = Xsqlite3_malloc // sqlite3.c:126247:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 552 /* .mprintf */)) = Xsqlite3_mprintf // sqlite3.c:126248:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 560 /* .open */)) = Xsqlite3_open // sqlite3.c:126249:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 568 /* .open16 */)) = Xsqlite3_open16 // sqlite3.c:126250:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 576 /* .prepare */)) = Xsqlite3_prepare // sqlite3.c:126251:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 584 /* .prepare16 */)) = Xsqlite3_prepare16 // sqlite3.c:126252:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 592 /* .profile */)) = Xsqlite3_profile // sqlite3.c:126253:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 600 /* .progress_handler */)) = Xsqlite3_progress_handler // sqlite3.c:126254:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 608 /* .realloc */)) = Xsqlite3_realloc // sqlite3.c:126255:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 616 /* .reset */)) = Xsqlite3_reset // sqlite3.c:126256:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 624 /* .result_blob */)) = Xsqlite3_result_blob // sqlite3.c:126257:3: + *(*func(*libc.TLS, uintptr, float64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 632 /* .result_double */)) = Xsqlite3_result_double // sqlite3.c:126258:3: + *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 640 /* .result_error */)) = Xsqlite3_result_error // sqlite3.c:126259:3: + *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 648 /* .result_error16 */)) = Xsqlite3_result_error16 // sqlite3.c:126260:3: + *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 656 /* .result_int */)) = Xsqlite3_result_int // sqlite3.c:126261:3: + *(*func(*libc.TLS, uintptr, I64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 664 /* .result_int64 */)) = Xsqlite3_result_int64 // sqlite3.c:126262:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 672 /* .result_null */)) = Xsqlite3_result_null // sqlite3.c:126263:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 680 /* .result_text */)) = Xsqlite3_result_text // sqlite3.c:126264:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 688 /* .result_text16 */)) = Xsqlite3_result_text16 // sqlite3.c:126265:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 696 /* .result_text16be */)) = Xsqlite3_result_text16be // sqlite3.c:126266:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 704 /* .result_text16le */)) = Xsqlite3_result_text16le // sqlite3.c:126267:3: + *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 712 /* .result_value */)) = Xsqlite3_result_value // sqlite3.c:126268:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 720 /* .rollback_hook */)) = Xsqlite3_rollback_hook // sqlite3.c:126269:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 728 /* .set_authorizer */)) = Xsqlite3_set_authorizer // sqlite3.c:126270:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 736 /* .set_auxdata */)) = Xsqlite3_set_auxdata // sqlite3.c:126271:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 744 /* .xsnprintf */)) = Xsqlite3_snprintf // sqlite3.c:126272:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 752 /* .step */)) = Xsqlite3_step // sqlite3.c:126273:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 760 /* .table_column_metadata */)) = Xsqlite3_table_column_metadata // sqlite3.c:126274:3: + *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 768 /* .thread_cleanup */)) = Xsqlite3_thread_cleanup // sqlite3.c:126276:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 776 /* .total_changes */)) = Xsqlite3_total_changes // sqlite3.c:126280:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 784 /* .trace */)) = Xsqlite3_trace // sqlite3.c:126281:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 792 /* .transfer_bindings */)) = Xsqlite3_transfer_bindings // sqlite3.c:126283:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 800 /* .update_hook */)) = Xsqlite3_update_hook // sqlite3.c:126287:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 808 /* .user_data */)) = Xsqlite3_user_data // sqlite3.c:126288:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 816 /* .value_blob */)) = Xsqlite3_value_blob // sqlite3.c:126289:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 824 /* .value_bytes */)) = Xsqlite3_value_bytes // sqlite3.c:126290:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 832 /* .value_bytes16 */)) = Xsqlite3_value_bytes16 // sqlite3.c:126291:3: + *(*func(*libc.TLS, uintptr) float64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 840 /* .value_double */)) = Xsqlite3_value_double // sqlite3.c:126292:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 848 /* .value_int */)) = Xsqlite3_value_int // sqlite3.c:126293:3: + *(*func(*libc.TLS, uintptr) Sqlite_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 856 /* .value_int64 */)) = Xsqlite3_value_int64 // sqlite3.c:126294:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 864 /* .value_numeric_type */)) = Xsqlite3_value_numeric_type // sqlite3.c:126295:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 872 /* .value_text */)) = Xsqlite3_value_text // sqlite3.c:126296:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 880 /* .value_text16 */)) = Xsqlite3_value_text16 // sqlite3.c:126297:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 888 /* .value_text16be */)) = Xsqlite3_value_text16be // sqlite3.c:126298:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 896 /* .value_text16le */)) = Xsqlite3_value_text16le // sqlite3.c:126299:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 904 /* .value_type */)) = Xsqlite3_value_type // sqlite3.c:126300:3: + *(*func(*libc.TLS, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 912 /* .vmprintf */)) = Xsqlite3_vmprintf // sqlite3.c:126301:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 920 /* .overload_function */)) = Xsqlite3_overload_function // sqlite3.c:126310:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 928 /* .prepare_v2 */)) = Xsqlite3_prepare_v2 // sqlite3.c:126315:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 936 /* .prepare16_v2 */)) = Xsqlite3_prepare16_v2 // sqlite3.c:126316:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 944 /* .clear_bindings */)) = Xsqlite3_clear_bindings // sqlite3.c:126317:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 952 /* .create_module_v2 */)) = Xsqlite3_create_module_v2 // sqlite3.c:126322:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 960 /* .bind_zeroblob */)) = Xsqlite3_bind_zeroblob // sqlite3.c:126327:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 968 /* .blob_bytes */)) = Xsqlite3_blob_bytes // sqlite3.c:126328:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 976 /* .blob_close */)) = Xsqlite3_blob_close // sqlite3.c:126329:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr, Sqlite_int64, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 984 /* .blob_open */)) = Xsqlite3_blob_open // sqlite3.c:126330:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 992 /* .blob_read */)) = Xsqlite3_blob_read // sqlite3.c:126331:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1000 /* .blob_write */)) = Xsqlite3_blob_write // sqlite3.c:126332:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1008 /* .create_collation_v2 */)) = Xsqlite3_create_collation_v2 // sqlite3.c:126333:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1016 /* .file_control */)) = Xsqlite3_file_control // sqlite3.c:126334:3: + *(*func(*libc.TLS, int32) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1024 /* .memory_highwater */)) = Xsqlite3_memory_highwater // sqlite3.c:126335:3: + *(*func(*libc.TLS) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1032 /* .memory_used */)) = Xsqlite3_memory_used // sqlite3.c:126336:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1040 /* .mutex_alloc */)) = Xsqlite3_mutex_alloc // sqlite3.c:126344:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1048 /* .mutex_enter */)) = Xsqlite3_mutex_enter // sqlite3.c:126345:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1056 /* .mutex_free */)) = Xsqlite3_mutex_free // sqlite3.c:126346:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1064 /* .mutex_leave */)) = Xsqlite3_mutex_leave // sqlite3.c:126347:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1072 /* .mutex_try */)) = Xsqlite3_mutex_try // sqlite3.c:126348:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1080 /* .open_v2 */)) = Xsqlite3_open_v2 // sqlite3.c:126350:3: + *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1088 /* .release_memory */)) = Xsqlite3_release_memory // sqlite3.c:126351:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1096 /* .result_error_nomem */)) = Xsqlite3_result_error_nomem // sqlite3.c:126352:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1104 /* .result_error_toobig */)) = Xsqlite3_result_error_toobig // sqlite3.c:126353:3: + *(*func(*libc.TLS, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1112 /* .sleep */)) = Xsqlite3_sleep // sqlite3.c:126354:3: + *(*func(*libc.TLS, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1120 /* .soft_heap_limit */)) = Xsqlite3_soft_heap_limit // sqlite3.c:126355:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1128 /* .vfs_find */)) = Xsqlite3_vfs_find // sqlite3.c:126356:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1136 /* .vfs_register */)) = Xsqlite3_vfs_register // sqlite3.c:126357:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1144 /* .vfs_unregister */)) = Xsqlite3_vfs_unregister // sqlite3.c:126358:3: + *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1152 /* .xthreadsafe */)) = Xsqlite3_threadsafe // sqlite3.c:126363:3: + *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1160 /* .result_zeroblob */)) = Xsqlite3_result_zeroblob // sqlite3.c:126364:3: + *(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1168 /* .result_error_code */)) = Xsqlite3_result_error_code // sqlite3.c:126365:3: + *(*func(*libc.TLS, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1176 /* .test_control */)) = Xsqlite3_test_control // sqlite3.c:126366:3: + *(*func(*libc.TLS, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1184 /* .randomness */)) = Xsqlite3_randomness // sqlite3.c:126367:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1192 /* .context_db_handle */)) = Xsqlite3_context_db_handle // sqlite3.c:126368:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1200 /* .extended_result_codes */)) = Xsqlite3_extended_result_codes // sqlite3.c:126373:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1208 /* .limit */)) = Xsqlite3_limit // sqlite3.c:126374:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1216 /* .next_stmt */)) = Xsqlite3_next_stmt // sqlite3.c:126375:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1224 /* .sql */)) = Xsqlite3_sql // sqlite3.c:126376:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1232 /* .status */)) = Xsqlite3_status // sqlite3.c:126377:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1240 /* .backup_finish */)) = Xsqlite3_backup_finish // sqlite3.c:126382:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1248 /* .backup_init */)) = Xsqlite3_backup_init // sqlite3.c:126383:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1256 /* .backup_pagecount */)) = Xsqlite3_backup_pagecount // sqlite3.c:126384:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1264 /* .backup_remaining */)) = Xsqlite3_backup_remaining // sqlite3.c:126385:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1272 /* .backup_step */)) = Xsqlite3_backup_step // sqlite3.c:126386:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1280 /* .compileoption_get */)) = Xsqlite3_compileoption_get // sqlite3.c:126388:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1288 /* .compileoption_used */)) = Xsqlite3_compileoption_used // sqlite3.c:126389:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1296 /* .create_function_v2 */)) = Xsqlite3_create_function_v2 // sqlite3.c:126394:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1304 /* .db_config */)) = Xsqlite3_db_config // sqlite3.c:126395:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1312 /* .db_mutex */)) = Xsqlite3_db_mutex // sqlite3.c:126396:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1320 /* .db_status */)) = Xsqlite3_db_status // sqlite3.c:126397:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1328 /* .extended_errcode */)) = Xsqlite3_extended_errcode // sqlite3.c:126398:3: + *(*func(*libc.TLS, int32, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1336 /* .log */)) = Xsqlite3_log // sqlite3.c:126399:3: + *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1344 /* .soft_heap_limit64 */)) = Xsqlite3_soft_heap_limit64 // sqlite3.c:126400:3: + *(*func(*libc.TLS) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1352 /* .sourceid */)) = Xsqlite3_sourceid // sqlite3.c:126401:3: + *(*func(*libc.TLS, uintptr, int32, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1360 /* .stmt_status */)) = Xsqlite3_stmt_status // sqlite3.c:126402:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1368 /* .strnicmp */)) = Xsqlite3_strnicmp // sqlite3.c:126403:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1376 /* .unlock_notify */)) = Xsqlite3_unlock_notify // sqlite3.c:126405:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1384 /* .wal_autocheckpoint */)) = Xsqlite3_wal_autocheckpoint // sqlite3.c:126410:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1392 /* .wal_checkpoint */)) = Xsqlite3_wal_checkpoint // sqlite3.c:126411:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1400 /* .wal_hook */)) = Xsqlite3_wal_hook // sqlite3.c:126412:3: + *(*func(*libc.TLS, uintptr, Sqlite3_int64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1408 /* .blob_reopen */)) = Xsqlite3_blob_reopen // sqlite3.c:126418:3: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1416 /* .vtab_config */)) = Xsqlite3_vtab_config // sqlite3.c:126419:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1424 /* .vtab_on_conflict */)) = Xsqlite3_vtab_on_conflict // sqlite3.c:126420:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1432 /* .close_v2 */)) = Xsqlite3_close_v2 // sqlite3.c:126421:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1440 /* .db_filename */)) = Xsqlite3_db_filename // sqlite3.c:126422:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1448 /* .db_readonly */)) = Xsqlite3_db_readonly // sqlite3.c:126423:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1456 /* .db_release_memory */)) = Xsqlite3_db_release_memory // sqlite3.c:126424:3: + *(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1464 /* .errstr */)) = Xsqlite3_errstr // sqlite3.c:126425:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1472 /* .stmt_busy */)) = Xsqlite3_stmt_busy // sqlite3.c:126426:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1480 /* .stmt_readonly */)) = Xsqlite3_stmt_readonly // sqlite3.c:126427:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1488 /* .stricmp */)) = Xsqlite3_stricmp // sqlite3.c:126428:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1496 /* .uri_boolean */)) = Xsqlite3_uri_boolean // sqlite3.c:126429:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1504 /* .uri_int64 */)) = Xsqlite3_uri_int64 // sqlite3.c:126430:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1512 /* .uri_parameter */)) = Xsqlite3_uri_parameter // sqlite3.c:126431:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, Va_list) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1520 /* .xvsnprintf */)) = Xsqlite3_vsnprintf // sqlite3.c:126432:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1528 /* .wal_checkpoint_v2 */)) = Xsqlite3_wal_checkpoint_v2 // sqlite3.c:126433:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1536 /* .auto_extension */)) = Xsqlite3_auto_extension // sqlite3.c:126435:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1544 /* .bind_blob64 */)) = Xsqlite3_bind_blob64 // sqlite3.c:126436:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, Sqlite3_uint64, uintptr, uint8) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1552 /* .bind_text64 */)) = Xsqlite3_bind_text64 // sqlite3.c:126437:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1560 /* .cancel_auto_extension */)) = Xsqlite3_cancel_auto_extension // sqlite3.c:126438:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1568 /* .load_extension */)) = Xsqlite3_load_extension // sqlite3.c:126439:3: + *(*func(*libc.TLS, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1576 /* .malloc64 */)) = Xsqlite3_malloc64 // sqlite3.c:126440:3: + *(*func(*libc.TLS, uintptr) Sqlite3_uint64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1584 /* .msize */)) = Xsqlite3_msize // sqlite3.c:126441:3: + *(*func(*libc.TLS, uintptr, Sqlite3_uint64) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1592 /* .realloc64 */)) = Xsqlite3_realloc64 // sqlite3.c:126442:3: + *(*func(*libc.TLS))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1600 /* .reset_auto_extension */)) = Xsqlite3_reset_auto_extension // sqlite3.c:126443:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1608 /* .result_blob64 */)) = Xsqlite3_result_blob64 // sqlite3.c:126444:3: + *(*func(*libc.TLS, uintptr, uintptr, Sqlite3_uint64, uintptr, uint8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1616 /* .result_text64 */)) = Xsqlite3_result_text64 // sqlite3.c:126445:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1624 /* .strglob */)) = Xsqlite3_strglob // sqlite3.c:126446:3: *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1632 /* .value_dup */)) = *(*uintptr)(unsafe.Pointer(&struct { f func(*libc.TLS, uintptr) uintptr - }{Xsqlite3_value_dup})) // sqlite3.c:126437:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1640 /* .value_free */)) = Xsqlite3_value_free // sqlite3.c:126438:3: - *(*func(*libc.TLS, uintptr, U64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1648 /* .result_zeroblob64 */)) = Xsqlite3_result_zeroblob64 // sqlite3.c:126439:3: - *(*func(*libc.TLS, uintptr, int32, Sqlite3_uint64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1656 /* .bind_zeroblob64 */)) = Xsqlite3_bind_zeroblob64 // sqlite3.c:126440:3: - *(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1664 /* .value_subtype */)) = Xsqlite3_value_subtype // sqlite3.c:126442:3: - *(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1672 /* .result_subtype */)) = Xsqlite3_result_subtype // sqlite3.c:126443:3: - *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1680 /* .status64 */)) = Xsqlite3_status64 // sqlite3.c:126445:3: - *(*func(*libc.TLS, uintptr, uintptr, uint32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1688 /* .strlike */)) = Xsqlite3_strlike // sqlite3.c:126446:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1696 /* .db_cacheflush */)) = Xsqlite3_db_cacheflush // sqlite3.c:126447:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1704 /* .system_errno */)) = Xsqlite3_system_errno // sqlite3.c:126449:3: - *(*func(*libc.TLS, uintptr, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1712 /* .trace_v2 */)) = Xsqlite3_trace_v2 // sqlite3.c:126451:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1720 /* .expanded_sql */)) = Xsqlite3_expanded_sql // sqlite3.c:126452:3: - *(*func(*libc.TLS, uintptr, Sqlite3_int64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1728 /* .set_last_insert_rowid */)) = Xsqlite3_set_last_insert_rowid // sqlite3.c:126454:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1736 /* .prepare_v3 */)) = Xsqlite3_prepare_v3 // sqlite3.c:126456:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1744 /* .prepare16_v3 */)) = Xsqlite3_prepare16_v3 // sqlite3.c:126457:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1752 /* .bind_pointer */)) = Xsqlite3_bind_pointer // sqlite3.c:126458:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1760 /* .result_pointer */)) = Xsqlite3_result_pointer // sqlite3.c:126459:3: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1768 /* .value_pointer */)) = Xsqlite3_value_pointer // sqlite3.c:126460:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1776 /* .vtab_nochange */)) = Xsqlite3_vtab_nochange // sqlite3.c:126462:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1784 /* .value_nochange */)) = Xsqlite3_value_nochange // sqlite3.c:126463:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1792 /* .vtab_collation */)) = Xsqlite3_vtab_collation // sqlite3.c:126464:3: - *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1800 /* .keyword_count */)) = Xsqlite3_keyword_count // sqlite3.c:126466:3: - *(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1808 /* .keyword_name */)) = Xsqlite3_keyword_name // sqlite3.c:126467:3: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1816 /* .keyword_check */)) = Xsqlite3_keyword_check // sqlite3.c:126468:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1824 /* .str_new */)) = Xsqlite3_str_new // sqlite3.c:126469:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1832 /* .str_finish */)) = Xsqlite3_str_finish // sqlite3.c:126470:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1840 /* .str_appendf */)) = Xsqlite3_str_appendf // sqlite3.c:126471:3: - *(*func(*libc.TLS, uintptr, uintptr, Va_list))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1848 /* .str_vappendf */)) = Xsqlite3_str_vappendf // sqlite3.c:126472:3: - *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1856 /* .str_append */)) = Xsqlite3_str_append // sqlite3.c:126473:3: - *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1864 /* .str_appendall */)) = Xsqlite3_str_appendall // sqlite3.c:126474:3: - *(*func(*libc.TLS, uintptr, int32, int8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1872 /* .str_appendchar */)) = Xsqlite3_str_appendchar // sqlite3.c:126475:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1880 /* .str_reset */)) = Xsqlite3_str_reset // sqlite3.c:126476:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1888 /* .str_errcode */)) = Xsqlite3_str_errcode // sqlite3.c:126477:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1896 /* .str_length */)) = Xsqlite3_str_length // sqlite3.c:126478:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1904 /* .str_value */)) = Xsqlite3_str_value // sqlite3.c:126479:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1912 /* .create_window_function */)) = Xsqlite3_create_window_function // sqlite3.c:126481:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1928 /* .stmt_isexplain */)) = Xsqlite3_stmt_isexplain // sqlite3.c:126489:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1936 /* .value_frombind */)) = Xsqlite3_value_frombind // sqlite3.c:126490:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1944 /* .drop_modules */)) = Xsqlite3_drop_modules // sqlite3.c:126493:3: - *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1952 /* .hard_heap_limit64 */)) = Xsqlite3_hard_heap_limit64 // sqlite3.c:126498:3: - *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1960 /* .uri_key */)) = Xsqlite3_uri_key // sqlite3.c:126499:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1968 /* .filename_database */)) = Xsqlite3_filename_database // sqlite3.c:126500:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1976 /* .filename_journal */)) = Xsqlite3_filename_journal // sqlite3.c:126501:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1984 /* .filename_wal */)) = Xsqlite3_filename_wal // sqlite3.c:126502:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1992 /* .create_filename */)) = Xsqlite3_create_filename // sqlite3.c:126504:3: - *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2000 /* .free_filename */)) = Xsqlite3_free_filename // sqlite3.c:126505:3: - *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2008 /* .database_file_object */)) = Xsqlite3_database_file_object // sqlite3.c:126506:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2016 /* .txn_state */)) = Xsqlite3_txn_state // sqlite3.c:126508:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 0)) = Xsqlite3Fts5Init // sqlite3.c:164116:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 8)) = Xsqlite3RtreeInit // sqlite3.c:164122:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 16)) = Xsqlite3DbpageRegister // sqlite3.c:164125:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 24)) = Xsqlite3DbstatRegister // sqlite3.c:164128:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 32)) = sqlite3TestExtInit // sqlite3.c:164130:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 40)) = Xsqlite3Json1Init // sqlite3.c:164132:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 48)) = Xsqlite3StmtVtabInit // sqlite3.c:164135:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 56)) = Xsqlite3VdbeBytecodeVtabInit // sqlite3.c:164138:3: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statGetFuncdef)) + 24 /* .xSFunc */)) = statGet // sqlite3.c:109690:3: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statInitFuncdef)) + 24 /* .xSFunc */)) = statInit // sqlite3.c:109248:3: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statPushFuncdef)) + 24 /* .xSFunc */)) = statPush // sqlite3.c:109538:3: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 16 /* .xConnect */)) = stmtConnect // sqlite3.c:234169:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 24 /* .xBestIndex */)) = stmtBestIndex // sqlite3.c:234170:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 32 /* .xDisconnect */)) = stmtDisconnect // sqlite3.c:234171:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 48 /* .xOpen */)) = stmtOpen // sqlite3.c:234173:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 56 /* .xClose */)) = stmtClose // sqlite3.c:234174:3: - *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 64 /* .xFilter */)) = stmtFilter // sqlite3.c:234175:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 72 /* .xNext */)) = stmtNext // sqlite3.c:234176:3: - *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 80 /* .xEof */)) = stmtEof // sqlite3.c:234177:3: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 88 /* .xColumn */)) = stmtColumn // sqlite3.c:234178:3: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 96 /* .xRowid */)) = stmtRowid // sqlite3.c:234179:3: - *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 40 /* .xOpen */)) = rbuVfsOpen // sqlite3.c:204201:5: - *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 48 /* .xDelete */)) = rbuVfsDelete // sqlite3.c:204202:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 56 /* .xAccess */)) = rbuVfsAccess // sqlite3.c:204203:5: - *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 64 /* .xFullPathname */)) = rbuVfsFullPathname // sqlite3.c:204204:5: - *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 72 /* .xDlOpen */)) = rbuVfsDlOpen // sqlite3.c:204207:5: - *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 80 /* .xDlError */)) = rbuVfsDlError // sqlite3.c:204208:5: - *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 88 /* .xDlSym */)) = rbuVfsDlSym // sqlite3.c:204209:5: - *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 96 /* .xDlClose */)) = rbuVfsDlClose // sqlite3.c:204210:5: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 104 /* .xRandomness */)) = rbuVfsRandomness // sqlite3.c:204215:5: - *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 112 /* .xSleep */)) = rbuVfsSleep // sqlite3.c:204216:5: - *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 120 /* .xCurrentTime */)) = rbuVfsCurrentTime // sqlite3.c:204217:5: - *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 128 /* .xGetLastError */)) = rbuVfsGetLastError // sqlite3.c:204218:5: + }{Xsqlite3_value_dup})) // sqlite3.c:126448:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1640 /* .value_free */)) = Xsqlite3_value_free // sqlite3.c:126449:3: + *(*func(*libc.TLS, uintptr, U64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1648 /* .result_zeroblob64 */)) = Xsqlite3_result_zeroblob64 // sqlite3.c:126450:3: + *(*func(*libc.TLS, uintptr, int32, Sqlite3_uint64) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1656 /* .bind_zeroblob64 */)) = Xsqlite3_bind_zeroblob64 // sqlite3.c:126451:3: + *(*func(*libc.TLS, uintptr) uint32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1664 /* .value_subtype */)) = Xsqlite3_value_subtype // sqlite3.c:126453:3: + *(*func(*libc.TLS, uintptr, uint32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1672 /* .result_subtype */)) = Xsqlite3_result_subtype // sqlite3.c:126454:3: + *(*func(*libc.TLS, int32, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1680 /* .status64 */)) = Xsqlite3_status64 // sqlite3.c:126456:3: + *(*func(*libc.TLS, uintptr, uintptr, uint32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1688 /* .strlike */)) = Xsqlite3_strlike // sqlite3.c:126457:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1696 /* .db_cacheflush */)) = Xsqlite3_db_cacheflush // sqlite3.c:126458:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1704 /* .system_errno */)) = Xsqlite3_system_errno // sqlite3.c:126460:3: + *(*func(*libc.TLS, uintptr, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1712 /* .trace_v2 */)) = Xsqlite3_trace_v2 // sqlite3.c:126462:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1720 /* .expanded_sql */)) = Xsqlite3_expanded_sql // sqlite3.c:126463:3: + *(*func(*libc.TLS, uintptr, Sqlite3_int64))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1728 /* .set_last_insert_rowid */)) = Xsqlite3_set_last_insert_rowid // sqlite3.c:126465:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1736 /* .prepare_v3 */)) = Xsqlite3_prepare_v3 // sqlite3.c:126467:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uint32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1744 /* .prepare16_v3 */)) = Xsqlite3_prepare16_v3 // sqlite3.c:126468:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1752 /* .bind_pointer */)) = Xsqlite3_bind_pointer // sqlite3.c:126469:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1760 /* .result_pointer */)) = Xsqlite3_result_pointer // sqlite3.c:126470:3: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1768 /* .value_pointer */)) = Xsqlite3_value_pointer // sqlite3.c:126471:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1776 /* .vtab_nochange */)) = Xsqlite3_vtab_nochange // sqlite3.c:126473:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1784 /* .value_nochange */)) = Xsqlite3_value_nochange // sqlite3.c:126474:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1792 /* .vtab_collation */)) = Xsqlite3_vtab_collation // sqlite3.c:126475:3: + *(*func(*libc.TLS) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1800 /* .keyword_count */)) = Xsqlite3_keyword_count // sqlite3.c:126477:3: + *(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1808 /* .keyword_name */)) = Xsqlite3_keyword_name // sqlite3.c:126478:3: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1816 /* .keyword_check */)) = Xsqlite3_keyword_check // sqlite3.c:126479:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1824 /* .str_new */)) = Xsqlite3_str_new // sqlite3.c:126480:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1832 /* .str_finish */)) = Xsqlite3_str_finish // sqlite3.c:126481:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1840 /* .str_appendf */)) = Xsqlite3_str_appendf // sqlite3.c:126482:3: + *(*func(*libc.TLS, uintptr, uintptr, Va_list))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1848 /* .str_vappendf */)) = Xsqlite3_str_vappendf // sqlite3.c:126483:3: + *(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1856 /* .str_append */)) = Xsqlite3_str_append // sqlite3.c:126484:3: + *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1864 /* .str_appendall */)) = Xsqlite3_str_appendall // sqlite3.c:126485:3: + *(*func(*libc.TLS, uintptr, int32, int8))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1872 /* .str_appendchar */)) = Xsqlite3_str_appendchar // sqlite3.c:126486:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1880 /* .str_reset */)) = Xsqlite3_str_reset // sqlite3.c:126487:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1888 /* .str_errcode */)) = Xsqlite3_str_errcode // sqlite3.c:126488:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1896 /* .str_length */)) = Xsqlite3_str_length // sqlite3.c:126489:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1904 /* .str_value */)) = Xsqlite3_str_value // sqlite3.c:126490:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, int32, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1912 /* .create_window_function */)) = Xsqlite3_create_window_function // sqlite3.c:126492:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1928 /* .stmt_isexplain */)) = Xsqlite3_stmt_isexplain // sqlite3.c:126500:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1936 /* .value_frombind */)) = Xsqlite3_value_frombind // sqlite3.c:126501:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1944 /* .drop_modules */)) = Xsqlite3_drop_modules // sqlite3.c:126504:3: + *(*func(*libc.TLS, Sqlite3_int64) Sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1952 /* .hard_heap_limit64 */)) = Xsqlite3_hard_heap_limit64 // sqlite3.c:126509:3: + *(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1960 /* .uri_key */)) = Xsqlite3_uri_key // sqlite3.c:126510:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1968 /* .filename_database */)) = Xsqlite3_filename_database // sqlite3.c:126511:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1976 /* .filename_journal */)) = Xsqlite3_filename_journal // sqlite3.c:126512:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1984 /* .filename_wal */)) = Xsqlite3_filename_wal // sqlite3.c:126513:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 1992 /* .create_filename */)) = Xsqlite3_create_filename // sqlite3.c:126515:3: + *(*func(*libc.TLS, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2000 /* .free_filename */)) = Xsqlite3_free_filename // sqlite3.c:126516:3: + *(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2008 /* .database_file_object */)) = Xsqlite3_database_file_object // sqlite3.c:126517:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3Apis)) + 2016 /* .txn_state */)) = Xsqlite3_txn_state // sqlite3.c:126519:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 0)) = Xsqlite3Fts5Init // sqlite3.c:164128:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 8)) = Xsqlite3RtreeInit // sqlite3.c:164134:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 16)) = Xsqlite3DbpageRegister // sqlite3.c:164137:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 24)) = Xsqlite3DbstatRegister // sqlite3.c:164140:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 32)) = sqlite3TestExtInit // sqlite3.c:164142:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 40)) = Xsqlite3Json1Init // sqlite3.c:164144:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 48)) = Xsqlite3StmtVtabInit // sqlite3.c:164147:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&sqlite3BuiltinExtensions)) + 56)) = Xsqlite3VdbeBytecodeVtabInit // sqlite3.c:164150:3: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statGetFuncdef)) + 24 /* .xSFunc */)) = statGet // sqlite3.c:109701:3: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statInitFuncdef)) + 24 /* .xSFunc */)) = statInit // sqlite3.c:109259:3: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&statPushFuncdef)) + 24 /* .xSFunc */)) = statPush // sqlite3.c:109549:3: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 16 /* .xConnect */)) = stmtConnect // sqlite3.c:234181:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 24 /* .xBestIndex */)) = stmtBestIndex // sqlite3.c:234182:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 32 /* .xDisconnect */)) = stmtDisconnect // sqlite3.c:234183:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 48 /* .xOpen */)) = stmtOpen // sqlite3.c:234185:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 56 /* .xClose */)) = stmtClose // sqlite3.c:234186:3: + *(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 64 /* .xFilter */)) = stmtFilter // sqlite3.c:234187:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 72 /* .xNext */)) = stmtNext // sqlite3.c:234188:3: + *(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 80 /* .xEof */)) = stmtEof // sqlite3.c:234189:3: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 88 /* .xColumn */)) = stmtColumn // sqlite3.c:234190:3: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&stmtModule)) + 96 /* .xRowid */)) = stmtRowid // sqlite3.c:234191:3: + *(*func(*libc.TLS, uintptr, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 40 /* .xOpen */)) = rbuVfsOpen // sqlite3.c:204213:5: + *(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 48 /* .xDelete */)) = rbuVfsDelete // sqlite3.c:204214:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 56 /* .xAccess */)) = rbuVfsAccess // sqlite3.c:204215:5: + *(*func(*libc.TLS, uintptr, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 64 /* .xFullPathname */)) = rbuVfsFullPathname // sqlite3.c:204216:5: + *(*func(*libc.TLS, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 72 /* .xDlOpen */)) = rbuVfsDlOpen // sqlite3.c:204219:5: + *(*func(*libc.TLS, uintptr, int32, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 80 /* .xDlError */)) = rbuVfsDlError // sqlite3.c:204220:5: + *(*func(*libc.TLS, uintptr, uintptr, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 88 /* .xDlSym */)) = rbuVfsDlSym // sqlite3.c:204221:5: + *(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 96 /* .xDlClose */)) = rbuVfsDlClose // sqlite3.c:204222:5: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 104 /* .xRandomness */)) = rbuVfsRandomness // sqlite3.c:204227:5: + *(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 112 /* .xSleep */)) = rbuVfsSleep // sqlite3.c:204228:5: + *(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 120 /* .xCurrentTime */)) = rbuVfsCurrentTime // sqlite3.c:204229:5: + *(*func(*libc.TLS, uintptr, int32, uintptr) int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&vfs_template)) + 128 /* .xGetLastError */)) = rbuVfsGetLastError // sqlite3.c:204230:5: } -var ts1 = "COMPILER=gcc-10.2.1 20201220\x00DEFAULT_PAGE_SIZE=1024\x00ENABLE_BYTECODE_VTAB\x00ENABLE_COLUMN_METADATA\x00ENABLE_DBSTAT_VTAB\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_STMTVTAB\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00TEMP_STORE=1\x00TEST\x00THREADSAFE=1\x003.35.4\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00thstndrd\x00%s\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00\x00AutoCommit\x00\x00Transaction\x00\x00SorterNext\x00\x00Prev\x00\x00Next\x00\x00Checkpoint\x00\x00JournalMode\x00\x00Vacuum\x00\x00VFilter\x00iplan=r[P3] zplan='P4'\x00VUpdate\x00data=r[P3@P2]\x00Goto\x00\x00Gosub\x00\x00InitCoroutine\x00\x00Yield\x00\x00MustBeInt\x00\x00Jump\x00\x00Once\x00\x00If\x00\x00Not\x00r[P2]= !r[P1]\x00IfNot\x00\x00IfNullRow\x00if P1.nullRow then r[P3]=NULL, goto P2\x00SeekLT\x00key=r[P3@P4]\x00SeekLE\x00key=r[P3@P4]\x00SeekGE\x00key=r[P3@P4]\x00SeekGT\x00key=r[P3@P4]\x00IfNotOpen\x00if( !csr[P1] ) goto P2\x00IfNoHope\x00key=r[P3@P4]\x00NoConflict\x00key=r[P3@P4]\x00NotFound\x00key=r[P3@P4]\x00Found\x00key=r[P3@P4]\x00SeekRowid\x00intkey=r[P3]\x00NotExists\x00intkey=r[P3]\x00Last\x00\x00IfSmaller\x00\x00SorterSort\x00\x00Sort\x00\x00Rewind\x00\x00IdxLE\x00key=r[P3@P4]\x00IdxGT\x00key=r[P3@P4]\x00IdxLT\x00key=r[P3@P4]\x00IdxGE\x00key=r[P3@P4]\x00RowSetRead\x00r[P3]=rowset(P1)\x00Or\x00r[P3]=(r[P1] || r[P2])\x00And\x00r[P3]=(r[P1] && r[P2])\x00RowSetTest\x00if r[P3] in rowset(P1) goto P2\x00Program\x00\x00FkIfZero\x00if fkctr[P1]==0 goto P2\x00IfPos\x00if r[P1]>0 then r[P1]-=P3, goto P2\x00IfNotZero\x00if r[P1]!=0 then r[P1]--, goto P2\x00IsNull\x00if r[P1]==NULL goto P2\x00NotNull\x00if r[P1]!=NULL goto P2\x00Ne\x00IF r[P3]!=r[P1]\x00Eq\x00IF r[P3]==r[P1]\x00Gt\x00IF r[P3]>r[P1]\x00Le\x00IF r[P3]<=r[P1]\x00Lt\x00IF r[P3]=r[P1]\x00ElseNotEq\x00\x00DecrJumpZero\x00if (--r[P1])==0 goto P2\x00IncrVacuum\x00\x00VNext\x00\x00Init\x00Start at P2\x00PureFunc\x00r[P3]=func(r[P2@NP])\x00Function\x00r[P3]=func(r[P2@NP])\x00Return\x00\x00EndCoroutine\x00\x00HaltIfNull\x00if r[P3]=null halt\x00Halt\x00\x00Integer\x00r[P2]=P1\x00Int64\x00r[P2]=P4\x00String\x00r[P2]='P4' (len=P1)\x00Null\x00r[P2..P3]=NULL\x00SoftNull\x00r[P1]=NULL\x00Blob\x00r[P2]=P4 (len=P1)\x00Variable\x00r[P2]=parameter(P1,P4)\x00Move\x00r[P2@P3]=r[P1@P3]\x00Copy\x00r[P2@P3+1]=r[P1@P3+1]\x00SCopy\x00r[P2]=r[P1]\x00IntCopy\x00r[P2]=r[P1]\x00ChngCntRow\x00output=r[P1]\x00ResultRow\x00output=r[P1@P2]\x00CollSeq\x00\x00AddImm\x00r[P1]=r[P1]+P2\x00RealAffinity\x00\x00Cast\x00affinity(r[P1])\x00Permutation\x00\x00Compare\x00r[P1@P3] <-> r[P2@P3]\x00IsTrue\x00r[P2] = coalesce(r[P1]==TRUE,P3) ^ P4\x00Offset\x00r[P3] = sqlite_offset(P1)\x00Column\x00r[P3]=PX\x00Affinity\x00affinity(r[P1@P2])\x00MakeRecord\x00r[P3]=mkrec(r[P1@P2])\x00Count\x00r[P2]=count()\x00ReadCookie\x00\x00SetCookie\x00\x00ReopenIdx\x00root=P2 iDb=P3\x00OpenRead\x00root=P2 iDb=P3\x00OpenWrite\x00root=P2 iDb=P3\x00OpenDup\x00\x00OpenAutoindex\x00nColumn=P2\x00OpenEphemeral\x00nColumn=P2\x00BitAnd\x00r[P3]=r[P1]&r[P2]\x00BitOr\x00r[P3]=r[P1]|r[P2]\x00ShiftLeft\x00r[P3]=r[P2]<>r[P1]\x00Add\x00r[P3]=r[P1]+r[P2]\x00Subtract\x00r[P3]=r[P2]-r[P1]\x00Multiply\x00r[P3]=r[P1]*r[P2]\x00Divide\x00r[P3]=r[P2]/r[P1]\x00Remainder\x00r[P3]=r[P2]%r[P1]\x00Concat\x00r[P3]=r[P2]+r[P1]\x00SorterOpen\x00\x00BitNot\x00r[P2]= ~r[P1]\x00SequenceTest\x00if( cursor[P1].ctr++ ) pc = P2\x00OpenPseudo\x00P3 columns in r[P2]\x00String8\x00r[P2]='P4'\x00Close\x00\x00ColumnsUsed\x00\x00SeekScan\x00Scan-ahead up to P1 rows\x00SeekHit\x00set P2<=seekHit<=P3\x00Sequence\x00r[P2]=cursor[P1].ctr++\x00NewRowid\x00r[P2]=rowid\x00Insert\x00intkey=r[P3] data=r[P2]\x00RowCell\x00\x00Delete\x00\x00ResetCount\x00\x00SorterCompare\x00if key(P1)!=trim(r[P3],P4) goto P2\x00SorterData\x00r[P2]=data\x00RowData\x00r[P2]=data\x00Rowid\x00r[P2]=rowid\x00NullRow\x00\x00SeekEnd\x00\x00IdxInsert\x00key=r[P2]\x00SorterInsert\x00key=r[P2]\x00IdxDelete\x00key=r[P2@P3]\x00DeferredSeek\x00Move P3 to P1.rowid if needed\x00IdxRowid\x00r[P2]=rowid\x00FinishSeek\x00\x00Destroy\x00\x00Clear\x00\x00ResetSorter\x00\x00CreateBtree\x00r[P2]=root iDb=P1 flags=P3\x00SqlExec\x00\x00ParseSchema\x00\x00LoadAnalysis\x00\x00DropTable\x00\x00DropIndex\x00\x00DropTrigger\x00\x00IntegrityCk\x00\x00RowSetAdd\x00rowset(P1)=r[P2]\x00Param\x00\x00Real\x00r[P2]=P4\x00FkCounter\x00fkctr[P1]+=P2\x00MemMax\x00r[P1]=max(r[P1],r[P2])\x00OffsetLimit\x00if r[P1]>0 then r[P2]=r[P1]+max(0,r[P3]) else r[P2]=(-1)\x00AggInverse\x00accum=r[P3] inverse(r[P2@P5])\x00AggStep\x00accum=r[P3] step(r[P2@P5])\x00AggStep1\x00accum=r[P3] step(r[P2@P5])\x00AggValue\x00r[P3]=value N=P2\x00AggFinal\x00accum=r[P1] N=P2\x00Expire\x00\x00CursorLock\x00\x00CursorUnlock\x00\x00TableLock\x00iDb=P1 root=P2 write=P3\x00VBegin\x00\x00VCreate\x00\x00VDestroy\x00\x00VOpen\x00\x00VColumn\x00r[P3]=vcolumn(P2)\x00VRename\x00\x00Pagecount\x00\x00MaxPgcnt\x00\x00Trace\x00\x00CursorHint\x00\x00ReleaseReg\x00release r[P1@P2] mask P3\x00Noop\x00\x00Explain\x00\x00Abortable\x00\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00NONE\x00SHARED\x00RESERVED\x00PENDING\x00EXCLUSIVE\x00ERROR\x00os_unix.c:%d: (%d) %s(%s) - %s\x00S\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00TEST WR-LOCK %d %d %d (unix)\n\x00LOCK %d %s was %s(%s,%d) pid=%d (unix)\n\x00LOCK %d %s ok (already held) (unix)\n\x00LOCK %d %s %s (unix)\n\x00ok\x00failed\x00UNLOCK %d %d was %d(%d,%d) pid=%d (unix)\n\x00CLOSE %-3d\n\x00TEST WR-LOCK %d %d %d (dotlock)\n\x00UNLOCK %d %d was %d pid=%d (dotlock)\n\x00TEST WR-LOCK %d %d %d (flock)\n\x00LOCK %d %s %s (flock)\n\x00UNLOCK %d %d was %d pid=%d (flock)\n\x00AFPSETLOCK [%s] for %d%s in range %llx:%llx\n\x00ON\x00OFF\x00[testval-1]\x00AFPSETLOCK failed to fsctl() '%s' %d %s\n\x00TEST WR-LOCK %d %d %d (afp)\n\x00LOCK %d %s was %s(%s,%d) pid=%d (afp)\n\x00LOCK %d %s ok (already held) (afp)\n\x00LOCK %d %s %s (afp)\n\x00UNLOCK %d %d was %d(%d,%d) pid=%d (afp)\n\x00READ %-3d %5d %7lld %llu\n\x00WRITE %-3d %5d %7lld %llu\n\x00OPENDIR %-3d %s\n\x00SYNC %-3d\n\x00full_fsync\x00DIRSYNC %s (have_fullfsync=%d fullsync=%d)\n\x00%s-shm\x00readonly_shm\x00SHM-LOCK shmid-%d, pid-%d got %03x,%03x\n\x00nfs\x00hfs\x00ufs\x00afpfs\x00smbfs\x00webdav\x00OPEN %-3d %s\n\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00OPENX %-3d %s 0%o\n\x00msdos\x00exfat\x00SQLITE_FORCE_PROXY_LOCKING\x00:auto:\x00fsync\x00GETLOCKPATH failed %s errno=%d pid=%d\n\x00sqliteplocks\x00/\x00GETLOCKPATH proxy lock path=%s pid=%d\n\x00CREATELOCKPATH FAILED creating %s, '%s' proxy lock path=%s pid=%d\n\x00CREATELOCKPATH proxy lock path=%s pid=%d\n\x00dummy\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00break\x00path error (len %d)\x00read error (len %d)\x00create failed (%d)\x00write failed (%d)\x00rename failed (%d)\x00broke stale lock on %s\n\x00failed to break stale lock on %s, %s\n\x00TAKECONCH %d for %s pid=%d\n\x00TRANSPROXY: CLOSE %d\n\x00TRANSPROXY: OPEN %d\n\x00TAKECONCH %d %s\n\x00RELEASECONCH %d for %s pid=%d\n\x00RELEASECONCH %d %s\n\x00-conch\x00.lock\x00TRANSPROXY %d for %s pid=%d\n\x00TRANSPROXY %d %s\n\x00:auto: (not held)\x00unix\x00unix-none\x00unix-dotfile\x00unix-posix\x00unix-flock\x00unix-afp\x00unix-nfs\x00unix-proxy\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00ATTACH x AS %Q\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00IF \x00r[P2] = (%s)\x00if %s goto P2\x00@P\x00+1\x00%d\x00%d..%d\x00@NP\x00..P3\x00; %s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00CREATE TABLE x(addr INT,opcode TEXT,p1 INT,p2 INT,p3 INT,p4 TEXT,p5 INT,comment TEXT,subprog TEXT,stmt HIDDEN);\x00CREATE TABLE x(type TEXT,schema TEXT,name TEXT,wr INT,subprog TEXT,stmt HIDDEN);\x00table\x00index\x00(FK)\x00stmt-pointer\x00argument to %s() is not a valid SQL statement\x00tables_used\x00bytecode\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00first_entry_in(%d)\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00return address\x00Result of SELECT %u\x00RHS of IN operator\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x00Init subquery result\x00Init EXISTS result\x001\x00begin IN expr\x00end IN expr\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00%s.rowid\x00%s.%s\x00misuse of aggregate: %s()\x00unknown function: %s()\x00r[%d]=%s.%s\x00rowid\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %Q)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %Q)=NULL \x00there is already another table or index with this name: %s\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename',0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\"\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00%s.expr(%d)\x00sqlite\\_%\x00Analysis for %s.%s\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00usesStmtJournal=%d\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00trigger count\x00defer IPK REPLACE until last\x00uniqueness check for ROWID\x00prep index %s\x00%s column %d\x00for %s\x00bypass recheck\x00Do IPK REPLACE\x00sqlite3_extension_init\x00unable to open shared library [%s]\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00dylib\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00lock_proxy_file\x00lock_status\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00failed to set lock proxy file\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00unknown\x00closed\x00ss\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00unlocked\x00shared\x00reserved\x00pending\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00OFFSET\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00LIMIT counter\x00OFFSET counter\x00LIMIT+OFFSET\x00cannot use window functions in recursive queries\x00Queue table\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00Jump ahead if LIMIT reached\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00left SELECT\x00LEFT\x00right SELECT\x00RIGHT\x00Output routine for A\x00Output routine for B\x00eof-A subroutine\x00eof-B subroutine\x00A-lt-B subroutine\x00A-eq-B subroutine\x00A-gt-B subroutine\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00SCAN TABLE %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %u\x00materialize \"%s\"\x00MATERIALIZE %u\x00end %s\x00inner-loop subroutine\x00end inner-loop subroutine\x00clear abort flag\x00DISTINCT\x00GROUP BY\x00GROUP BY sort\x00output one row\x00check abort flag\x00reset accumulator\x00indicate data in accumulator\x00output final row\x00set abort flag\x00Groupby result generator entry point\x00end groupby result generator\x00indicate accumulator empty\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00abort\x00rollback\x00fail\x00ignore\x00default\x00n/a\x00Start: %s.%s (%s %s%s%s ON %s)\x00INSERT\x00-- TRIGGER %s\x00End: %s.%s\x00Call: %s.%s\x00fkey\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00Begin DO UPDATE of UPSERT\x00End DO UPDATE of UPSERT\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00SEARCH\x00SCAN\x00 SUBQUERY %u\x00 TABLE %s\x00 AS %s\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00begin skip-scan on %s\x00init LEFT JOIN no-match flag\x00next row of %s\x00NULL-scan pass ctr\x00If NULL-scan 2nd pass\x00If NULL-scan 1st pass\x00MULTI-INDEX OR\x00INDEX %d\x00record LEFT JOIN hit\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00next skip-scan on %s\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00call flush_partition\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00SQLITE_OK\x00SQLITE_ERROR\x00SQLITE_ERROR_SNAPSHOT\x00SQLITE_INTERNAL\x00SQLITE_PERM\x00SQLITE_ABORT\x00SQLITE_ABORT_ROLLBACK\x00SQLITE_BUSY\x00SQLITE_BUSY_RECOVERY\x00SQLITE_BUSY_SNAPSHOT\x00SQLITE_LOCKED\x00SQLITE_LOCKED_SHAREDCACHE\x00SQLITE_NOMEM\x00SQLITE_READONLY\x00SQLITE_READONLY_RECOVERY\x00SQLITE_READONLY_CANTINIT\x00SQLITE_READONLY_ROLLBACK\x00SQLITE_READONLY_DBMOVED\x00SQLITE_READONLY_DIRECTORY\x00SQLITE_INTERRUPT\x00SQLITE_IOERR\x00SQLITE_IOERR_READ\x00SQLITE_IOERR_SHORT_READ\x00SQLITE_IOERR_WRITE\x00SQLITE_IOERR_FSYNC\x00SQLITE_IOERR_DIR_FSYNC\x00SQLITE_IOERR_TRUNCATE\x00SQLITE_IOERR_FSTAT\x00SQLITE_IOERR_UNLOCK\x00SQLITE_IOERR_RDLOCK\x00SQLITE_IOERR_DELETE\x00SQLITE_IOERR_NOMEM\x00SQLITE_IOERR_ACCESS\x00SQLITE_IOERR_CHECKRESERVEDLOCK\x00SQLITE_IOERR_LOCK\x00SQLITE_IOERR_CLOSE\x00SQLITE_IOERR_DIR_CLOSE\x00SQLITE_IOERR_SHMOPEN\x00SQLITE_IOERR_SHMSIZE\x00SQLITE_IOERR_SHMLOCK\x00SQLITE_IOERR_SHMMAP\x00SQLITE_IOERR_SEEK\x00SQLITE_IOERR_DELETE_NOENT\x00SQLITE_IOERR_MMAP\x00SQLITE_IOERR_GETTEMPPATH\x00SQLITE_IOERR_CONVPATH\x00SQLITE_CORRUPT\x00SQLITE_CORRUPT_VTAB\x00SQLITE_NOTFOUND\x00SQLITE_FULL\x00SQLITE_CANTOPEN\x00SQLITE_CANTOPEN_NOTEMPDIR\x00SQLITE_CANTOPEN_ISDIR\x00SQLITE_CANTOPEN_FULLPATH\x00SQLITE_CANTOPEN_CONVPATH\x00SQLITE_CANTOPEN_SYMLINK\x00SQLITE_PROTOCOL\x00SQLITE_EMPTY\x00SQLITE_SCHEMA\x00SQLITE_TOOBIG\x00SQLITE_CONSTRAINT\x00SQLITE_CONSTRAINT_UNIQUE\x00SQLITE_CONSTRAINT_TRIGGER\x00SQLITE_CONSTRAINT_FOREIGNKEY\x00SQLITE_CONSTRAINT_CHECK\x00SQLITE_CONSTRAINT_PRIMARYKEY\x00SQLITE_CONSTRAINT_NOTNULL\x00SQLITE_CONSTRAINT_COMMITHOOK\x00SQLITE_CONSTRAINT_VTAB\x00SQLITE_CONSTRAINT_FUNCTION\x00SQLITE_CONSTRAINT_ROWID\x00SQLITE_MISMATCH\x00SQLITE_MISUSE\x00SQLITE_NOLFS\x00SQLITE_AUTH\x00SQLITE_FORMAT\x00SQLITE_RANGE\x00SQLITE_NOTADB\x00SQLITE_ROW\x00SQLITE_NOTICE\x00SQLITE_NOTICE_RECOVER_WAL\x00SQLITE_NOTICE_RECOVER_ROLLBACK\x00SQLITE_WARNING\x00SQLITE_WARNING_AUTOINDEX\x00SQLITE_DONE\x00SQLITE_UNKNOWN(%d)\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00CREATE TABLE x( name TEXT, path TEXT, pageno INTEGER, pagetype TEXT, ncell INTEGER, payload INTEGER, unused INTEGER, mx_payload INTEGER, pgoffset INTEGER, pgsize INTEGER, schema TEXT HIDDEN, aggregate BOOLEAN HIDDEN)\x00overflow\x00%s%.3x+%.6x\x00%s%.3x/\x00internal\x00leaf\x00corrupted\x00SELECT * FROM (SELECT 'sqlite_schema' AS name,1 AS rootpage,'table' AS type UNION ALL SELECT name,rootpage,type FROM \"%w\".sqlite_schema WHERE rootpage!=0)\x00WHERE name=%Q\x00 ORDER BY name\x00dbstat\x00CREATE TABLE x(pgno INTEGER PRIMARY KEY, data BLOB, schema HIDDEN)\x00read-only\x00cannot delete\x00cannot insert\x00no such schema\x00bad page number\x00bad page value\x00sqlite_dbpage\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00%s \x00-col %d \x00-col {%d\x00 %d\x00} \x00-near %d \x00--\x00 {\x00 [%z]\x00\"\"\x00{\x00%s : \x00NEAR(\x00 + \x00, %d)\x00 NOT \x00 OR \x00%s%s%z%s\x00nearset\x00wrong number of arguments to function %s\x00fts5_expr_tcl\x00fts5_expr\x00wrong number of arguments to function fts5_isalnum\x00L*\x00N*\x00Co\x00wrong number of arguments to function fts5_fold\x00fts5_isalnum\x00fts5_fold\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00{averages} \x00{structure}\x00{%ssegid=%d h=%d pgno=%d}\x00dlidx \x00 {lvl=%d nMerge=%d nSeg=%d\x00 {id=%d leaves=%d..%d}\x00%s%d\x00 id=%lld\x00 nPos=%d%s\x00+\x00 %lld%s\x00 %d(%lld)\x00 term=%.*s\x00corrupt\x00should be: fts5_rowid(subject, ....)\x00segment\x00should be: fts5_rowid('segment', segid, pgno))\x00first arg to fts5_rowid() must be 'segment'\x00fts5_decode\x00fts5_decode_none\x00fts5_rowid\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x00CREATE TABLE x(sql,ncol,ro,busy,nscan,nsort,naidx,nstep,reprep,run,mem)\x00sqlite_stmt\x002021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e\x00" +var ts1 = "COMPILER=gcc-10.2.1 20201220\x00DEFAULT_PAGE_SIZE=1024\x00ENABLE_BYTECODE_VTAB\x00ENABLE_COLUMN_METADATA\x00ENABLE_DBSTAT_VTAB\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_JSON1\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_STMTVTAB\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MUTEX_NOOP\x00SOUNDEX\x00TEMP_STORE=1\x00TEST\x00THREADSAFE=1\x003.35.5\x00BINARY\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00local time unavailable\x00second\x00minute\x00hour\x00day\x00month\x00year\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00%04d-%02d-%02d %02d:%02d:%02d\x00%02d:%02d:%02d\x00%04d-%02d-%02d\x00%02d\x00%06.3f\x00%03d\x00%.16g\x00%04d\x00julianday\x00date\x00time\x00datetime\x00strftime\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x000123456789ABCDEF0123456789abcdef\x00-x0\x00X0\x00%\x00NaN\x00Inf\x00\x00NULL\x00(NULL)\x00.\x00thstndrd\x00%s\x00922337203685477580\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00\x00AutoCommit\x00\x00Transaction\x00\x00SorterNext\x00\x00Prev\x00\x00Next\x00\x00Checkpoint\x00\x00JournalMode\x00\x00Vacuum\x00\x00VFilter\x00iplan=r[P3] zplan='P4'\x00VUpdate\x00data=r[P3@P2]\x00Goto\x00\x00Gosub\x00\x00InitCoroutine\x00\x00Yield\x00\x00MustBeInt\x00\x00Jump\x00\x00Once\x00\x00If\x00\x00Not\x00r[P2]= !r[P1]\x00IfNot\x00\x00IfNullRow\x00if P1.nullRow then r[P3]=NULL, goto P2\x00SeekLT\x00key=r[P3@P4]\x00SeekLE\x00key=r[P3@P4]\x00SeekGE\x00key=r[P3@P4]\x00SeekGT\x00key=r[P3@P4]\x00IfNotOpen\x00if( !csr[P1] ) goto P2\x00IfNoHope\x00key=r[P3@P4]\x00NoConflict\x00key=r[P3@P4]\x00NotFound\x00key=r[P3@P4]\x00Found\x00key=r[P3@P4]\x00SeekRowid\x00intkey=r[P3]\x00NotExists\x00intkey=r[P3]\x00Last\x00\x00IfSmaller\x00\x00SorterSort\x00\x00Sort\x00\x00Rewind\x00\x00IdxLE\x00key=r[P3@P4]\x00IdxGT\x00key=r[P3@P4]\x00IdxLT\x00key=r[P3@P4]\x00IdxGE\x00key=r[P3@P4]\x00RowSetRead\x00r[P3]=rowset(P1)\x00Or\x00r[P3]=(r[P1] || r[P2])\x00And\x00r[P3]=(r[P1] && r[P2])\x00RowSetTest\x00if r[P3] in rowset(P1) goto P2\x00Program\x00\x00FkIfZero\x00if fkctr[P1]==0 goto P2\x00IfPos\x00if r[P1]>0 then r[P1]-=P3, goto P2\x00IfNotZero\x00if r[P1]!=0 then r[P1]--, goto P2\x00IsNull\x00if r[P1]==NULL goto P2\x00NotNull\x00if r[P1]!=NULL goto P2\x00Ne\x00IF r[P3]!=r[P1]\x00Eq\x00IF r[P3]==r[P1]\x00Gt\x00IF r[P3]>r[P1]\x00Le\x00IF r[P3]<=r[P1]\x00Lt\x00IF r[P3]=r[P1]\x00ElseNotEq\x00\x00DecrJumpZero\x00if (--r[P1])==0 goto P2\x00IncrVacuum\x00\x00VNext\x00\x00Init\x00Start at P2\x00PureFunc\x00r[P3]=func(r[P2@NP])\x00Function\x00r[P3]=func(r[P2@NP])\x00Return\x00\x00EndCoroutine\x00\x00HaltIfNull\x00if r[P3]=null halt\x00Halt\x00\x00Integer\x00r[P2]=P1\x00Int64\x00r[P2]=P4\x00String\x00r[P2]='P4' (len=P1)\x00Null\x00r[P2..P3]=NULL\x00SoftNull\x00r[P1]=NULL\x00Blob\x00r[P2]=P4 (len=P1)\x00Variable\x00r[P2]=parameter(P1,P4)\x00Move\x00r[P2@P3]=r[P1@P3]\x00Copy\x00r[P2@P3+1]=r[P1@P3+1]\x00SCopy\x00r[P2]=r[P1]\x00IntCopy\x00r[P2]=r[P1]\x00ChngCntRow\x00output=r[P1]\x00ResultRow\x00output=r[P1@P2]\x00CollSeq\x00\x00AddImm\x00r[P1]=r[P1]+P2\x00RealAffinity\x00\x00Cast\x00affinity(r[P1])\x00Permutation\x00\x00Compare\x00r[P1@P3] <-> r[P2@P3]\x00IsTrue\x00r[P2] = coalesce(r[P1]==TRUE,P3) ^ P4\x00Offset\x00r[P3] = sqlite_offset(P1)\x00Column\x00r[P3]=PX\x00Affinity\x00affinity(r[P1@P2])\x00MakeRecord\x00r[P3]=mkrec(r[P1@P2])\x00Count\x00r[P2]=count()\x00ReadCookie\x00\x00SetCookie\x00\x00ReopenIdx\x00root=P2 iDb=P3\x00OpenRead\x00root=P2 iDb=P3\x00OpenWrite\x00root=P2 iDb=P3\x00OpenDup\x00\x00OpenAutoindex\x00nColumn=P2\x00OpenEphemeral\x00nColumn=P2\x00BitAnd\x00r[P3]=r[P1]&r[P2]\x00BitOr\x00r[P3]=r[P1]|r[P2]\x00ShiftLeft\x00r[P3]=r[P2]<>r[P1]\x00Add\x00r[P3]=r[P1]+r[P2]\x00Subtract\x00r[P3]=r[P2]-r[P1]\x00Multiply\x00r[P3]=r[P1]*r[P2]\x00Divide\x00r[P3]=r[P2]/r[P1]\x00Remainder\x00r[P3]=r[P2]%r[P1]\x00Concat\x00r[P3]=r[P2]+r[P1]\x00SorterOpen\x00\x00BitNot\x00r[P2]= ~r[P1]\x00SequenceTest\x00if( cursor[P1].ctr++ ) pc = P2\x00OpenPseudo\x00P3 columns in r[P2]\x00String8\x00r[P2]='P4'\x00Close\x00\x00ColumnsUsed\x00\x00SeekScan\x00Scan-ahead up to P1 rows\x00SeekHit\x00set P2<=seekHit<=P3\x00Sequence\x00r[P2]=cursor[P1].ctr++\x00NewRowid\x00r[P2]=rowid\x00Insert\x00intkey=r[P3] data=r[P2]\x00RowCell\x00\x00Delete\x00\x00ResetCount\x00\x00SorterCompare\x00if key(P1)!=trim(r[P3],P4) goto P2\x00SorterData\x00r[P2]=data\x00RowData\x00r[P2]=data\x00Rowid\x00r[P2]=rowid\x00NullRow\x00\x00SeekEnd\x00\x00IdxInsert\x00key=r[P2]\x00SorterInsert\x00key=r[P2]\x00IdxDelete\x00key=r[P2@P3]\x00DeferredSeek\x00Move P3 to P1.rowid if needed\x00IdxRowid\x00r[P2]=rowid\x00FinishSeek\x00\x00Destroy\x00\x00Clear\x00\x00ResetSorter\x00\x00CreateBtree\x00r[P2]=root iDb=P1 flags=P3\x00SqlExec\x00\x00ParseSchema\x00\x00LoadAnalysis\x00\x00DropTable\x00\x00DropIndex\x00\x00DropTrigger\x00\x00IntegrityCk\x00\x00RowSetAdd\x00rowset(P1)=r[P2]\x00Param\x00\x00Real\x00r[P2]=P4\x00FkCounter\x00fkctr[P1]+=P2\x00MemMax\x00r[P1]=max(r[P1],r[P2])\x00OffsetLimit\x00if r[P1]>0 then r[P2]=r[P1]+max(0,r[P3]) else r[P2]=(-1)\x00AggInverse\x00accum=r[P3] inverse(r[P2@P5])\x00AggStep\x00accum=r[P3] step(r[P2@P5])\x00AggStep1\x00accum=r[P3] step(r[P2@P5])\x00AggValue\x00r[P3]=value N=P2\x00AggFinal\x00accum=r[P1] N=P2\x00Expire\x00\x00CursorLock\x00\x00CursorUnlock\x00\x00TableLock\x00iDb=P1 root=P2 write=P3\x00VBegin\x00\x00VCreate\x00\x00VDestroy\x00\x00VOpen\x00\x00VColumn\x00r[P3]=vcolumn(P2)\x00VRename\x00\x00Pagecount\x00\x00MaxPgcnt\x00\x00Trace\x00\x00CursorHint\x00\x00ReleaseReg\x00release r[P1@P2] mask P3\x00Noop\x00\x00Explain\x00\x00Abortable\x00\x00open\x00close\x00access\x00getcwd\x00stat\x00fstat\x00ftruncate\x00fcntl\x00read\x00pread\x00pread64\x00write\x00pwrite\x00pwrite64\x00fchmod\x00fallocate\x00unlink\x00openDirectory\x00mkdir\x00rmdir\x00fchown\x00geteuid\x00mmap\x00munmap\x00mremap\x00getpagesize\x00readlink\x00lstat\x00ioctl\x00attempt to open \"%s\" as file descriptor %d\x00/dev/null\x00NONE\x00SHARED\x00RESERVED\x00PENDING\x00EXCLUSIVE\x00ERROR\x00os_unix.c:%d: (%d) %s(%s) - %s\x00S\x00cannot fstat db file %s\x00file unlinked while open: %s\x00multiple links to file: %s\x00file renamed while open: %s\x00TEST WR-LOCK %d %d %d (unix)\n\x00LOCK %d %s was %s(%s,%d) pid=%d (unix)\n\x00LOCK %d %s ok (already held) (unix)\n\x00LOCK %d %s %s (unix)\n\x00ok\x00failed\x00UNLOCK %d %d was %d(%d,%d) pid=%d (unix)\n\x00CLOSE %-3d\n\x00TEST WR-LOCK %d %d %d (dotlock)\n\x00UNLOCK %d %d was %d pid=%d (dotlock)\n\x00TEST WR-LOCK %d %d %d (flock)\n\x00LOCK %d %s %s (flock)\n\x00UNLOCK %d %d was %d pid=%d (flock)\n\x00AFPSETLOCK [%s] for %d%s in range %llx:%llx\n\x00ON\x00OFF\x00[testval-1]\x00AFPSETLOCK failed to fsctl() '%s' %d %s\n\x00TEST WR-LOCK %d %d %d (afp)\n\x00LOCK %d %s was %s(%s,%d) pid=%d (afp)\n\x00LOCK %d %s ok (already held) (afp)\n\x00LOCK %d %s %s (afp)\n\x00UNLOCK %d %d was %d(%d,%d) pid=%d (afp)\n\x00READ %-3d %5d %7lld %llu\n\x00WRITE %-3d %5d %7lld %llu\n\x00OPENDIR %-3d %s\n\x00SYNC %-3d\n\x00full_fsync\x00DIRSYNC %s (have_fullfsync=%d fullsync=%d)\n\x00%s-shm\x00readonly_shm\x00SHM-LOCK shmid-%d, pid-%d got %03x,%03x\n\x00nfs\x00hfs\x00ufs\x00afpfs\x00smbfs\x00webdav\x00OPEN %-3d %s\n\x00psow\x00unix-excl\x00%s.lock\x00SQLITE_TMPDIR\x00TMPDIR\x00/var/tmp\x00/usr/tmp\x00/tmp\x00%s/etilqs_%llx%c\x00modeof\x00OPENX %-3d %s 0%o\n\x00msdos\x00exfat\x00SQLITE_FORCE_PROXY_LOCKING\x00:auto:\x00fsync\x00GETLOCKPATH failed %s errno=%d pid=%d\n\x00sqliteplocks\x00/\x00GETLOCKPATH proxy lock path=%s pid=%d\n\x00CREATELOCKPATH FAILED creating %s, '%s' proxy lock path=%s pid=%d\n\x00CREATELOCKPATH proxy lock path=%s pid=%d\n\x00dummy\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00break\x00path error (len %d)\x00read error (len %d)\x00create failed (%d)\x00write failed (%d)\x00rename failed (%d)\x00broke stale lock on %s\n\x00failed to break stale lock on %s, %s\n\x00TAKECONCH %d for %s pid=%d\n\x00TRANSPROXY: CLOSE %d\n\x00TRANSPROXY: OPEN %d\n\x00TAKECONCH %d %s\n\x00RELEASECONCH %d for %s pid=%d\n\x00RELEASECONCH %d %s\n\x00-conch\x00.lock\x00TRANSPROXY %d for %s pid=%d\n\x00TRANSPROXY %d %s\n\x00:auto: (not held)\x00unix\x00unix-none\x00unix-dotfile\x00unix-posix\x00unix-flock\x00unix-afp\x00unix-nfs\x00unix-proxy\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00ATTACH x AS %Q\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00SQLite format 3\x00:memory:\x00@ \x00\n\x00invalid page number %d\x002nd reference to page %d\x00Failed to read ptrmap key=%d\x00Bad ptr map entry key=%d expected=(%d,%d) got=(%d,%d)\x00failed to get page %d\x00freelist leaf count too big on page %d\x00%s is %d but should be %d\x00size\x00overflow list length\x00Page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00On tree page %u cell %d: \x00On page %u at right child: \x00Offset %d out of range %d..%d\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %d bytes reported as %d on page %u\x00Main freelist: \x00max rootpage (%d) disagrees with header (%d)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %d is never used\x00Pointer map page %d is referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00%!.15g\x00-\x00%s%s\x00IF \x00r[P2] = (%s)\x00if %s goto P2\x00@P\x00+1\x00%d\x00%d..%d\x00@NP\x00..P3\x00; %s\x00k(%d\x00B\x00,%s%s%s\x00N.\x00)\x00%.18s-%s\x00%s(%d)\x00%lld\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00?\x008\x0016LE\x0016BE\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00bind on a busy prepared statement: [%s]\x00-- \x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00%s constraint failed\x00%z: %s\x00abort at %d in [%s]: %s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00cannot change %s wal mode from within a transaction\x00into\x00out of\x00database table is locked: %s\x00-- %s\x00statement aborts at %d: [%s] %s\x00out of memory\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00cannot open value of type %s\x00null\x00real\x00integer\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00CREATE TABLE x(addr INT,opcode TEXT,p1 INT,p2 INT,p3 INT,p4 TEXT,p5 INT,comment TEXT,subprog TEXT,stmt HIDDEN);\x00CREATE TABLE x(type TEXT,schema TEXT,name TEXT,wr INT,subprog TEXT,stmt HIDDEN);\x00table\x00index\x00(FK)\x00stmt-pointer\x00argument to %s() is not a valid SQL statement\x00tables_used\x00bytecode\x00main\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00true\x00false\x00the \".\" operator\x00second argument to likelihood() must be a constant between 0.0 and 1.0\x00not authorized to use function: %s\x00non-deterministic functions\x00%.*s() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %.*s()\x00no such function: %.*s\x00wrong number of arguments to function %.*s()\x00FILTER may not be used with non-aggregate %.*s()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00a GROUP BY clause is required before HAVING\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x000\x00too many arguments on function %T\x00unsafe use of %s()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00_ROWID_\x00ROWID\x00OID\x00first_entry_in(%d)\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00return address\x00Result of SELECT %u\x00RHS of IN operator\x00%sLIST SUBQUERY %d\x00CORRELATED \x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x00Init subquery result\x00Init EXISTS result\x001\x00begin IN expr\x00end IN expr\x000x\x00hex literal too big: %s%s\x00generated column loop on \"%s\"\x00%s.rowid\x00%s.%s\x00misuse of aggregate: %s()\x00unknown function: %s()\x00r[%d]=%s.%s\x00rowid\x00RAISE() may only be used within a trigger-program\x00B\x00C\x00D\x00E\x00sqlite_\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %Q)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %Q)=NULL \x00there is already another table or index with this name: %s\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename',0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00cannot %s %s \"%s\"\x00drop column from\x00rename columns of\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q) AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00error in %s %s%s%s: %s\x00 \x00\"%w\"\x00%.*s%s\x00cannot drop %s column: \"%s\"\x00PRIMARY KEY\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00%s.expr(%d)\x00sqlite\\_%\x00Analysis for %s.%s\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00usesStmtJournal=%d\x00sqlite_temp_schema\x00sqlite_schema\x00sqlite_temp_master\x00pragma_\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00table %T already exists\x00there is already an index named %s\x00sqlite_returning\x00cannot use RETURNING in a trigger\x00too many columns on %s\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00INTEGER\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00unsupported use of NULLS %s\x00FIRST\x00LAST\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00CREATE%s INDEX %.*s\x00 UNIQUE\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00a JOIN clause is required before %s\x00USING\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00text\x00blob\x00integer overflow\x00%.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!.20e\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00length\x00instr\x00printf\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00glob\x00coalesce\x00sign\x00iif\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00trigger count\x00defer IPK REPLACE until last\x00uniqueness check for ROWID\x00prep index %s\x00%s column %d\x00for %s\x00bypass recheck\x00Do IPK REPLACE\x00sqlite3_extension_init\x00unable to open shared library [%s]\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00dylib\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00seqno\x00desc\x00coll\x00key\x00builtin\x00enc\x00narg\x00flags\x00wdth\x00hght\x00flgs\x00unique\x00origin\x00partial\x00fkid\x00file\x00busy\x00log\x00checkpointed\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00lock_proxy_file\x00lock_status\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00onoffalseyestruextrafull\x00exclusive\x00normal\x00none\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00w\x00a\x00s\x00sissii\x00utf8\x00utf16le\x00utf16be\x00-%T\x00fast\x00not a writable directory\x00failed to set lock proxy file\x00Safety level may not be changed inside a transaction\x00issisii\x00issisi\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00siX\x00*** in database %s ***\n\x00NULL value in %s.%s\x00CHECK constraint failed in %s\x00row \x00 missing from index \x00non-unique entry in index \x00wrong # of entries in index \x00unsupported encoding: %s\x00restart\x00ANALYZE \"%w\".\"%w\"\x00unknown\x00closed\x00ss\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00unlocked\x00shared\x00reserved\x00pending\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00error in %s %s after %s: %s\x00rename\x00drop column\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown or unsupported join type: %T %T%s%T\x00RIGHT and FULL OUTER JOINs are not currently supported\x00naturaleftouterightfullinnercross\x00a NATURAL join may not have an ON or USING clause\x00cannot have both ON and USING clauses in the same join\x00cannot join using column %s - column not present in both tables\x00OFFSET\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00column%d\x00%.*z:%u\x00LIMIT counter\x00OFFSET counter\x00LIMIT+OFFSET\x00cannot use window functions in recursive queries\x00Queue table\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00SCAN %d CONSTANT ROW%s\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00Jump ahead if LIMIT reached\x00%s USING TEMP B-TREE\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00left SELECT\x00LEFT\x00right SELECT\x00RIGHT\x00Output routine for A\x00Output routine for B\x00eof-A subroutine\x00eof-B subroutine\x00A-lt-B subroutine\x00A-eq-B subroutine\x00A-gt-B subroutine\x00no such index: %s\x00'%s' is not a function\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00subquery_%u\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00unsafe use of virtual table \"%s\"\x00*\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00SCAN TABLE %s%s%s\x00 USING COVERING INDEX \x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %u\x00materialize \"%s\"\x00MATERIALIZE %u\x00end %s\x00inner-loop subroutine\x00end inner-loop subroutine\x00clear abort flag\x00DISTINCT\x00GROUP BY\x00GROUP BY sort\x00output one row\x00check abort flag\x00reset accumulator\x00indicate data in accumulator\x00output final row\x00set abort flag\x00Groupby result generator entry point\x00end groupby result generator\x00indicate accumulator empty\x00RIGHT PART OF ORDER BY\x00ORDER BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00trigger %T already exists\x00cannot create trigger on system table\x00cannot create %s trigger on view: %S\x00BEFORE\x00AFTER\x00cannot create INSTEAD OF trigger on table: %S\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00%s RETURNING is not available on virtual tables\x00DELETE\x00UPDATE\x00RETURNING may not use \"TABLE.*\" wildcards\x00abort\x00rollback\x00fail\x00ignore\x00default\x00n/a\x00Start: %s.%s (%s %s%s%s ON %s)\x00INSERT\x00-- TRIGGER %s\x00End: %s.%s\x00Call: %s.%s\x00fkey\x00cannot UPDATE generated column \"%s\"\x00no such column: %s\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00Begin DO UPDATE of UPSERT\x00End DO UPDATE of UPSERT\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00ATTACH %Q AS vacuum_db\x00output file already exists\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO vacuum_db.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM vacuum_db.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO vacuum_db.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00SEARCH\x00SCAN\x00 SUBQUERY %u\x00 TABLE %s\x00 AS %s\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00=\x00>? AND rowid<\x00 USING INTEGER PRIMARY KEY (rowid%s?)\x00 VIRTUAL TABLE INDEX %d:%s\x00begin skip-scan on %s\x00init LEFT JOIN no-match flag\x00next row of %s\x00NULL-scan pass ctr\x00If NULL-scan 2nd pass\x00If NULL-scan 1st pass\x00MULTI-INDEX OR\x00INDEX %d\x00record LEFT JOIN hit\x00regexp\x00ON clause references tables to its right\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00next skip-scan on %s\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00row_number\x00dense_rank\x00rank\x00percent_rank\x00cume_dist\x00ntile\x00last_value\x00nth_value\x00first_value\x00lead\x00lag\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00call flush_partition\x00%s clause should come after %s not before\x00LIMIT\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00parser stack overflow\x00unknown table option: %.*s\x00set list\x00near \"%T\": syntax error\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%.*s\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00SQLITE_OK\x00SQLITE_ERROR\x00SQLITE_ERROR_SNAPSHOT\x00SQLITE_INTERNAL\x00SQLITE_PERM\x00SQLITE_ABORT\x00SQLITE_ABORT_ROLLBACK\x00SQLITE_BUSY\x00SQLITE_BUSY_RECOVERY\x00SQLITE_BUSY_SNAPSHOT\x00SQLITE_LOCKED\x00SQLITE_LOCKED_SHAREDCACHE\x00SQLITE_NOMEM\x00SQLITE_READONLY\x00SQLITE_READONLY_RECOVERY\x00SQLITE_READONLY_CANTINIT\x00SQLITE_READONLY_ROLLBACK\x00SQLITE_READONLY_DBMOVED\x00SQLITE_READONLY_DIRECTORY\x00SQLITE_INTERRUPT\x00SQLITE_IOERR\x00SQLITE_IOERR_READ\x00SQLITE_IOERR_SHORT_READ\x00SQLITE_IOERR_WRITE\x00SQLITE_IOERR_FSYNC\x00SQLITE_IOERR_DIR_FSYNC\x00SQLITE_IOERR_TRUNCATE\x00SQLITE_IOERR_FSTAT\x00SQLITE_IOERR_UNLOCK\x00SQLITE_IOERR_RDLOCK\x00SQLITE_IOERR_DELETE\x00SQLITE_IOERR_NOMEM\x00SQLITE_IOERR_ACCESS\x00SQLITE_IOERR_CHECKRESERVEDLOCK\x00SQLITE_IOERR_LOCK\x00SQLITE_IOERR_CLOSE\x00SQLITE_IOERR_DIR_CLOSE\x00SQLITE_IOERR_SHMOPEN\x00SQLITE_IOERR_SHMSIZE\x00SQLITE_IOERR_SHMLOCK\x00SQLITE_IOERR_SHMMAP\x00SQLITE_IOERR_SEEK\x00SQLITE_IOERR_DELETE_NOENT\x00SQLITE_IOERR_MMAP\x00SQLITE_IOERR_GETTEMPPATH\x00SQLITE_IOERR_CONVPATH\x00SQLITE_CORRUPT\x00SQLITE_CORRUPT_VTAB\x00SQLITE_NOTFOUND\x00SQLITE_FULL\x00SQLITE_CANTOPEN\x00SQLITE_CANTOPEN_NOTEMPDIR\x00SQLITE_CANTOPEN_ISDIR\x00SQLITE_CANTOPEN_FULLPATH\x00SQLITE_CANTOPEN_CONVPATH\x00SQLITE_CANTOPEN_SYMLINK\x00SQLITE_PROTOCOL\x00SQLITE_EMPTY\x00SQLITE_SCHEMA\x00SQLITE_TOOBIG\x00SQLITE_CONSTRAINT\x00SQLITE_CONSTRAINT_UNIQUE\x00SQLITE_CONSTRAINT_TRIGGER\x00SQLITE_CONSTRAINT_FOREIGNKEY\x00SQLITE_CONSTRAINT_CHECK\x00SQLITE_CONSTRAINT_PRIMARYKEY\x00SQLITE_CONSTRAINT_NOTNULL\x00SQLITE_CONSTRAINT_COMMITHOOK\x00SQLITE_CONSTRAINT_VTAB\x00SQLITE_CONSTRAINT_FUNCTION\x00SQLITE_CONSTRAINT_ROWID\x00SQLITE_MISMATCH\x00SQLITE_MISUSE\x00SQLITE_NOLFS\x00SQLITE_AUTH\x00SQLITE_FORMAT\x00SQLITE_RANGE\x00SQLITE_NOTADB\x00SQLITE_ROW\x00SQLITE_NOTICE\x00SQLITE_NOTICE_RECOVER_WAL\x00SQLITE_NOTICE_RECOVER_ROLLBACK\x00SQLITE_WARNING\x00SQLITE_WARNING_AUTOINDEX\x00SQLITE_DONE\x00SQLITE_UNKNOWN(%d)\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00mode\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00private\x00ro\x00rw\x00rwc\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x000123456789abcdef\x00JSON cannot hold BLOB values\x00malformed JSON\x00[0]\x00JSON path error near '%q'\x00json_%s() needs an odd number of arguments\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00set\x00insert\x00[]\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%d]\x00.%.*s\x00$\x00json\x00json_array\x00json_array_length\x00json_extract\x00json_insert\x00json_object\x00json_patch\x00json_quote\x00json_remove\x00json_replace\x00json_set\x00json_type\x00json_valid\x00json_group_array\x00json_group_object\x00json_each\x00json_tree\x00%s_node\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00);\x00,%.*s REAL\x00,%.*s INT\x00{%lld\x00 %g\x00}\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00Mapping (%lld -> %lld) missing from %s table\x00%_rowid\x00%_parent\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00END\x00wrong number of arguments to function rtreecheck()\x00[\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql LIKE 'create virtual%%'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00table %q %s rbu_rowid column\x00may not have\x00requires\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00 NOT NULL\x00%z, %z\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00 WITHOUT ROWID\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00AND\x00WHERE\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00, _rowid_\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00, 0 AS rbu_rowid\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x000 AS \x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file://%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00file:%s-vactmp?rbu_memory=1%s%s\x00&\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00database modified during rbu %s\x00vacuum\x00update\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00CREATE TABLE x( name TEXT, path TEXT, pageno INTEGER, pagetype TEXT, ncell INTEGER, payload INTEGER, unused INTEGER, mx_payload INTEGER, pgoffset INTEGER, pgsize INTEGER, schema TEXT HIDDEN, aggregate BOOLEAN HIDDEN)\x00overflow\x00%s%.3x+%.6x\x00%s%.3x/\x00internal\x00leaf\x00corrupted\x00SELECT * FROM (SELECT 'sqlite_schema' AS name,1 AS rootpage,'table' AS type UNION ALL SELECT name,rootpage,type FROM \"%w\".sqlite_schema WHERE rootpage!=0)\x00WHERE name=%Q\x00 ORDER BY name\x00dbstat\x00CREATE TABLE x(pgno INTEGER PRIMARY KEY, data BLOB, schema HIDDEN)\x00read-only\x00cannot delete\x00cannot insert\x00no such schema\x00bad page number\x00bad page value\x00sqlite_dbpage\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00snippet\x00highlight\x00bm25\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00columns\x00malformed detail=... directive\x00unrecognized option: \"%.*s\"\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00fts5: %s queries are not supported (detail!=full)\x00phrase\x00%s \x00-col %d \x00-col {%d\x00 %d\x00} \x00-near %d \x00--\x00 {\x00 [%z]\x00\"\"\x00{\x00%s : \x00NEAR(\x00 + \x00, %d)\x00 NOT \x00 OR \x00%s%s%z%s\x00nearset\x00wrong number of arguments to function %s\x00fts5_expr_tcl\x00fts5_expr\x00wrong number of arguments to function fts5_isalnum\x00L*\x00N*\x00Co\x00wrong number of arguments to function fts5_fold\x00fts5_isalnum\x00fts5_fold\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00{averages} \x00{structure}\x00{%ssegid=%d h=%d pgno=%d}\x00dlidx \x00 {lvl=%d nMerge=%d nSeg=%d\x00 {id=%d leaves=%d..%d}\x00%s%d\x00 id=%lld\x00 nPos=%d%s\x00+\x00 %lld%s\x00 %d(%lld)\x00 term=%.*s\x00corrupt\x00should be: fts5_rowid(subject, ....)\x00segment\x00should be: fts5_rowid('segment', segid, pgno))\x00first arg to fts5_rowid() must be 'segment'\x00fts5_decode\x00fts5_decode_none\x00fts5_rowid\x00recursively defined fts5 content table\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00DESC\x00ASC\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00cannot %s contentless fts5 table: %s\x00DELETE from\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886\x00config\x00fts5\x00fts5_source_id\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00ascii\x00porter\x00trigram\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x00CREATE TABLE x(sql,ncol,ro,busy,nscan,nsort,naidx,nstep,reprep,run,mem)\x00sqlite_stmt\x002021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886\x00" var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data diff --git a/speedtest1/main_darwin_arm64.go b/speedtest1/main_darwin_arm64.go index 1fa186c..c9c225b 100644 --- a/speedtest1/main_darwin_arm64.go +++ b/speedtest1/main_darwin_arm64.go @@ -1,4 +1,4 @@ -// Code generated by 'ccgo -export-defines "" -o speedtest1/main_darwin_arm64.go -trace-translation-units testdata/sqlite-src-3350400/test/speedtest1.c -Itestdata/sqlite-amalgamation-3350400 -l modernc.org/sqlite/lib -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. +// Code generated by 'ccgo -export-defines "" -o speedtest1/main_darwin_arm64.go -trace-translation-units testdata/sqlite-src-3350500/test/speedtest1.c -Itestdata/sqlite-amalgamation-3350500 -l modernc.org/sqlite/lib -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT. package main @@ -123,12 +123,18 @@ const ( IOPOL_TYPE_DISK = 0 IOPOL_TYPE_VFS_ATIME_UPDATES = 2 IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION = 6 + IOPOL_TYPE_VFS_IGNORE_PERMISSIONS = 7 IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES = 3 + IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE = 8 IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME = 4 IOPOL_TYPE_VFS_TRIGGER_RESOLVE = 5 IOPOL_UTILITY = 4 IOPOL_VFS_CONTENT_PROTECTION_DEFAULT = 0 IOPOL_VFS_CONTENT_PROTECTION_IGNORE = 1 + IOPOL_VFS_IGNORE_PERMISSIONS_OFF = 0 + IOPOL_VFS_IGNORE_PERMISSIONS_ON = 1 + IOPOL_VFS_SKIP_MTIME_UPDATE_OFF = 0 + IOPOL_VFS_SKIP_MTIME_UPDATE_ON = 1 IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME = 1 IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT = 0 IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT = 0 @@ -680,7 +686,7 @@ const ( SQLITE_SHM_SHARED = 4 SQLITE_SHM_UNLOCK = 1 SQLITE_SOUNDEX = 1 - SQLITE_SOURCE_ID = "2021-04-02 15:20:15 5d4c65779dab868b285519b19e4cf9d451d50c6048f06f653aa701ec212df45e" + SQLITE_SOURCE_ID = "2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886" SQLITE_STATUS_MALLOC_COUNT = 9 SQLITE_STATUS_MALLOC_SIZE = 5 SQLITE_STATUS_MEMORY_USED = 0 @@ -752,8 +758,8 @@ const ( SQLITE_UTF16LE = 2 SQLITE_UTF16_ALIGNED = 8 SQLITE_UTF8 = 1 - SQLITE_VERSION = "3.35.4" - SQLITE_VERSION_NUMBER = 3035004 + SQLITE_VERSION = "3.35.5" + SQLITE_VERSION_NUMBER = 3035005 SQLITE_VTAB_CONSTRAINT_SUPPORT = 1 SQLITE_VTAB_DIRECTONLY = 3 SQLITE_VTAB_INNOCUOUS = 2 @@ -5560,6 +5566,7 @@ type __darwin_arm_neon_state = struct { } /* _structs.h:448:1 */ type __darwin_arm_amx_state_v1 = struct { + _ [0]uint64 __x [8][64]uint8 __y [8][64]uint8 __z [64][64]uint8