diff options
author | drh <> | 2022-02-02 19:51:44 +0000 |
---|---|---|
committer | drh <> | 2022-02-02 19:51:44 +0000 |
commit | 044a017abc5a2322f7ca27350b18a5575e8be631 (patch) | |
tree | ba262fa2c55dfdd13d3c27aa8c9b4a31bca1e850 /src/sqlite3ext.h | |
parent | 9ede896ac15ef680f107aa77df6ab3e7163b0093 (diff) | |
parent | cc0db61364b9eec3d91c069e280a258a555aa65d (diff) | |
download | sqlite-044a017abc5a2322f7ca27350b18a5575e8be631.tar.gz sqlite-044a017abc5a2322f7ca27350b18a5575e8be631.zip |
Add the sqlite3_vtab_in() interface that allows virtual tables to process
IN constraints all at once, rather than one value at a time.
FossilOrigin-Name: 52559af093809b572082b5ebaacf97b727ee1860ae118530761b62e937545163
Diffstat (limited to 'src/sqlite3ext.h')
-rw-r--r-- | src/sqlite3ext.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sqlite3ext.h b/src/sqlite3ext.h index 88010b9d8..2eac4f3f0 100644 --- a/src/sqlite3ext.h +++ b/src/sqlite3ext.h @@ -348,6 +348,9 @@ struct sqlite3_api_routines { int (*error_offset)(sqlite3*); int (*vtab_rhs_value)(sqlite3_index_info*,int,sqlite3_value**); int (*vtab_distinct)(sqlite3_index_info*); + int (*vtab_in)(sqlite3_index_info*,int,int); + int (*vtab_in_first)(sqlite3_value*,sqlite3_value**); + int (*vtab_in_next)(sqlite3_value*,sqlite3_value**); }; /* @@ -663,6 +666,9 @@ typedef int (*sqlite3_loadext_entry)( #define sqlite3_error_offset sqlite3_api->error_offset #define sqlite3_vtab_rhs_value sqlite3_api->vtab_rhs_value #define sqlite3_vtab_distinct sqlite3_api->vtab_distinct +#define sqlite3_vtab_in sqlite3_api->vtab_in +#define sqlite3_vtab_in_first sqlite3_api->vtab_in_first +#define sqlite3_vtab_in_next sqlite3_api->vtab_in_next #endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */ #if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) |