Lines Matching defs:idxStr
7406 int (*xFilter)(sqlite3_vtab_cursor*, int idxNum, const char *idxStr,
7553 char *idxStr; /* String, possibly obtained from sqlite3_malloc */
7554 int needToFreeIdxStr; /* Free idxStr using sqlite3_free() if true */
102860 int idxNum, const char *idxStr,
137015 int idxNum, const char *idxStr,
137026 UNUSED_PARAMETER(idxStr);
151455 u32 needFree : 1; /* True if sqlite3_free(idxStr) is needed */
151459 char *idxStr; /* Index identifier string */
152130 pLoop->u.vtab.idxNum, pLoop->u.vtab.idxStr);
153377 pLoop->u.vtab.idxStr,
153382 ** the u.vtab.idxStr. NULL it out to prevent a use-after-free */
153383 if( db->mallocFailed ) pLoop->u.vtab.idxStr = 0;
157286 sqlite3DebugPrintf(" idxStr=%s\n", p->idxStr);
157941 ** caller to eventually free p->idxStr if p->needToFreeIdxStr indicates
158715 if( p->u.vtab.idxStr ){
158717 p->u.vtab.idxNum, p->u.vtab.idxStr, p->u.vtab.omitMask);
158756 sqlite3_free(p->u.vtab.idxStr);
158758 p->u.vtab.idxStr = 0;
160264 pIdxInfo->idxStr = 0;
160349 sqlite3_free(pIdxInfo->idxStr);
160350 pIdxInfo->idxStr = 0;
160373 pNew->u.vtab.idxStr = pIdxInfo->idxStr;
160389 sqlite3_free(pNew->u.vtab.idxStr);
160665 if( p->needToFreeIdxStr ) sqlite3_free(p->idxStr);
181366 pInfo->idxStr = "DESC";
181368 pInfo->idxStr = "ASC";
182942 const char *idxStr, /* Unused */
182958 UNUSED_PARAMETER(idxStr);
182984 if( idxStr ){
182985 pCsr->bDesc = (idxStr[0]=='D');
186128 const char *idxStr, /* Unused */
186145 UNUSED_PARAMETER(idxStr);
186147 assert( idxStr==0 );
189762 const char *idxStr, /* Unused */
189769 UNUSED_PARAMETER(idxStr);
200750 int idxNum, const char *idxStr,
200758 UNUSED_PARAMETER(idxStr);
202780 int idxNum, const char *idxStr,
202836 assert( (idxStr==0 && argc==0)
202837 || (idxStr && (int)strlen(idxStr)==argc*2) );
202841 p->op = idxStr[ii*2];
202842 p->iCoord = idxStr[ii*2+1]-'0';
202902 ** idxNum idxStr Strategy
202908 ** If strategy 1 is used, then idxStr is not meaningful. If strategy
202909 ** 2 is used, idxStr is formatted to contain 2 bytes for each
202910 ** constraint used. The first two bytes of idxStr correspond to
202914 ** The first of each pair of bytes in idxStr identifies the constraint
202952 assert( pIdxInfo->idxStr==0 );
203006 if( iIdx>0 && 0==(pIdxInfo->idxStr = sqlite3_mprintf("%s", zIdxStr)) ){
206694 const char *idxStr, /* Not Used */
206815 ** idxNum idxStr Strategy
206847 pIdxInfo->idxStr = "rowid";
206857 pIdxInfo->idxStr = "rtree";
206865 pIdxInfo->idxStr = "fullscan";
214918 int idxNum, const char *idxStr,
215302 ** idxStr is not used
215306 int idxNum, const char *idxStr,
237331 ** idxStr variables. Specifically, idxNum is a bitmask of the following
237338 ** idxStr is used to encode data from the WHERE clause. For each argument
237339 ** passed to the xFilter method, the following is appended to idxStr:
237382 char *idxStr;
237406 idxStr = (char*)sqlite3_malloc(pInfo->nConstraint * 8 + 1);
237407 if( idxStr==0 ) return SQLITE_NOMEM;
237408 pInfo->idxStr = idxStr;
237423 idxStr[iIdxStr] = 0;
237428 idxStr[iIdxStr++] = 'r';
237432 idxStr[iIdxStr++] = 'M';
237433 sqlite3_snprintf(6, &idxStr[iIdxStr], "%d", iCol);
237434 idxStr += strlen(&idxStr[iIdxStr]);
237435 assert( idxStr[iIdxStr]=='\0' );
237443 idxStr[iIdxStr++] = p->op==FTS5_PATTERN_LIKE ? 'L' : 'G';
237444 sqlite3_snprintf(6, &idxStr[iIdxStr], "%d", iCol);
237445 idxStr += strlen(&idxStr[iIdxStr]);
237447 assert( idxStr[iIdxStr]=='\0' );
237449 idxStr[iIdxStr++] = '=';
237463 idxStr[iIdxStr++] = '<';
237469 idxStr[iIdxStr++] = '>';
237476 idxStr[iIdxStr] = '\0';
238036 const char *idxStr, /* Unused */
238081 switch( idxStr[iIdxStr++] ){
238090 iCol = iCol*10 + (idxStr[iIdxStr]-'0');
238092 }while( idxStr[iIdxStr]>='0' && idxStr[iIdxStr]<='9' );
238114 int bGlob = (idxStr[iIdxStr-1]=='G');
238118 iCol = iCol*10 + (idxStr[iIdxStr]-'0');
238120 }while( idxStr[iIdxStr]>='0' && idxStr[iIdxStr]<='9' );
238137 default: assert( idxStr[iIdxStr-1]=='>' );
244473 int idxNum, const char *idxStr,