From b3d903ebe52b14a0b433ad6d0e615ada1cae9c19 Mon Sep 17 00:00:00 2001 From: drh Date: Thu, 18 Jun 2015 14:09:13 +0000 Subject: [PATCH] Show the values of Expr.flag in the AST of ".selecttrace" FossilOrigin-Name: a84d1004cbee67f2b8ba1fd201e43af49ea67c1b --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/treeview.c | 20 +++++++++++++------- 3 files changed, 20 insertions(+), 14 deletions(-) diff --git a/manifest b/manifest index 890f783f44..213216a122 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\s#ifdefs\sto\ssome\sfeatures\sspeedtest1.c\sso\sthat\sit\scompiles\swith\s\nolder\sversions\sof\sSQLite,\sgoing\sback\sto\sversion\s3.5.1. -D 2015-06-18T12:37:32.427 +C Show\sthe\svalues\sof\sExpr.flag\sin\sthe\sAST\sof\s".selecttrace" +D 2015-06-18T14:09:13.947 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 1063c58075b7400d93326b0eb332b48a54f53025 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -307,7 +307,7 @@ F src/test_vfstrace.c bab9594adc976cbe696ff3970728830b4c5ed698 F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9 F src/threads.c 6bbcc9fe50c917864d48287b4792d46d6e873481 F src/tokenize.c 57cb3720f53f84d811def2069c2b169b6be539a5 -F src/treeview.c 84aa2d2ed26627ccc8dd3a2becfa18dc86ee4607 +F src/treeview.c c84b1a8ebc7f1d00cd76ce4958eeb3ae1021beed F src/trigger.c 322f23aad694e8f31d384dcfa386d52a48d3c52f F src/update.c 487747b328b7216bb7f6af0695d6937d5c9e605f F src/utf.c fc6b889ba0779b7722634cdeaa25f1930d93820c @@ -1286,7 +1286,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P d718ea36dce8cf1684c8bcda457fee87f8f8c4e2 -R 2fec93a2150d7ae7b09d15812bf76e79 +P f50dd154d33c58d7a9aa1852fdc362c2e81feef2 +R 22636f96e0a5b958f11aa19ecbc51e6e U drh -Z 189f0c4fbb00b22a5016916932c6c3ba +Z bfca8d78599e0b1cd1fa7858d0e8d79f diff --git a/manifest.uuid b/manifest.uuid index 7f96939a8e..93fb06574d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -f50dd154d33c58d7a9aa1852fdc362c2e81feef2 \ No newline at end of file +a84d1004cbee67f2b8ba1fd201e43af49ea67c1b \ No newline at end of file diff --git a/src/treeview.c b/src/treeview.c index 7b63c884e7..83bed664df 100644 --- a/src/treeview.c +++ b/src/treeview.c @@ -178,25 +178,31 @@ void sqlite3TreeViewSelect(TreeView *pView, const Select *p, u8 moreToFollow){ void sqlite3TreeViewExpr(TreeView *pView, const Expr *pExpr, u8 moreToFollow){ const char *zBinOp = 0; /* Binary operator */ const char *zUniOp = 0; /* Unary operator */ + char zFlgs[30]; pView = sqlite3TreeViewPush(pView, moreToFollow); if( pExpr==0 ){ sqlite3TreeViewLine(pView, "nil"); sqlite3TreeViewPop(pView); return; } + if( pExpr->flags ){ + sqlite3_snprintf(sizeof(zFlgs),zFlgs," flags=0x%x",pExpr->flags); + }else{ + zFlgs[0] = 0; + } switch( pExpr->op ){ case TK_AGG_COLUMN: { - sqlite3TreeViewLine(pView, "AGG{%d:%d}", - pExpr->iTable, pExpr->iColumn); + sqlite3TreeViewLine(pView, "AGG{%d:%d}%s", + pExpr->iTable, pExpr->iColumn, zFlgs); break; } case TK_COLUMN: { if( pExpr->iTable<0 ){ /* This only happens when coding check constraints */ - sqlite3TreeViewLine(pView, "COLUMN(%d)", pExpr->iColumn); + sqlite3TreeViewLine(pView, "COLUMN(%d)%s", pExpr->iColumn, zFlgs); }else{ - sqlite3TreeViewLine(pView, "{%d:%d}", - pExpr->iTable, pExpr->iColumn); + sqlite3TreeViewLine(pView, "{%d:%d}%s", + pExpr->iTable, pExpr->iColumn, zFlgs); } break; } @@ -389,11 +395,11 @@ void sqlite3TreeViewExpr(TreeView *pView, const Expr *pExpr, u8 moreToFollow){ } } if( zBinOp ){ - sqlite3TreeViewLine(pView, "%s", zBinOp); + sqlite3TreeViewLine(pView, "%s%s", zBinOp, zFlgs); sqlite3TreeViewExpr(pView, pExpr->pLeft, 1); sqlite3TreeViewExpr(pView, pExpr->pRight, 0); }else if( zUniOp ){ - sqlite3TreeViewLine(pView, "%s", zUniOp); + sqlite3TreeViewLine(pView, "%s%s", zUniOp, zFlgs); sqlite3TreeViewExpr(pView, pExpr->pLeft, 0); } sqlite3TreeViewPop(pView); -- 2.47.2