Lines Matching refs:pOrTerm

651   WhereTerm *pOrTerm;       /* A Sub-term within the pOrWc */  in exprAnalyzeOrTerm()  local
679 for(i=pOrWc->nTerm-1, pOrTerm=pOrWc->a; i>=0 && indexable; i--, pOrTerm++){ in exprAnalyzeOrTerm()
680 if( (pOrTerm->eOperator & WO_SINGLE)==0 ){ in exprAnalyzeOrTerm()
682 assert( (pOrTerm->wtFlags & (TERM_ANDINFO|TERM_ORINFO))==0 ); in exprAnalyzeOrTerm()
690 pOrTerm->u.pAndInfo = pAndInfo; in exprAnalyzeOrTerm()
691 pOrTerm->wtFlags |= TERM_ANDINFO; in exprAnalyzeOrTerm()
692 pOrTerm->eOperator = WO_AND; in exprAnalyzeOrTerm()
693 pOrTerm->leftCursor = -1; in exprAnalyzeOrTerm()
697 sqlite3WhereSplit(pAndWC, pOrTerm->pExpr, TK_AND); in exprAnalyzeOrTerm()
712 }else if( pOrTerm->wtFlags & TERM_COPIED ){ in exprAnalyzeOrTerm()
717 b = sqlite3WhereGetMask(&pWInfo->sMaskSet, pOrTerm->leftCursor); in exprAnalyzeOrTerm()
718 if( pOrTerm->wtFlags & TERM_VIRTUAL ){ in exprAnalyzeOrTerm()
719 WhereTerm *pOther = &pOrWc->a[pOrTerm->iParent]; in exprAnalyzeOrTerm()
723 if( (pOrTerm->eOperator & WO_EQ)==0 ){ in exprAnalyzeOrTerm()
791 pOrTerm = pOrWc->a; in exprAnalyzeOrTerm()
792 for(i=pOrWc->nTerm-1; i>=0; i--, pOrTerm++){ in exprAnalyzeOrTerm()
793 assert( pOrTerm->eOperator & WO_EQ ); in exprAnalyzeOrTerm()
794 pOrTerm->wtFlags &= ~TERM_OK; in exprAnalyzeOrTerm()
795 if( pOrTerm->leftCursor==iCursor ){ in exprAnalyzeOrTerm()
802 pOrTerm->leftCursor))==0 ){ in exprAnalyzeOrTerm()
807 testcase( pOrTerm->wtFlags & TERM_COPIED ); in exprAnalyzeOrTerm()
808 testcase( pOrTerm->wtFlags & TERM_VIRTUAL ); in exprAnalyzeOrTerm()
809 assert( pOrTerm->wtFlags & (TERM_COPIED|TERM_VIRTUAL) ); in exprAnalyzeOrTerm()
812 assert( (pOrTerm->eOperator & (WO_OR|WO_AND))==0 ); in exprAnalyzeOrTerm()
813 iColumn = pOrTerm->u.x.leftColumn; in exprAnalyzeOrTerm()
814 iCursor = pOrTerm->leftCursor; in exprAnalyzeOrTerm()
815 pLeft = pOrTerm->pExpr->pLeft; in exprAnalyzeOrTerm()
831 for(; i>=0 && okToChngToIN; i--, pOrTerm++){ in exprAnalyzeOrTerm()
832 assert( pOrTerm->eOperator & WO_EQ ); in exprAnalyzeOrTerm()
833 assert( (pOrTerm->eOperator & (WO_OR|WO_AND))==0 ); in exprAnalyzeOrTerm()
834 if( pOrTerm->leftCursor!=iCursor ){ in exprAnalyzeOrTerm()
835 pOrTerm->wtFlags &= ~TERM_OK; in exprAnalyzeOrTerm()
836 }else if( pOrTerm->u.x.leftColumn!=iColumn || (iColumn==XN_EXPR in exprAnalyzeOrTerm()
837 && sqlite3ExprCompare(pParse, pOrTerm->pExpr->pLeft, pLeft, -1) in exprAnalyzeOrTerm()
846 affRight = sqlite3ExprAffinity(pOrTerm->pExpr->pRight); in exprAnalyzeOrTerm()
847 affLeft = sqlite3ExprAffinity(pOrTerm->pExpr->pLeft); in exprAnalyzeOrTerm()
851 pOrTerm->wtFlags |= TERM_OK; in exprAnalyzeOrTerm()
867 for(i=pOrWc->nTerm-1, pOrTerm=pOrWc->a; i>=0; i--, pOrTerm++){ in exprAnalyzeOrTerm()
868 if( (pOrTerm->wtFlags & TERM_OK)==0 ) continue; in exprAnalyzeOrTerm()
869 assert( pOrTerm->eOperator & WO_EQ ); in exprAnalyzeOrTerm()
870 assert( (pOrTerm->eOperator & (WO_OR|WO_AND))==0 ); in exprAnalyzeOrTerm()
871 assert( pOrTerm->leftCursor==iCursor ); in exprAnalyzeOrTerm()
872 assert( pOrTerm->u.x.leftColumn==iColumn ); in exprAnalyzeOrTerm()
873 pDup = sqlite3ExprDup(db, pOrTerm->pExpr->pRight, 0); in exprAnalyzeOrTerm()
875 pLeft = pOrTerm->pExpr->pLeft; in exprAnalyzeOrTerm()