aboutsummaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2011-12-06 19:44:51 +0000
committerdrh <drh@noemail.net>2011-12-06 19:44:51 +0000
commit7e02e5e6b54ea4a6b58249210c0df67af80b11a1 (patch)
tree9ea5abdb02f982bbe28130273f073871139110f7 /src/main.c
parented51f29774ca0581de17d7f4a066fea1b0459948 (diff)
downloadsqlite-7e02e5e6b54ea4a6b58249210c0df67af80b11a1.tar.gz
sqlite-7e02e5e6b54ea4a6b58249210c0df67af80b11a1.zip
Begin adding the data-structure explaining subsystem. All is contained within
FossilOrigin-Name: 79ae51c5b1b20ed0a425a87e65a32a096a80b7e1
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c
index 8562a9072..ca98d3140 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2936,6 +2936,20 @@ int sqlite3_test_control(int op, ...){
break;
}
+ /* sqlite3_test_control(SQLITE_TESTCTRL_EXPLAIN_STMT,
+ ** sqlite3_stmt*,const char**);
+ **
+ ** If compiled with SQLITE_DEBUG, each sqlite3_stmt holds a string that
+ ** describes the optimized parse tree. This test-control returns a
+ ** pointer to that string.
+ */
+ case SQLITE_TESTCTRL_EXPLAIN_STMT: {
+ sqlite3_stmt *pStmt = va_arg(ap, sqlite3_stmt*);
+ const char **pzRet = va_arg(ap, const char**);
+ *pzRet = sqlite3VdbeExplanation((Vdbe*)pStmt);
+ break;
+ }
+
}
va_end(ap);
#endif /* SQLITE_OMIT_BUILTIN_TEST */