diff options
author | drh <drh@noemail.net> | 2013-09-12 23:42:22 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2013-09-12 23:42:22 +0000 |
commit | ebb6a65d16bb653b06df6b6e4e0c17c72de6de3d (patch) | |
tree | b4581e1259348be96e72b6d8361349a05644b697 /src | |
parent | a4c3c87e3dea5b596ebf28e3b91b3d8aa3be4bd6 (diff) | |
download | sqlite-ebb6a65d16bb653b06df6b6e4e0c17c72de6de3d.tar.gz sqlite-ebb6a65d16bb653b06df6b6e4e0c17c72de6de3d.zip |
Refactor the ExprSetIrreducible() macro into ExprSetVVAProperty(*,EP_NoReduce).
This is a naming change only. The logic is the same.
FossilOrigin-Name: 695aee46e9bdf15159ab52db7f522b30c91aed0f
Diffstat (limited to 'src')
-rw-r--r-- | src/expr.c | 8 | ||||
-rw-r--r-- | src/resolve.c | 2 | ||||
-rw-r--r-- | src/select.c | 4 | ||||
-rw-r--r-- | src/sqliteInt.h | 24 |
4 files changed, 18 insertions, 20 deletions
diff --git a/src/expr.c b/src/expr.c index e5d8a6129..da8499a60 100644 --- a/src/expr.c +++ b/src/expr.c @@ -745,7 +745,7 @@ static int dupedExprStructSize(Expr *p, int flags){ assert( !ExprHasProperty(p, EP_TokenOnly|EP_Reduced) ); assert( !ExprHasProperty(p, EP_FromJoin) ); assert( !ExprHasProperty(p, EP_MemToken) ); - assert( !ExprHasProperty(p, EP_Irreduce) ); + assert( !ExprHasProperty(p, EP_NoReduce) ); if( p->pLeft || p->pRight || p->x.pList ){ nSize = EXPR_REDUCEDSIZE | EP_Reduced; }else{ @@ -1851,7 +1851,7 @@ int sqlite3CodeSubselect( return 0; } rReg = dest.iSDParm; - ExprSetIrreducible(pExpr); + ExprSetVVAProperty(pExpr, EP_NoReduce); break; } } @@ -4102,7 +4102,7 @@ static int analyzeAggregate(Walker *pWalker, Expr *pExpr){ ** Convert the pExpr to be a TK_AGG_COLUMN referring to that ** pAggInfo->aCol[] entry. */ - ExprSetIrreducible(pExpr); + ExprSetVVAProperty(pExpr, EP_NoReduce); pExpr->pAggInfo = pAggInfo; pExpr->op = TK_AGG_COLUMN; pExpr->iAgg = (i16)k; @@ -4149,7 +4149,7 @@ static int analyzeAggregate(Walker *pWalker, Expr *pExpr){ /* Make pExpr point to the appropriate pAggInfo->aFunc[] entry */ assert( !ExprHasProperty(pExpr, EP_TokenOnly|EP_Reduced) ); - ExprSetIrreducible(pExpr); + ExprSetVVAProperty(pExpr, EP_NoReduce); pExpr->iAgg = (i16)i; pExpr->pAggInfo = pAggInfo; return WRC_Prune; diff --git a/src/resolve.c b/src/resolve.c index c1e8cb798..eacffc540 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -235,7 +235,7 @@ static int lookupName( /* Initialize the node to no-match */ pExpr->iTable = -1; pExpr->pTab = 0; - ExprSetIrreducible(pExpr); + ExprSetVVAProperty(pExpr, EP_NoReduce); /* Translate the schema name in zDb into a pointer to the corresponding ** schema. If not found, pSchema will remain NULL and nothing will match diff --git a/src/select.c b/src/select.c index f0dbf8091..2ea8e1fc8 100644 --- a/src/select.c +++ b/src/select.c @@ -265,7 +265,7 @@ static void addWhereTerm( if( pEq && isOuterJoin ){ ExprSetProperty(pEq, EP_FromJoin); assert( !ExprHasProperty(pEq, EP_TokenOnly|EP_Reduced) ); - ExprSetIrreducible(pEq); + ExprSetVVAProperty(pEq, EP_NoReduce); pEq->iRightJoinTable = (i16)pE2->iTable; } *ppWhere = sqlite3ExprAnd(db, *ppWhere, pEq); @@ -301,7 +301,7 @@ static void setJoinExpr(Expr *p, int iTable){ while( p ){ ExprSetProperty(p, EP_FromJoin); assert( !ExprHasProperty(p, EP_TokenOnly|EP_Reduced) ); - ExprSetIrreducible(p); + ExprSetVVAProperty(p, EP_NoReduce); p->iRightJoinTable = (i16)iTable; setJoinExpr(p->pLeft, iTable); p = p->pRight; diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 361224084..8d01b902f 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -1784,22 +1784,10 @@ struct Expr { #define EP_TokenOnly 0x004000 /* Expr struct EXPR_TOKENONLYSIZE bytes only */ #define EP_Static 0x008000 /* Held in memory not obtained from malloc() */ #define EP_MemToken 0x010000 /* Need to sqlite3DbFree() Expr.zToken */ -#define EP_Irreduce 0x020000 /* Cannot EXPRDUP_REDUCE this Expr */ +#define EP_NoReduce 0x020000 /* Cannot EXPRDUP_REDUCE this Expr */ #define EP_Unlikely 0x040000 /* unlikely() or likelihood() function */ /* -** The pseudo-routine sqlite3ExprSetIrreducible sets the EP2_Irreducible -** flag on an expression structure. This flag is used for VV&A only. The -** routine is implemented as a macro that only works when in debugging mode, -** so as not to burden production code. -*/ -#ifdef SQLITE_DEBUG -# define ExprSetIrreducible(X) (X)->flags |= EP_Irreduce -#else -# define ExprSetIrreducible(X) -#endif - -/* ** These macros can be used to test, set, or clear bits in the ** Expr.flags field. */ @@ -1808,6 +1796,16 @@ struct Expr { #define ExprSetProperty(E,P) (E)->flags|=(P) #define ExprClearProperty(E,P) (E)->flags&=~(P) +/* The ExprSetVVAProperty() macro is used for Verification, Validation, +** and Accreditation only. It works like ExprSetProperty() during VVA +** processes but is a no-op for delivery. +*/ +#ifdef SQLITE_DEBUG +# define ExprSetVVAProperty(E,P) (E)->flags|=(P) +#else +# define ExprSetVVAProperty(E,P) +#endif + /* ** Macros to determine the number of bytes required by a normal Expr ** struct, an Expr struct with the EP_Reduced flag set in Expr.flags |