|
|
@@ -15,12 +15,10 @@
|
|
|
** as extensions by SQLite should #include this file instead of
|
|
|
** sqlite3.h.
|
|
|
*/
|
|
|
-#ifndef _SQLITE3EXT_H_
|
|
|
-#define _SQLITE3EXT_H_
|
|
|
+#ifndef SQLITE3EXT_H
|
|
|
+#define SQLITE3EXT_H
|
|
|
#include "sqlite3.h"
|
|
|
|
|
|
-typedef struct sqlite3_api_routines sqlite3_api_routines;
|
|
|
-
|
|
|
/*
|
|
|
** The following structure holds pointers to all of the SQLite API
|
|
|
** routines.
|
|
|
@@ -281,8 +279,23 @@ struct sqlite3_api_routines {
|
|
|
int (*db_cacheflush)(sqlite3*);
|
|
|
/* Version 3.12.0 and later */
|
|
|
int (*system_errno)(sqlite3*);
|
|
|
+ /* Version 3.14.0 and later */
|
|
|
+ int (*trace_v2)(sqlite3*,unsigned,int(*)(unsigned,void*,void*,void*),void*);
|
|
|
+ char *(*expanded_sql)(sqlite3_stmt*);
|
|
|
+ /* Version 3.18.0 and later */
|
|
|
+ void (*set_last_insert_rowid)(sqlite3*,sqlite3_int64);
|
|
|
};
|
|
|
|
|
|
+/*
|
|
|
+** This is the function signature used for all extension entry points. It
|
|
|
+** is also defined in the file "loadext.c".
|
|
|
+*/
|
|
|
+typedef int (*sqlite3_loadext_entry)(
|
|
|
+ sqlite3 *db, /* Handle to the database. */
|
|
|
+ char **pzErrMsg, /* Used to set error string on failure. */
|
|
|
+ const sqlite3_api_routines *pThunk /* Extension API function pointers. */
|
|
|
+);
|
|
|
+
|
|
|
/*
|
|
|
** The following macros redefine the API routines so that they are
|
|
|
** redirected through the global sqlite3_api structure.
|
|
|
@@ -526,6 +539,11 @@ struct sqlite3_api_routines {
|
|
|
#define sqlite3_db_cacheflush sqlite3_api->db_cacheflush
|
|
|
/* Version 3.12.0 and later */
|
|
|
#define sqlite3_system_errno sqlite3_api->system_errno
|
|
|
+/* Version 3.14.0 and later */
|
|
|
+#define sqlite3_trace_v2 sqlite3_api->trace_v2
|
|
|
+#define sqlite3_expanded_sql sqlite3_api->expanded_sql
|
|
|
+/* Version 3.18.0 and later */
|
|
|
+#define sqlite3_set_last_insert_rowid sqlite3_api->set_last_insert_rowid
|
|
|
#endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */
|
|
|
|
|
|
#if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION)
|
|
|
@@ -543,4 +561,4 @@ struct sqlite3_api_routines {
|
|
|
# define SQLITE_EXTENSION_INIT3 /*no-op*/
|
|
|
#endif
|
|
|
|
|
|
-#endif /* _SQLITE3EXT_H_ */
|
|
|
+#endif /* SQLITE3EXT_H */
|