aboutsummaryrefslogtreecommitdiff
path: root/ext/session/sqlite3session.h
diff options
context:
space:
mode:
Diffstat (limited to 'ext/session/sqlite3session.h')
-rw-r--r--ext/session/sqlite3session.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/ext/session/sqlite3session.h b/ext/session/sqlite3session.h
index c6a2332b8..a7281bd4e 100644
--- a/ext/session/sqlite3session.h
+++ b/ext/session/sqlite3session.h
@@ -1216,6 +1216,27 @@ int sqlite3changeset_apply_v2(
#define SQLITE_CHANGESET_REPLACE 1
#define SQLITE_CHANGESET_ABORT 2
+typedef struct sqlite3_rebaser sqlite3_rebaser;
+
+/* Create a new rebaser object */
+int sqlite3rebaser_create(sqlite3_rebaser **ppNew);
+
+/* Call this one or more times to configure a rebaser */
+int sqlite3rebaser_configure(
+ sqlite3_rebaser*,
+ int nRebase, const void *pRebase
+);
+
+/* Rebase a changeset according to current rebaser configuration */
+int sqlite3rebaser_rebase(
+ sqlite3_rebaser*,
+ int nIn, const void *pIn,
+ int *pnOut, void **ppOut
+);
+
+/* Destroy a rebaser object */
+void sqlite3rebaser_destroy(sqlite3_rebaser *p);
+
/*
** CAPI3REF: Streaming Versions of API functions.
**
@@ -1373,6 +1394,13 @@ int sqlite3changegroup_output_strm(sqlite3_changegroup*,
int (*xOutput)(void *pOut, const void *pData, int nData),
void *pOut
);
+int sqlite3rebaser_rebase_strm(
+ sqlite3_rebaser *pRebaser,
+ int (*xInput)(void *pIn, void *pData, int *pnData),
+ void *pIn,
+ int (*xOutput)(void *pOut, const void *pData, int nData),
+ void *pOut
+);
/*