diff options
author | drh <> | 2022-04-30 00:05:37 +0000 |
---|---|---|
committer | drh <> | 2022-04-30 00:05:37 +0000 |
commit | c64f0e71c1e148c261970f79b213937ffc9866c5 (patch) | |
tree | c8169663758e7b6887124687607b4aaec6c113ec /src/treeview.c | |
parent | 3d5665366fd03752aa61ca365774239dff67512b (diff) | |
download | sqlite-c64f0e71c1e148c261970f79b213937ffc9866c5.tar.gz sqlite-c64f0e71c1e148c261970f79b213937ffc9866c5.zip |
Enhance the TreeView debugging output for Expr with opcode TK_IN so as to
show the RHS table and the subroutine address.
FossilOrigin-Name: aec1e4cd59ae874b66335e4f87322fbe31fbb752429e68bf41338db316d0a9ed
Diffstat (limited to 'src/treeview.c')
-rw-r--r-- | src/treeview.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/treeview.c b/src/treeview.c index 0ad3bd0eb..0f9b588f5 100644 --- a/src/treeview.c +++ b/src/treeview.c @@ -712,7 +712,17 @@ void sqlite3TreeViewExpr(TreeView *pView, const Expr *pExpr, u8 moreToFollow){ break; } case TK_IN: { - sqlite3TreeViewLine(pView, "IN flags=0x%x", pExpr->flags); + sqlite3_str *pStr = sqlite3_str_new(0); + char *z; + sqlite3_str_appendf(pStr, "IN flags=0x%x", pExpr->flags); + if( pExpr->iTable ) sqlite3_str_appendf(pStr, " iTable=%d",pExpr->iTable); + if( ExprHasProperty(pExpr, EP_Subrtn) ){ + sqlite3_str_appendf(pStr, " subrtn(%d,%d)", + pExpr->y.sub.regReturn, pExpr->y.sub.iAddr); + } + z = sqlite3_str_finish(pStr); + sqlite3TreeViewLine(pView, z); + sqlite3_free(z); sqlite3TreeViewExpr(pView, pExpr->pLeft, 1); if( ExprUseXSelect(pExpr) ){ sqlite3TreeViewSelect(pView, pExpr->x.pSelect, 0); |