diff --git a/ext/session/sqlite3session.h b/ext/session/sqlite3session.h
index dd0e114f73..2ddad6a8a3 100644
--- a/ext/session/sqlite3session.h
+++ b/ext/session/sqlite3session.h
@@ -11,10 +11,19 @@ extern "C" {
#include "sqlite3.h"
+/*
+** CAPI3REF: Session Object Handle
+*/
typedef struct sqlite3_session sqlite3_session;
+
+/*
+** CAPI3REF: Changeset Iterator Handle
+*/
typedef struct sqlite3_changeset_iter sqlite3_changeset_iter;
/*
+** CAPI3REF: Create A New Session Object
+**
** Create a new session object attached to database handle db. If successful,
** a pointer to the new object is written to *ppSession and SQLITE_OK is
** returned. If an error occurs, *ppSession is set to NULL and an SQLite
@@ -49,6 +58,8 @@ int sqlite3session_create(
);
/*
+** CAPI3REF: Delete A Session Object
+**
** Delete a session object previously allocated using
** [sqlite3session_create()]. Once a session object has been deleted, the
** results of attempting to use pSession with any other session module
@@ -61,6 +72,8 @@ int sqlite3session_create(
void sqlite3session_delete(sqlite3_session *pSession);
/*
+** CAPI3REF: Enable Or Disable A Session Object
+**
** Enable or disable the recording of changes by a session object. When
** enabled, a session object records changes made to the database. When
** disabled - it does not. A newly created session object is enabled.
@@ -78,6 +91,8 @@ void sqlite3session_delete(sqlite3_session *pSession);
int sqlite3session_enable(sqlite3_session *pSession, int bEnable);
/*
+** CAPI3REF: Attach a Table to a Session Object
+**
** Attach a table to a session. All subsequent changes made to the table
** while the session object is enabled will be recorded. See documentation
** for [sqlite3session_changeset()] for further details.
@@ -101,6 +116,8 @@ int sqlite3session_attach(
);
/*
+** CAPI3REF: Generate A Changeset From A Session Object
+**
** Obtain a changeset containing changes to the tables attached to the
** session object passed as the first argument. If successful,
** set *ppChangeset to point to a buffer containing the changeset
@@ -120,14 +137,14 @@ int sqlite3session_attach(
**
** The contents of a changeset may be traversed using an iterator created
** using the [sqlite3changeset_start()] API. A changeset may be applied to
-** a database with a compatible schema using the [sqlite3changset_apply()]
+** a database with a compatible schema using the [sqlite3changeset_apply()]
** API.
**
** Following a successful call to this function, it is the responsibility of
** the caller to eventually free the buffer that *ppChangeset points to using
** [sqlite3_free()].
**
-**
Changeset Generation
+** Changeset Generation
**
** Once a table has been attached to a session object, the session object
** records the primary key values of all new rows inserted into the table.
@@ -187,6 +204,8 @@ int sqlite3session_changeset(
);
/*
+** CAPI3REF: Create An Iterator To Traverse A Changeset
+**
** Create an iterator used to iterate through the contents of a changeset.
** If successful, *pp is set to point to the iterator handle and SQLITE_OK
** is returned. Otherwise, if an error occurs, *pp is set to zero and an
@@ -214,6 +233,8 @@ int sqlite3changeset_start(
);
/*
+** CAPI3REF: Advance A Changeset Iterator
+**
** This function may only be used with iterators created by function
** [sqlite3changeset_start()]. If it is called on an iterator passed to
** a conflict-handler callback by [sqlite3changeset_apply()], SQLITE_MISUSE
@@ -236,6 +257,8 @@ int sqlite3changeset_start(
int sqlite3changeset_next(sqlite3_changeset_iter *pIter);
/*
+** CAPI3REF: Obtain The Current Operation From A Changeset Iterator
+**
** The pIter argument passed to this function may either be an iterator
** passed to a conflict-handler by [sqlite3changeset_apply()], or an iterator
** created by [sqlite3changeset_start()]. In the latter case, the most recent
@@ -264,6 +287,8 @@ int sqlite3changeset_op(
);
/*
+** CAPI3REF: Obtain old.* Values From A Changeset Iterator
+**
** The pIter argument passed to this function may either be an iterator
** passed to a conflict-handler by [sqlite3changeset_apply()], or an iterator
** created by [sqlite3changeset_start()]. In the latter case, the most recent
@@ -292,6 +317,8 @@ int sqlite3changeset_old(
);
/*
+** CAPI3REF: Obtain new.* Values From A Changeset Iterator
+**
** The pIter argument passed to this function may either be an iterator
** passed to a conflict-handler by [sqlite3changeset_apply()], or an iterator
** created by [sqlite3changeset_start()]. In the latter case, the most recent
@@ -323,6 +350,8 @@ int sqlite3changeset_new(
);
/*
+** CAPI3REF: Obtain Conflicting Row Values From A Changeset Iterator
+**
** This function should only be used with iterator objects passed to a
** conflict-handler callback by [sqlite3changeset_apply()] with either
** SQLITE_CHANGESET_DATA or SQLITE_CHANGESET_CONFLICT. If this function
@@ -349,7 +378,10 @@ int sqlite3changeset_conflict(
/*
-** Finalize an iterator allocated with sqlite3changeset_start().
+** CAPI3REF: Finalize a Changeset Iterator
+**
+** This function is used to finalize an iterator allocated with
+** sqlite3changeset_start().
**
** This function should only be called on iterators created using the
** [sqlite3changeset_start()] function. If an application calls this
@@ -375,6 +407,8 @@ int sqlite3changeset_conflict(
int sqlite3changeset_finalize(sqlite3_changeset_iter *pIter);
/*
+** CAPI3REF: Invert A Changeset
+**
** This function is used to "invert" a changeset object. Applying an inverted
** changeset to a database reverses the effects of applying the uninverted
** changeset. Specifically:
@@ -400,6 +434,8 @@ int sqlite3changeset_invert(
);
/*
+** CAPI3REF: Apply A Changeset To A Database
+**
** Apply a changeset to a database. This function attempts to update the
** "main" database attached to handle db with the changes found in the
** changeset passed via the second and third arguments.
@@ -482,7 +518,7 @@ int sqlite3changeset_invert(
** [SQLITE_CHANGESET_REPLACE].
**
** UPDATE Changes
-** For each DELETE change, this function checks if the target database
+** For each UPDATE change, this function checks if the target database
** contains a row with the same primary key value (or values) as the
** original row values stored in the changeset. If it does, and the values
** stored in all non-primary key columns also match the values stored in
@@ -532,6 +568,8 @@ int sqlite3changeset_apply(
);
/*
+** CAPI3REF: Constants Passed to The Conflict Handler
+**
** Values that may be passed as the second argument to a conflict-handler.
**
**
@@ -576,7 +614,9 @@ int sqlite3changeset_apply(
#define SQLITE_CHANGESET_CONSTRAINT 4
/*
-** Valid return values from a conflict-handler.
+** CAPI3REF: Constants Returned By The Conflict Handler
+**
+** A conflict handler callback must return one of the following three values.
**
**
** - SQLITE_CHANGESET_OMIT
-
diff --git a/manifest b/manifest
index bf593dda01..7a06b76e97 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\sproblem\sinvolving\ssession\sobjects\sand\sattached\sdatabases.
-D 2011-03-19T19:19:26
+C Documentation\sformat\supdates\sto\ssqlite3session.h.
+D 2011-03-20T11:20:41
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in 27701a1653595a1f2187dc61c8117e00a6c1d50f
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -102,7 +102,7 @@ F ext/rtree/viewrtree.tcl eea6224b3553599ae665b239bd827e182b466024
F ext/session/session1.test 3f982c74ee4ba97069917cc35aae25b4ed858e6a
F ext/session/session2.test 96ff08995ab9935d1992ac554a240052883a0ebc
F ext/session/sqlite3session.c d211ce2e95483dfc144494f6c67879d85dddabfa
-F ext/session/sqlite3session.h 9551c002efd5fde07c52994c6b592308e0df2d6a
+F ext/session/sqlite3session.h 3b99c2498ca86c8d45b29d3956225e09faabc414
F ext/session/test_session.c 2559ef68e421c7fb83e2c19ef08a17343b70d535
F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895
F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
@@ -921,7 +921,7 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 825df75ba453c853953e17ec29653e11c46f92bb
-R 1e82a0bf18f9b8bb4d549f268721a5ef
+P ad91d30073a8faa7eb064dd2e1cc4d2297d7b3f8
+R b83a18c2f45208301f57e8f22417178c
U dan
-Z 935cff1eff2f640f29c72314cdd47105
+Z e800e514ce176ffa56c1f9535016cce8
diff --git a/manifest.uuid b/manifest.uuid
index 966ef9d6fc..c0fb35d699 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-ad91d30073a8faa7eb064dd2e1cc4d2297d7b3f8
\ No newline at end of file
+f227f60210fba3930f3050aebb1facee8bac9c0b
\ No newline at end of file