Lines Matching defs:pB
3435 int sqlite3ExprCompare(Expr *pA, Expr *pB){
3436 if( pA==0||pB==0 ){
3437 return pB==pA ? 0 : 2;
3440 assert( !ExprHasAnyProperty(pB, EP_TokenOnly|EP_Reduced) );
3441 if( ExprHasProperty(pA, EP_xIsSelect) || ExprHasProperty(pB, EP_xIsSelect) ){
3444 if( (pA->flags & EP_Distinct)!=(pB->flags & EP_Distinct) ) return 2;
3445 if( pA->op!=pB->op ) return 2;
3446 if( sqlite3ExprCompare(pA->pLeft, pB->pLeft) ) return 2;
3447 if( sqlite3ExprCompare(pA->pRight, pB->pRight) ) return 2;
3448 if( sqlite3ExprListCompare(pA->x.pList, pB->x.pList) ) return 2;
3449 if( pA->iTable!=pB->iTable || pA->iColumn!=pB->iColumn ) return 2;
3451 if( !ExprHasProperty(pB, EP_IntValue) || pA->u.iValue!=pB->u.iValue ){
3455 if( ExprHasProperty(pB, EP_IntValue) || NEVER(pB->u.zToken==0) ) return 2;
3456 if( sqlite3StrICmp(pA->u.zToken,pB->u.zToken)!=0 ){
3460 if( (pA->flags & EP_ExpCollate)!=(pB->flags & EP_ExpCollate) ) return 1;
3461 if( (pA->flags & EP_ExpCollate)!=0 && pA->pColl!=pB->pColl ) return 2;
3477 int sqlite3ExprListCompare(ExprList *pA, ExprList *pB){
3479 if( pA==0 && pB==0 ) return 0;
3480 if( pA==0 || pB==0 ) return 1;
3481 if( pA->nExpr!=pB->nExpr ) return 1;
3484 Expr *pExprB = pB->a[i].pExpr;
3485 if( pA->a[i].sortOrder!=pB->a[i].sortOrder ) return 1;