Lines Matching refs:pList

16256     ExprList *pList;     /* op = IN, EXISTS, SELECT, CASE, FUNCTION, BETWEEN */  member
27347 pFarg = pExpr->x.pList;
27377 sqlite3TreeViewExprList(pView, pExpr->x.pList, 0, 0);
27396 Expr *pY = pExpr->x.pList->a[0].pExpr;
27397 Expr *pZ = pExpr->x.pList->a[1].pExpr;
27419 sqlite3TreeViewExprList(pView, pExpr->x.pList, 0, 0);
27442 sqlite3TreeViewBareExprList(pView, pExpr->x.pList, "VECTOR");
27477 const ExprList *pList,
27481 if( pList==0 ){
27486 for(i=0; i<pList->nExpr; i++){
27487 int j = pList->a[i].u.x.iOrderByCol;
27488 char *zName = pList->a[i].zName;
27498 sqlite3TreeViewExpr(pView, pList->a[i].pExpr, i<pList->nExpr-1);
27507 const ExprList *pList,
27512 sqlite3TreeViewBareExprList(pView, pList, zLabel);
47701 static struct RowSetEntry *rowSetListToTree(struct RowSetEntry *pList){
47706 assert( pList!=0 );
47707 p = pList;
47708 pList = p->pRight;
47710 for(iDepth=1; pList; iDepth++){
47712 p = pList;
47713 pList = p->pRight;
47715 p->pRight = rowSetNDeepTree(&pList, iDepth);
51125 PgHdr *pList; /* List of dirty pages to revert */
51136 pList = sqlite3PcacheDirtyList(pPager->pPCache);
51137 while( pList && rc==SQLITE_OK ){
51138 PgHdr *pNext = pList->pDirty;
51139 rc = pagerUndoCallback((void *)pPager, pList->pgno);
51140 pList = pNext;
51157 PgHdr *pList, /* List of frames to log */
51166 assert( pList );
51169 for(p=pList; p && p->pDirty; p=p->pDirty){
51174 assert( pList->pDirty==0 || isCommit );
51180 PgHdr **ppNext = &pList;
51182 for(p=pList; (*ppNext = p)!=0; p=p->pDirty){
51188 assert( pList );
51194 if( pList->pgno==1 ) pager_write_changecounter(pList);
51196 pPager->pageSize, pList, nTruncate, isCommit, pPager->walSyncFlags
51199 for(p=pList; p; p=p->pDirty){
51205 pList = sqlite3PcacheDirtyList(pPager->pPCache);
51206 for(p=pList; p; p=p->pDirty){
52353 static int pager_write_pagelist(Pager *pPager, PgHdr *pList){
52360 assert( isOpen(pPager->fd) || pList->pDirty==0 );
52377 && (pList->pDirty || pList->pgno>pPager->dbHintSize)
52384 while( rc==SQLITE_OK && pList ){
52385 Pgno pgno = pList->pgno;
52395 if( pgno<=pPager->dbSize && 0==(pList->flags&PGHDR_DONT_WRITE) ){
52399 assert( (pList->flags&PGHDR_NEED_SYNC)==0 );
52400 if( pList->pgno==1 ) pager_write_changecounter(pList);
52403 CODEC2(pPager, pList->pData, pgno, 6, return SQLITE_NOMEM_BKPT, pData);
52421 sqlite3BackupUpdate(pPager->pBackup, pgno, (u8*)pList->pData);
52424 PAGERID(pPager), pgno, pager_pagehash(pList)));
52430 pager_set_pagehash(pList);
52431 pList = pList->pDirty;
52619 PgHdr *pList = sqlite3PcacheDirtyList(pPager->pPCache);
52621 while( rc==SQLITE_OK && pList ){
52622 PgHdr *pNext = pList->pDirty;
52623 if( pList->nRef==0 ){
52624 rc = pagerStress((void*)pPager, pList);
52626 pList = pNext;
54359 PgHdr *pList = sqlite3PcacheDirtyList(pPager->pPCache);
54361 if( pList==0 ){
54365 pList = pPageOne;
54366 pList->pDirty = 0;
54369 if( ALWAYS(pList) ){
54370 rc = pagerWalFrames(pPager, pList, pPager->dbSize, 1);
58902 PgHdr *pList, /* List of dirty pages to write */
58918 assert( pList );
58926 { int cnt; for(cnt=0, p=pList; p; p=p->pDirty, cnt++){}
58999 for(p=pList; p; p=p->pDirty){
59097 for(p=pList; p && rc==SQLITE_OK; p=p->pDirty){
62974 BtShared *pList;
62985 pList = GLOBAL(BtShared*,sqlite3SharedCacheList);
62986 while( ALWAYS(pList) && pList->pNext!=pBt ){
62987 pList=pList->pNext;
62989 if( ALWAYS(pList) ){
62990 pList->pNext = pBt->pNext;
72433 ExprList *pList = 0; /* Function arguments */
72438 pList = p->x.pList;
72439 if( pList ) nVal = pList->nExpr;
72448 if( pList ){
72455 rc = sqlite3ValueFromExpr(db, pList->a[i].pExpr, enc, aff, &apVal[i]);
88004 SorterRecord *pList; /* Linked list of records */
88868 vdbeSorterRecordFree(0, pTask->list.pList);
89059 vdbeSorterRecordFree(0, pSorter->list.pList);
89061 pSorter->list.pList = 0;
89211 static int vdbeSorterSort(SortSubtask *pTask, SorterList *pList){
89220 p = pList->pList;
89230 if( pList->aMemory ){
89231 if( (u8*)p==pList->aMemory ){
89234 assert( p->u.iNext<sqlite3MallocSize(pList->aMemory) );
89235 pNext = (SorterRecord*)&pList->aMemory[p->u.iNext];
89255 pList->pList = p;
89362 static int vdbeSorterListToPMA(SortSubtask *pTask, SorterList *pList){
89370 i64 iSz = pList->szPMA + sqlite3VarintLen(pList->szPMA) + pTask->file.iEof;
89375 assert( pList->szPMA>0 );
89387 vdbeSorterExtendFile(db, pTask->file.pFd, pTask->file.iEof+pList->szPMA+9);
89392 rc = vdbeSorterSort(pTask, pList);
89402 vdbePmaWriteVarint(&writer, pList->szPMA);
89403 for(p=pList->pList; p; p=pNext){
89407 if( pList->aMemory==0 ) sqlite3_free(p);
89409 pList->pList = p;
89414 assert( rc!=SQLITE_OK || pList->pList==0 );
89552 assert( pTask->list.pList==0 );
89557 pSorter->list.pList = 0;
89634 assert( rc!=SQLITE_OK || pSorter->list.pList==0 );
89648 int iListOff = (u8*)pSorter->list.pList - pSorter->list.aMemory;
89656 pSorter->list.pList = (SorterRecord*)&aNew[iListOff];
89663 if( pSorter->list.pList ){
89664 pNew->u.iNext = (int)((u8*)(pSorter->list.pList) - pSorter->list.aMemory);
89671 pNew->u.pNext = pSorter->list.pList;
89676 pSorter->list.pList = pNew;
90395 if( pSorter->list.pList ){
90408 assert( pSorter->list.pList );
90460 SorterRecord *pFree = pSorter->list.pList;
90461 pSorter->list.pList = pFree->u.pNext;
90464 rc = pSorter->list.pList ? SQLITE_OK : SQLITE_DONE;
90491 *pnKey = pSorter->list.pList->nVal;
90492 pKey = SRVAL(pSorter->list.pList);
91055 assert( pExpr->x.pList==0 || pExpr->pRight==0 );
91061 }else if( pExpr->x.pList ){
91062 if( sqlite3WalkExprList(pWalker, pExpr->x.pList) ) return WRC_Abort;
91564 assert( pExpr->x.pList==0 );
91819 ExprList *pList = pExpr->x.pList; /* The argument list */
91820 int n = pList ? pList->nExpr : 0; /* Number of arguments */
91845 pExpr->iTable = exprProbability(pList->a[1].pExpr);
91910 sqlite3WalkExprList(pWalker, pList);
91969 nRight = sqlite3ExprVectorSize(pExpr->x.pList->a[0].pExpr);
91971 nRight = sqlite3ExprVectorSize(pExpr->x.pList->a[1].pExpr);
92628 ExprList *pList /* The expression list to be analyzed. */
92631 if( pList ){
92632 for(i=0; i<pList->nExpr; i++){
92633 if( sqlite3ResolveExprNames(pNC, pList->a[i].pExpr) ) return WRC_Abort;
92683 ExprList *pList /* Expression list to resolve. May be NUL. */
92699 if( pList ) sqlite3ResolveExprListNames(&sNC, pList);
92815 assert( pExpr->x.pList->nExpr>0 );
92817 pExpr = pExpr->x.pList->a[0].pExpr;
92874 assert( p->x.pList==0 || p->pRight==0 );
92878 if( p->x.pList!=0 && ALWAYS(!ExprHasProperty(p, EP_xIsSelect)) ){
92880 for(i=0; ALWAYS(i<p->x.pList->nExpr); i++){
92881 if( ExprHasProperty(p->x.pList->a[i].pExpr, EP_Collate) ){
92882 pNext = p->x.pList->a[i].pExpr;
93081 return pExpr->x.pList->nExpr;
93111 return pVector->x.pList->a[i].pExpr;
93169 if( pVector->op==TK_VECTOR ) pVector = pVector->x.pList->a[iField].pExpr;
93229 *ppExpr = pVector->x.pList->a[iField].pExpr;
93392 }else if( p->x.pList ){
93393 heightOfExprList(p->x.pList, &nHeight);
93394 p->flags |= EP_Propagate & sqlite3ExprListFlags(p->x.pList);
93428 if( p && p->x.pList && !ExprHasProperty(p, EP_xIsSelect) ){
93429 p->flags |= EP_Propagate & sqlite3ExprListFlags(p->x.pList);
93647 SQLITE_PRIVATE Expr *sqlite3ExprFunction(Parse *pParse, ExprList *pList, Token *pToken){
93653 sqlite3ExprListDelete(db, pList); /* Avoid memory leak when malloc fails */
93656 pNew->x.pList = pList;
93760 assert( p->x.pList==0 || p->pRight==0 );
93767 sqlite3ExprListDelete(db, p->x.pList);
93836 if( p->pLeft || p->x.pList ){
93952 pNew->x.pList = sqlite3ExprListDup(db, p->x.pList, dupFlags);
94207 ExprList *pList, /* List to which to append. Might be NULL */
94213 if( pList==0 ){
94214 pList = sqlite3DbMallocRawNN(db, sizeof(ExprList) );
94215 if( pList==0 ){
94218 pList->nExpr = 0;
94219 }else if( (pList->nExpr & (pList->nExpr-1))==0 ){
94221 pNew = sqlite3DbRealloc(db, pList,
94222 sizeof(*pList)+(2*pList->nExpr - 1)*sizeof(pList->a[0]));
94226 pList = pNew;
94228 pItem = &pList->a[pList->nExpr++];
94233 return pList;
94238 sqlite3ExprListDelete(db, pList);
94255 ExprList *pList, /* List to which to append. Might be NULL */
94262 int iFirst = pList ? pList->nExpr : 0;
94281 pList = sqlite3ExprListAppend(pParse, pList, pSubExpr);
94282 if( pList ){
94283 assert( pList->nExpr==iFirst+i+1 );
94284 pList->a[pList->nExpr-1].zName = pColumns->a[i].zName;
94289 if( !db->mallocFailed && pExpr->op==TK_SELECT && ALWAYS(pList!=0) ){
94290 Expr *pFirst = pList->a[iFirst].pExpr;
94307 return pList;
94334 ExprList *pList, /* List to which to add the span. */
94338 assert( pList!=0 || pParse->db->mallocFailed!=0 );
94339 if( pList ){
94341 assert( pList->nExpr>0 );
94342 pItem = &pList->a[pList->nExpr-1];
94359 ExprList *pList, /* List to which to add the span. */
94364 assert( pList!=0 || db->mallocFailed!=0 );
94365 if( pList ){
94366 struct ExprList_item *pItem = &pList->a[pList->nExpr-1];
94367 assert( pList->nExpr>0 );
94393 static SQLITE_NOINLINE void exprListDeleteNN(sqlite3 *db, ExprList *pList){
94394 int i = pList->nExpr;
94395 struct ExprList_item *pItem = pList->a;
94396 assert( pList->nExpr>0 );
94403 sqlite3DbFreeNN(db, pList);
94405 SQLITE_PRIVATE void sqlite3ExprListDelete(sqlite3 *db, ExprList *pList){
94406 if( pList ) exprListDeleteNN(db, pList);
94413 SQLITE_PRIVATE u32 sqlite3ExprListFlags(const ExprList *pList){
94416 assert( pList!=0 );
94417 for(i=0; i<pList->nExpr; i++){
94418 Expr *pExpr = pList->a[i].pExpr;
95118 && (!sqlite3InRhsIsConstant(pX) || pX->x.pList->nExpr<=2)
95354 }else if( ALWAYS(pExpr->x.pList!=0) ){
95364 ExprList *pList = pExpr->x.pList;
95381 for(i=pList->nExpr, pItem=pList->a; i>0; i--, pItem++){
95626 ExprList *pList = pExpr->x.pList;
95637 for(ii=0; ii<pList->nExpr; ii++){
95638 r2 = sqlite3ExprCodeTemp(pParse, pList->a[ii].pExpr, &regToFree);
95639 if( regCkNull && sqlite3ExprCanBeNull(pList->a[ii].pExpr) ){
95642 if( ii<pList->nExpr-1 || destIfNull!=destIfFalse ){
95645 VdbeCoverageIf(v, ii<pList->nExpr-1);
95646 VdbeCoverageIf(v, ii==pList->nExpr-1);
96175 sqlite3ExprCodeFactorable(pParse, p->x.pList->a[i].pExpr, i+iResult);
96449 pFarg = pExpr->x.pList;
96762 assert( !ExprHasProperty(pExpr, EP_xIsSelect) && pExpr->x.pList );
96763 assert(pExpr->x.pList->nExpr > 0);
96764 pEList = pExpr->x.pList;
97011 ExprList *pList, /* The expression list to be coded */
97020 assert( pList!=0 );
97023 n = pList->nExpr;
97025 for(pItem=pList->a, i=0; i<n; i++, pItem++){
97100 compLeft.pRight = pExpr->x.pList->a[0].pExpr;
97103 compRight.pRight = pExpr->x.pList->a[1].pExpr;
97527 if( sqlite3ExprListCompare(pA->x.pList, pB->x.pList, iTab) ) return 2;
97729 sqlite3WalkExprList(&w, pExpr->x.pList);
97873 pExpr->x.pList ? pExpr->x.pList->nExpr : 0, enc, 0);
97931 SQLITE_PRIVATE void sqlite3ExprAnalyzeAggList(NameContext *pNC, ExprList *pList){
97934 if( pList ){
97935 for(pItem=pList->a, i=0; i<pList->nExpr; i++, pItem++){
101238 SrcList *pList /* The Source list to check and modify */
101244 if( NEVER(pList==0) ) return 0;
101246 for(i=0, pItem=pList->a; i<pList->nSrc; i++, pItem++){
101313 if( sqlite3FixExprList(pFix, pExpr->x.pList) ) return 1;
101324 ExprList *pList /* The expression to be fixed to one database */
101328 if( pList==0 ) return 0;
101329 for(i=0, pItem=pList->a; i<pList->nExpr; i++, pItem++){
102935 ExprList *pList, /* List of field names to be indexed */
102951 if( pList==0 ){
102957 nTerm = pList->nExpr;
102959 Expr *pCExpr = sqlite3ExprSkipCollate(pList->a[i].pExpr);
102983 if( pList ) pParse->iPkSortOrder = pList->a[0].sortOrder;
102990 sqlite3CreateIndex(pParse, 0, 0, 0, pList, onError, 0,
102992 pList = 0;
102996 sqlite3ExprListDelete(pParse->db, pList);
103362 ExprList *pList;
103365 pList = sqlite3ExprListAppend(pParse, 0,
103367 if( pList==0 ) return;
103368 pList->a[0].sortOrder = pParse->iPkSortOrder;
103370 sqlite3CreateIndex(pParse, 0, 0, 0, pList, pTab->keyConf, 0, 0, 0, 0,
104537 ExprList *pList, /* A list of columns to be indexed */
104720 if( pList==0 ){
104723 pList = sqlite3ExprListAppend(pParse, 0,
104725 if( pList==0 ) goto exit_create_index;
104726 assert( pList->nExpr==1 );
104727 sqlite3ExprListSetSortOrder(pList, sortOrder);
104729 sqlite3ExprListCheckLength(pParse, pList, "index");
104735 for(i=0; i<pList->nExpr; i++){
104736 Expr *pExpr = pList->a[i].pExpr;
104748 pIndex = sqlite3AllocateIndexObject(db, pList->nExpr + nExtraCol,
104763 pIndex->nKeyCol = pList->nExpr;
104788 for(i=0, pListItem=pList->a; i<pList->nExpr; i++, pListItem++){
104804 ExprList *pCopy = sqlite3ExprListDup(db, pList, 0);
105067 sqlite3ExprListDelete(db, pList);
105234 SQLITE_PRIVATE IdList *sqlite3IdListAppend(sqlite3 *db, IdList *pList, Token *pToken){
105236 if( pList==0 ){
105237 pList = sqlite3DbMallocZero(db, sizeof(IdList) );
105238 if( pList==0 ) return 0;
105240 pList->a = sqlite3ArrayAllocate(
105242 pList->a,
105243 sizeof(pList->a[0]),
105244 &pList->nId,
105248 sqlite3IdListDelete(db, pList);
105251 pList->a[i].zName = sqlite3NameFromToken(db, pToken);
105252 return pList;
105258 SQLITE_PRIVATE void sqlite3IdListDelete(sqlite3 *db, IdList *pList){
105260 if( pList==0 ) return;
105261 for(i=0; i<pList->nId; i++){
105262 sqlite3DbFree(db, pList->a[i].zName);
105264 sqlite3DbFree(db, pList->a);
105265 sqlite3DbFreeNN(db, pList);
105272 SQLITE_PRIVATE int sqlite3IdListIndex(IdList *pList, const char *zName){
105274 if( pList==0 ) return -1;
105275 for(i=0; i<pList->nId; i++){
105276 if( sqlite3StrICmp(pList->a[i].zName, zName)==0 ) return i;
105384 SrcList *pList, /* Append to this SrcList. NULL creates a new SrcList */
105391 if( pList==0 ){
105392 pList = sqlite3DbMallocRawNN(db, sizeof(SrcList) );
105393 if( pList==0 ) return 0;
105394 pList->nAlloc = 1;
105395 pList->nSrc = 1;
105396 memset(&pList->a[0], 0, sizeof(pList->a[0]));
105397 pList->a[0].iCursor = -1;
105399 pList = sqlite3SrcListEnlarge(db, pList, 1, pList->nSrc);
105402 sqlite3SrcListDelete(db, pList);
105405 pItem = &pList->a[pList->nSrc-1];
105416 return pList;
105422 SQLITE_PRIVATE void sqlite3SrcListAssignCursors(Parse *pParse, SrcList *pList){
105425 assert(pList || pParse->db->mallocFailed );
105426 if( pList ){
105427 for(i=0, pItem=pList->a; i<pList->nSrc; i++, pItem++){
105440 SQLITE_PRIVATE void sqlite3SrcListDelete(sqlite3 *db, SrcList *pList){
105443 if( pList==0 ) return;
105444 for(pItem=pList->a, i=0; i<pList->nSrc; i++, pItem++){
105455 sqlite3DbFreeNN(db, pList);
105543 SQLITE_PRIVATE void sqlite3SrcListFuncArgs(Parse *pParse, SrcList *p, ExprList *pList){
105549 pItem->u1.pFuncArg = pList;
105552 sqlite3ExprListDelete(pParse->db, pList);
106772 pLhs->x.pList = sqlite3ExprListDup(db, pEList, 0);
109260 if( pExpr->op!=TK_FUNCTION || !pExpr->x.pList ){
109264 nExpr = pExpr->x.pList->nExpr;
109272 Expr *pEscape = pExpr->x.pList->a[2].pExpr;
110623 ExprList *pList = 0; /* Changes list if ON UPDATE CASCADE */
110692 pList = sqlite3ExprListAppend(pParse, pList, pNew);
110693 sqlite3ExprListSetName(pParse, pList, &tFromCol, 0);
110734 pStep->pExprList = sqlite3ExprListDup(db, pList, EXPRDUP_REDUCE);
110747 sqlite3ExprListDelete(db, pList);
111358 ExprList *pList = 0; /* List of VALUES() to be inserted */
111386 pList = pSelect->pEList;
111456 assert( pList==0 );
111594 if( pList ){
111595 nColumn = pList->nExpr;
111596 if( sqlite3ResolveExprListNames(&sNC, pList) ){
111699 sqlite3ExprCode(pParse, pList->a[ipkColumn].pExpr, regCols);
111720 if( (!useTempTable && !pList) || (pColumn && j>=pColumn->nId)
111727 sqlite3ExprCodeAndCache(pParse, pList->a[j].pExpr, regCols+i+1);
111763 sqlite3ExprCode(pParse, pList->a[ipkColumn].pExpr, regRowid);
111833 sqlite3ExprCode(pParse, pList->a[j].pExpr, iRegStore);
111921 sqlite3ExprListDelete(db, pList);
119077 if( p->op==TK_FUNCTION && p->x.pList ){
119079 for(i=0; i<p->x.pList->nExpr; i++){
119080 setJoinExpr(p->x.pList->a[i].pExpr, iTable);
119165 IdList *pList = pRight->pUsing;
119166 for(j=0; j<pList->nId; j++){
119172 zName = pList->a[j].zName;
119192 ExprList *pList, /* Form the KeyInfo object from this ExprList */
119796 ExprList *pList, /* Form the KeyInfo object from this ExprList */
119806 nExpr = pList->nExpr;
119810 for(i=iStart, pItem=pList->a+iStart; i<nExpr; i++, pItem++){
121919 substExprList(pSubst, pExpr->x.pList);
121926 ExprList *pList /* List to scan and in which to make substitutes */
121929 if( pList==0 ) return;
121930 for(i=0; i<pList->nExpr; i++){
121931 pList->a[i].pExpr = substExpr(pSubst, pList->a[i].pExpr);
122620 ExprList *pEList = pFunc->x.pList; /* Arguments to agg function */
123478 if( pE->x.pList==0 || pE->x.pList->nExpr!=1 ){
123483 KeyInfo *pKeyInfo = keyInfoFromExprList(pParse, pE->x.pList, 0, 0);
123500 ExprList *pList = pF->pExpr->x.pList;
123502 sqlite3VdbeAddOp2(v, OP_AggFinal, pF->iMem, pList ? pList->nExpr : 0);
123524 ExprList *pList = pF->pExpr->x.pList;
123526 if( pList ){
123527 nArg = pList->nExpr;
123529 sqlite3ExprCodeExprList(pParse, pList, regAgg, 0, SQLITE_ECEL_DUP);
123544 assert( pList!=0 ); /* pList!=0 if pF->pFunc has NEEDCOLL */
123545 for(j=0, pItem=pList->a; !pColl && j<nArg; j++, pItem++){
123742 if( pExpr->x.pList!=0 ) return 0; /* Must be count(*) */
124364 sqlite3ExprAnalyzeAggList(&sNC, sAggInfo.aFunc[i].pExpr->x.pList);
125004 Trigger *pList = 0; /* List of triggers to return */
125018 pTrig->pNext = (pList ? pList : pTab->pTrigger);
125019 pList = pTrig;
125024 return (pList ? pList : pTab->pTrigger);
125605 Trigger *pList = 0;
125609 pList = sqlite3TriggerList(pParse, pTab);
125611 assert( pList==0 || IsVirtual(pTab)==0 );
125612 for(p=pList; p; p=p->pNext){
125620 return (mask ? pList : 0);
129604 ExprList *pOrigLhs = pNew->pLeft->x.pList; /* Original unmodified LHS */
129623 pNew->pLeft->x.pList = pLhs;
130266 ExprList *pList = p->x.pList;
130267 assert( nReg<=pList->nExpr );
130269 sqlite3ExprCode(pParse, pList->a[i].pExpr, iReg+i);
131591 ExprList *pList; /* List of operands to the LIKE operator */
131606 pList = pExpr->x.pList;
131607 pLeft = pList->a[1].pExpr;
131609 pRight = sqlite3ExprSkipCollate(pList->a[0].pExpr);
131748 ExprList *pList;
131752 pList = pExpr->x.pList;
131753 if( pList==0 || pList->nExpr!=2 ){
131756 pCol = pList->a[1].pExpr;
131763 *ppRight = pList->a[0].pExpr;
132184 ExprList *pList = 0; /* The RHS of the IN operator */
132194 pList = sqlite3ExprListAppend(pWInfo->pParse, pList, pDup);
132204 pNew->x.pList = pList;
132211 sqlite3ExprListDelete(db, pList);
132329 pExpr = pExpr->x.pList->a[0].pExpr;
132396 pTerm->prereqRight = sqlite3WhereExprListUsage(pMaskSet, pExpr->x.pList);
132429 pLeft = pLeft->x.pList->a[pTerm->iField-1].pExpr;
132495 ExprList *pList = pExpr->x.pList;
132498 assert( pList!=0 );
132499 assert( pList->nExpr==2 );
132505 sqlite3ExprDup(db, pList->a[i].pExpr, 0));
132553 pLeft = pExpr->x.pList->a[1].pExpr;
132844 assert( p->x.pList==0 );
132848 }else if( p->x.pList ){
132849 mask |= sqlite3WhereExprListUsage(pMaskSet, p->x.pList);
132853 SQLITE_PRIVATE Bitmask sqlite3WhereExprListUsage(WhereMaskSet *pMaskSet, ExprList *pList){
132856 if( pList ){
132857 for(i=0; i<pList->nExpr; i++){
132858 mask |= sqlite3WhereExprUsage(pMaskSet, pList->a[i].pExpr);
133331 ExprList *pList, /* Expression list to search */
133339 for(i=0; i<pList->nExpr; i++){
133340 Expr *p = sqlite3ExprSkipCollate(pList->a[i].pExpr);
133345 CollSeq *pColl = sqlite3ExprNNCollSeq(pParse, pList->a[i].pExpr);
134594 ExprList *pList, /* The value list on the RHS of "x IN (v1,v2,v3,...)" */
134606 for(i=0; rc==SQLITE_OK && i<pList->nExpr; i++){
134608 rc = whereEqualScanEst(pParse, pBuilder, pList->a[i].pExpr, &nEst);
135218 Expr *pLhs = pTerm->pExpr->pLeft->x.pList->a[i].pExpr;
135223 pRhs = pRhs->x.pList->a[i].pExpr;
135395 }else if( ALWAYS(pExpr->x.pList && pExpr->x.pList->nExpr) ){
135397 nIn = sqlite3LogEst(pExpr->x.pList->nExpr);
135485 rc = whereInScanEst(pParse, pBuilder, pExpr->x.pList, &nOut);
141287 ExprList *pList = sqlite3ExprListAppend(pParse, yymsp[-3].minor.yy322, yymsp[-1].minor.yy314);
141290 yymsp[-4].minor.yy314->x.pList = pList;
141292 sqlite3ExprListDelete(pParse->db, pList);
141311 ExprList *pList;
141314 pList = sqlite3ExprListAppend(pParse,0, yymsp[0].minor.yy314);
141315 pList = sqlite3ExprListAppend(pParse,pList, yymsp[-2].minor.yy314);
141316 yymsp[-2].minor.yy314 = sqlite3ExprFunction(pParse, pList, &yymsp[-1].minor.yy0);
141323 ExprList *pList;
141326 pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy314);
141327 pList = sqlite3ExprListAppend(pParse,pList, yymsp[-4].minor.yy314);
141328 pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy314);
141329 yymsp[-4].minor.yy314 = sqlite3ExprFunction(pParse, pList, &yymsp[-3].minor.yy0);
141368 ExprList *pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy314);
141369 pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy314);
141372 yymsp[-4].minor.yy314->x.pList = pList;
141374 sqlite3ExprListDelete(pParse->db, pList);
141422 yymsp[-4].minor.yy314->x.pList = yymsp[-1].minor.yy322;
141465 …yymsp[-4].minor.yy314->x.pList = yymsp[-1].minor.yy314 ? sqlite3ExprListAppend(pParse,yymsp[-2].mi…
148845 char *pList; /* Pointer to position list following iDocid */
151467 char *pList, /* Position list (no 0x00 term) */
151473 char *p = pList;
151474 char *pEnd = &pList[nList];
152892 char *pList, /* Pointer to doclist */
152898 if( pList==0 ){
152905 p->doclist.aAll = pList;
152910 sqlite3_free(pList);
152923 pRight = pList;
152929 pLeft = pList;
153001 char *pList;
153003 int rc = sqlite3Fts3DeferredTokenList(pDeferred, &pList, &nList);
153006 if( pList==0 ){
153008 pPhrase->doclist.pList = 0;
153013 aPoslist = pList;
153017 char *aOut = pList;
153024 aPoslist = pList;
153028 pPhrase->doclist.pList = 0;
153040 pPhrase->doclist.pList = aPoslist;
153052 p2 = pPhrase->doclist.pList;
153055 p1 = pPhrase->doclist.pList;
153066 pPhrase->doclist.pList = aOut;
153069 pPhrase->doclist.nList = (int)(aOut - pPhrase->doclist.pList);
153072 pPhrase->doclist.pList = 0;
153275 pDL->pList = pIter;
153277 pDL->nList = (int)(pIter - pDL->pList);
153300 char *pList;
153326 p->pList = pPhrase->doclist.pList;
153336 pTab, pToken->pSegcsr, &p->iDocid, &p->pList, &p->nList
153338 if( p->pList==0 ) *pbEof = 1;
153381 &pDL->iDocid, &pDL->pList, &pDL->nList
153383 if( pDL->pList==0 ) bEof = 1;
153427 memcpy(aDoclist, a[p->nToken-1].pList, nByte+1);
153431 char *pL = a[i].pList;
153442 pDL->pList = aDoclist;
153480 pDL->pList = pDL->pNextDocid;
153769 char *pList = 0;
153770 rc = fts3TermSelect(pTab, pToken, pTC->iCol, &nList, &pList);
153771 assert( rc==SQLITE_OK || pList==0 );
153774 pTab, pTC->pPhrase, pTC->iToken,pList,nList
153856 sqlite3_free(pPhrase->doclist.pList);
153858 pPhrase->doclist.pList = 0;
153899 assert( pPhrase->doclist.pList );
153901 p2 = pOut = pPhrase->doclist.pList;
153906 nNew = (int)(pOut - pPhrase->doclist.pList) - 1;
153907 assert( pPhrase->doclist.pList[nNew]=='\0' );
153909 memset(&pPhrase->doclist.pList[nNew], 0, pPhrase->doclist.nList - nNew);
153911 *paPoslist = pPhrase->doclist.pList;
154008 memset(pDl->pList, 0, pDl->nList);
154015 memset(pDl->pList, 0, pDl->nList);
154143 char *aPoslist = p->pPhrase->doclist.pList;
154152 aPoslist = pExpr->pRight->pPhrase->doclist.pList;
154256 bHit = (pPhrase->doclist.pList!=0);
154411 if( pPhrase && pPhrase->doclist.pList ){
154413 char *p = pPhrase->doclist.pList;
154631 pIter = pPhrase->doclist.pList;
159033 PendingList *pList; /* Doclist is assembled here */
159656 static void fts3PendingListDelete(PendingList *pList){
159657 sqlite3_free(pList);
159671 PendingList *pList;
159674 pList = (PendingList *)fts3HashFind(pHash, zToken, nToken);
159675 if( pList ){
159676 p->nPendingData -= (pList->nData + nToken + sizeof(Fts3HashElem));
159678 if( fts3PendingListAppend(&pList, p->iPrevDocid, iCol, iPos, &rc) ){
159679 if( pList==fts3HashInsert(pHash, zToken, nToken, pList) ){
159684 sqlite3_free(pList);
159689 p->nPendingData += (pList->nData + nToken + sizeof(Fts3HashElem));
159817 PendingList *pList = (PendingList *)fts3HashData(pElem);
159818 fts3PendingListDelete(pList);
160247 PendingList *pList = (PendingList *)fts3HashData(pElem);
160248 int nCopy = pList->nData+1;
160253 memcpy(aCopy, pList->aData, nCopy);
161504 char *pList = *ppList;
161506 char *pEnd = &pList[nList];
161508 char *p = pList;
161516 nList = (int)(p - pList);
161520 nList -= (int)(p - pList);
161521 pList = p;
161525 p = &pList[1];
161529 if( bZero && &pList[nList]!=pEnd ){
161530 memset(&pList[nList], 0, pEnd - &pList[nList]);
161532 *ppList = pList;
161545 char *pList,
161556 memcpy(pMsr->aBuffer, pList, nList);
161587 char *pList;
161592 rc = fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
161606 rc = fts3MsrBufferData(pMsr, pList, nList+1);
161609 pList = pMsr->aBuffer;
161613 fts3ColumnFilter(pMsr->iColFilter, 1, &pList, &nList);
161617 *paPoslist = pList;
161845 char *pList = 0;
161849 fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
161860 fts3ColumnFilter(pFilter->iCol, 0, &pList, &nList);
161891 nWrite = sqlite3Fts3FirstFilter(iDelta, pList, nList, a);
161900 memcpy(&pCsr->aBuffer[nDoclist], pList, nList);
164256 fts3PendingListDelete(pDef->pList);
164257 pDef->pList = 0;
164270 fts3PendingListDelete(pDef->pList);
164318 fts3PendingListAppend(&pDef->pList, iDocid, i, iPos, &rc);
164328 if( pDef->pList ){
164329 rc = fts3PendingListAppendVarint(&pDef->pList, 0);
164349 if( p->pList==0 ){
164353 pRet = (char *)sqlite3_malloc(p->pList->nData);
164356 nSkip = sqlite3Fts3GetVarint(p->pList->aData, &dummy);
164357 *pnData = p->pList->nData - nSkip;
164360 memcpy(pRet, &p->pList->aData[nSkip], *pnData);
164679 char *pList; /* Pointer to start of phrase position list */
165086 pPhrase->pList = pCsr;
165095 pPhrase->pList==0 && pPhrase->pHead==0 && pPhrase->pTail==0
165472 char *pIter = pPhrase->doclist.pList;
166109 char *pList; /* Position-list */
166129 char *pList; /* Pointer to position list for phrase */
166134 rc = sqlite3Fts3EvalPhrasePoslist(p->pCsr, pExpr, p->iCol, &pList);
166136 if( pList ){
166137 fts3GetDeltaPosition(&pList, &iPos);
166144 pT->pList = pList;
166238 if( pT->pList && (pT->iPos-pT->iOff)<iMinPos ){
166249 if( 0==(0xFE&*pTerm->pList) ){
166250 pTerm->pList = 0;
166252 fts3GetDeltaPosition(&pTerm->pList, &pTerm->iPos);
173981 sqlite3_stmt *pList = 0;
173986 p->rc = prepareFreeAndCollectError(p->dbMain, &pList, &p->zErrmsg,
173992 while( p->rc==SQLITE_OK && SQLITE_ROW==sqlite3_step(pList) ){
173993 const char *zIdx = (const char*)sqlite3_column_text(pList, 1);
174013 rbuFinalize(p, pList);
180464 static void sessionDeleteTable(SessionTable *pList){
180468 for(pTab=pList; pTab; pTab=pNext){
183163 SessionTable *pList; /* List of tables in current patch */
183314 if( pGrp->pList==0 ){
183328 for(pTab = pGrp->pList; pTab; pTab=pTab->pNext){
183350 for(ppTab=&pGrp->pList; *ppTab; ppTab=&(*ppTab)->pNext);
183432 for(pTab=pGrp->pList; rc==SQLITE_OK && pTab; pTab=pTab->pNext){
183545 sessionDeleteTable(pGrp->pList);
194185 Fts5HashEntry *pList;
194209 pList = 0;
194211 pList = fts5HashEntryMerge(pList, ap[i]);
194216 *ppSorted = pList;
196214 const u8 *pList = 0;
196218 sqlite3Fts5HashScanEntry(p->pHash, &zTerm, &pList, &nList);
196219 if( pList==0 ) goto next_none_eof;
196220 pIter->pLeaf->p = (u8*)pList;
196225 pIter->iLeafOffset = fts5GetVarint(pList, (u64*)&pIter->iRowid);
196288 const u8 *pList = 0;
196294 sqlite3Fts5HashScanEntry(p->pHash, &zTerm, &pList, &nList);
196296 if( pList==0 ){
196300 pIter->pLeaf->p = (u8*)pList;
196306 pIter->iLeafOffset = fts5GetVarint(pList, (u64*)&pIter->iRowid);
196735 const u8 *pList = 0;
196745 sqlite3Fts5HashScanEntry(p->pHash, (const char**)&z, &pList, &nList);
196749 sqlite3Fts5HashQuery(p->pHash, (const char*)pTerm, nTerm, &pList, &nList);
196754 if( pList ){
196759 pLeaf->p = (u8*)pList;