Lines Matching refs:pScan

87124     ScanStatus *pScan = 0;  local
87127 pScan = &p->aScan[ii];
87128 if( pScan->addrExplain==addrExplain ) break;
87129 pScan = 0;
87131 if( pScan ){
87133 for(ii=0; ii<ArraySize(pScan->aAddrRange); ii+=2){
87134 if( pScan->aAddrRange[ii]==0 ){
87135 pScan->aAddrRange[ii] = addrStart;
87136 pScan->aAddrRange[ii+1] = addrEnd;
87156 ScanStatus *pScan = 0; local
87159 pScan = &p->aScan[ii];
87160 if( pScan->addrExplain==addrExplain ) break;
87161 pScan = 0;
87163 if( pScan ){
87164 if( addrLoop>0 ) pScan->addrLoop = addrLoop;
87165 if( addrVisit>0 ) pScan->addrVisit = addrVisit;
93888 ScanStatus *pScan = 0; local
93925 pScan = &p->aScan[idx];
93926 if( pScan->zName ){
93933 assert( pScan==0 || pScan==&p->aScan[idx] );
93934 pScan = &p->aScan[idx];
93938 if( pScan->addrLoop>0 ){
93939 *(sqlite3_int64*)pOut = aOp[pScan->addrLoop].nExec;
93946 if( pScan->addrVisit>0 ){
93947 *(sqlite3_int64*)pOut = aOp[pScan->addrVisit].nExec;
93955 LogEst x = pScan->nEst;
93964 *(const char**)pOut = pScan->zName;
93968 if( pScan->addrExplain ){
93969 *(const char**)pOut = aOp[ pScan->addrExplain ].p4.z;
93976 if( pScan->addrExplain ){
93977 *(int*)pOut = aOp[ pScan->addrExplain ].p1;
93984 if( pScan->addrExplain ){
93985 *(int*)pOut = aOp[ pScan->addrExplain ].p2;
93993 if( pScan->aAddrRange[0]==0 ){
93997 for(ii=0; ii<ArraySize(pScan->aAddrRange); ii+=2){
93998 int iIns = pScan->aAddrRange[ii];
93999 int iEnd = pScan->aAddrRange[ii+1];
164819 static WhereTerm *whereScanNext(WhereScan *pScan){
164825 int k = pScan->k; /* Where to start scanning */
164827 assert( pScan->iEquiv<=pScan->nEquiv );
164828 pWC = pScan->pWC;
164830 iColumn = pScan->aiColumn[pScan->iEquiv-1];
164831 iCur = pScan->aiCur[pScan->iEquiv-1];
164841 pScan->pIdxExpr,iCur)==0)
164842 && (pScan->iEquiv<=1 || !ExprHasProperty(pTerm->pExpr, EP_OuterON))
164845 && pScan->nEquiv<ArraySize(pScan->aiCur)
164849 for(j=0; j<pScan->nEquiv; j++){
164850 if( pScan->aiCur[j]==pX->iTable
164851 && pScan->aiColumn[j]==pX->iColumn ){
164855 if( j==pScan->nEquiv ){
164856 pScan->aiCur[j] = pX->iTable;
164857 pScan->aiColumn[j] = pX->iColumn;
164858 pScan->nEquiv++;
164861 if( (pTerm->eOperator & pScan->opMask)!=0 ){
164863 if( pScan->zCollName && (pTerm->eOperator & WO_ISNULL)==0 ){
164869 zCollName = indexInAffinityOk(pParse, pTerm, pScan->idxaff);
164873 if( !sqlite3IndexAffinityOk(pX, pScan->idxaff) ){
164881 if( sqlite3StrICmp(zCollName, pScan->zCollName) ){
164888 && pX->iTable==pScan->aiCur[0]
164889 && pX->iColumn==pScan->aiColumn[0]
164894 pScan->pWC = pWC;
164895 pScan->k = k+1;
164900 pTerm, pScan->nEquiv);
164901 for(ii=0; ii<pScan->nEquiv; ii++){
164903 pScan->aiCur[ii], pScan->aiColumn[ii]);
164915 if( pScan->iEquiv>=pScan->nEquiv ) break;
164916 pWC = pScan->pOrigWC;
164918 pScan->iEquiv++;
164929 static SQLITE_NOINLINE WhereTerm *whereScanInitIndexExpr(WhereScan *pScan){
164930 pScan->idxaff = sqlite3ExprAffinity(pScan->pIdxExpr);
164931 return whereScanNext(pScan);
164954 WhereScan *pScan, /* The WhereScan object being initialized */
164961 pScan->pOrigWC = pWC;
164962 pScan->pWC = pWC;
164963 pScan->pIdxExpr = 0;
164964 pScan->idxaff = 0;
164965 pScan->zCollName = 0;
164966 pScan->opMask = opMask;
164967 pScan->k = 0;
164968 pScan->aiCur[0] = iCur;
164969 pScan->nEquiv = 1;
164970 pScan->iEquiv = 1;
164977 pScan->idxaff = pIdx->pTable->aCol[iColumn].affinity;
164978 pScan->zCollName = pIdx->azColl[j];
164980 pScan->pIdxExpr = pIdx->aColExpr->a[j].pExpr;
164981 pScan->zCollName = pIdx->azColl[j];
164982 pScan->aiColumn[0] = XN_EXPR;
164983 return whereScanInitIndexExpr(pScan);
164988 pScan->aiColumn[0] = iColumn;
164989 return whereScanNext(pScan);
243696 Fts5HashEntry *pScan; /* Current ordered scan item */
244197 return fts5HashEntrySort(p, pTerm, nTerm, &p->pScan);
244224 p->pScan = p->pScan->pScanNext;
244228 return (p->pScan==0);
244239 if( (p = pHash->pScan) ){
258423 sqlite3_stmt *pScan = 0;
258435 rc = fts5StorageGetStmt(p, FTS5_STMT_SCAN, &pScan, pConfig->pzErrmsg);
258438 while( rc==SQLITE_OK && SQLITE_ROW==sqlite3_step(pScan) ){
258439 i64 iRowid = sqlite3_column_int64(pScan, 0);
258451 sqlite3_value *pVal = sqlite3_column_value(pScan, ctx.iCol+1);
258461 pLoc = (const char*)sqlite3_column_text(pScan, iCol);
258462 nLoc = sqlite3_column_bytes(pScan, iCol);
258487 rc2 = sqlite3_reset(pScan);
258805 sqlite3_stmt *pScan;
258821 rc = fts5StorageGetStmt(p, FTS5_STMT_SCAN, &pScan, 0);
258824 while( SQLITE_ROW==sqlite3_step(pScan) ){
258826 ctx.iRowid = sqlite3_column_int64(pScan, 0);
258840 sqlite3_value *pVal = sqlite3_column_value(pScan, i+1);
258851 pLoc = (const char*)sqlite3_column_text(pScan, iCol);
258852 nLoc = sqlite3_column_bytes(pScan, iCol);
258897 rc2 = sqlite3_reset(pScan);