Lines Matching refs:pLeft

17740   Expr *pLeft;           /* Left subnode */  member
17870 #define EXPR_TOKENONLYSIZE offsetof(Expr,pLeft) /* Fewer features */
30508 sqlite3TreeViewExpr(pView, p->pLimit->pLeft, p->pLimit->pRight!=0);
30700 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
30760 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
30810 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
30824 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
30889 sqlite3TreeViewExpr(pView, pExpr->pLeft, 1);
30912 pX = pExpr->pLeft;
30937 sqlite3TreeViewExpr(pView, pExpr->pLeft, 1);
30972 pExpr->pRight==pExpr->pLeft ? " (SELECT-owner)" : "");
30973 assert( ExprUseXSelect(pExpr->pLeft) );
30974 sqlite3TreeViewSelect(pView, pExpr->pLeft->x.pSelect, 0);
30979 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
31006 sqlite3TreeViewExpr(pView, pExpr->pLeft, 1);
31010 sqlite3TreeViewExpr(pView, pExpr->pLeft, 0);
52084 struct RowSetEntry *pLeft; /* Left subtree (smaller entries) */
52306 if( pIn->pLeft ){
52308 rowSetTreeToList(pIn->pLeft, ppFirst, &p);
52340 struct RowSetEntry *pLeft; /* Left subtree */
52349 pLeft = rowSetNDeepTree(ppList, iDepth-1);
52354 return pLeft;
52356 p->pLeft = pLeft;
52362 p->pLeft = p->pRight = 0;
52374 struct RowSetEntry *pLeft; /* Left subtree */
52379 p->pLeft = p->pRight = 0;
52381 pLeft = p;
52384 p->pLeft = pLeft;
52456 if( pTree->pLeft==0 ){
52457 pTree->pLeft = rowSetListToTree(p);
52461 rowSetTreeToList(pTree->pLeft, &pAux, &pTail);
52462 pTree->pLeft = 0;
52471 pTree->pLeft = rowSetListToTree(p);
52485 p = pTree->pLeft;
52490 p = p->pLeft;
78759 while( (op = pExpr->op)==TK_UPLUS || op==TK_SPAN ) pExpr = pExpr->pLeft;
78776 rc = valueFromExpr(db, pExpr->pLeft, enc, aff, ppVal, pCtx);
78789 && (pExpr->pLeft->op==TK_INTEGER || pExpr->pLeft->op==TK_FLOAT) ){
78790 pExpr = pExpr->pLeft;
78822 if( SQLITE_OK==valueFromExpr(db,pExpr->pLeft,enc,affinity,&pVal,pCtx)
80794 displayP4Expr(p, pExpr->pLeft);
99400 if( pExpr->pLeft && walkExpr(pWalker, pExpr->pLeft) ) return WRC_Abort;
100112 assert( pExpr->pLeft==0 && pExpr->pRight==0 );
100233 sqlite3ExprDelete(db, pExpr->pLeft);
100234 pExpr->pLeft = 0;
100420 sqlite3WalkExpr(pWalker, pExpr->pLeft);
100421 if( 0==sqlite3ExprCanBeNull(pExpr->pLeft) && !IN_RENAME_OBJECT ){
100435 sqlite3ExprDelete(pParse->db, pExpr->pLeft);
100436 pExpr->pLeft = 0;
100462 Expr *pLeft = pExpr->pLeft;
100473 zDb = pLeft->u.zToken;
100474 pLeft = pRight->pLeft;
100477 assert( ExprUseUToken(pLeft) && ExprUseUToken(pRight) );
100478 zTable = pLeft->u.zToken;
100483 sqlite3RenameTokenRemap(pParse, (void*)&pExpr->y.pTab, (void*)pLeft);
100775 assert( pExpr->pLeft!=0 );
100776 nLeft = sqlite3ExprVectorSize(pExpr->pLeft);
101011 while( pParent->pLeft->op==TK_COLLATE ) pParent = pParent->pLeft;
101012 assert( pParent->pLeft==pE );
101013 pParent->pLeft = pNew;
101689 pExpr = pExpr->pLeft;
101714 assert( pExpr->pLeft!=0 && ExprUseXSelect(pExpr->pLeft) );
101716 assert( pExpr->iTable==pExpr->pLeft->x.pSelect->pEList->nExpr );
101718 pExpr->pLeft->x.pSelect->pEList->a[pExpr->iColumn].pExpr
101745 pNew->pLeft = pExpr;
101769 pExpr = pExpr->pLeft;
101788 pExpr = pExpr->pLeft;
101829 p = p->pLeft;
101843 if( p->pLeft && (p->pLeft->flags & EP_Collate)!=0 ){
101844 p = p->pLeft;
101929 assert( pExpr->pLeft );
101930 aff = sqlite3ExprAffinity(pExpr->pLeft);
101986 const Expr *pLeft,
101990 assert( pLeft );
101991 if( pLeft->flags & EP_Collate ){
101992 pColl = sqlite3ExprCollSeq(pParse, pLeft);
101996 pColl = sqlite3ExprCollSeq(pParse, pLeft);
102014 return sqlite3BinaryCompareCollSeq(pParse, p->pRight, p->pLeft);
102016 return sqlite3BinaryCompareCollSeq(pParse, p->pLeft, p->pRight);
102025 Expr *pLeft, /* The left operand */
102039 p4 = sqlite3BinaryCompareCollSeq(pParse, pRight, pLeft);
102041 p4 = sqlite3BinaryCompareCollSeq(pParse, pLeft, pRight);
102043 p5 = binaryCompareP5(pLeft, pRight, jumpIfNull);
102163 pRet->pLeft = pVector;
102264 Expr *pLeft = pExpr->pLeft;
102266 int nLeft = sqlite3ExprVectorSize(pLeft);
102295 regLeft = exprCodeSubselect(pParse, pLeft);
102305 r1 = exprVectorRegister(pParse, pLeft, i, regLeft, &pL, &regFree1);
102411 heightOfExpr(p->pLeft, &nHeight);
102547 Expr *pLeft,
102552 sqlite3ExprDelete(db, pLeft);
102559 if( pLeft ){
102560 pRoot->pLeft = pLeft;
102561 pRoot->flags |= EP_Propagate & pLeft->flags;
102577 Expr *pLeft, /* Left operand */
102586 sqlite3ExprAttachSubtrees(pParse->db, p, pLeft, pRight);
102589 sqlite3ExprDelete(pParse->db, pLeft);
102676 SQLITE_PRIVATE Expr *sqlite3ExprAnd(Parse *pParse, Expr *pLeft, Expr *pRight){
102678 if( pLeft==0 ){
102681 return pLeft;
102682 }else if( (ExprAlwaysFalse(pLeft) || ExprAlwaysFalse(pRight))
102685 sqlite3ExprDeferredDelete(pParse, pLeft);
102689 return sqlite3PExpr(pParse, TK_AND, pLeft, pRight);
102851 assert( p->pLeft==0 );
102860 if( p->pLeft && p->op!=TK_SELECT_COLUMN ) sqlite3ExprDeleteNN(db, p->pLeft);
102977 if( p->pLeft || p->x.pList ){
103018 nByte += dupedExprSize(p->pLeft, flags) + dupedExprSize(p->pRight, flags);
103106 pNew->pLeft = p->pLeft ?
103107 exprDup(db, p->pLeft, EXPRDUP_REDUCE, &zAlloc) : 0;
103123 pNew->pLeft = p->pLeft;
103124 assert( p->pRight==0 || p->pRight==p->pLeft
103125 || ExprHasProperty(p->pLeft, EP_Subquery) );
103127 pNew->pLeft = sqlite3ExprDup(db, p->pLeft, 0);
103243 pNewExpr->pLeft = pNewExpr->pRight;
103245 if( pOldExpr->pLeft!=pPriorSelectColOld ){
103246 pPriorSelectColOld = pOldExpr->pLeft;
103250 pNewExpr->pLeft = pPriorSelectColNew;
103762 Expr *pLeft = sqlite3ExprSimplifiedAndOr(pExpr->pLeft);
103763 if( ExprAlwaysTrue(pLeft) || ExprAlwaysFalse(pRight) ){
103764 pExpr = pExpr->op==TK_AND ? pRight : pLeft;
103765 }else if( ExprAlwaysTrue(pRight) || ExprAlwaysFalse(pLeft) ){
103766 pExpr = pExpr->op==TK_AND ? pLeft : pRight;
104047 rc = sqlite3ExprIsInteger(p->pLeft, pValue);
104052 if( sqlite3ExprIsInteger(p->pLeft, &v) ){
104082 p = p->pLeft;
104121 p = p->pLeft;
104232 pLHS = pIn->pLeft;
104233 pIn->pLeft = 0;
104235 pIn->pLeft = pLHS;
104396 Expr *pLhs = sqlite3VectorFieldSubexpr(pX->pLeft, i);
104439 Expr *pLhs = sqlite3VectorFieldSubexpr(pX->pLeft, i);
104528 n = sqlite3ExprVectorSize(pX->pLeft);
104546 Expr *pLeft = pExpr->pLeft;
104547 int nVal = sqlite3ExprVectorSize(pLeft);
104556 Expr *pA = sqlite3VectorFieldSubexpr(pLeft, i);
104637 Expr *pLeft; /* the LHS of the IN operator */
104687 pLeft = pExpr->pLeft;
104688 nVal = sqlite3ExprVectorSize(pLeft);
104741 Expr *p = sqlite3VectorFieldSubexpr(pLeft, i);
104760 affinity = sqlite3ExprAffinity(pLeft);
104768 pKeyInfo->aColl[0] = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
104910 sqlite3ExprDup(db, pSel->pLimit->pLeft, 0), pLimit);
104912 sqlite3ExprDelete(db, pSel->pLimit->pLeft);
104913 pSel->pLimit->pLeft = pLimit;
104950 int nVector = sqlite3ExprVectorSize(pIn->pLeft);
104957 sqlite3VectorErrorMsg(pParse, pIn->pLeft);
105005 Expr *pLeft; /* The LHS of the IN operator */
105016 pLeft = pExpr->pLeft;
105019 nVector = sqlite3ExprVectorSize(pExpr->pLeft);
105064 rLhsOrig = exprCodeVector(pParse, pLeft, &iDummy);
105093 pColl = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
105143 Expr *p = sqlite3VectorFieldSubexpr(pExpr->pLeft, i);
105209 p = sqlite3VectorFieldSubexpr(pLeft, i);
105677 iReg = sqlite3ExprCodeTarget(pParse, pExpr->pLeft,target);
105817 inReg = sqlite3ExprCodeTarget(pParse, pExpr->pLeft, target);
105839 Expr *pLeft = pExpr->pLeft;
105840 if( sqlite3ExprIsVector(pLeft) ){
105843 r1 = sqlite3ExprCodeTemp(pParse, pLeft, &regFree1);
105846 codeCompare(pParse, pLeft, pExpr->pRight, op, r1, r2,
105888 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
105896 Expr *pLeft = pExpr->pLeft;
105897 assert( pLeft );
105898 if( pLeft->op==TK_INTEGER ){
105899 codeInteger(pParse, pLeft, 1, target);
105902 }else if( pLeft->op==TK_FLOAT ){
105904 codeReal(v, pLeft->u.zToken, 1, target);
105913 r2 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree2);
105923 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
105931 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
105946 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
106122 if( pExpr->pLeft->iTable==0 ){
106123 pExpr->pLeft->iTable = sqlite3CodeSubselect(pParse, pExpr->pLeft);
106125 assert( pExpr->pLeft->op==TK_SELECT || pExpr->pLeft->op==TK_ERROR );
106126 n = sqlite3ExprVectorSize(pExpr->pLeft);
106131 return pExpr->pLeft->iTable + pExpr->iColumn;
106165 pExpr = pExpr->pLeft;
106249 inReg = sqlite3ExprCodeTarget(pParse, pExpr->pLeft, target);
106296 if( (pX = pExpr->pLeft)!=0 ){
106307 opCompare.pLeft = pDel;
106636 pDel = sqlite3ExprDup(db, pExpr->pLeft, 0);
106639 exprAnd.pLeft = &compLeft;
106642 compLeft.pLeft = pDel;
106645 compRight.pLeft = pDel;
106710 sqlite3ExprIfFalse(pParse, pExpr->pLeft, d2,
106716 sqlite3ExprIfTrue(pParse, pExpr->pLeft, dest, jumpIfNull);
106723 sqlite3ExprIfFalse(pParse, pExpr->pLeft, dest, jumpIfNull);
106735 sqlite3ExprIfTrue(pParse, pExpr->pLeft, dest,
106738 sqlite3ExprIfFalse(pParse, pExpr->pLeft, dest,
106756 if( sqlite3ExprIsVector(pExpr->pLeft) ) goto default_expr;
106758 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
106760 codeCompare(pParse, pExpr->pLeft, pExpr->pRight, op,
106780 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
106882 sqlite3ExprIfFalse(pParse, pExpr->pLeft, dest, jumpIfNull);
106887 sqlite3ExprIfTrue(pParse, pExpr->pLeft, d2,
106896 sqlite3ExprIfTrue(pParse, pExpr->pLeft, dest, jumpIfNull);
106909 sqlite3ExprIfFalse(pParse, pExpr->pLeft, dest,
106914 sqlite3ExprIfTrue(pParse, pExpr->pLeft, dest,
106932 if( sqlite3ExprIsVector(pExpr->pLeft) ) goto default_expr;
106934 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
106936 codeCompare(pParse, pExpr->pLeft, pExpr->pRight, op,
106954 r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, &regFree1);
107102 if( pA->op==TK_COLLATE && sqlite3ExprCompare(pParse, pA->pLeft,pB,iTab)<2 ){
107105 if( pB->op==TK_COLLATE && sqlite3ExprCompare(pParse, pA,pB->pLeft,iTab)<2 ){
107144 && sqlite3ExprCompare(pParse, pA->pLeft, pB->pLeft, iTab) ) return 2;
107225 return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, 1);
107239 return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, 1);
107266 return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, seenNot);
107271 return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, 1);
107275 return exprImpliesNotNull(pParse, p->pLeft, pNN, iTab, 1);
107316 && (sqlite3ExprImpliesExpr(pParse, pE1, pE2->pLeft, iTab)
107322 && exprImpliesNotNull(pParse, pE1, pE2->pLeft, iTab, 0)
107373 sqlite3WalkExpr(pWalker, pExpr->pLeft);
107382 if( sqlite3WalkExpr(pWalker, pExpr->pLeft)==WRC_Abort ){
107397 Expr *pLeft = pExpr->pLeft;
107407 assert( pLeft->op!=TK_COLUMN || ExprUseYTab(pLeft) );
107409 if( (pLeft->op==TK_COLUMN
107410 && pLeft->y.pTab!=0
107411 && IsVirtual(pLeft->y.pTab))
107452 p = p->pLeft;
107455 if( sqlite3ExprImpliesNonNullRow(p->pLeft, iTab) ) return 1;
108359 if( pDflt && pDflt->pLeft->op==TK_NULL ){
114795 x.pLeft = pExpr;
114827 }else if( p->op==TK_COLLATE && p->pLeft->op==TK_STRING ){
114828 p->pLeft->op = TK_ID;
123132 Expr *pLeft; /* Value from parent table row */
123139 pLeft = exprTableRegister(pParse, pTab, regData, iCol);
123144 pEq = sqlite3PExpr(pParse, TK_EQ, pLeft, pRight);
123164 Expr *pLeft; /* Value from parent table row */
123167 pLeft = exprTableRegister(pParse, pTab, regData, -1);
123169 pNe = sqlite3PExpr(pParse, TK_NE, pLeft, pRight);
123176 pLeft = exprTableRegister(pParse, pTab, regData, iCol);
123178 pEq = sqlite3PExpr(pParse, TK_IS, pLeft, pRight);
133659 sqlite3SetJoinExpr(p->pLeft, iTable);
133688 unsetJoinExpr(p->pLeft, iTable);
133710 SrcItem *pLeft; /* Left table being joined */
133714 pLeft = &pSrc->a[0];
133715 pRight = &pLeft[1];
133716 for(i=0; i<pSrc->nSrc-1; i++, pRight++, pLeft++){
133720 if( NEVER(pLeft->pTab==0 || pRightTab==0) ) continue;
135573 assert( pLimit->pLeft!=0 );
135577 if( sqlite3ExprIsInteger(pLimit->pLeft, &n) ){
135587 sqlite3ExprCode(pParse, pLimit->pLeft, iLimit);
136057 && sqlite3ExprIsInteger(p->pLimit->pLeft, &nLimit)
136917 ifNullRow.pLeft = pCopy;
136952 pExpr->pLeft = substExpr(pSubst, pExpr->pLeft);
137782 Expr *pRight, *pLeft;
137787 findConstInWhere(pConst, pExpr->pLeft);
137792 pLeft = pExpr->pLeft;
137794 assert( pLeft!=0 );
137795 if( pRight->op==TK_COLUMN && sqlite3ExprIsConstant(pLeft) ){
137796 constInsert(pConst,pRight,pLeft,pExpr);
137798 if( pLeft->op==TK_COLUMN && sqlite3ExprIsConstant(pRight) ){
137799 constInsert(pConst,pLeft,pRight,pExpr);
137837 assert( pExpr->pLeft==0 );
137838 pExpr->pLeft = sqlite3ExprDup(pConst->pParse->db, pConst->apExpr[i*2+1], 0);
137871 propagateConstantExprRewriteOne(pConst, pExpr->pLeft, 0);
137873 if( sqlite3ExprAffinity(pExpr->pLeft)!=SQLITE_AFF_TEXT ){
138103 pWhere = pWhere->pLeft;
138489 Select *pLeft; /* Left-most SELECT statement */
138597 for(pLeft=pSel; pLeft->pPrior; pLeft=pLeft->pPrior);
138598 pEList = pLeft->pEList;
138850 assert( pE->op!=TK_DOT || (pE->pLeft!=0 && pE->pLeft->op==TK_ID) );
138889 assert( pE->pLeft!=0 );
138890 assert( !ExprHasProperty(pE->pLeft, EP_IntValue) );
138891 zTName = pE->pLeft->u.zToken;
138953 Expr *pLeft;
138954 pLeft = sqlite3Expr(db, TK_ID, zTabName);
138955 pExpr = sqlite3PExpr(pParse, TK_DOT, pLeft, pRight);
138957 pLeft = sqlite3Expr(db, TK_ID, zSchemaName);
138958 pExpr = sqlite3PExpr(pParse, TK_DOT, pLeft, pExpr);
141835 assert( pTerm->pLeft!=0 );
143893 sCol[0].pLeft = &sCol[1];
143918 sCol[0].pLeft = pExpr;
143922 sCol[0].pLeft = &sCol[1];
146860 assert( pNew->pLeft!=0 );
146861 assert( ExprUseXList(pNew->pLeft) );
146862 pOrigLhs = pNew->pLeft->x.pList;
146878 pNew->pLeft->x.pList = pLhs;
146886 sqlite3ExprDelete(db, pNew->pLeft);
146887 pNew->pLeft = p;
147723 whereApplyPartialIndexConstraints(pTruth->pLeft, iTabCur, pWC);
147879 && sqlite3ExprVectorSize(pTerm->pExpr->pLeft)==1
147905 pCompare->pLeft = pTerm->pExpr->pLeft;
147913 pCompare->pLeft = 0;
148655 pAndExpr->pLeft = pOrExpr;
148778 pAndExpr->pLeft = 0;
148935 sEAlt.pLeft = pE->pLeft;
149090 if( pExpr->pLeft->op==TK_VECTOR
149092 || sqlite3BinaryCompareCollSeq(pParse, pExpr->pLeft, pExpr->pRight) !=
149093 sqlite3BinaryCompareCollSeq(pParse, pExpr->pRight, pExpr->pLeft)
149097 SWAP(Expr*,pExpr->pRight,pExpr->pLeft);
149158 Expr *pRight, *pLeft; /* Right and left size of LIKE operator */
149176 pLeft = pList->a[1].pExpr;
149244 if( pLeft->op!=TK_COLUMN
149245 || sqlite3ExprAffinity(pLeft)!=SQLITE_AFF_TEXT
149246 || (ALWAYS( ExprUseYTab(pLeft) )
149247 && pLeft->y.pTab
149248 && IsVirtual(pLeft->y.pTab)) /* Might be numeric */
149413 Expr *pLeft = pExpr->pLeft;
149415 assert( pLeft->op!=TK_COLUMN || ExprUseYTab(pLeft) );
149416 testcase( pLeft->op==TK_COLUMN && pLeft->y.pTab==0 );
149417 if( ExprIsVtab(pLeft) ){
149424 SWAP(Expr*, pLeft, pRight);
149426 *ppLeft = pLeft;
149509 assert( pOne->pExpr->pLeft!=0 && pOne->pExpr->pRight!=0 );
149510 assert( pTwo->pExpr->pLeft!=0 && pTwo->pExpr->pRight!=0 );
149511 if( sqlite3ExprCompare(0,pOne->pExpr->pLeft, pTwo->pExpr->pLeft, -1) ) return;
149770 Expr *pLeft = 0;
149795 pLeft = pOrTerm->pExpr->pLeft;
149817 && sqlite3ExprCompare(pParse, pOrTerm->pExpr->pLeft, pLeft, -1)
149827 affLeft = sqlite3ExprAffinity(pOrTerm->pExpr->pLeft);
149844 Expr *pLeft = 0; /* The LHS of the IN operator */
149855 pLeft = pOrTerm->pExpr->pLeft;
149857 assert( pLeft!=0 );
149858 pDup = sqlite3ExprDup(db, pLeft, 0);
149899 aff1 = sqlite3ExprAffinity(pExpr->pLeft);
149908 return sqlite3ExprCollSeqMatch(pParse, pExpr->pLeft, pExpr->pRight);
150053 prereqLeft = sqlite3WhereExprUsage(pMaskSet, pExpr->pLeft);
150087 Expr *pLeft = sqlite3ExprSkipCollate(pExpr->pLeft);
150093 assert( pLeft->op==TK_VECTOR );
150094 assert( ExprUseXList(pLeft) );
150095 pLeft = pLeft->x.pList->a[pTerm->u.x.iField-1].pExpr;
150098 if( exprMightBeIndexed(pSrc, prereqLeft, aiCurCol, pLeft, op) ){
150147 && 0==sqlite3ExprCanBeNull(pLeft)
150186 sqlite3ExprDup(db, pExpr->pLeft, 0),
150215 if( pExpr->pLeft->op==TK_COLUMN
150216 && pExpr->pLeft->iColumn>=0
150220 Expr *pLeft = pExpr->pLeft;
150225 sqlite3ExprDup(db, pLeft, 0),
150233 pNewTerm->leftCursor = pLeft->iTable;
150234 pNewTerm->u.x.leftColumn = pLeft->iColumn;
150263 Expr *pLeft; /* LHS of LIKE/GLOB operator */
150273 pLeft = pExpr->x.pList->a[1].pExpr;
150310 pNewExpr1 = sqlite3ExprDup(db, pLeft, 0);
150318 pNewExpr2 = sqlite3ExprDup(db, pLeft, 0);
150342 && (nLeft = sqlite3ExprVectorSize(pExpr->pLeft))>1
150344 && ( (pExpr->pLeft->flags & EP_xIsSelect)==0
150352 Expr *pLeft = sqlite3ExprForVectorField(pParse, pExpr->pLeft, i, nLeft);
150355 pNew = sqlite3PExpr(pParse, pExpr->op, pLeft, pRight);
150376 && pExpr->pLeft->op==TK_VECTOR
150385 for(i=0; i<sqlite3ExprVectorSize(pExpr->pLeft); i++){
150405 Expr *pRight = 0, *pLeft = 0;
150406 int res = isAuxiliaryVtabOperator(db, pExpr, &eOp2, &pLeft, &pRight);
150413 prereqColumn = sqlite3WhereExprUsage(pMaskSet, pLeft);
150426 pNewTerm->leftCursor = pLeft->iTable;
150427 pNewTerm->u.x.leftColumn = pLeft->iColumn;
150435 SWAP(Expr*, pLeft, pRight);
150478 sqlite3WhereSplit(pWC, pE2->pLeft, op);
150537 if( p->pLeft ) mask |= sqlite3WhereExprUsageNN(pMaskSet, p->pLeft);
150933 || sqlite3ExprCompareSkip(pTerm->pExpr->pLeft,
150963 assert(pX->pLeft);
153062 int nCmp = sqlite3ExprVectorSize(pTerm->pExpr->pLeft);
153074 assert( ExprUseXList(pTerm->pExpr->pLeft) );
153075 pLhs = pTerm->pExpr->pLeft->x.pList->a[i].pExpr;
153573 if( !whereUsablePartialIndex(iTab,isLeft,pWC,pWhere->pLeft) ) return 0;
154069 if( pX->pLeft ){
159632 p->pLeft = p->pRight = 0;
163399 Select *pRight, *pLeft = yymsp[-4].minor.yy303;
163401 if( ALWAYS(pLeft) ) pLeft->selFlags &= ~SF_MultiValue;
163404 pRight->pPrior = pLeft;
163407 yymsp[-4].minor.yy303 = pLeft;
163441 Expr *pLeft = sqlite3ExprAlloc(pParse->db, TK_ID, &yymsp[-2].minor.yy0, 1);
163442 Expr *pDot = sqlite3PExpr(pParse, TK_DOT, pLeft, pRight);
163948 }else if( yymsp[-4].minor.yy626->pLeft->op==TK_VECTOR ){
163949 int nExpr = yymsp[-4].minor.yy626->pLeft->x.pList->nExpr;
172735 Fts3Expr *pLeft; /* Left operand */
176816 fts3EvalAllocateReaders(pCsr, pExpr->pLeft, pnToken, pnOr, pRc);
176858 char *pLeft;
176865 pLeft = p->doclist.aAll;
176873 pLeft = pList;
176879 pTab->bDescIdx, nDiff, pLeft, nLeft, &pRight, &nRight
176881 sqlite3_free(pLeft);
177469 fts3EvalStartReaders(pCsr, pExpr->pLeft, pRc);
177471 pExpr->bDeferred = (pExpr->pLeft->bDeferred && pExpr->pRight->bDeferred);
177531 assert( pExpr->pLeft && pExpr->pRight );
177533 pRoot = pExpr->pLeft;
177537 fts3EvalTokenCosts(pCsr, pRoot, pExpr->pLeft, ppTC, ppOr, pRc);
177922 Fts3Expr *pLeft = pExpr->pLeft;
177924 assert( !pLeft->bDeferred || !pRight->bDeferred );
177926 if( pLeft->bDeferred ){
177935 fts3EvalNextRow(pCsr, pLeft, pRc);
177936 pExpr->iDocid = pLeft->iDocid;
177937 pExpr->bEof = pLeft->bEof;
177940 fts3EvalNextRow(pCsr, pLeft, pRc);
177942 while( !pLeft->bEof && !pRight->bEof && *pRc==SQLITE_OK ){
177943 sqlite3_int64 iDiff = DOCID_CMP(pLeft->iDocid, pRight->iDocid);
177946 fts3EvalNextRow(pCsr, pLeft, pRc);
177951 pExpr->iDocid = pLeft->iDocid;
177952 pExpr->bEof = (pLeft->bEof || pRight->bEof);
177962 if( pLeft->pPhrase && pLeft->pPhrase->doclist.aAll ){
177963 Fts3Doclist *pDl = &pLeft->pPhrase->doclist;
177964 while( *pRc==SQLITE_OK && pLeft->bEof==0 ){
177966 fts3EvalNextRow(pCsr, pLeft, pRc);
177969 pRight->bEof = pLeft->bEof = 1;
177976 Fts3Expr *pLeft = pExpr->pLeft;
177978 sqlite3_int64 iCmp = DOCID_CMP(pLeft->iDocid, pRight->iDocid);
177980 assert_fts3_nc( pLeft->bStart || pLeft->iDocid==pRight->iDocid );
177981 assert_fts3_nc( pRight->bStart || pLeft->iDocid==pRight->iDocid );
177983 if( pRight->bEof || (pLeft->bEof==0 && iCmp<0) ){
177984 fts3EvalNextRow(pCsr, pLeft, pRc);
177985 }else if( pLeft->bEof || iCmp>0 ){
177988 fts3EvalNextRow(pCsr, pLeft, pRc);
177992 pExpr->bEof = (pLeft->bEof && pRight->bEof);
177993 iCmp = DOCID_CMP(pLeft->iDocid, pRight->iDocid);
177994 if( pRight->bEof || (pLeft->bEof==0 && iCmp<0) ){
177995 pExpr->iDocid = pLeft->iDocid;
178004 Fts3Expr *pLeft = pExpr->pLeft;
178012 fts3EvalNextRow(pCsr, pLeft, pRc);
178013 if( pLeft->bEof==0 ){
178016 && DOCID_CMP(pLeft->iDocid, pRight->iDocid)>0
178021 pExpr->iDocid = pLeft->iDocid;
178022 pExpr->bEof = pLeft->bEof;
178084 for(p=pExpr; p->pLeft; p=p->pLeft){
178105 for(p=pExpr->pLeft; p && res; p=p->pLeft){
178108 assert( p->pParent && p->pParent->pLeft==p );
178145 fts3EvalTestExpr(pCsr, pExpr->pLeft, pRc)
178170 for(p=pExpr; p->pPhrase==0; p=p->pLeft){
178183 int bHit1 = fts3EvalTestExpr(pCsr, pExpr->pLeft, pRc);
178191 fts3EvalTestExpr(pCsr, pExpr->pLeft, pRc)
178349 fts3EvalRestart(pCsr, pExpr->pLeft, pRc);
178388 fts3EvalUpdateCounts(pExpr->pLeft, nCol);
178430 for(p=pRoot; p; p=p->pLeft){
178631 for(p=pNear; p; p=p->pLeft){
179901 pNew->pLeft = pSplit;
179953 pNot->pLeft = pNotBranch;
179960 isPhrase = (eType==FTSQUERY_PHRASE || p->pLeft);
180008 assert( pPrev && pPrev->pLeft && pPrev->pRight==0 );
180039 while( pIter->pLeft ){
180040 pIter = pIter->pLeft;
180042 pIter->pLeft = pRet;
180070 rc = fts3ExprCheckDepth(p->pLeft, nMaxDepth-1);
180115 for(p=pRoot; p->eType==eType; p=p->pLeft){
180116 assert( p->pParent==0 || p->pParent->pLeft==p );
180117 assert( p->pLeft && p->pRight );
180125 assert( pParent==0 || pParent->pLeft==p );
180128 pParent->pLeft = 0;
180141 pFree->pLeft = apLeaf[iLvl];
180143 pFree->pLeft->pParent = pFree;
180162 for(p=pParent->pRight; p->eType==eType; p=p->pLeft);
180165 assert( pParent->pParent==0 || pParent->pParent->pLeft==pParent );
180168 pParent->pParent->pLeft = pParent->pRight;
180190 pFree->pLeft = apLeaf[i];
180191 pFree->pLeft->pParent = pFree;
180219 Fts3Expr *pLeft = pRoot->pLeft;
180222 pRoot->pLeft = 0;
180224 pLeft->pParent = 0;
180227 rc = fts3ExprBalance(&pLeft, nMaxDepth-1);
180234 sqlite3Fts3ExprFree(pLeft);
180236 assert( pLeft && pRight );
180237 pRoot->pLeft = pLeft;
180238 pLeft->pParent = pRoot;
180388 for(p=pDel; p && (p->pLeft||p->pRight); p=(p->pLeft ? p->pLeft : p->pRight)){
180389 assert( p->pParent==0 || p==p->pParent->pRight || p==p->pParent->pLeft );
180394 if( pParent && p==pParent->pLeft && pParent->pRight ){
180396 while( p && (p->pLeft || p->pRight) ){
180397 assert( p==p->pParent->pRight || p==p->pParent->pLeft );
180398 p = (p->pLeft ? p->pLeft : p->pRight);
180459 if( zBuf ) zBuf = exprToString(pExpr->pLeft, zBuf);
188940 assert( pExpr->pLeft && pExpr->pRight );
188941 rc = fts3ExprIterate2(pExpr->pLeft, piPhrase, x, pCtx);
189588 assert( (pExpr->pLeft==0)==(pExpr->pRight==0) );
189590 if( pExpr->pLeft ){
189591 rc = fts3ExprLHitGather(pExpr->pLeft, p);
196406 RtreeNode *pLeft,
196488 RtreeNode *pTarget = (ii<iBestSplit)?pLeft:pRight;
196538 RtreeNode *pLeft = 0;
196563 pLeft = nodeNew(pRtree, pNode);
196568 pLeft = pNode;
196569 pRight = nodeNew(pRtree, pLeft->pParent);
196570 pLeft->nRef++;
196573 if( !pLeft || !pRight ){
196578 memset(pLeft->zData, 0, pRtree->iNodeSize);
196581 rc = splitNodeStartree(pRtree, aCell, nCell, pLeft, pRight,
196593 || (0==pLeft->iNode && SQLITE_OK!=(rc = nodeWrite(pRtree, pLeft)))
196599 leftbbox.iRowid = pLeft->iNode;
196602 rc = rtreeInsertCell(pRtree, pLeft->pParent, &leftbbox, iHeight+1);
196607 RtreeNode *pParent = pLeft->pParent;
196609 rc = nodeParentIndex(pRtree, pLeft, &iCell);
196634 for(i=0; i<NCELL(pLeft); i++){
196635 i64 iRowid = nodeGetRowid(pRtree, pLeft, i);
196636 rc = updateMapping(pRtree, iRowid, pLeft, iHeight);
196642 rc = updateMapping(pRtree, pCell->iRowid, pLeft, iHeight);
196650 rc = nodeRelease(pRtree, pLeft);
196651 pLeft = 0;
196656 nodeRelease(pRtree, pLeft);
199311 static GeoEvent *geopolyEventMerge(GeoEvent *pLeft, GeoEvent *pRight){
199315 while( pRight && pLeft ){
199316 if( pRight->x <= pLeft->x ){
199321 pLast->pNext = pLeft;
199322 pLast = pLeft;
199323 pLeft = pLeft->pNext;
199326 pLast->pNext = pRight ? pRight : pLeft;
199358 static GeoSegment *geopolySegmentMerge(GeoSegment *pLeft, GeoSegment *pRight){
199362 while( pRight && pLeft ){
199363 double r = pRight->y - pLeft->y;
199364 if( r==0.0 ) r = pRight->C - pLeft->C;
199370 pLast->pNext = pLeft;
199371 pLast = pLeft;
199372 pLeft = pLeft->pNext;
199375 pLast->pNext = pRight ? pRight : pLeft;
213840 void *pLeft, /* Lhs input changeset */
213851 rc = sqlite3changegroup_add(pGrp, nLeft, pLeft);
215610 Fts5ExprNode *pLeft,
215617 Fts5ExprNode *pLeft,
220324 Fts5ExprPhrase *pLeft = pNear->apPhrase[0];
220342 if( pLeft->aTerm[0].pSynonym ){
220343 iLast = fts5ExprSynonymRowid(&pLeft->aTerm[0], bDesc, 0);
220345 iLast = pLeft->aTerm[0].pIter->iRowid;
221560 Fts5ExprNode *pLeft, /* Left hand child expression */
221571 || (eType==FTS5_STRING && !pLeft && !pRight)
221574 if( eType!=FTS5_STRING && pLeft==0 ) return pRight;
221575 if( eType!=FTS5_STRING && pRight==0 ) return pLeft;
221587 if( pLeft->eType==eType ) nChild += pLeft->nChild-1;
221623 fts5ExprAddChildren(pRet, pLeft);
221632 sqlite3Fts5ParseNodeFree(pLeft);
221641 Fts5ExprNode *pLeft, /* Left hand child expression */
221648 sqlite3Fts5ParseNodeFree(pLeft);
221652 assert( pLeft->eType==FTS5_STRING
221653 || pLeft->eType==FTS5_TERM
221654 || pLeft->eType==FTS5_EOF
221655 || pLeft->eType==FTS5_AND
221662 if( pLeft->eType==FTS5_AND ){
221663 pPrev = pLeft->apChild[pLeft->nChild-1];
221665 pPrev = pLeft;
221675 pRet = pLeft;
221681 if( pPrev==pLeft ){
221684 pLeft->apChild[pLeft->nChild-1] = pRight;
221685 pRet = pLeft;
221696 pRet = sqlite3Fts5ParseNode(pParse, FTS5_AND, pLeft, pRight, 0);
222754 Fts5HashEntry *pLeft,
222757 Fts5HashEntry *p1 = pLeft;
223504 Fts5Buffer *pLeft, /* Left hand side of comparison */
223507 int nCmp = MIN(pLeft->n, nRight);
223508 int res = memcmp(pLeft->p, pRight, nCmp);
223509 return (res==0 ? (pLeft->n - nRight) : res);
223522 static int fts5BufferCompare(Fts5Buffer *pLeft, Fts5Buffer *pRight){
223524 nCmp = MIN(pLeft->n, pRight->n);
223525 assert( nCmp<=0 || pLeft->p!=0 );
223527 res = fts5Memcmp(pLeft->p, pRight->p, nCmp);
223528 return (res==0 ? (pLeft->n - pRight->n) : res);