pOrTerm 117121 ext/sqlite3/libsqlite/sqlite3.c WhereTerm *pOrTerm; /* A Sub-term within the pOrWc */ pOrTerm 117148 ext/sqlite3/libsqlite/sqlite3.c for(i=pOrWc->nTerm-1, pOrTerm=pOrWc->a; i>=0 && indexable; i--, pOrTerm++){ pOrTerm 117149 ext/sqlite3/libsqlite/sqlite3.c if( (pOrTerm->eOperator & WO_SINGLE)==0 ){ pOrTerm 117151 ext/sqlite3/libsqlite/sqlite3.c assert( (pOrTerm->wtFlags & (TERM_ANDINFO|TERM_ORINFO))==0 ); pOrTerm 117159 ext/sqlite3/libsqlite/sqlite3.c pOrTerm->u.pAndInfo = pAndInfo; pOrTerm 117160 ext/sqlite3/libsqlite/sqlite3.c pOrTerm->wtFlags |= TERM_ANDINFO; pOrTerm 117161 ext/sqlite3/libsqlite/sqlite3.c pOrTerm->eOperator = WO_AND; pOrTerm 117164 ext/sqlite3/libsqlite/sqlite3.c whereSplit(pAndWC, pOrTerm->pExpr, TK_AND); pOrTerm 117178 ext/sqlite3/libsqlite/sqlite3.c }else if( pOrTerm->wtFlags & TERM_COPIED ){ pOrTerm 117183 ext/sqlite3/libsqlite/sqlite3.c b = getMask(&pWInfo->sMaskSet, pOrTerm->leftCursor); pOrTerm 117184 ext/sqlite3/libsqlite/sqlite3.c if( pOrTerm->wtFlags & TERM_VIRTUAL ){ pOrTerm 117185 ext/sqlite3/libsqlite/sqlite3.c WhereTerm *pOther = &pOrWc->a[pOrTerm->iParent]; pOrTerm 117189 ext/sqlite3/libsqlite/sqlite3.c if( (pOrTerm->eOperator & WO_EQ)==0 ){ pOrTerm 117252 ext/sqlite3/libsqlite/sqlite3.c pOrTerm = pOrWc->a; pOrTerm 117253 ext/sqlite3/libsqlite/sqlite3.c for(i=pOrWc->nTerm-1; i>=0; i--, pOrTerm++){ pOrTerm 117254 ext/sqlite3/libsqlite/sqlite3.c assert( pOrTerm->eOperator & WO_EQ ); pOrTerm 117255 ext/sqlite3/libsqlite/sqlite3.c pOrTerm->wtFlags &= ~TERM_OR_OK; pOrTerm 117256 ext/sqlite3/libsqlite/sqlite3.c if( pOrTerm->leftCursor==iCursor ){ pOrTerm 117262 ext/sqlite3/libsqlite/sqlite3.c if( (chngToIN & getMask(&pWInfo->sMaskSet, pOrTerm->leftCursor))==0 ){ pOrTerm 117267 ext/sqlite3/libsqlite/sqlite3.c testcase( pOrTerm->wtFlags & TERM_COPIED ); pOrTerm 117268 ext/sqlite3/libsqlite/sqlite3.c testcase( pOrTerm->wtFlags & TERM_VIRTUAL ); pOrTerm 117269 ext/sqlite3/libsqlite/sqlite3.c assert( pOrTerm->wtFlags & (TERM_COPIED|TERM_VIRTUAL) ); pOrTerm 117272 ext/sqlite3/libsqlite/sqlite3.c iColumn = pOrTerm->u.leftColumn; pOrTerm 117273 ext/sqlite3/libsqlite/sqlite3.c iCursor = pOrTerm->leftCursor; pOrTerm 117289 ext/sqlite3/libsqlite/sqlite3.c for(; i>=0 && okToChngToIN; i--, pOrTerm++){ pOrTerm 117290 ext/sqlite3/libsqlite/sqlite3.c assert( pOrTerm->eOperator & WO_EQ ); pOrTerm 117291 ext/sqlite3/libsqlite/sqlite3.c if( pOrTerm->leftCursor!=iCursor ){ pOrTerm 117292 ext/sqlite3/libsqlite/sqlite3.c pOrTerm->wtFlags &= ~TERM_OR_OK; pOrTerm 117293 ext/sqlite3/libsqlite/sqlite3.c }else if( pOrTerm->u.leftColumn!=iColumn ){ pOrTerm 117301 ext/sqlite3/libsqlite/sqlite3.c affRight = sqlite3ExprAffinity(pOrTerm->pExpr->pRight); pOrTerm 117302 ext/sqlite3/libsqlite/sqlite3.c affLeft = sqlite3ExprAffinity(pOrTerm->pExpr->pLeft); pOrTerm 117306 ext/sqlite3/libsqlite/sqlite3.c pOrTerm->wtFlags |= TERM_OR_OK; pOrTerm 117322 ext/sqlite3/libsqlite/sqlite3.c for(i=pOrWc->nTerm-1, pOrTerm=pOrWc->a; i>=0; i--, pOrTerm++){ pOrTerm 117323 ext/sqlite3/libsqlite/sqlite3.c if( (pOrTerm->wtFlags & TERM_OR_OK)==0 ) continue; pOrTerm 117324 ext/sqlite3/libsqlite/sqlite3.c assert( pOrTerm->eOperator & WO_EQ ); pOrTerm 117325 ext/sqlite3/libsqlite/sqlite3.c assert( pOrTerm->leftCursor==iCursor ); pOrTerm 117326 ext/sqlite3/libsqlite/sqlite3.c assert( pOrTerm->u.leftColumn==iColumn ); pOrTerm 117327 ext/sqlite3/libsqlite/sqlite3.c pDup = sqlite3ExprDup(db, pOrTerm->pExpr->pRight, 0); pOrTerm 117329 ext/sqlite3/libsqlite/sqlite3.c pLeft = pOrTerm->pExpr->pLeft; pOrTerm 120079 ext/sqlite3/libsqlite/sqlite3.c WhereTerm *pOrTerm = &pOrWc->a[ii]; pOrTerm 120080 ext/sqlite3/libsqlite/sqlite3.c if( pOrTerm->leftCursor==iCur || (pOrTerm->eOperator & WO_AND)!=0 ){ pOrTerm 120082 ext/sqlite3/libsqlite/sqlite3.c Expr *pOrExpr = pOrTerm->pExpr; /* Current OR clause term */ pOrTerm 121631 ext/sqlite3/libsqlite/sqlite3.c WhereTerm *pOrTerm; pOrTerm 121640 ext/sqlite3/libsqlite/sqlite3.c for(pOrTerm=pOrWC->a; pOrTerm<pOrWCEnd; pOrTerm++){ pOrTerm 121641 ext/sqlite3/libsqlite/sqlite3.c if( (pOrTerm->eOperator & WO_AND)!=0 ){ pOrTerm 121642 ext/sqlite3/libsqlite/sqlite3.c sSubBuild.pWC = &pOrTerm->u.pAndInfo->wc; pOrTerm 121643 ext/sqlite3/libsqlite/sqlite3.c }else if( pOrTerm->leftCursor==iCur ){ pOrTerm 121648 ext/sqlite3/libsqlite/sqlite3.c tempWC.a = pOrTerm; pOrTerm 121656 ext/sqlite3/libsqlite/sqlite3.c (int)(pOrTerm-pOrWC->a), pTerm, sSubBuild.pWC->nTerm));