@@ -1012,6 +1012,13 @@ struct sqlite3_io_methods {
10121012** ^When there are multiple VFS shims in the stack, this opcode finds the
10131013** upper-most shim only.
10141014**
1015+ ** <li>[[SQLITE_FCNTL_WAL_METHODS_POINTER]]
1016+ ** ^The [SQLITE_FCNTL_WAL_METHODS_POINTER] opcode finds a pointer to the top-level
1017+ ** WAL methods currently in use. ^(The argument X in
1018+ ** sqlite3_file_control(db,SQLITE_FCNTL_WAL_METHODS_POINTER,X) must be
1019+ ** of type "[libsql_wal_methods] **". This opcodes will set *X
1020+ ** to a pointer to the top-level WAL methods.)^
1021+ **
10151022** <li>[[SQLITE_FCNTL_PRAGMA]]
10161023** ^Whenever a [PRAGMA] statement is parsed, an [SQLITE_FCNTL_PRAGMA]
10171024** file control is sent to the open [sqlite3_file] object corresponding
@@ -1242,6 +1249,9 @@ struct sqlite3_io_methods {
12421249#define SQLITE_FCNTL_EXTERNAL_READER 40
12431250#define SQLITE_FCNTL_CKSM_FILE 41
12441251
1252+ // libSQL extension
1253+ #define SQLITE_FCNTL_WAL_METHODS_POINTER 129
1254+
12451255/* deprecated names */
12461256#define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE
12471257#define SQLITE_SET_LOCKPROXYFILE SQLITE_FCNTL_SET_LOCKPROXYFILE
@@ -7733,6 +7743,9 @@ libsql_wal_methods *libsql_wal_methods_find(const char *zName);
77337743int libsql_wal_methods_register (libsql_wal_methods * );
77347744int libsql_wal_methods_unregister (libsql_wal_methods * );
77357745
7746+ libsql_wal_methods * libsql_wal_methods_next (libsql_wal_methods * w );
7747+ const char * libsql_wal_methods_name (libsql_wal_methods * w );
7748+
77367749/*
77377750** CAPI3REF: Mutexes
77387751**
0 commit comments