aboutsummaryrefslogtreecommitdiff
path: root/ext/intck/sqlite3intck.h
diff options
context:
space:
mode:
authordan <Dan Kennedy>2024-02-17 20:55:01 +0000
committerdan <Dan Kennedy>2024-02-17 20:55:01 +0000
commit99a94a124c6ff0b0428fa6ff7e880443edef8dcb (patch)
tree624478ffc1c3d1ba63819d21a8d58b16acf2a689 /ext/intck/sqlite3intck.h
parent6161cdd446eec170f7c0edf58d0d72a2cd3c5f85 (diff)
downloadsqlite-99a94a124c6ff0b0428fa6ff7e880443edef8dcb.tar.gz
sqlite-99a94a124c6ff0b0428fa6ff7e880443edef8dcb.zip
Add start of extension for incremental integrity-checks to ext/intck/.
FossilOrigin-Name: 444e3c9210026da7eae1ed98850722e002433aa2cc77dbc6b6f80327a6b7a390
Diffstat (limited to 'ext/intck/sqlite3intck.h')
-rw-r--r--ext/intck/sqlite3intck.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/ext/intck/sqlite3intck.h b/ext/intck/sqlite3intck.h
new file mode 100644
index 000000000..8846812e7
--- /dev/null
+++ b/ext/intck/sqlite3intck.h
@@ -0,0 +1,55 @@
+/*
+** 2024-02-08
+**
+** The author disclaims copyright to this source code. In place of
+** a legal notice, here is a blessing:
+**
+** May you do good and not evil.
+** May you find forgiveness for yourself and forgive others.
+** May you share freely, never taking more than you give.
+**
+*************************************************************************
+*/
+
+#ifndef _SQLITE_INTCK_H
+#define _SQLITE_INTCK_H
+
+#include "sqlite3.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct sqlite3_intck sqlite3_intck;
+
+int sqlite3_intck_open(
+ sqlite3 *db,
+ const char *zDb,
+ const char *zFile,
+ sqlite3_intck **ppOut
+);
+
+void sqlite3_intck_close(sqlite3_intck*);
+
+int sqlite3_intck_step(sqlite3_intck *pCk);
+
+const char *sqlite3_intck_message(sqlite3_intck *pCk);
+
+int sqlite3_intck_error(sqlite3_intck *pCk, const char **pzErr);
+
+int sqlite3_intck_suspend(sqlite3_intck *pCk);
+
+/*
+** This API is used for testing only. It returns the full-text of an SQL
+** statement used to test object zObj, which may be a table or index.
+** The returned buffer is valid until the next call to either this function
+** or sqlite3_intck_close() on the same sqlite3_intck handle.
+*/
+const char *sqlite3_intck_test_sql(sqlite3_intck *pCk, const char *zObj);
+
+
+#ifdef __cplusplus
+} /* end of the 'extern "C"' block */
+#endif
+
+#endif /* ifndef _SQLITE_INTCK_H */