Lines Matching refs:pLeft
16253 Expr *pLeft; /* Left subnode */ member
16346 #define EXPR_TOKENONLYSIZE offsetof(Expr,pLeft) /* Fewer features */
27190 sqlite3TreeViewExpr(pView, p->pLimit->pLeft, p->pLimit->pRight!=0);
27296 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
27331 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
27337 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
27373 sqlite3TreeViewExpr(pView, pExpr->pLeft, 1);
27395 Expr *pX = pExpr->pLeft;
27418 sqlite3TreeViewExpr(pView, pExpr->pLeft, 1);
27447 sqlite3TreeViewSelect(pView, pExpr->pLeft->x.pSelect, 0);
27452 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
27462 sqlite3TreeViewExpr(pView, pExpr->pLeft, 1);
27466 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
47418 struct RowSetEntry *pLeft; /* Left subtree (smaller entries) */
47636 if( pIn->pLeft ){
47638 rowSetTreeToList(pIn->pLeft, ppFirst, &p);
47670 struct RowSetEntry *pLeft; /* Left subtree */
47679 pLeft = rowSetNDeepTree(ppList, iDepth-1);
47684 return pLeft;
47686 p->pLeft = pLeft;
47692 p->pLeft = p->pRight = 0;
47704 struct RowSetEntry *pLeft; /* Left subtree */
47709 p->pLeft = p->pRight = 0;
47711 pLeft = p;
47714 p->pLeft = pLeft;
47786 if( pTree->pLeft==0 ){
47787 pTree->pLeft = rowSetListToTree(p);
47791 rowSetTreeToList(pTree->pLeft, &pAux, &pTail);
47792 pTree->pLeft = 0;
47801 pTree->pLeft = rowSetListToTree(p);
47815 p = pTree->pLeft;
47820 p = p->pLeft;
72529 while( (op = pExpr->op)==TK_UPLUS || op==TK_SPAN ) pExpr = pExpr->pLeft;
72544 rc = valueFromExpr(db, pExpr->pLeft, enc, aff, ppVal, pCtx);
72557 && (pExpr->pLeft->op==TK_INTEGER || pExpr->pLeft->op==TK_FLOAT) ){
72558 pExpr = pExpr->pLeft;
72585 if( SQLITE_OK==valueFromExpr(db,pExpr->pLeft,enc,affinity,&pVal,pCtx)
74277 displayP4Expr(p, pExpr->pLeft);
91054 if( pExpr->pLeft && walkExpr(pWalker, pExpr->pLeft) ) return WRC_Abort;
91563 assert( pExpr->pLeft==0 && pExpr->pRight==0 );
91645 sqlite3ExprDelete(db, pExpr->pLeft);
91646 pExpr->pLeft = 0;
91804 zTable = pExpr->pLeft->u.zToken;
91808 zDb = pExpr->pLeft->u.zToken;
91809 zTable = pRight->pLeft->u.zToken;
91966 assert( pExpr->pLeft!=0 );
91967 nLeft = sqlite3ExprVectorSize(pExpr->pLeft);
92182 while( pParent->pLeft->op==TK_COLLATE ) pParent = pParent->pLeft;
92183 assert( pParent->pLeft==pE );
92184 pParent->pLeft = pNew;
92768 assert( pExpr->pLeft->flags&EP_xIsSelect );
92770 pExpr->pLeft->x.pSelect->pEList->a[pExpr->iColumn].pExpr
92793 pNew->pLeft = pExpr;
92820 pExpr = pExpr->pLeft;
92848 p = p->pLeft;
92869 if( p->pLeft && (p->pLeft->flags & EP_Collate)!=0 ){
92870 p = p->pLeft;
92962 assert( pExpr->pLeft );
92963 aff = sqlite3ExprAffinity(pExpr->pLeft);
93016 Expr *pLeft,
93020 assert( pLeft );
93021 if( pLeft->flags & EP_Collate ){
93022 pColl = sqlite3ExprCollSeq(pParse, pLeft);
93026 pColl = sqlite3ExprCollSeq(pParse, pLeft);
93039 Expr *pLeft, /* The left operand */
93050 p4 = sqlite3BinaryCompareCollSeq(pParse, pLeft, pRight);
93051 p5 = binaryCompareP5(pLeft, pRight, jumpIfNull);
93165 pRet->pLeft = pVector;
93252 Expr *pLeft = pExpr->pLeft;
93254 int nLeft = sqlite3ExprVectorSize(pLeft);
93279 regLeft = exprCodeSubselect(pParse, pLeft);
93288 r1 = exprVectorRegister(pParse, pLeft, i, regLeft, &pL, ®Free1);
93388 heightOfExpr(p->pLeft, &nHeight);
93524 Expr *pLeft,
93529 sqlite3ExprDelete(db, pLeft);
93536 if( pLeft ){
93537 pRoot->pLeft = pLeft;
93538 pRoot->flags |= EP_Propagate & pLeft->flags;
93554 Expr *pLeft, /* Left operand */
93560 p = sqlite3ExprAnd(pParse->db, pLeft, pRight);
93568 sqlite3ExprAttachSubtrees(pParse->db, p, pLeft, pRight);
93627 SQLITE_PRIVATE Expr *sqlite3ExprAnd(sqlite3 *db, Expr *pLeft, Expr *pRight){
93628 if( pLeft==0 ){
93631 return pLeft;
93632 }else if( exprAlwaysFalse(pLeft) || exprAlwaysFalse(pRight) ){
93633 sqlite3ExprDelete(db, pLeft);
93638 sqlite3ExprAttachSubtrees(db, pNew, pLeft, pRight);
93753 assert( p->pLeft==0 );
93761 if( p->pLeft && p->op!=TK_SELECT_COLUMN ) sqlite3ExprDeleteNN(db, p->pLeft);
93836 if( p->pLeft || p->x.pList ){
93877 nByte += dupedExprSize(p->pLeft, flags) + dupedExprSize(p->pRight, flags);
93960 pNew->pLeft = p->pLeft ?
93961 exprDup(db, p->pLeft, EXPRDUP_REDUCE, &zAlloc) : 0;
93971 pNew->pLeft = p->pLeft;
93973 assert( p->pRight==0 || p->pRight==p->pLeft );
93975 pNew->pLeft = sqlite3ExprDup(db, p->pLeft, 0);
94054 assert( pOldExpr->pLeft==pOldExpr->pRight );
94055 pPriorSelectCol = pNewExpr->pLeft = pNewExpr->pRight;
94060 assert( pPriorSelectCol==pItem[-1].pExpr->pLeft );
94061 pNewExpr->pLeft = pPriorSelectCol;
94676 rc = sqlite3ExprIsInteger(p->pLeft, pValue);
94681 if( sqlite3ExprIsInteger(p->pLeft, &v) ){
94709 while( p->op==TK_UPLUS || p->op==TK_UMINUS ){ p = p->pLeft; }
94740 while( p->op==TK_UPLUS || p->op==TK_UMINUS ){ p = p->pLeft; }
94851 pLHS = pIn->pLeft;
94852 pIn->pLeft = 0;
94854 pIn->pLeft = pLHS;
95012 Expr *pLhs = sqlite3VectorFieldSubexpr(pX->pLeft, i);
95054 Expr *pLhs = sqlite3VectorFieldSubexpr(pX->pLeft, i);
95132 if( pX->pLeft->iColumn<0 && !ExprHasProperty(pX, EP_xIsSelect) ){
95146 n = sqlite3ExprVectorSize(pX->pLeft);
95163 Expr *pLeft = pExpr->pLeft;
95164 int nVal = sqlite3ExprVectorSize(pLeft);
95173 Expr *pA = sqlite3VectorFieldSubexpr(pLeft, i);
95292 Expr *pLeft = pExpr->pLeft; /* the LHS of the IN operator */
95296 nVal = sqlite3ExprVectorSize(pLeft);
95348 Expr *p = sqlite3VectorFieldSubexpr(pLeft, i);
95368 affinity = sqlite3ExprAffinity(pLeft);
95374 pKeyInfo->aColl[0] = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
95464 sqlite3ExprDelete(pParse->db, pSel->pLimit->pLeft);
95465 pSel->pLimit->pLeft = pLimit;
95500 int nVector = sqlite3ExprVectorSize(pIn->pLeft);
95507 sqlite3VectorErrorMsg(pParse, pIn->pLeft);
95555 Expr *pLeft; /* The LHS of the IN operator */
95563 pLeft = pExpr->pLeft;
95566 nVector = sqlite3ExprVectorSize(pExpr->pLeft);
95606 rLhsOrig = exprCodeVector(pParse, pLeft, &iDummy);
95627 CollSeq *pColl = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
95675 Expr *p = sqlite3VectorFieldSubexpr(pExpr->pLeft, i);
95740 p = sqlite3VectorFieldSubexpr(pLeft, i);
96300 inReg = sqlite3ExprCodeTarget(pParse, pExpr->pLeft, target);
96323 Expr *pLeft = pExpr->pLeft;
96324 if( sqlite3ExprIsVector(pLeft) ){
96327 r1 = sqlite3ExprCodeTemp(pParse, pLeft, ®Free1);
96329 codeCompare(pParse, pLeft, pExpr->pRight, op,
96365 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
96373 Expr *pLeft = pExpr->pLeft;
96374 assert( pLeft );
96375 if( pLeft->op==TK_INTEGER ){
96376 codeInteger(pParse, pLeft, 1, target);
96379 }else if( pLeft->op==TK_FLOAT ){
96381 codeReal(v, pLeft->u.zToken, 1, target);
96389 r2 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free2);
96399 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
96410 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
96610 if( pExpr->pLeft->iTable==0 ){
96611 pExpr->pLeft->iTable = sqlite3CodeSubselect(pParse, pExpr->pLeft, 0, 0);
96613 assert( pExpr->iTable==0 || pExpr->pLeft->op==TK_SELECT );
96615 && pExpr->iTable!=(n = sqlite3ExprVectorSize(pExpr->pLeft))
96620 return pExpr->pLeft->iTable + pExpr->iColumn;
96654 return sqlite3ExprCodeTarget(pParse, pExpr->pLeft, target);
96722 inReg = sqlite3ExprCodeTarget(pParse, pExpr->pLeft, target);
96768 if( (pX = pExpr->pLeft)!=0 ){
96775 opCompare.pLeft = &tempX;
97094 exprX = *pExpr->pLeft;
97096 exprAnd.pLeft = &compLeft;
97099 compLeft.pLeft = &exprX;
97102 compRight.pLeft = &exprX;
97159 sqlite3ExprIfFalse(pParse, pExpr->pLeft, d2,jumpIfNull^SQLITE_JUMPIFNULL);
97168 sqlite3ExprIfTrue(pParse, pExpr->pLeft, dest, jumpIfNull);
97176 sqlite3ExprIfFalse(pParse, pExpr->pLeft, dest, jumpIfNull);
97192 if( sqlite3ExprIsVector(pExpr->pLeft) ) goto default_expr;
97194 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
97196 codeCompare(pParse, pExpr->pLeft, pExpr->pRight, op,
97216 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
97312 sqlite3ExprIfFalse(pParse, pExpr->pLeft, dest, jumpIfNull);
97321 sqlite3ExprIfTrue(pParse, pExpr->pLeft, d2, jumpIfNull^SQLITE_JUMPIFNULL);
97330 sqlite3ExprIfTrue(pParse, pExpr->pLeft, dest, jumpIfNull);
97346 if( sqlite3ExprIsVector(pExpr->pLeft) ) goto default_expr;
97348 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
97350 codeCompare(pParse, pExpr->pLeft, pExpr->pRight, op,
97368 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, ®Free1);
97507 if( pA->op==TK_COLLATE && sqlite3ExprCompare(pParse, pA->pLeft,pB,iTab)<2 ){
97510 if( pB->op==TK_COLLATE && sqlite3ExprCompare(pParse, pA,pB->pLeft,iTab)<2 ){
97525 if( sqlite3ExprCompare(pParse, pA->pLeft, pB->pLeft, iTab) ) return 2;
97607 && (sqlite3ExprImpliesExpr(pParse, pE1, pE2->pLeft, iTab)
97613 Expr *pX = sqlite3ExprSkipCollate(pE1->pLeft);
97614 testcase( pX!=pE1->pLeft );
97615 if( sqlite3ExprCompare(pParse, pX, pE2->pLeft, iTab)==0 ) return 1;
98668 if( pDflt && pDflt->pLeft->op==TK_NULL ){
101318 pExpr = pExpr->pLeft;
102882 x.pLeft = pExpr;
102910 }else if( p->op==TK_COLLATE && p->pLeft->op==TK_STRING ){
102911 p->pLeft->op = TK_ID;
110004 Expr *pLeft; /* Value from parent table row */
110011 pLeft = exprTableRegister(pParse, pTab, regData, iCol);
110016 pEq = sqlite3PExpr(pParse, TK_EQ, pLeft, pRight);
110033 Expr *pLeft; /* Value from parent table row */
110036 pLeft = exprTableRegister(pParse, pTab, regData, -1);
110038 pNe = sqlite3PExpr(pParse, TK_NE, pLeft, pRight);
110046 pLeft = exprTableRegister(pParse, pTab, regData, iCol);
110048 pEq = sqlite3PExpr(pParse, TK_EQ, pLeft, pRight);
119083 setJoinExpr(p->pLeft, iTable);
119105 struct SrcList_item *pLeft; /* Left table being joined */
119109 pLeft = &pSrc->a[0];
119110 pRight = &pLeft[1];
119111 for(i=0; i<pSrc->nSrc-1; i++, pRight++, pLeft++){
119115 if( NEVER(pLeft->pTab==0 || pRightTab==0) ) continue;
120613 assert( pLimit->pLeft!=0 );
120617 if( sqlite3ExprIsInteger(pLimit->pLeft, &n) ){
120627 sqlite3ExprCode(pParse, pLimit->pLeft, iLimit);
121061 && sqlite3ExprIsInteger(pPrior->pLimit->pLeft, &nLimit)
121886 assert( pExpr->pLeft==0 && pExpr->pRight==0 );
121894 ifNullRow.pLeft = pCopy;
121914 pExpr->pLeft = substExpr(pSubst, pExpr->pLeft);
122576 pWhere = pWhere->pLeft;
122870 Select *pLeft; /* Left-most SELECT statement */
122940 for(pLeft=pSel; pLeft->pPrior; pLeft=pLeft->pPrior);
122941 pEList = pLeft->pEList;
123138 assert( pE->op!=TK_DOT || (pE->pLeft!=0 && pE->pLeft->op==TK_ID) );
123178 assert( pE->pLeft!=0 );
123179 assert( !ExprHasProperty(pE->pLeft, EP_IntValue) );
123180 zTName = pE->pLeft->u.zToken;
123242 Expr *pLeft;
123243 pLeft = sqlite3Expr(db, TK_ID, zTabName);
123244 pExpr = sqlite3PExpr(pParse, TK_DOT, pLeft, pRight);
123246 pLeft = sqlite3Expr(db, TK_ID, zSchemaName);
123247 pExpr = sqlite3PExpr(pParse, TK_DOT, pLeft, pExpr);
129604 ExprList *pOrigLhs = pNew->pLeft->x.pList; /* Original unmodified LHS */
129623 pNew->pLeft->x.pList = pLhs;
129631 sqlite3ExprDelete(db, pNew->pLeft);
129632 pNew->pLeft = p;
130488 pCompare->pLeft = pTerm->pExpr->pLeft;
130494 pCompare->pLeft = 0;
131111 pAndExpr->pLeft = pOrExpr;
131224 pAndExpr->pLeft = 0;
131362 sEAlt.pLeft = pE->pLeft;
131515 u16 expLeft = (pExpr->pLeft->flags & EP_Collate);
131523 }else if( sqlite3ExprCollSeq(pParse, pExpr->pLeft)!=0 ){
131527 pExpr->pLeft->flags |= EP_Collate;
131530 SWAP(Expr*,pExpr->pRight,pExpr->pLeft);
131590 Expr *pRight, *pLeft; /* Right and left size of LIKE operator */
131607 pLeft = pList->a[1].pExpr;
131633 if( pLeft->op!=TK_COLUMN
131634 || sqlite3ExprAffinity(pLeft)!=SQLITE_AFF_TEXT
131635 || IsVirtual(pLeft->pTab) /* Value might be numeric */
131770 Expr *pLeft = pExpr->pLeft;
131772 if( pLeft->op==TK_COLUMN && IsVirtual(pLeft->pTab) ){
131777 SWAP(Expr*, pLeft, pRight);
131779 *ppLeft = pLeft;
131861 assert( pOne->pExpr->pLeft!=0 && pOne->pExpr->pRight!=0 );
131862 assert( pTwo->pExpr->pLeft!=0 && pTwo->pExpr->pRight!=0 );
131863 if( sqlite3ExprCompare(0,pOne->pExpr->pLeft, pTwo->pExpr->pLeft, -1) ) return;
132168 affLeft = sqlite3ExprAffinity(pOrTerm->pExpr->pLeft);
132185 Expr *pLeft = 0; /* The LHS of the IN operator */
132195 pLeft = pOrTerm->pExpr->pLeft;
132197 assert( pLeft!=0 );
132198 pDup = sqlite3ExprDup(db, pLeft, 0);
132240 aff1 = sqlite3ExprAffinity(pExpr->pLeft);
132247 pColl = sqlite3BinaryCompareCollSeq(pParse, pExpr->pLeft, pExpr->pRight);
132249 return sqlite3ExprCollSeqMatch(pParse, pExpr->pLeft, pExpr->pRight);
132388 prereqLeft = sqlite3WhereExprUsage(pMaskSet, pExpr->pLeft);
132422 Expr *pLeft = sqlite3ExprSkipCollate(pExpr->pLeft);
132428 assert( pLeft->op==TK_VECTOR );
132429 pLeft = pLeft->x.pList->a[pTerm->iField-1].pExpr;
132432 if( exprMightBeIndexed(pSrc, prereqLeft, aiCurCol, pLeft, op) ){
132504 sqlite3ExprDup(db, pExpr->pLeft, 0),
132544 Expr *pLeft; /* LHS of LIKE/GLOB operator */
132553 pLeft = pExpr->x.pList->a[1].pExpr;
132587 pNewExpr1 = sqlite3ExprDup(db, pLeft, 0);
132595 pNewExpr2 = sqlite3ExprDup(db, pLeft, 0);
132622 Expr *pRight = 0, *pLeft = 0;
132623 int res = isAuxiliaryVtabOperator(pExpr, &eOp2, &pLeft, &pRight);
132630 prereqColumn = sqlite3WhereExprUsage(pMaskSet, pLeft);
132642 pNewTerm->leftCursor = pLeft->iTable;
132643 pNewTerm->u.leftColumn = pLeft->iColumn;
132651 SWAP(Expr*, pLeft, pRight);
132665 && (nLeft = sqlite3ExprVectorSize(pExpr->pLeft))>1
132667 && ( (pExpr->pLeft->flags & EP_xIsSelect)==0
132674 Expr *pLeft = sqlite3ExprForVectorField(pParse, pExpr->pLeft, i);
132677 pNew = sqlite3PExpr(pParse, pExpr->op, pLeft, pRight);
132696 && pExpr->pLeft->op==TK_VECTOR
132700 for(i=0; i<sqlite3ExprVectorSize(pExpr->pLeft); i++){
132718 && pExpr->pLeft->op==TK_COLUMN
132719 && pExpr->pLeft->iColumn>=0
132723 Expr *pLeft = pExpr->pLeft;
132728 sqlite3ExprDup(db, pLeft, 0),
132736 pNewTerm->leftCursor = pLeft->iTable;
132737 pNewTerm->u.leftColumn = pLeft->iColumn;
132784 sqlite3WhereSplit(pWC, pE2->pLeft, op);
132841 if( p->pLeft ) mask |= sqlite3WhereExprUsage(pMaskSet, p->pLeft);
133151 || sqlite3ExprCompareSkip(pTerm->pExpr->pLeft,
133181 assert(pX->pLeft);
133183 pX->pLeft, pX->pRight);
133693 pColl = sqlite3BinaryCompareCollSeq(pParse, pX->pLeft, pX->pRight);
135208 int nCmp = sqlite3ExprVectorSize(pTerm->pExpr->pLeft);
135218 Expr *pLhs = pTerm->pExpr->pLeft->x.pList->a[i].pExpr;
135654 if( !whereUsablePartialIndex(iTab,pWC,pWhere->pLeft) ) return 0;
136098 if( pX->pLeft ){
136099 pC = sqlite3BinaryCompareCollSeq(pHidden->pParse, pX->pLeft, pX->pRight);
140943 Select *pRight, *pLeft = yymsp[-4].minor.yy387;
140945 if( ALWAYS(pLeft) ) pLeft->selFlags &= ~SF_MultiValue;
140948 pRight->pPrior = pLeft;
140951 yymsp[-4].minor.yy387 = pLeft;
140985 Expr *pLeft = sqlite3ExprAlloc(pParse->db, TK_ID, &yymsp[-2].minor.yy0, 1);
140986 Expr *pDot = sqlite3PExpr(pParse, TK_DOT, pLeft, pRight);
148912 Fts3Expr *pLeft; /* Left operand */
152873 fts3EvalAllocateReaders(pCsr, pExpr->pLeft, pnToken, pnOr, pRc);
152915 char *pLeft;
152922 pLeft = p->doclist.aAll;
152930 pLeft = pList;
152936 pTab->bDescIdx, nDiff, pLeft, nLeft, &pRight, &nRight
152938 sqlite3_free(pLeft);
153522 fts3EvalStartReaders(pCsr, pExpr->pLeft, pRc);
153524 pExpr->bDeferred = (pExpr->pLeft->bDeferred && pExpr->pRight->bDeferred);
153584 assert( pExpr->pLeft && pExpr->pRight );
153586 pRoot = pExpr->pLeft;
153590 fts3EvalTokenCosts(pCsr, pRoot, pExpr->pLeft, ppTC, ppOr, pRc);
153973 Fts3Expr *pLeft = pExpr->pLeft;
153975 assert( !pLeft->bDeferred || !pRight->bDeferred );
153977 if( pLeft->bDeferred ){
153986 fts3EvalNextRow(pCsr, pLeft, pRc);
153987 pExpr->iDocid = pLeft->iDocid;
153988 pExpr->bEof = pLeft->bEof;
153991 fts3EvalNextRow(pCsr, pLeft, pRc);
153993 while( !pLeft->bEof && !pRight->bEof && *pRc==SQLITE_OK ){
153994 sqlite3_int64 iDiff = DOCID_CMP(pLeft->iDocid, pRight->iDocid);
153997 fts3EvalNextRow(pCsr, pLeft, pRc);
154002 pExpr->iDocid = pLeft->iDocid;
154003 pExpr->bEof = (pLeft->bEof || pRight->bEof);
154013 if( pLeft->pPhrase && pLeft->pPhrase->doclist.aAll ){
154014 Fts3Doclist *pDl = &pLeft->pPhrase->doclist;
154015 while( *pRc==SQLITE_OK && pLeft->bEof==0 ){
154017 fts3EvalNextRow(pCsr, pLeft, pRc);
154026 Fts3Expr *pLeft = pExpr->pLeft;
154028 sqlite3_int64 iCmp = DOCID_CMP(pLeft->iDocid, pRight->iDocid);
154030 assert( pLeft->bStart || pLeft->iDocid==pRight->iDocid );
154031 assert( pRight->bStart || pLeft->iDocid==pRight->iDocid );
154033 if( pRight->bEof || (pLeft->bEof==0 && iCmp<0) ){
154034 fts3EvalNextRow(pCsr, pLeft, pRc);
154035 }else if( pLeft->bEof || iCmp>0 ){
154038 fts3EvalNextRow(pCsr, pLeft, pRc);
154042 pExpr->bEof = (pLeft->bEof && pRight->bEof);
154043 iCmp = DOCID_CMP(pLeft->iDocid, pRight->iDocid);
154044 if( pRight->bEof || (pLeft->bEof==0 && iCmp<0) ){
154045 pExpr->iDocid = pLeft->iDocid;
154054 Fts3Expr *pLeft = pExpr->pLeft;
154062 fts3EvalNextRow(pCsr, pLeft, pRc);
154063 if( pLeft->bEof==0 ){
154066 && DOCID_CMP(pLeft->iDocid, pRight->iDocid)>0
154071 pExpr->iDocid = pLeft->iDocid;
154072 pExpr->bEof = pLeft->bEof;
154134 for(p=pExpr; p->pLeft; p=p->pLeft){
154155 for(p=pExpr->pLeft; p && res; p=p->pLeft){
154158 assert( p->pParent && p->pParent->pLeft==p );
154195 fts3EvalTestExpr(pCsr, pExpr->pLeft, pRc)
154220 for(p=pExpr; p->pPhrase==0; p=p->pLeft){
154233 int bHit1 = fts3EvalTestExpr(pCsr, pExpr->pLeft, pRc);
154241 fts3EvalTestExpr(pCsr, pExpr->pLeft, pRc)
154396 fts3EvalRestart(pCsr, pExpr->pLeft, pRc);
154436 fts3EvalUpdateCounts(pExpr->pLeft);
154478 for(p=pRoot; p; p=p->pLeft){
154675 for(p=pNear; p; p=p->pLeft){
155938 pNew->pLeft = pSplit;
155990 pNot->pLeft = pNotBranch;
155997 isPhrase = (eType==FTSQUERY_PHRASE || p->pLeft);
156045 assert( pPrev && pPrev->pLeft && pPrev->pRight==0 );
156076 while( pIter->pLeft ){
156077 pIter = pIter->pLeft;
156079 pIter->pLeft = pRet;
156107 rc = fts3ExprCheckDepth(p->pLeft, nMaxDepth-1);
156152 for(p=pRoot; p->eType==eType; p=p->pLeft){
156153 assert( p->pParent==0 || p->pParent->pLeft==p );
156154 assert( p->pLeft && p->pRight );
156162 assert( pParent==0 || pParent->pLeft==p );
156165 pParent->pLeft = 0;
156178 pFree->pLeft = apLeaf[iLvl];
156180 pFree->pLeft->pParent = pFree;
156199 for(p=pParent->pRight; p->eType==eType; p=p->pLeft);
156202 assert( pParent->pParent==0 || pParent->pParent->pLeft==pParent );
156205 pParent->pParent->pLeft = pParent->pRight;
156227 pFree->pLeft = apLeaf[i];
156228 pFree->pLeft->pParent = pFree;
156256 Fts3Expr *pLeft = pRoot->pLeft;
156259 pRoot->pLeft = 0;
156261 pLeft->pParent = 0;
156264 rc = fts3ExprBalance(&pLeft, nMaxDepth-1);
156271 sqlite3Fts3ExprFree(pLeft);
156273 assert( pLeft && pRight );
156274 pRoot->pLeft = pLeft;
156275 pLeft->pParent = pRoot;
156425 for(p=pDel; p && (p->pLeft||p->pRight); p=(p->pLeft ? p->pLeft : p->pRight)){
156426 assert( p->pParent==0 || p==p->pParent->pRight || p==p->pParent->pLeft );
156431 if( pParent && p==pParent->pLeft && pParent->pRight ){
156433 while( p && (p->pLeft || p->pRight) ){
156434 assert( p==p->pParent->pRight || p==p->pParent->pLeft );
156435 p = (p->pLeft ? p->pLeft : p->pRight);
156524 if( zBuf ) zBuf = exprToString(pExpr->pLeft, zBuf);
164865 assert( pExpr->pLeft && pExpr->pRight );
164866 rc = fts3ExprIterate2(pExpr->pLeft, piPhrase, x, pCtx);
165506 assert( (pExpr->pLeft==0)==(pExpr->pRight==0) );
165508 if( pExpr->pLeft ){
165509 fts3ExprLHitGather(pExpr->pLeft, p);
169355 RtreeNode *pLeft,
169437 RtreeNode *pTarget = (ii<iBestSplit)?pLeft:pRight;
169482 RtreeNode *pLeft = 0;
169507 pLeft = nodeNew(pRtree, pNode);
169512 pLeft = pNode;
169513 pRight = nodeNew(pRtree, pLeft->pParent);
169514 nodeReference(pLeft);
169517 if( !pLeft || !pRight ){
169522 memset(pLeft->zData, 0, pRtree->iNodeSize);
169525 rc = splitNodeStartree(pRtree, aCell, nCell, pLeft, pRight,
169537 || (0==pLeft->iNode && SQLITE_OK!=(rc = nodeWrite(pRtree, pLeft)))
169543 leftbbox.iRowid = pLeft->iNode;
169546 rc = rtreeInsertCell(pRtree, pLeft->pParent, &leftbbox, iHeight+1);
169551 RtreeNode *pParent = pLeft->pParent;
169553 rc = nodeParentIndex(pRtree, pLeft, &iCell);
169577 for(i=0; i<NCELL(pLeft); i++){
169578 i64 iRowid = nodeGetRowid(pRtree, pLeft, i);
169579 rc = updateMapping(pRtree, iRowid, pLeft, iHeight);
169585 rc = updateMapping(pRtree, pCell->iRowid, pLeft, iHeight);
169593 rc = nodeRelease(pRtree, pLeft);
169594 pLeft = 0;
169599 nodeRelease(pRtree, pLeft);
183560 void *pLeft, /* Lhs input changeset */
183571 rc = sqlite3changegroup_add(pGrp, nLeft, pLeft);
187344 Fts5ExprNode *pLeft,
187351 Fts5ExprNode *pLeft,
191827 Fts5ExprPhrase *pLeft = pNear->apPhrase[0];
191845 if( pLeft->aTerm[0].pSynonym ){
191846 iLast = fts5ExprSynonymRowid(&pLeft->aTerm[0], bDesc, 0);
191848 iLast = pLeft->aTerm[0].pIter->iRowid;
192992 Fts5ExprNode *pLeft, /* Left hand child expression */
193003 || (eType==FTS5_STRING && !pLeft && !pRight)
193006 if( eType!=FTS5_STRING && pLeft==0 ) return pRight;
193007 if( eType!=FTS5_STRING && pRight==0 ) return pLeft;
193013 if( pLeft->eType==eType ) nChild += pLeft->nChild-1;
193052 fts5ExprAddChildren(pRet, pLeft);
193060 sqlite3Fts5ParseNodeFree(pLeft);
193069 Fts5ExprNode *pLeft, /* Left hand child expression */
193076 sqlite3Fts5ParseNodeFree(pLeft);
193080 assert( pLeft->eType==FTS5_STRING
193081 || pLeft->eType==FTS5_TERM
193082 || pLeft->eType==FTS5_EOF
193083 || pLeft->eType==FTS5_AND
193090 if( pLeft->eType==FTS5_AND ){
193091 pPrev = pLeft->apChild[pLeft->nChild-1];
193093 pPrev = pLeft;
193103 pRet = pLeft;
193109 if( pPrev==pLeft ){
193112 pLeft->apChild[pLeft->nChild-1] = pRight;
193113 pRet = pLeft;
193124 pRet = sqlite3Fts5ParseNode(pParse, FTS5_AND, pLeft, pRight, 0);
194138 Fts5HashEntry *pLeft,
194141 Fts5HashEntry *p1 = pLeft;
194884 Fts5Buffer *pLeft, /* Left hand side of comparison */
194887 int nCmp = MIN(pLeft->n, nRight);
194888 int res = memcmp(pLeft->p, pRight, nCmp);
194889 return (res==0 ? (pLeft->n - nRight) : res);
194902 static int fts5BufferCompare(Fts5Buffer *pLeft, Fts5Buffer *pRight){
194903 int nCmp = MIN(pLeft->n, pRight->n);
194904 int res = memcmp(pLeft->p, pRight->p, nCmp);
194905 return (res==0 ? (pLeft->n - pRight->n) : res);