sqlite3.h (346983) | sqlite3.h (347347) |
---|---|
1/* 2** 2001-09-15 3** 4** The author disclaims copyright to this source code. In place of 5** a legal notice, here is a blessing: 6** 7** May you do good and not evil. 8** May you find forgiveness for yourself and forgive others. --- 109 unchanged lines hidden (view full) --- 118** or SHA3-256 hash of the entire source tree. If the source code has 119** been edited in any way since it was last checked in, then the last 120** four hexadecimal digits of the hash may be modified. 121** 122** See also: [sqlite3_libversion()], 123** [sqlite3_libversion_number()], [sqlite3_sourceid()], 124** [sqlite_version()] and [sqlite_source_id()]. 125*/ | 1/* 2** 2001-09-15 3** 4** The author disclaims copyright to this source code. In place of 5** a legal notice, here is a blessing: 6** 7** May you do good and not evil. 8** May you find forgiveness for yourself and forgive others. --- 109 unchanged lines hidden (view full) --- 118** or SHA3-256 hash of the entire source tree. If the source code has 119** been edited in any way since it was last checked in, then the last 120** four hexadecimal digits of the hash may be modified. 121** 122** See also: [sqlite3_libversion()], 123** [sqlite3_libversion_number()], [sqlite3_sourceid()], 124** [sqlite_version()] and [sqlite_source_id()]. 125*/ |
126#define SQLITE_VERSION "3.27.2" 127#define SQLITE_VERSION_NUMBER 3027002 128#define SQLITE_SOURCE_ID "2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7" | 126#define SQLITE_VERSION "3.28.0" 127#define SQLITE_VERSION_NUMBER 3028000 128#define SQLITE_SOURCE_ID "2019-04-16 19:49:53 884b4b7e502b4e991677b53971277adfaf0a04a284f8e483e2553d0f83156b50" |
129 130/* 131** CAPI3REF: Run-Time Library Version Numbers 132** KEYWORDS: sqlite3_version sqlite3_sourceid 133** 134** These interfaces provide the same information as the [SQLITE_VERSION], 135** [SQLITE_VERSION_NUMBER], and [SQLITE_SOURCE_ID] C preprocessor macros 136** but are associated with the library instead of the header file. ^(Cautious --- 47 unchanged lines hidden (view full) --- 184** [SQLITE_OMIT_COMPILEOPTION_DIAGS] option at compile time. 185** 186** See also: SQL functions [sqlite_compileoption_used()] and 187** [sqlite_compileoption_get()] and the [compile_options pragma]. 188*/ 189#ifndef SQLITE_OMIT_COMPILEOPTION_DIAGS 190SQLITE_API int sqlite3_compileoption_used(const char *zOptName); 191SQLITE_API const char *sqlite3_compileoption_get(int N); | 129 130/* 131** CAPI3REF: Run-Time Library Version Numbers 132** KEYWORDS: sqlite3_version sqlite3_sourceid 133** 134** These interfaces provide the same information as the [SQLITE_VERSION], 135** [SQLITE_VERSION_NUMBER], and [SQLITE_SOURCE_ID] C preprocessor macros 136** but are associated with the library instead of the header file. ^(Cautious --- 47 unchanged lines hidden (view full) --- 184** [SQLITE_OMIT_COMPILEOPTION_DIAGS] option at compile time. 185** 186** See also: SQL functions [sqlite_compileoption_used()] and 187** [sqlite_compileoption_get()] and the [compile_options pragma]. 188*/ 189#ifndef SQLITE_OMIT_COMPILEOPTION_DIAGS 190SQLITE_API int sqlite3_compileoption_used(const char *zOptName); 191SQLITE_API const char *sqlite3_compileoption_get(int N); |
192#else 193# define sqlite3_compileoption_used(X) 0 194# define sqlite3_compileoption_get(X) ((void*)0) |
|
192#endif 193 194/* 195** CAPI3REF: Test To See If The Library Is Threadsafe 196** 197** ^The sqlite3_threadsafe() function returns zero if and only if 198** SQLite was compiled with mutexing code omitted due to the 199** [SQLITE_THREADSAFE] compile-time option being set to 0. --- 1881 unchanged lines hidden (view full) --- 2081** positive to enable triggers or negative to leave the setting unchanged. 2082** The second parameter is a pointer to an integer into which 2083** is written 0 or 1 to indicate whether triggers are disabled or enabled 2084** following this call. The second parameter may be a NULL pointer, in 2085** which case the trigger setting is not reported back. </dd> 2086** 2087** [[SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER]] 2088** <dt>SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER</dt> | 195#endif 196 197/* 198** CAPI3REF: Test To See If The Library Is Threadsafe 199** 200** ^The sqlite3_threadsafe() function returns zero if and only if 201** SQLite was compiled with mutexing code omitted due to the 202** [SQLITE_THREADSAFE] compile-time option being set to 0. --- 1881 unchanged lines hidden (view full) --- 2084** positive to enable triggers or negative to leave the setting unchanged. 2085** The second parameter is a pointer to an integer into which 2086** is written 0 or 1 to indicate whether triggers are disabled or enabled 2087** following this call. The second parameter may be a NULL pointer, in 2088** which case the trigger setting is not reported back. </dd> 2089** 2090** [[SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER]] 2091** <dt>SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER</dt> |
2089** <dd> ^This option is used to enable or disable the two-argument 2090** version of the [fts3_tokenizer()] function which is part of the | 2092** 2093** [fts3_tokenizer()] function which is part of the |
2091** [FTS3] full-text search engine extension. 2092** There should be two additional arguments. 2093** The first argument is an integer which is 0 to disable fts3_tokenizer() or 2094** positive to enable fts3_tokenizer() or negative to leave the setting 2095** unchanged. 2096** The second parameter is a pointer to an integer into which 2097** is written 0 or 1 to indicate whether fts3_tokenizer is disabled or enabled 2098** following this call. The second parameter may be a NULL pointer, in --- 95 unchanged lines hidden (view full) --- 2194** deliberately corrupt the database file are disabled. The disabled 2195** features include but are not limited to the following: 2196** <ul> 2197** <li> The [PRAGMA writable_schema=ON] statement. 2198** <li> Writes to the [sqlite_dbpage] virtual table. 2199** <li> Direct writes to [shadow tables]. 2200** </ul> 2201** </dd> | 2094** [FTS3] full-text search engine extension. 2095** There should be two additional arguments. 2096** The first argument is an integer which is 0 to disable fts3_tokenizer() or 2097** positive to enable fts3_tokenizer() or negative to leave the setting 2098** unchanged. 2099** The second parameter is a pointer to an integer into which 2100** is written 0 or 1 to indicate whether fts3_tokenizer is disabled or enabled 2101** following this call. The second parameter may be a NULL pointer, in --- 95 unchanged lines hidden (view full) --- 2197** deliberately corrupt the database file are disabled. The disabled 2198** features include but are not limited to the following: 2199** <ul> 2200** <li> The [PRAGMA writable_schema=ON] statement. 2201** <li> Writes to the [sqlite_dbpage] virtual table. 2202** <li> Direct writes to [shadow tables]. 2203** </ul> 2204** </dd> |
2205** 2206** [[SQLITE_DBCONFIG_WRITABLE_SCHEMA]] <dt>SQLITE_DBCONFIG_WRITABLE_SCHEMA</dt> 2207** <dd>The SQLITE_DBCONFIG_WRITABLE_SCHEMA option activates or deactivates the 2208** "writable_schema" flag. This has the same effect and is logically equivalent 2209** to setting [PRAGMA writable_schema=ON] or [PRAGMA writable_schema=OFF]. 2210** The first argument to this setting is an integer which is 0 to disable 2211** the writable_schema, positive to enable writable_schema, or negative to 2212** leave the setting unchanged. The second parameter is a pointer to an 2213** integer into which is written 0 or 1 to indicate whether the writable_schema 2214** is enabled or disabled following this call. 2215** </dd> |
|
2202** </dl> 2203*/ 2204#define SQLITE_DBCONFIG_MAINDBNAME 1000 /* const char* */ 2205#define SQLITE_DBCONFIG_LOOKASIDE 1001 /* void* int int */ 2206#define SQLITE_DBCONFIG_ENABLE_FKEY 1002 /* int int* */ 2207#define SQLITE_DBCONFIG_ENABLE_TRIGGER 1003 /* int int* */ 2208#define SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER 1004 /* int int* */ 2209#define SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION 1005 /* int int* */ 2210#define SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE 1006 /* int int* */ 2211#define SQLITE_DBCONFIG_ENABLE_QPSG 1007 /* int int* */ 2212#define SQLITE_DBCONFIG_TRIGGER_EQP 1008 /* int int* */ 2213#define SQLITE_DBCONFIG_RESET_DATABASE 1009 /* int int* */ 2214#define SQLITE_DBCONFIG_DEFENSIVE 1010 /* int int* */ | 2216** </dl> 2217*/ 2218#define SQLITE_DBCONFIG_MAINDBNAME 1000 /* const char* */ 2219#define SQLITE_DBCONFIG_LOOKASIDE 1001 /* void* int int */ 2220#define SQLITE_DBCONFIG_ENABLE_FKEY 1002 /* int int* */ 2221#define SQLITE_DBCONFIG_ENABLE_TRIGGER 1003 /* int int* */ 2222#define SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER 1004 /* int int* */ 2223#define SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION 1005 /* int int* */ 2224#define SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE 1006 /* int int* */ 2225#define SQLITE_DBCONFIG_ENABLE_QPSG 1007 /* int int* */ 2226#define SQLITE_DBCONFIG_TRIGGER_EQP 1008 /* int int* */ 2227#define SQLITE_DBCONFIG_RESET_DATABASE 1009 /* int int* */ 2228#define SQLITE_DBCONFIG_DEFENSIVE 1010 /* int int* */ |
2215#define SQLITE_DBCONFIG_MAX 1010 /* Largest DBCONFIG */ | 2229#define SQLITE_DBCONFIG_WRITABLE_SCHEMA 1011 /* int int* */ 2230#define SQLITE_DBCONFIG_MAX 1011 /* Largest DBCONFIG */ |
2216 2217/* 2218** CAPI3REF: Enable Or Disable Extended Result Codes 2219** METHOD: sqlite3 2220** 2221** ^The sqlite3_extended_result_codes() routine enables or disables the 2222** [extended result codes] feature of SQLite. ^The extended result 2223** codes are disabled by default for historical compatibility. --- 1666 unchanged lines hidden (view full) --- 3890** ^The sqlite3_stmt_readonly() interface returns true for [BEGIN] since 3891** [BEGIN] merely sets internal flags, but the [BEGIN|BEGIN IMMEDIATE] and 3892** [BEGIN|BEGIN EXCLUSIVE] commands do touch the database and so 3893** sqlite3_stmt_readonly() returns false for those commands. 3894*/ 3895SQLITE_API int sqlite3_stmt_readonly(sqlite3_stmt *pStmt); 3896 3897/* | 2231 2232/* 2233** CAPI3REF: Enable Or Disable Extended Result Codes 2234** METHOD: sqlite3 2235** 2236** ^The sqlite3_extended_result_codes() routine enables or disables the 2237** [extended result codes] feature of SQLite. ^The extended result 2238** codes are disabled by default for historical compatibility. --- 1666 unchanged lines hidden (view full) --- 3905** ^The sqlite3_stmt_readonly() interface returns true for [BEGIN] since 3906** [BEGIN] merely sets internal flags, but the [BEGIN|BEGIN IMMEDIATE] and 3907** [BEGIN|BEGIN EXCLUSIVE] commands do touch the database and so 3908** sqlite3_stmt_readonly() returns false for those commands. 3909*/ 3910SQLITE_API int sqlite3_stmt_readonly(sqlite3_stmt *pStmt); 3911 3912/* |
3913** CAPI3REF: Query The EXPLAIN Setting For A Prepared Statement 3914** METHOD: sqlite3_stmt 3915** 3916** ^The sqlite3_stmt_isexplain(S) interface returns 1 if the 3917** prepared statement S is an EXPLAIN statement, or 2 if the 3918** statement S is an EXPLAIN QUERY PLAN. 3919** ^The sqlite3_stmt_isexplain(S) interface returns 0 if S is 3920** an ordinary statement or a NULL pointer. 3921*/ 3922SQLITE_API int sqlite3_stmt_isexplain(sqlite3_stmt *pStmt); 3923 3924/* |
|
3898** CAPI3REF: Determine If A Prepared Statement Has Been Reset 3899** METHOD: sqlite3_stmt 3900** 3901** ^The sqlite3_stmt_busy(S) interface returns true (non-zero) if the 3902** [prepared statement] S has been stepped at least once using 3903** [sqlite3_step(S)] but has neither run to completion (returned 3904** [SQLITE_DONE] from [sqlite3_step(S)]) nor 3905** been reset using [sqlite3_reset(S)]. ^The sqlite3_stmt_busy(S) --- 122 unchanged lines hidden (view full) --- 4028** terminated. If any NUL characters occur at byte offsets less than 4029** the value of the fourth parameter then the resulting string value will 4030** contain embedded NULs. The result of expressions involving strings 4031** with embedded NULs is undefined. 4032** 4033** ^The fifth argument to the BLOB and string binding interfaces 4034** is a destructor used to dispose of the BLOB or 4035** string after SQLite has finished with it. ^The destructor is called | 3925** CAPI3REF: Determine If A Prepared Statement Has Been Reset 3926** METHOD: sqlite3_stmt 3927** 3928** ^The sqlite3_stmt_busy(S) interface returns true (non-zero) if the 3929** [prepared statement] S has been stepped at least once using 3930** [sqlite3_step(S)] but has neither run to completion (returned 3931** [SQLITE_DONE] from [sqlite3_step(S)]) nor 3932** been reset using [sqlite3_reset(S)]. ^The sqlite3_stmt_busy(S) --- 122 unchanged lines hidden (view full) --- 4055** terminated. If any NUL characters occur at byte offsets less than 4056** the value of the fourth parameter then the resulting string value will 4057** contain embedded NULs. The result of expressions involving strings 4058** with embedded NULs is undefined. 4059** 4060** ^The fifth argument to the BLOB and string binding interfaces 4061** is a destructor used to dispose of the BLOB or 4062** string after SQLite has finished with it. ^The destructor is called |
4036** to dispose of the BLOB or string even if the call to bind API fails. | 4063** to dispose of the BLOB or string even if the call to the bind API fails, 4064** except the destructor is not called if the third parameter is a NULL 4065** pointer or the fourth parameter is negative. |
4037** ^If the fifth argument is 4038** the special value [SQLITE_STATIC], then SQLite assumes that the 4039** information is in static, unmanaged space and does not need to be freed. 4040** ^If the fifth argument has the value [SQLITE_TRANSIENT], then 4041** SQLite makes its own private copy of the data immediately, before 4042** the sqlite3_bind_*() routine returns. 4043** 4044** ^The sixth argument to sqlite3_bind_text64() must be one of --- 900 unchanged lines hidden (view full) --- 4945** TEXT in bytes 4946** <tr><td><b>sqlite3_value_type</b><td>→<td>Default 4947** datatype of the value 4948** <tr><td><b>sqlite3_value_numeric_type </b> 4949** <td>→ <td>Best numeric datatype of the value 4950** <tr><td><b>sqlite3_value_nochange </b> 4951** <td>→ <td>True if the column is unchanged in an UPDATE 4952** against a virtual table. | 4066** ^If the fifth argument is 4067** the special value [SQLITE_STATIC], then SQLite assumes that the 4068** information is in static, unmanaged space and does not need to be freed. 4069** ^If the fifth argument has the value [SQLITE_TRANSIENT], then 4070** SQLite makes its own private copy of the data immediately, before 4071** the sqlite3_bind_*() routine returns. 4072** 4073** ^The sixth argument to sqlite3_bind_text64() must be one of --- 900 unchanged lines hidden (view full) --- 4974** TEXT in bytes 4975** <tr><td><b>sqlite3_value_type</b><td>→<td>Default 4976** datatype of the value 4977** <tr><td><b>sqlite3_value_numeric_type </b> 4978** <td>→ <td>Best numeric datatype of the value 4979** <tr><td><b>sqlite3_value_nochange </b> 4980** <td>→ <td>True if the column is unchanged in an UPDATE 4981** against a virtual table. |
4982** <tr><td><b>sqlite3_value_frombind </b> 4983** <td>→ <td>True if value originated from a [bound parameter] |
|
4953** </table></blockquote> 4954** 4955** <b>Details:</b> 4956** 4957** These routines extract type, size, and content information from 4958** [protected sqlite3_value] objects. Protected sqlite3_value objects 4959** are used to pass parameter information into implementation of 4960** [application-defined SQL functions] and [virtual tables]. --- 45 unchanged lines hidden (view full) --- 5006** the value for that column returned without setting a result (probably 5007** because it queried [sqlite3_vtab_nochange()] and found that the column 5008** was unchanging). ^Within an [xUpdate] method, any value for which 5009** sqlite3_value_nochange(X) is true will in all other respects appear 5010** to be a NULL value. If sqlite3_value_nochange(X) is invoked anywhere other 5011** than within an [xUpdate] method call for an UPDATE statement, then 5012** the return value is arbitrary and meaningless. 5013** | 4984** </table></blockquote> 4985** 4986** <b>Details:</b> 4987** 4988** These routines extract type, size, and content information from 4989** [protected sqlite3_value] objects. Protected sqlite3_value objects 4990** are used to pass parameter information into implementation of 4991** [application-defined SQL functions] and [virtual tables]. --- 45 unchanged lines hidden (view full) --- 5037** the value for that column returned without setting a result (probably 5038** because it queried [sqlite3_vtab_nochange()] and found that the column 5039** was unchanging). ^Within an [xUpdate] method, any value for which 5040** sqlite3_value_nochange(X) is true will in all other respects appear 5041** to be a NULL value. If sqlite3_value_nochange(X) is invoked anywhere other 5042** than within an [xUpdate] method call for an UPDATE statement, then 5043** the return value is arbitrary and meaningless. 5044** |
5045** ^The sqlite3_value_frombind(X) interface returns non-zero if the 5046** value X originated from one of the [sqlite3_bind_int|sqlite3_bind()] 5047** interfaces. ^If X comes from an SQL literal value, or a table column, 5048** and expression, then sqlite3_value_frombind(X) returns zero. 5049** |
|
5014** Please pay particular attention to the fact that the pointer returned 5015** from [sqlite3_value_blob()], [sqlite3_value_text()], or 5016** [sqlite3_value_text16()] can be invalidated by a subsequent call to 5017** [sqlite3_value_bytes()], [sqlite3_value_bytes16()], [sqlite3_value_text()], 5018** or [sqlite3_value_text16()]. 5019** 5020** These routines must be called from the same thread as 5021** the SQL function that supplied the [sqlite3_value*] parameters. --- 29 unchanged lines hidden (view full) --- 5051SQLITE_API const void *sqlite3_value_text16(sqlite3_value*); 5052SQLITE_API const void *sqlite3_value_text16le(sqlite3_value*); 5053SQLITE_API const void *sqlite3_value_text16be(sqlite3_value*); 5054SQLITE_API int sqlite3_value_bytes(sqlite3_value*); 5055SQLITE_API int sqlite3_value_bytes16(sqlite3_value*); 5056SQLITE_API int sqlite3_value_type(sqlite3_value*); 5057SQLITE_API int sqlite3_value_numeric_type(sqlite3_value*); 5058SQLITE_API int sqlite3_value_nochange(sqlite3_value*); | 5050** Please pay particular attention to the fact that the pointer returned 5051** from [sqlite3_value_blob()], [sqlite3_value_text()], or 5052** [sqlite3_value_text16()] can be invalidated by a subsequent call to 5053** [sqlite3_value_bytes()], [sqlite3_value_bytes16()], [sqlite3_value_text()], 5054** or [sqlite3_value_text16()]. 5055** 5056** These routines must be called from the same thread as 5057** the SQL function that supplied the [sqlite3_value*] parameters. --- 29 unchanged lines hidden (view full) --- 5087SQLITE_API const void *sqlite3_value_text16(sqlite3_value*); 5088SQLITE_API const void *sqlite3_value_text16le(sqlite3_value*); 5089SQLITE_API const void *sqlite3_value_text16be(sqlite3_value*); 5090SQLITE_API int sqlite3_value_bytes(sqlite3_value*); 5091SQLITE_API int sqlite3_value_bytes16(sqlite3_value*); 5092SQLITE_API int sqlite3_value_type(sqlite3_value*); 5093SQLITE_API int sqlite3_value_numeric_type(sqlite3_value*); 5094SQLITE_API int sqlite3_value_nochange(sqlite3_value*); |
5095SQLITE_API int sqlite3_value_frombind(sqlite3_value*); |
|
5059 5060/* 5061** CAPI3REF: Finding The Subtype Of SQL Values 5062** METHOD: sqlite3_value 5063** 5064** The sqlite3_value_subtype(V) function returns the subtype for 5065** an [application-defined SQL function] argument V. The subtype 5066** information can be used to pass a limited amount of context from --- 719 unchanged lines hidden (view full) --- 5786/* 5787** CAPI3REF: Return The Filename For A Database Connection 5788** METHOD: sqlite3 5789** 5790** ^The sqlite3_db_filename(D,N) interface returns a pointer to a filename 5791** associated with database N of connection D. ^The main database file 5792** has the name "main". If there is no attached database N on the database 5793** connection D, or if database N is a temporary or in-memory database, then | 5096 5097/* 5098** CAPI3REF: Finding The Subtype Of SQL Values 5099** METHOD: sqlite3_value 5100** 5101** The sqlite3_value_subtype(V) function returns the subtype for 5102** an [application-defined SQL function] argument V. The subtype 5103** information can be used to pass a limited amount of context from --- 719 unchanged lines hidden (view full) --- 5823/* 5824** CAPI3REF: Return The Filename For A Database Connection 5825** METHOD: sqlite3 5826** 5827** ^The sqlite3_db_filename(D,N) interface returns a pointer to a filename 5828** associated with database N of connection D. ^The main database file 5829** has the name "main". If there is no attached database N on the database 5830** connection D, or if database N is a temporary or in-memory database, then |
5794** a NULL pointer is returned. | 5831** this function will return either a NULL pointer or an empty string. |
5795** 5796** ^The filename returned by this function is the output of the 5797** xFullPathname method of the [VFS]. ^In other words, the filename 5798** will be an absolute pathname, even if the filename used 5799** to open the database originally was a URI or relative pathname. 5800*/ 5801SQLITE_API const char *sqlite3_db_filename(sqlite3 *db, const char *zDbName); 5802 --- 5084 unchanged lines hidden (view full) --- 10887/* 10888** CAPI3REF: Rebase a changeset 10889** EXPERIMENTAL 10890** 10891** Argument pIn must point to a buffer containing a changeset nIn bytes 10892** in size. This function allocates and populates a buffer with a copy 10893** of the changeset rebased rebased according to the configuration of the 10894** rebaser object passed as the first argument. If successful, (*ppOut) | 5832** 5833** ^The filename returned by this function is the output of the 5834** xFullPathname method of the [VFS]. ^In other words, the filename 5835** will be an absolute pathname, even if the filename used 5836** to open the database originally was a URI or relative pathname. 5837*/ 5838SQLITE_API const char *sqlite3_db_filename(sqlite3 *db, const char *zDbName); 5839 --- 5084 unchanged lines hidden (view full) --- 10924/* 10925** CAPI3REF: Rebase a changeset 10926** EXPERIMENTAL 10927** 10928** Argument pIn must point to a buffer containing a changeset nIn bytes 10929** in size. This function allocates and populates a buffer with a copy 10930** of the changeset rebased rebased according to the configuration of the 10931** rebaser object passed as the first argument. If successful, (*ppOut) |
10895** is set to point to the new buffer containing the rebased changset and | 10932** is set to point to the new buffer containing the rebased changeset and |
10896** (*pnOut) to its size in bytes and SQLITE_OK returned. It is the 10897** responsibility of the caller to eventually free the new buffer using 10898** sqlite3_free(). Otherwise, if an error occurs, (*ppOut) and (*pnOut) 10899** are set to zero and an SQLite error code returned. 10900*/ 10901SQLITE_API int sqlite3rebaser_rebase( 10902 sqlite3_rebaser*, 10903 int nIn, const void *pIn, --- 392 unchanged lines hidden (view full) --- 11296** the callback, an SQLite error code is returned. 11297** 11298** 11299** xSetAuxdata(pFts5, pAux, xDelete) 11300** 11301** Save the pointer passed as the second argument as the extension functions 11302** "auxiliary data". The pointer may then be retrieved by the current or any 11303** future invocation of the same fts5 extension function made as part of | 10933** (*pnOut) to its size in bytes and SQLITE_OK returned. It is the 10934** responsibility of the caller to eventually free the new buffer using 10935** sqlite3_free(). Otherwise, if an error occurs, (*ppOut) and (*pnOut) 10936** are set to zero and an SQLite error code returned. 10937*/ 10938SQLITE_API int sqlite3rebaser_rebase( 10939 sqlite3_rebaser*, 10940 int nIn, const void *pIn, --- 392 unchanged lines hidden (view full) --- 11333** the callback, an SQLite error code is returned. 11334** 11335** 11336** xSetAuxdata(pFts5, pAux, xDelete) 11337** 11338** Save the pointer passed as the second argument as the extension functions 11339** "auxiliary data". The pointer may then be retrieved by the current or any 11340** future invocation of the same fts5 extension function made as part of |
11304** of the same MATCH query using the xGetAuxdata() API. | 11341** the same MATCH query using the xGetAuxdata() API. |
11305** 11306** Each extension function is allocated a single auxiliary data slot for 11307** each FTS query (MATCH expression). If the extension function is invoked 11308** more than once for a single FTS query, then all invocations share a 11309** single auxiliary data context. 11310** 11311** If there is already an auxiliary data pointer when this function is 11312** invoked, then it is replaced by the new pointer. If an xDelete callback 11313** was specified along with the original pointer, it is invoked at this 11314** point. 11315** 11316** The xDelete callback, if one is specified, is also invoked on the 11317** auxiliary data pointer after the FTS5 query has finished. 11318** | 11342** 11343** Each extension function is allocated a single auxiliary data slot for 11344** each FTS query (MATCH expression). If the extension function is invoked 11345** more than once for a single FTS query, then all invocations share a 11346** single auxiliary data context. 11347** 11348** If there is already an auxiliary data pointer when this function is 11349** invoked, then it is replaced by the new pointer. If an xDelete callback 11350** was specified along with the original pointer, it is invoked at this 11351** point. 11352** 11353** The xDelete callback, if one is specified, is also invoked on the 11354** auxiliary data pointer after the FTS5 query has finished. 11355** |
11319** If an error (e.g. an OOM condition) occurs within this function, an | 11356** If an error (e.g. an OOM condition) occurs within this function, |
11320** the auxiliary data is set to NULL and an error code returned. If the 11321** xDelete parameter was not NULL, it is invoked on the auxiliary data 11322** pointer before returning. 11323** 11324** 11325** xGetAuxdata(pFts5, bClear) 11326** 11327** Returns the current auxiliary data pointer for the fts5 extension --- 389 unchanged lines hidden --- | 11357** the auxiliary data is set to NULL and an error code returned. If the 11358** xDelete parameter was not NULL, it is invoked on the auxiliary data 11359** pointer before returning. 11360** 11361** 11362** xGetAuxdata(pFts5, bClear) 11363** 11364** Returns the current auxiliary data pointer for the fts5 extension --- 389 unchanged lines hidden --- |