mirror of
https://github.com/isar/rusqlite.git
synced 2024-11-22 16:29:20 +08:00
Merge pull request #1258 from gwenn/3.40.0
Upgrade SQLite bundled version to 3.40.0
This commit is contained in:
commit
7035904192
@ -1,9 +1,9 @@
|
|||||||
/* automatically generated by rust-bindgen 0.60.1 */
|
/* automatically generated by rust-bindgen 0.62.0 */
|
||||||
|
|
||||||
pub const SQLITE_VERSION: &[u8; 7usize] = b"3.39.4\0";
|
pub const SQLITE_VERSION: &[u8; 7usize] = b"3.40.0\0";
|
||||||
pub const SQLITE_VERSION_NUMBER: i32 = 3039004;
|
pub const SQLITE_VERSION_NUMBER: i32 = 3040000;
|
||||||
pub const SQLITE_SOURCE_ID: &[u8; 85usize] =
|
pub const SQLITE_SOURCE_ID: &[u8; 85usize] =
|
||||||
b"2022-09-29 15:55:41 a29f9949895322123f7c38fbe94c649a9d6e6c9cd0c3b41c96d694552f26b309\0";
|
b"2022-11-16 12:10:08 89c459e766ea7e9165d0beeb124708b955a4950d0f4792f457465d71b158d318\0";
|
||||||
pub const SQLITE_OK: i32 = 0;
|
pub const SQLITE_OK: i32 = 0;
|
||||||
pub const SQLITE_ERROR: i32 = 1;
|
pub const SQLITE_ERROR: i32 = 1;
|
||||||
pub const SQLITE_INTERNAL: i32 = 2;
|
pub const SQLITE_INTERNAL: i32 = 2;
|
||||||
@ -474,7 +474,7 @@ pub const FTS5_TOKENIZE_DOCUMENT: i32 = 4;
|
|||||||
pub const FTS5_TOKENIZE_AUX: i32 = 8;
|
pub const FTS5_TOKENIZE_AUX: i32 = 8;
|
||||||
pub const FTS5_TOKEN_COLOCATED: i32 = 1;
|
pub const FTS5_TOKEN_COLOCATED: i32 = 1;
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub static mut sqlite3_version: [::std::os::raw::c_char; 0usize];
|
pub static sqlite3_version: [::std::os::raw::c_char; 0usize];
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_libversion() -> *const ::std::os::raw::c_char;
|
pub fn sqlite3_libversion() -> *const ::std::os::raw::c_char;
|
||||||
@ -659,6 +659,7 @@ pub struct sqlite3_mutex {
|
|||||||
pub struct sqlite3_api_routines {
|
pub struct sqlite3_api_routines {
|
||||||
_unused: [u8; 0],
|
_unused: [u8; 0],
|
||||||
}
|
}
|
||||||
|
pub type sqlite3_filename = *const ::std::os::raw::c_char;
|
||||||
pub type sqlite3_syscall_ptr = ::std::option::Option<unsafe extern "C" fn()>;
|
pub type sqlite3_syscall_ptr = ::std::option::Option<unsafe extern "C" fn()>;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug, Copy, Clone)]
|
||||||
@ -672,7 +673,7 @@ pub struct sqlite3_vfs {
|
|||||||
pub xOpen: ::std::option::Option<
|
pub xOpen: ::std::option::Option<
|
||||||
unsafe extern "C" fn(
|
unsafe extern "C" fn(
|
||||||
arg1: *mut sqlite3_vfs,
|
arg1: *mut sqlite3_vfs,
|
||||||
zName: *const ::std::os::raw::c_char,
|
zName: sqlite3_filename,
|
||||||
arg2: *mut sqlite3_file,
|
arg2: *mut sqlite3_file,
|
||||||
flags: ::std::os::raw::c_int,
|
flags: ::std::os::raw::c_int,
|
||||||
pOutFlags: *mut ::std::os::raw::c_int,
|
pOutFlags: *mut ::std::os::raw::c_int,
|
||||||
@ -1023,44 +1024,38 @@ extern "C" {
|
|||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_uri_parameter(
|
pub fn sqlite3_uri_parameter(
|
||||||
zFilename: *const ::std::os::raw::c_char,
|
z: sqlite3_filename,
|
||||||
zParam: *const ::std::os::raw::c_char,
|
zParam: *const ::std::os::raw::c_char,
|
||||||
) -> *const ::std::os::raw::c_char;
|
) -> *const ::std::os::raw::c_char;
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_uri_boolean(
|
pub fn sqlite3_uri_boolean(
|
||||||
zFile: *const ::std::os::raw::c_char,
|
z: sqlite3_filename,
|
||||||
zParam: *const ::std::os::raw::c_char,
|
zParam: *const ::std::os::raw::c_char,
|
||||||
bDefault: ::std::os::raw::c_int,
|
bDefault: ::std::os::raw::c_int,
|
||||||
) -> ::std::os::raw::c_int;
|
) -> ::std::os::raw::c_int;
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_uri_int64(
|
pub fn sqlite3_uri_int64(
|
||||||
arg1: *const ::std::os::raw::c_char,
|
arg1: sqlite3_filename,
|
||||||
arg2: *const ::std::os::raw::c_char,
|
arg2: *const ::std::os::raw::c_char,
|
||||||
arg3: sqlite3_int64,
|
arg3: sqlite3_int64,
|
||||||
) -> sqlite3_int64;
|
) -> sqlite3_int64;
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_uri_key(
|
pub fn sqlite3_uri_key(
|
||||||
zFilename: *const ::std::os::raw::c_char,
|
z: sqlite3_filename,
|
||||||
N: ::std::os::raw::c_int,
|
N: ::std::os::raw::c_int,
|
||||||
) -> *const ::std::os::raw::c_char;
|
) -> *const ::std::os::raw::c_char;
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_filename_database(
|
pub fn sqlite3_filename_database(arg1: sqlite3_filename) -> *const ::std::os::raw::c_char;
|
||||||
arg1: *const ::std::os::raw::c_char,
|
|
||||||
) -> *const ::std::os::raw::c_char;
|
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_filename_journal(
|
pub fn sqlite3_filename_journal(arg1: sqlite3_filename) -> *const ::std::os::raw::c_char;
|
||||||
arg1: *const ::std::os::raw::c_char,
|
|
||||||
) -> *const ::std::os::raw::c_char;
|
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_filename_wal(
|
pub fn sqlite3_filename_wal(arg1: sqlite3_filename) -> *const ::std::os::raw::c_char;
|
||||||
arg1: *const ::std::os::raw::c_char,
|
|
||||||
) -> *const ::std::os::raw::c_char;
|
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_database_file_object(arg1: *const ::std::os::raw::c_char) -> *mut sqlite3_file;
|
pub fn sqlite3_database_file_object(arg1: *const ::std::os::raw::c_char) -> *mut sqlite3_file;
|
||||||
@ -1072,10 +1067,10 @@ extern "C" {
|
|||||||
zWal: *const ::std::os::raw::c_char,
|
zWal: *const ::std::os::raw::c_char,
|
||||||
nParam: ::std::os::raw::c_int,
|
nParam: ::std::os::raw::c_int,
|
||||||
azParam: *mut *const ::std::os::raw::c_char,
|
azParam: *mut *const ::std::os::raw::c_char,
|
||||||
) -> *mut ::std::os::raw::c_char;
|
) -> sqlite3_filename;
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_free_filename(arg1: *mut ::std::os::raw::c_char);
|
pub fn sqlite3_free_filename(arg1: sqlite3_filename);
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_errcode(db: *mut sqlite3) -> ::std::os::raw::c_int;
|
pub fn sqlite3_errcode(db: *mut sqlite3) -> ::std::os::raw::c_int;
|
||||||
@ -1619,6 +1614,9 @@ extern "C" {
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_value_frombind(arg1: *mut sqlite3_value) -> ::std::os::raw::c_int;
|
pub fn sqlite3_value_frombind(arg1: *mut sqlite3_value) -> ::std::os::raw::c_int;
|
||||||
}
|
}
|
||||||
|
extern "C" {
|
||||||
|
pub fn sqlite3_value_encoding(arg1: *mut sqlite3_value) -> ::std::os::raw::c_int;
|
||||||
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_value_subtype(arg1: *mut sqlite3_value) -> ::std::os::raw::c_uint;
|
pub fn sqlite3_value_subtype(arg1: *mut sqlite3_value) -> ::std::os::raw::c_uint;
|
||||||
}
|
}
|
||||||
@ -1894,7 +1892,7 @@ extern "C" {
|
|||||||
pub fn sqlite3_db_filename(
|
pub fn sqlite3_db_filename(
|
||||||
db: *mut sqlite3,
|
db: *mut sqlite3,
|
||||||
zDbName: *const ::std::os::raw::c_char,
|
zDbName: *const ::std::os::raw::c_char,
|
||||||
) -> *const ::std::os::raw::c_char;
|
) -> sqlite3_filename;
|
||||||
}
|
}
|
||||||
extern "C" {
|
extern "C" {
|
||||||
pub fn sqlite3_db_readonly(
|
pub fn sqlite3_db_readonly(
|
||||||
|
4716
libsqlite3-sys/sqlite3/sqlite3.c
vendored
4716
libsqlite3-sys/sqlite3/sqlite3.c
vendored
File diff suppressed because it is too large
Load Diff
117
libsqlite3-sys/sqlite3/sqlite3.h
vendored
117
libsqlite3-sys/sqlite3/sqlite3.h
vendored
@ -146,9 +146,9 @@ extern "C" {
|
|||||||
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
|
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
|
||||||
** [sqlite_version()] and [sqlite_source_id()].
|
** [sqlite_version()] and [sqlite_source_id()].
|
||||||
*/
|
*/
|
||||||
#define SQLITE_VERSION "3.39.4"
|
#define SQLITE_VERSION "3.40.0"
|
||||||
#define SQLITE_VERSION_NUMBER 3039004
|
#define SQLITE_VERSION_NUMBER 3040000
|
||||||
#define SQLITE_SOURCE_ID "2022-09-29 15:55:41 a29f9949895322123f7c38fbe94c649a9d6e6c9cd0c3b41c96d694552f26b309"
|
#define SQLITE_SOURCE_ID "2022-11-16 12:10:08 89c459e766ea7e9165d0beeb124708b955a4950d0f4792f457465d71b158d318"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Run-Time Library Version Numbers
|
** CAPI3REF: Run-Time Library Version Numbers
|
||||||
@ -670,13 +670,17 @@ SQLITE_API int sqlite3_exec(
|
|||||||
**
|
**
|
||||||
** SQLite uses one of these integer values as the second
|
** SQLite uses one of these integer values as the second
|
||||||
** argument to calls it makes to the xLock() and xUnlock() methods
|
** argument to calls it makes to the xLock() and xUnlock() methods
|
||||||
** of an [sqlite3_io_methods] object.
|
** of an [sqlite3_io_methods] object. These values are ordered from
|
||||||
|
** lest restrictive to most restrictive.
|
||||||
|
**
|
||||||
|
** The argument to xLock() is always SHARED or higher. The argument to
|
||||||
|
** xUnlock is either SHARED or NONE.
|
||||||
*/
|
*/
|
||||||
#define SQLITE_LOCK_NONE 0
|
#define SQLITE_LOCK_NONE 0 /* xUnlock() only */
|
||||||
#define SQLITE_LOCK_SHARED 1
|
#define SQLITE_LOCK_SHARED 1 /* xLock() or xUnlock() */
|
||||||
#define SQLITE_LOCK_RESERVED 2
|
#define SQLITE_LOCK_RESERVED 2 /* xLock() only */
|
||||||
#define SQLITE_LOCK_PENDING 3
|
#define SQLITE_LOCK_PENDING 3 /* xLock() only */
|
||||||
#define SQLITE_LOCK_EXCLUSIVE 4
|
#define SQLITE_LOCK_EXCLUSIVE 4 /* xLock() only */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Synchronization Type Flags
|
** CAPI3REF: Synchronization Type Flags
|
||||||
@ -754,7 +758,14 @@ struct sqlite3_file {
|
|||||||
** <li> [SQLITE_LOCK_PENDING], or
|
** <li> [SQLITE_LOCK_PENDING], or
|
||||||
** <li> [SQLITE_LOCK_EXCLUSIVE].
|
** <li> [SQLITE_LOCK_EXCLUSIVE].
|
||||||
** </ul>
|
** </ul>
|
||||||
** xLock() increases the lock. xUnlock() decreases the lock.
|
** xLock() upgrades the database file lock. In other words, xLock() moves the
|
||||||
|
** database file lock in the direction NONE toward EXCLUSIVE. The argument to
|
||||||
|
** xLock() is always on of SHARED, RESERVED, PENDING, or EXCLUSIVE, never
|
||||||
|
** SQLITE_LOCK_NONE. If the database file lock is already at or above the
|
||||||
|
** requested lock, then the call to xLock() is a no-op.
|
||||||
|
** xUnlock() downgrades the database file lock to either SHARED or NONE.
|
||||||
|
* If the lock is already at or below the requested lock state, then the call
|
||||||
|
** to xUnlock() is a no-op.
|
||||||
** The xCheckReservedLock() method checks whether any database connection,
|
** The xCheckReservedLock() method checks whether any database connection,
|
||||||
** either in this process or in some other process, is holding a RESERVED,
|
** either in this process or in some other process, is holding a RESERVED,
|
||||||
** PENDING, or EXCLUSIVE lock on the file. It returns true
|
** PENDING, or EXCLUSIVE lock on the file. It returns true
|
||||||
@ -859,9 +870,8 @@ struct sqlite3_io_methods {
|
|||||||
** opcode causes the xFileControl method to write the current state of
|
** opcode causes the xFileControl method to write the current state of
|
||||||
** the lock (one of [SQLITE_LOCK_NONE], [SQLITE_LOCK_SHARED],
|
** the lock (one of [SQLITE_LOCK_NONE], [SQLITE_LOCK_SHARED],
|
||||||
** [SQLITE_LOCK_RESERVED], [SQLITE_LOCK_PENDING], or [SQLITE_LOCK_EXCLUSIVE])
|
** [SQLITE_LOCK_RESERVED], [SQLITE_LOCK_PENDING], or [SQLITE_LOCK_EXCLUSIVE])
|
||||||
** into an integer that the pArg argument points to. This capability
|
** into an integer that the pArg argument points to.
|
||||||
** is used during testing and is only available when the SQLITE_TEST
|
** This capability is only available if SQLite is compiled with [SQLITE_DEBUG].
|
||||||
** compile-time option is used.
|
|
||||||
**
|
**
|
||||||
** <li>[[SQLITE_FCNTL_SIZE_HINT]]
|
** <li>[[SQLITE_FCNTL_SIZE_HINT]]
|
||||||
** The [SQLITE_FCNTL_SIZE_HINT] opcode is used by SQLite to give the VFS
|
** The [SQLITE_FCNTL_SIZE_HINT] opcode is used by SQLite to give the VFS
|
||||||
@ -1253,6 +1263,26 @@ typedef struct sqlite3_mutex sqlite3_mutex;
|
|||||||
*/
|
*/
|
||||||
typedef struct sqlite3_api_routines sqlite3_api_routines;
|
typedef struct sqlite3_api_routines sqlite3_api_routines;
|
||||||
|
|
||||||
|
/*
|
||||||
|
** CAPI3REF: File Name
|
||||||
|
**
|
||||||
|
** Type [sqlite3_filename] is used by SQLite to pass filenames to the
|
||||||
|
** xOpen method of a [VFS]. It may be cast to (const char*) and treated
|
||||||
|
** as a normal, nul-terminated, UTF-8 buffer containing the filename, but
|
||||||
|
** may also be passed to special APIs such as:
|
||||||
|
**
|
||||||
|
** <ul>
|
||||||
|
** <li> sqlite3_filename_database()
|
||||||
|
** <li> sqlite3_filename_journal()
|
||||||
|
** <li> sqlite3_filename_wal()
|
||||||
|
** <li> sqlite3_uri_parameter()
|
||||||
|
** <li> sqlite3_uri_boolean()
|
||||||
|
** <li> sqlite3_uri_int64()
|
||||||
|
** <li> sqlite3_uri_key()
|
||||||
|
** </ul>
|
||||||
|
*/
|
||||||
|
typedef const char *sqlite3_filename;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: OS Interface Object
|
** CAPI3REF: OS Interface Object
|
||||||
**
|
**
|
||||||
@ -1431,7 +1461,7 @@ struct sqlite3_vfs {
|
|||||||
sqlite3_vfs *pNext; /* Next registered VFS */
|
sqlite3_vfs *pNext; /* Next registered VFS */
|
||||||
const char *zName; /* Name of this virtual file system */
|
const char *zName; /* Name of this virtual file system */
|
||||||
void *pAppData; /* Pointer to application-specific data */
|
void *pAppData; /* Pointer to application-specific data */
|
||||||
int (*xOpen)(sqlite3_vfs*, const char *zName, sqlite3_file*,
|
int (*xOpen)(sqlite3_vfs*, sqlite3_filename zName, sqlite3_file*,
|
||||||
int flags, int *pOutFlags);
|
int flags, int *pOutFlags);
|
||||||
int (*xDelete)(sqlite3_vfs*, const char *zName, int syncDir);
|
int (*xDelete)(sqlite3_vfs*, const char *zName, int syncDir);
|
||||||
int (*xAccess)(sqlite3_vfs*, const char *zName, int flags, int *pResOut);
|
int (*xAccess)(sqlite3_vfs*, const char *zName, int flags, int *pResOut);
|
||||||
@ -2309,6 +2339,7 @@ struct sqlite3_mem_methods {
|
|||||||
** <ul>
|
** <ul>
|
||||||
** <li> The [PRAGMA writable_schema=ON] statement.
|
** <li> The [PRAGMA writable_schema=ON] statement.
|
||||||
** <li> The [PRAGMA journal_mode=OFF] statement.
|
** <li> The [PRAGMA journal_mode=OFF] statement.
|
||||||
|
** <li> The [PRAGMA schema_version=N] statement.
|
||||||
** <li> Writes to the [sqlite_dbpage] virtual table.
|
** <li> Writes to the [sqlite_dbpage] virtual table.
|
||||||
** <li> Direct writes to [shadow tables].
|
** <li> Direct writes to [shadow tables].
|
||||||
** </ul>
|
** </ul>
|
||||||
@ -3424,6 +3455,9 @@ SQLITE_API void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*);
|
|||||||
** <dd>The database is opened [shared cache] enabled, overriding
|
** <dd>The database is opened [shared cache] enabled, overriding
|
||||||
** the default shared cache setting provided by
|
** the default shared cache setting provided by
|
||||||
** [sqlite3_enable_shared_cache()].)^
|
** [sqlite3_enable_shared_cache()].)^
|
||||||
|
** The [use of shared cache mode is discouraged] and hence shared cache
|
||||||
|
** capabilities may be omitted from many builds of SQLite. In such cases,
|
||||||
|
** this option is a no-op.
|
||||||
**
|
**
|
||||||
** ^(<dt>[SQLITE_OPEN_PRIVATECACHE]</dt>
|
** ^(<dt>[SQLITE_OPEN_PRIVATECACHE]</dt>
|
||||||
** <dd>The database is opened [shared cache] disabled, overriding
|
** <dd>The database is opened [shared cache] disabled, overriding
|
||||||
@ -3439,7 +3473,7 @@ SQLITE_API void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*);
|
|||||||
** to return an extended result code.</dd>
|
** to return an extended result code.</dd>
|
||||||
**
|
**
|
||||||
** [[OPEN_NOFOLLOW]] ^(<dt>[SQLITE_OPEN_NOFOLLOW]</dt>
|
** [[OPEN_NOFOLLOW]] ^(<dt>[SQLITE_OPEN_NOFOLLOW]</dt>
|
||||||
** <dd>The database filename is not allowed to be a symbolic link</dd>
|
** <dd>The database filename is not allowed to contain a symbolic link</dd>
|
||||||
** </dl>)^
|
** </dl>)^
|
||||||
**
|
**
|
||||||
** If the 3rd parameter to sqlite3_open_v2() is not one of the
|
** If the 3rd parameter to sqlite3_open_v2() is not one of the
|
||||||
@ -3698,10 +3732,10 @@ SQLITE_API int sqlite3_open_v2(
|
|||||||
**
|
**
|
||||||
** See the [URI filename] documentation for additional information.
|
** See the [URI filename] documentation for additional information.
|
||||||
*/
|
*/
|
||||||
SQLITE_API const char *sqlite3_uri_parameter(const char *zFilename, const char *zParam);
|
SQLITE_API const char *sqlite3_uri_parameter(sqlite3_filename z, const char *zParam);
|
||||||
SQLITE_API int sqlite3_uri_boolean(const char *zFile, const char *zParam, int bDefault);
|
SQLITE_API int sqlite3_uri_boolean(sqlite3_filename z, const char *zParam, int bDefault);
|
||||||
SQLITE_API sqlite3_int64 sqlite3_uri_int64(const char*, const char*, sqlite3_int64);
|
SQLITE_API sqlite3_int64 sqlite3_uri_int64(sqlite3_filename, const char*, sqlite3_int64);
|
||||||
SQLITE_API const char *sqlite3_uri_key(const char *zFilename, int N);
|
SQLITE_API const char *sqlite3_uri_key(sqlite3_filename z, int N);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Translate filenames
|
** CAPI3REF: Translate filenames
|
||||||
@ -3730,9 +3764,9 @@ SQLITE_API const char *sqlite3_uri_key(const char *zFilename, int N);
|
|||||||
** return value from [sqlite3_db_filename()], then the result is
|
** return value from [sqlite3_db_filename()], then the result is
|
||||||
** undefined and is likely a memory access violation.
|
** undefined and is likely a memory access violation.
|
||||||
*/
|
*/
|
||||||
SQLITE_API const char *sqlite3_filename_database(const char*);
|
SQLITE_API const char *sqlite3_filename_database(sqlite3_filename);
|
||||||
SQLITE_API const char *sqlite3_filename_journal(const char*);
|
SQLITE_API const char *sqlite3_filename_journal(sqlite3_filename);
|
||||||
SQLITE_API const char *sqlite3_filename_wal(const char*);
|
SQLITE_API const char *sqlite3_filename_wal(sqlite3_filename);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Database File Corresponding To A Journal
|
** CAPI3REF: Database File Corresponding To A Journal
|
||||||
@ -3798,14 +3832,14 @@ SQLITE_API sqlite3_file *sqlite3_database_file_object(const char*);
|
|||||||
** then the corresponding [sqlite3_module.xClose() method should also be
|
** then the corresponding [sqlite3_module.xClose() method should also be
|
||||||
** invoked prior to calling sqlite3_free_filename(Y).
|
** invoked prior to calling sqlite3_free_filename(Y).
|
||||||
*/
|
*/
|
||||||
SQLITE_API char *sqlite3_create_filename(
|
SQLITE_API sqlite3_filename sqlite3_create_filename(
|
||||||
const char *zDatabase,
|
const char *zDatabase,
|
||||||
const char *zJournal,
|
const char *zJournal,
|
||||||
const char *zWal,
|
const char *zWal,
|
||||||
int nParam,
|
int nParam,
|
||||||
const char **azParam
|
const char **azParam
|
||||||
);
|
);
|
||||||
SQLITE_API void sqlite3_free_filename(char*);
|
SQLITE_API void sqlite3_free_filename(sqlite3_filename);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Error Codes And Messages
|
** CAPI3REF: Error Codes And Messages
|
||||||
@ -5508,6 +5542,16 @@ SQLITE_API SQLITE_DEPRECATED int sqlite3_memory_alarm(void(*)(void*,sqlite3_int6
|
|||||||
** then the conversion is performed. Otherwise no conversion occurs.
|
** then the conversion is performed. Otherwise no conversion occurs.
|
||||||
** The [SQLITE_INTEGER | datatype] after conversion is returned.)^
|
** The [SQLITE_INTEGER | datatype] after conversion is returned.)^
|
||||||
**
|
**
|
||||||
|
** ^(The sqlite3_value_encoding(X) interface returns one of [SQLITE_UTF8],
|
||||||
|
** [SQLITE_UTF16BE], or [SQLITE_UTF16LE] according to the current encoding
|
||||||
|
** of the value X, assuming that X has type TEXT.)^ If sqlite3_value_type(X)
|
||||||
|
** returns something other than SQLITE_TEXT, then the return value from
|
||||||
|
** sqlite3_value_encoding(X) is meaningless. ^Calls to
|
||||||
|
** sqlite3_value_text(X), sqlite3_value_text16(X), sqlite3_value_text16be(X),
|
||||||
|
** sqlite3_value_text16le(X), sqlite3_value_bytes(X), or
|
||||||
|
** sqlite3_value_bytes16(X) might change the encoding of the value X and
|
||||||
|
** thus change the return from subsequent calls to sqlite3_value_encoding(X).
|
||||||
|
**
|
||||||
** ^Within the [xUpdate] method of a [virtual table], the
|
** ^Within the [xUpdate] method of a [virtual table], the
|
||||||
** sqlite3_value_nochange(X) interface returns true if and only if
|
** sqlite3_value_nochange(X) interface returns true if and only if
|
||||||
** the column corresponding to X is unchanged by the UPDATE operation
|
** the column corresponding to X is unchanged by the UPDATE operation
|
||||||
@ -5572,6 +5616,7 @@ SQLITE_API int sqlite3_value_type(sqlite3_value*);
|
|||||||
SQLITE_API int sqlite3_value_numeric_type(sqlite3_value*);
|
SQLITE_API int sqlite3_value_numeric_type(sqlite3_value*);
|
||||||
SQLITE_API int sqlite3_value_nochange(sqlite3_value*);
|
SQLITE_API int sqlite3_value_nochange(sqlite3_value*);
|
||||||
SQLITE_API int sqlite3_value_frombind(sqlite3_value*);
|
SQLITE_API int sqlite3_value_frombind(sqlite3_value*);
|
||||||
|
SQLITE_API int sqlite3_value_encoding(sqlite3_value*);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Finding The Subtype Of SQL Values
|
** CAPI3REF: Finding The Subtype Of SQL Values
|
||||||
@ -5625,7 +5670,7 @@ SQLITE_API void sqlite3_value_free(sqlite3_value*);
|
|||||||
**
|
**
|
||||||
** ^The sqlite3_aggregate_context(C,N) routine returns a NULL pointer
|
** ^The sqlite3_aggregate_context(C,N) routine returns a NULL pointer
|
||||||
** when first called if N is less than or equal to zero or if a memory
|
** when first called if N is less than or equal to zero or if a memory
|
||||||
** allocate error occurs.
|
** allocation error occurs.
|
||||||
**
|
**
|
||||||
** ^(The amount of space allocated by sqlite3_aggregate_context(C,N) is
|
** ^(The amount of space allocated by sqlite3_aggregate_context(C,N) is
|
||||||
** determined by the N parameter on first successful call. Changing the
|
** determined by the N parameter on first successful call. Changing the
|
||||||
@ -5830,9 +5875,10 @@ typedef void (*sqlite3_destructor_type)(void*);
|
|||||||
** of [SQLITE_UTF8], [SQLITE_UTF16], [SQLITE_UTF16BE], or [SQLITE_UTF16LE].
|
** of [SQLITE_UTF8], [SQLITE_UTF16], [SQLITE_UTF16BE], or [SQLITE_UTF16LE].
|
||||||
** ^SQLite takes the text result from the application from
|
** ^SQLite takes the text result from the application from
|
||||||
** the 2nd parameter of the sqlite3_result_text* interfaces.
|
** the 2nd parameter of the sqlite3_result_text* interfaces.
|
||||||
** ^If the 3rd parameter to the sqlite3_result_text* interfaces
|
** ^If the 3rd parameter to any of the sqlite3_result_text* interfaces
|
||||||
** is negative, then SQLite takes result text from the 2nd parameter
|
** other than sqlite3_result_text64() is negative, then SQLite computes
|
||||||
** through the first zero character.
|
** the string length itself by searching the 2nd parameter for the first
|
||||||
|
** zero character.
|
||||||
** ^If the 3rd parameter to the sqlite3_result_text* interfaces
|
** ^If the 3rd parameter to the sqlite3_result_text* interfaces
|
||||||
** is non-negative, then as many bytes (not characters) of the text
|
** is non-negative, then as many bytes (not characters) of the text
|
||||||
** pointed to by the 2nd parameter are taken as the application-defined
|
** pointed to by the 2nd parameter are taken as the application-defined
|
||||||
@ -6328,7 +6374,7 @@ SQLITE_API const char *sqlite3_db_name(sqlite3 *db, int N);
|
|||||||
** <li> [sqlite3_filename_wal()]
|
** <li> [sqlite3_filename_wal()]
|
||||||
** </ul>
|
** </ul>
|
||||||
*/
|
*/
|
||||||
SQLITE_API const char *sqlite3_db_filename(sqlite3 *db, const char *zDbName);
|
SQLITE_API sqlite3_filename sqlite3_db_filename(sqlite3 *db, const char *zDbName);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** CAPI3REF: Determine if a database is read-only
|
** CAPI3REF: Determine if a database is read-only
|
||||||
@ -6465,7 +6511,7 @@ SQLITE_API void *sqlite3_rollback_hook(sqlite3*, void(*)(void *), void*);
|
|||||||
** function C that is invoked prior to each autovacuum of the database
|
** function C that is invoked prior to each autovacuum of the database
|
||||||
** file. ^The callback is passed a copy of the generic data pointer (P),
|
** file. ^The callback is passed a copy of the generic data pointer (P),
|
||||||
** the schema-name of the attached database that is being autovacuumed,
|
** the schema-name of the attached database that is being autovacuumed,
|
||||||
** the the size of the database file in pages, the number of free pages,
|
** the size of the database file in pages, the number of free pages,
|
||||||
** and the number of bytes per page, respectively. The callback should
|
** and the number of bytes per page, respectively. The callback should
|
||||||
** return the number of free pages that should be removed by the
|
** return the number of free pages that should be removed by the
|
||||||
** autovacuum. ^If the callback returns zero, then no autovacuum happens.
|
** autovacuum. ^If the callback returns zero, then no autovacuum happens.
|
||||||
@ -6586,6 +6632,11 @@ SQLITE_API void *sqlite3_update_hook(
|
|||||||
** to the same database. Sharing is enabled if the argument is true
|
** to the same database. Sharing is enabled if the argument is true
|
||||||
** and disabled if the argument is false.)^
|
** and disabled if the argument is false.)^
|
||||||
**
|
**
|
||||||
|
** This interface is omitted if SQLite is compiled with
|
||||||
|
** [-DSQLITE_OMIT_SHARED_CACHE]. The [-DSQLITE_OMIT_SHARED_CACHE]
|
||||||
|
** compile-time option is recommended because the
|
||||||
|
** [use of shared cache mode is discouraged].
|
||||||
|
**
|
||||||
** ^Cache sharing is enabled and disabled for an entire process.
|
** ^Cache sharing is enabled and disabled for an entire process.
|
||||||
** This is a change as of SQLite [version 3.5.0] ([dateof:3.5.0]).
|
** This is a change as of SQLite [version 3.5.0] ([dateof:3.5.0]).
|
||||||
** In prior versions of SQLite,
|
** In prior versions of SQLite,
|
||||||
@ -6684,7 +6735,7 @@ SQLITE_API int sqlite3_db_release_memory(sqlite3*);
|
|||||||
** ^The soft heap limit may not be greater than the hard heap limit.
|
** ^The soft heap limit may not be greater than the hard heap limit.
|
||||||
** ^If the hard heap limit is enabled and if sqlite3_soft_heap_limit(N)
|
** ^If the hard heap limit is enabled and if sqlite3_soft_heap_limit(N)
|
||||||
** is invoked with a value of N that is greater than the hard heap limit,
|
** is invoked with a value of N that is greater than the hard heap limit,
|
||||||
** the the soft heap limit is set to the value of the hard heap limit.
|
** the soft heap limit is set to the value of the hard heap limit.
|
||||||
** ^The soft heap limit is automatically enabled whenever the hard heap
|
** ^The soft heap limit is automatically enabled whenever the hard heap
|
||||||
** limit is enabled. ^When sqlite3_hard_heap_limit64(N) is invoked and
|
** limit is enabled. ^When sqlite3_hard_heap_limit64(N) is invoked and
|
||||||
** the soft heap limit is outside the range of 1..N, then the soft heap
|
** the soft heap limit is outside the range of 1..N, then the soft heap
|
||||||
@ -8979,7 +9030,7 @@ typedef struct sqlite3_backup sqlite3_backup;
|
|||||||
** if the application incorrectly accesses the destination [database connection]
|
** if the application incorrectly accesses the destination [database connection]
|
||||||
** and so no error code is reported, but the operations may malfunction
|
** and so no error code is reported, but the operations may malfunction
|
||||||
** nevertheless. Use of the destination database connection while a
|
** nevertheless. Use of the destination database connection while a
|
||||||
** backup is in progress might also also cause a mutex deadlock.
|
** backup is in progress might also cause a mutex deadlock.
|
||||||
**
|
**
|
||||||
** If running in [shared cache mode], the application must
|
** If running in [shared cache mode], the application must
|
||||||
** guarantee that the shared cache used by the destination database
|
** guarantee that the shared cache used by the destination database
|
||||||
@ -9407,7 +9458,7 @@ SQLITE_API int sqlite3_wal_checkpoint_v2(
|
|||||||
*/
|
*/
|
||||||
#define SQLITE_CHECKPOINT_PASSIVE 0 /* Do as much as possible w/o blocking */
|
#define SQLITE_CHECKPOINT_PASSIVE 0 /* Do as much as possible w/o blocking */
|
||||||
#define SQLITE_CHECKPOINT_FULL 1 /* Wait for writers, then checkpoint */
|
#define SQLITE_CHECKPOINT_FULL 1 /* Wait for writers, then checkpoint */
|
||||||
#define SQLITE_CHECKPOINT_RESTART 2 /* Like FULL but wait for for readers */
|
#define SQLITE_CHECKPOINT_RESTART 2 /* Like FULL but wait for readers */
|
||||||
#define SQLITE_CHECKPOINT_TRUNCATE 3 /* Like RESTART but also truncate WAL */
|
#define SQLITE_CHECKPOINT_TRUNCATE 3 /* Like RESTART but also truncate WAL */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
8
libsqlite3-sys/sqlite3/sqlite3ext.h
vendored
8
libsqlite3-sys/sqlite3/sqlite3ext.h
vendored
@ -331,9 +331,9 @@ struct sqlite3_api_routines {
|
|||||||
const char *(*filename_journal)(const char*);
|
const char *(*filename_journal)(const char*);
|
||||||
const char *(*filename_wal)(const char*);
|
const char *(*filename_wal)(const char*);
|
||||||
/* Version 3.32.0 and later */
|
/* Version 3.32.0 and later */
|
||||||
char *(*create_filename)(const char*,const char*,const char*,
|
const char *(*create_filename)(const char*,const char*,const char*,
|
||||||
int,const char**);
|
int,const char**);
|
||||||
void (*free_filename)(char*);
|
void (*free_filename)(const char*);
|
||||||
sqlite3_file *(*database_file_object)(const char*);
|
sqlite3_file *(*database_file_object)(const char*);
|
||||||
/* Version 3.34.0 and later */
|
/* Version 3.34.0 and later */
|
||||||
int (*txn_state)(sqlite3*,const char*);
|
int (*txn_state)(sqlite3*,const char*);
|
||||||
@ -357,6 +357,8 @@ struct sqlite3_api_routines {
|
|||||||
unsigned char *(*serialize)(sqlite3*,const char *,sqlite3_int64*,
|
unsigned char *(*serialize)(sqlite3*,const char *,sqlite3_int64*,
|
||||||
unsigned int);
|
unsigned int);
|
||||||
const char *(*db_name)(sqlite3*,int);
|
const char *(*db_name)(sqlite3*,int);
|
||||||
|
/* Version 3.40.0 and later */
|
||||||
|
int (*value_encoding)(sqlite3_value*);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -681,6 +683,8 @@ typedef int (*sqlite3_loadext_entry)(
|
|||||||
#define sqlite3_serialize sqlite3_api->serialize
|
#define sqlite3_serialize sqlite3_api->serialize
|
||||||
#endif
|
#endif
|
||||||
#define sqlite3_db_name sqlite3_api->db_name
|
#define sqlite3_db_name sqlite3_api->db_name
|
||||||
|
/* Version 3.40.0 and later */
|
||||||
|
#define sqlite3_value_encoding sqlite3_api->value_encoding
|
||||||
#endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */
|
#endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */
|
||||||
|
|
||||||
#if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION)
|
#if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION)
|
||||||
|
@ -9,7 +9,7 @@ export SQLITE3_LIB_DIR="$SCRIPT_DIR/sqlite3"
|
|||||||
export SQLITE3_INCLUDE_DIR="$SQLITE3_LIB_DIR"
|
export SQLITE3_INCLUDE_DIR="$SQLITE3_LIB_DIR"
|
||||||
|
|
||||||
# Download and extract amalgamation
|
# Download and extract amalgamation
|
||||||
SQLITE=sqlite-amalgamation-3390400
|
SQLITE=sqlite-amalgamation-3400000
|
||||||
curl -O https://sqlite.org/2022/$SQLITE.zip
|
curl -O https://sqlite.org/2022/$SQLITE.zip
|
||||||
unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.c" > "$SQLITE3_LIB_DIR/sqlite3.c"
|
unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.c" > "$SQLITE3_LIB_DIR/sqlite3.c"
|
||||||
unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.h" > "$SQLITE3_LIB_DIR/sqlite3.h"
|
unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.h" > "$SQLITE3_LIB_DIR/sqlite3.h"
|
||||||
|
Loading…
Reference in New Issue
Block a user