• Home
  • Raw
  • Download

Lines Matching refs:pList

17997     ExprList *pList;     /* op = IN, EXISTS, SELECT, CASE, FUNCTION, BETWEEN */  member
29988 pFarg = pExpr->x.pList;
30040 sqlite3TreeViewExprList(pView, pExpr->x.pList, 0, 0);
30059 Expr *pY = pExpr->x.pList->a[0].pExpr;
30060 Expr *pZ = pExpr->x.pList->a[1].pExpr;
30082 sqlite3TreeViewExprList(pView, pExpr->x.pList, 0, 0);
30106 sqlite3TreeViewBareExprList(pView, pExpr->x.pList, z);
30142 const ExprList *pList,
30146 if( pList==0 ){
30151 for(i=0; i<pList->nExpr; i++){
30152 int j = pList->a[i].u.x.iOrderByCol;
30153 char *zName = pList->a[i].zEName;
30154 int moreToFollow = i<pList->nExpr - 1;
30155 if( pList->a[i].eEName!=ENAME_NAME ) zName = 0;
30169 sqlite3TreeViewExpr(pView, pList->a[i].pExpr, moreToFollow);
30178 const ExprList *pList,
30183 sqlite3TreeViewBareExprList(pView, pList, zLabel);
51348 static struct RowSetEntry *rowSetListToTree(struct RowSetEntry *pList){
51353 assert( pList!=0 );
51354 p = pList;
51355 pList = p->pRight;
51357 for(iDepth=1; pList; iDepth++){
51359 p = pList;
51360 pList = p->pRight;
51362 p->pRight = rowSetNDeepTree(&pList, iDepth);
54716 PgHdr *pList; /* List of dirty pages to revert */
54727 pList = sqlite3PcacheDirtyList(pPager->pPCache);
54728 while( pList && rc==SQLITE_OK ){
54729 PgHdr *pNext = pList->pDirty;
54730 rc = pagerUndoCallback((void *)pPager, pList->pgno);
54731 pList = pNext;
54748 PgHdr *pList, /* List of frames to log */
54757 assert( pList );
54760 for(p=pList; p && p->pDirty; p=p->pDirty){
54765 assert( pList->pDirty==0 || isCommit );
54771 PgHdr **ppNext = &pList;
54773 for(p=pList; (*ppNext = p)!=0; p=p->pDirty){
54779 assert( pList );
54785 if( pList->pgno==1 ) pager_write_changecounter(pList);
54787 pPager->pageSize, pList, nTruncate, isCommit, pPager->walSyncFlags
54790 for(p=pList; p; p=p->pDirty){
54796 pList = sqlite3PcacheDirtyList(pPager->pPCache);
54797 for(p=pList; p; p=p->pDirty){
55974 static int pager_write_pagelist(Pager *pPager, PgHdr *pList){
55981 assert( isOpen(pPager->fd) || pList->pDirty==0 );
55998 && (pList->pDirty || pList->pgno>pPager->dbHintSize)
56005 while( rc==SQLITE_OK && pList ){
56006 Pgno pgno = pList->pgno;
56016 if( pgno<=pPager->dbSize && 0==(pList->flags&PGHDR_DONT_WRITE) ){
56020 assert( (pList->flags&PGHDR_NEED_SYNC)==0 );
56021 if( pList->pgno==1 ) pager_write_changecounter(pList);
56023 pData = pList->pData;
56041 sqlite3BackupUpdate(pPager->pBackup, pgno, (u8*)pList->pData);
56044 PAGERID(pPager), pgno, pager_pagehash(pList)));
56050 pager_set_pagehash(pList);
56051 pList = pList->pDirty;
56234 PgHdr *pList = sqlite3PcacheDirtyList(pPager->pPCache);
56236 while( rc==SQLITE_OK && pList ){
56237 PgHdr *pNext = pList->pDirty;
56238 if( pList->nRef==0 ){
56239 rc = pagerStress((void*)pPager, pList);
56241 pList = pNext;
58036 PgHdr *pList;
58039 pList = sqlite3PcacheDirtyList(pPager->pPCache);
58040 if( pList==0 ){
58044 pList = pPageOne;
58045 pList->pDirty = 0;
58048 if( ALWAYS(pList) ){
58049 rc = pagerWalFrames(pPager, pList, pPager->dbSize, 1);
58152 pList = sqlite3PcacheDirtyList(pPager->pPCache);
58157 rc = pager_write_pagelist(pPager, pList);
58180 rc = pager_write_pagelist(pPager, pList);
62777 PgHdr *pList, /* List of dirty pages to write */
62793 assert( pList );
62801 { int cnt; for(cnt=0, p=pList; p; p=p->pDirty, cnt++){}
62874 for(p=pList; p; p=p->pDirty){
62969 for(p=pList; p && rc==SQLITE_OK; p=p->pDirty){
66986 BtShared *pList;
66997 pList = GLOBAL(BtShared*,sqlite3SharedCacheList);
66998 while( ALWAYS(pList) && pList->pNext!=pBt ){
66999 pList=pList->pNext;
67001 if( ALWAYS(pList) ){
67002 pList->pNext = pBt->pNext;
77054 ExprList *pList = 0; /* Function arguments */
77059 pList = p->x.pList;
77060 if( pList ) nVal = pList->nExpr;
77069 if( pList ){
77076 rc = sqlite3ValueFromExpr(db, pList->a[i].pExpr, enc, aff, &apVal[i]);
93872 SorterRecord *pList; /* Linked list of records */
94739 vdbeSorterRecordFree(0, pTask->list.pList);
94930 vdbeSorterRecordFree(0, pSorter->list.pList);
94932 pSorter->list.pList = 0;
95082 static int vdbeSorterSort(SortSubtask *pTask, SorterList *pList){
95091 p = pList->pList;
95097 if( pList->aMemory ){
95098 if( (u8*)p==pList->aMemory ){
95101 assert( p->u.iNext<sqlite3MallocSize(pList->aMemory) );
95102 pNext = (SorterRecord*)&pList->aMemory[p->u.iNext];
95122 pList->pList = p;
95228 static int vdbeSorterListToPMA(SortSubtask *pTask, SorterList *pList){
95236 i64 iSz = pList->szPMA + sqlite3VarintLen(pList->szPMA) + pTask->file.iEof;
95241 assert( pList->szPMA>0 );
95253 vdbeSorterExtendFile(db, pTask->file.pFd, pTask->file.iEof+pList->szPMA+9);
95258 rc = vdbeSorterSort(pTask, pList);
95268 vdbePmaWriteVarint(&writer, pList->szPMA);
95269 for(p=pList->pList; p; p=pNext){
95273 if( pList->aMemory==0 ) sqlite3_free(p);
95275 pList->pList = p;
95280 assert( rc!=SQLITE_OK || pList->pList==0 );
95419 assert( pTask->list.pList==0 );
95426 pSorter->list.pList = 0;
95503 assert( rc!=SQLITE_OK || pSorter->list.pList==0 );
95519 if( pSorter->list.pList ){
95520 iListOff = (u8*)pSorter->list.pList - pSorter->list.aMemory;
95528 pSorter->list.pList = (SorterRecord*)&aNew[iListOff];
95536 if( pSorter->list.pList ){
95537 pNew->u.iNext = (int)((u8*)(pSorter->list.pList) - pSorter->list.aMemory);
95544 pNew->u.pNext = pSorter->list.pList;
95549 pSorter->list.pList = pNew;
96273 if( pSorter->list.pList ){
96286 assert( pSorter->list.pList );
96338 SorterRecord *pFree = pSorter->list.pList;
96339 pSorter->list.pList = pFree->u.pNext;
96342 rc = pSorter->list.pList ? SQLITE_OK : SQLITE_DONE;
96369 *pnKey = pSorter->list.pList->nVal;
96370 pKey = SRVAL(pSorter->list.pList);
97332 static int walkWindowList(Walker *pWalker, Window *pList){
97334 for(pWin=pList; pWin; pWin=pWin->pNextWin){
97383 assert( pExpr->x.pList==0 || pExpr->pRight==0 );
97393 if( pExpr->x.pList ){
97394 if( sqlite3WalkExprList(pWalker, pExpr->x.pList) ) return WRC_Abort;
98052 assert( pExpr->x.pList==0 );
98377 ExprList *pList = pExpr->x.pList; /* The argument list */
98378 int n = pList ? pList->nExpr : 0; /* Number of arguments */
98406 pExpr->iTable = exprProbability(pList->a[1].pExpr);
98549 sqlite3WalkExprList(pWalker, pList);
98654 nRight = sqlite3ExprVectorSize(pExpr->x.pList->a[0].pExpr);
98656 nRight = sqlite3ExprVectorSize(pExpr->x.pList->a[1].pExpr);
99389 ExprList *pList /* The expression list to be analyzed. */
99394 if( pList==0 ) return WRC_Continue;
99402 for(i=0; i<pList->nExpr; i++){
99403 Expr *pExpr = pList->a[i].pExpr;
99481 ExprList *pList /* Expression list to resolve. May be NULL. */
99507 if( pList ) rc = sqlite3ResolveExprListNames(&sNC, pList);
99591 return sqlite3ExprAffinity(pExpr->x.pList->a[0].pExpr);
99647 assert( pExpr->x.pList->nExpr>0 );
99649 pExpr = pExpr->x.pList->a[0].pExpr;
99696 p = p->x.pList->a[0].pExpr;
99709 assert( p->x.pList==0 || p->pRight==0 );
99710 if( p->x.pList!=0
99715 for(i=0; i<p->x.pList->nExpr; i++){
99716 if( ExprHasProperty(p->x.pList->a[i].pExpr, EP_Collate) ){
99717 pNext = p->x.pList->a[i].pExpr;
99936 return pExpr->x.pList->nExpr;
99966 return pVector->x.pList->a[i].pExpr;
100024 if( pVector->op==TK_VECTOR ) pVector = pVector->x.pList->a[iField].pExpr;
100085 *ppExpr = pVector->x.pList->a[iField].pExpr;
100249 }else if( p->x.pList ){
100250 heightOfExprList(p->x.pList, &nHeight);
100251 p->flags |= EP_Propagate & sqlite3ExprListFlags(p->x.pList);
100285 if( p && p->x.pList && !ExprHasProperty(p, EP_xIsSelect) ){
100286 p->flags |= EP_Propagate & sqlite3ExprListFlags(p->x.pList);
100475 ExprList *pList, /* Argument list */
100484 sqlite3ExprListDelete(db, pList); /* Avoid memory leak when malloc fails */
100487 if( pList && pList->nExpr > pParse->db->aLimit[SQLITE_LIMIT_FUNCTION_ARG] ){
100490 pNew->x.pList = pList;
100633 assert( p->x.pList==0 || p->pRight==0 );
100642 sqlite3ExprListDelete(db, p->x.pList);
100732 if( p->pLeft || p->x.pList ){
100852 pNew->x.pList = sqlite3ExprListDup(db, p->x.pList, dupFlags);
101152 ExprList *pList, /* List to which to append. Might be NULL */
101158 if( pList==0 ){
101159 pList = sqlite3DbMallocRawNN(db, sizeof(ExprList) );
101160 if( pList==0 ){
101163 pList->nExpr = 0;
101164 }else if( (pList->nExpr & (pList->nExpr-1))==0 ){
101166 pNew = sqlite3DbRealloc(db, pList,
101167 sizeof(*pList)+(2*(sqlite3_int64)pList->nExpr-1)*sizeof(pList->a[0]));
101171 pList = pNew;
101173 pItem = &pList->a[pList->nExpr++];
101178 return pList;
101183 sqlite3ExprListDelete(db, pList);
101200 ExprList *pList, /* List to which to append. Might be NULL */
101207 int iFirst = pList ? pList->nExpr : 0;
101230 pList = sqlite3ExprListAppend(pParse, pList, pSubExpr);
101231 if( pList ){
101232 assert( pList->nExpr==iFirst+i+1 );
101233 pList->a[pList->nExpr-1].zEName = pColumns->a[i].zName;
101238 if( !db->mallocFailed && pExpr->op==TK_SELECT && ALWAYS(pList!=0) ){
101239 Expr *pFirst = pList->a[iFirst].pExpr;
101256 return pList;
101302 ExprList *pList, /* List to which to add the span. */
101306 assert( pList!=0 || pParse->db->mallocFailed!=0 );
101308 if( pList ){
101310 assert( pList->nExpr>0 );
101311 pItem = &pList->a[pList->nExpr-1];
101337 ExprList *pList, /* List to which to add the span. */
101342 assert( pList!=0 || db->mallocFailed!=0 );
101343 if( pList ){
101344 struct ExprList_item *pItem = &pList->a[pList->nExpr-1];
101345 assert( pList->nExpr>0 );
101373 static SQLITE_NOINLINE void exprListDeleteNN(sqlite3 *db, ExprList *pList){
101374 int i = pList->nExpr;
101375 struct ExprList_item *pItem = pList->a;
101376 assert( pList->nExpr>0 );
101382 sqlite3DbFreeNN(db, pList);
101384 SQLITE_PRIVATE void sqlite3ExprListDelete(sqlite3 *db, ExprList *pList){
101385 if( pList ) exprListDeleteNN(db, pList);
101392 SQLITE_PRIVATE u32 sqlite3ExprListFlags(const ExprList *pList){
101395 assert( pList!=0 );
101396 for(i=0; i<pList->nExpr; i++){
101397 Expr *pExpr = pList->a[i].pExpr;
102211 && (!sqlite3InRhsIsConstant(pX) || pX->x.pList->nExpr<=2)
102451 }else if( ALWAYS(pExpr->x.pList!=0) ){
102461 ExprList *pList = pExpr->x.pList;
102478 for(i=pList->nExpr, pItem=pList->a; i>0; i--, pItem++){
102779 ExprList *pList = pExpr->x.pList;
102790 for(ii=0; ii<pList->nExpr; ii++){
102791 r2 = sqlite3ExprCodeTemp(pParse, pList->a[ii].pExpr, &regToFree);
102792 if( regCkNull && sqlite3ExprCanBeNull(pList->a[ii].pExpr) ){
102796 if( ii<pList->nExpr-1 || destIfNull!=destIfFalse ){
102800 VdbeCoverageIf(v, ii<pList->nExpr-1 && op==OP_Eq);
102801 VdbeCoverageIf(v, ii==pList->nExpr-1 && op==OP_Eq);
102802 VdbeCoverageIf(v, ii<pList->nExpr-1 && op==OP_NotNull);
102803 VdbeCoverageIf(v, ii==pList->nExpr-1 && op==OP_NotNull);
103168 sqlite3ExprCodeFactorable(pParse, p->x.pList->a[i].pExpr, i+iResult);
103224 caseExpr.x.pList = pFarg;
103669 pFarg = pExpr->x.pList;
103958 assert( !ExprHasProperty(pExpr, EP_xIsSelect) && pExpr->x.pList );
103959 assert(pExpr->x.pList->nExpr > 0);
103960 pEList = pExpr->x.pList;
104210 ExprList *pList, /* The expression list to be coded */
104219 assert( pList!=0 );
104222 n = pList->nExpr;
104224 for(pItem=pList->a, i=0; i<n; i++, pItem++){
104309 compLeft.pRight = pExpr->x.pList->a[0].pExpr;
104312 compRight.pRight = pExpr->x.pList->a[1].pExpr;
104796 if( sqlite3ExprListCompare(pA->x.pList, pB->x.pList, iTab) ) return 2;
104875 || (p->x.pList!=0 && p->x.pList->nExpr>0) );
104879 ExprList *pList = p->x.pList;
104880 assert( pList!=0 );
104881 assert( pList->nExpr==2 );
104883 if( exprImpliesNotNull(pParse, pList->a[0].pExpr, pNN, iTab, 1)
104884 || exprImpliesNotNull(pParse, pList->a[1].pExpr, pNN, iTab, 1)
105221 sqlite3WalkExprList(&w, pExpr->x.pList);
105429 pExpr->x.pList ? pExpr->x.pList->nExpr : 0, enc, 0);
105479 SQLITE_PRIVATE void sqlite3ExprAnalyzeAggList(NameContext *pNC, ExprList *pList){
105482 if( pList ){
105483 for(pItem=pList->a, i=0; i<pList->nExpr; i++, pItem++){
106234 RenameToken *pList; /* List of tokens to overwrite */
106379 ExprList *pList = p->pEList;
106380 for(i=0; i<pList->nExpr; i++){
106381 if( pList->a[i].zEName && pList->a[i].eEName==ENAME_NAME ){
106382 sqlite3RenameTokenRemap(pParse, 0, (void*)pList->a[i].zEName);
106459 pToken->pNext = pCtx->pList;
106460 pCtx->pList = pToken;
106513 RenameToken *pBest = pCtx->pList;
106520 for(pp=&pCtx->pList; *pp!=pBest; pp=&(*pp)->pNext);
106700 while( pRename->pList ){
107036 renameTokenFree(db, sCtx.pList);
107225 renameTokenFree(db, sCtx.pList);
109715 SrcList *pList /* The Source list to check and modify */
109722 if( NEVER(pList==0) ) return 0;
109724 for(i=0, pItem=pList->a; i<pList->nSrc; i++, pItem++){
109804 if( sqlite3FixExprList(pFix, pExpr->x.pList) ) return 1;
109815 ExprList *pList /* The expression to be fixed to one database */
109819 if( pList==0 ) return 0;
109820 for(i=0, pItem=pList->a; i<pList->nExpr; i++, pItem++){
111665 ExprList *pList, /* List of field names to be indexed */
111681 if( pList==0 ){
111687 nTerm = pList->nExpr;
111689 Expr *pCExpr = sqlite3ExprSkipCollate(pList->a[i].pExpr);
111709 if( IN_RENAME_OBJECT && pList ){
111710 Expr *pCExpr = sqlite3ExprSkipCollate(pList->a[0].pExpr);
111717 if( pList ) pParse->iPkSortOrder = pList->a[0].sortFlags;
111718 (void)sqlite3HasExplicitNulls(pParse, pList);
111725 sqlite3CreateIndex(pParse, 0, 0, 0, pList, onError, 0,
111727 pList = 0;
111731 sqlite3ExprListDelete(pParse->db, pList);
112187 ExprList *pList;
112190 pList = sqlite3ExprListAppend(pParse, 0,
112192 if( pList==0 ) return;
112194 sqlite3RenameTokenRemap(pParse, pList->a[0].pExpr, &pTab->iPKey);
112196 pList->a[0].sortFlags = pParse->iPkSortOrder;
112199 sqlite3CreateIndex(pParse, 0, 0, 0, pList, pTab->keyConf, 0, 0, 0, 0,
112355 static void markExprListImmutable(ExprList *pList){
112356 if( pList ){
112362 sqlite3WalkExprList(&w, pList);
113573 SQLITE_PRIVATE int sqlite3HasExplicitNulls(Parse *pParse, ExprList *pList){
113574 if( pList ){
113576 for(i=0; i<pList->nExpr; i++){
113577 if( pList->a[i].bNulls ){
113578 u8 sf = pList->a[i].sortFlags;
113606 ExprList *pList, /* A list of columns to be indexed */
113640 if( sqlite3HasExplicitNulls(pParse, pList) ){
113798 if( pList==0 ){
113803 pList = sqlite3ExprListAppend(pParse, 0,
113805 if( pList==0 ) goto exit_create_index;
113806 assert( pList->nExpr==1 );
113807 sqlite3ExprListSetSortOrder(pList, sortOrder, SQLITE_SO_UNDEFINED);
113809 sqlite3ExprListCheckLength(pParse, pList, "index");
113816 for(i=0; i<pList->nExpr; i++){
113817 Expr *pExpr = pList->a[i].pExpr;
113829 assert( pList->nExpr + nExtraCol <= 32767 /* Fits in i16 */ );
113830 pIndex = sqlite3AllocateIndexObject(db, pList->nExpr + nExtraCol,
113845 pIndex->nKeyCol = pList->nExpr;
113870 pListItem = pList->a;
113872 pIndex->aColExpr = pList;
113873 pList = 0;
113891 pIndex->aColExpr = pList;
113892 pList = 0;
114174 sqlite3ExprListDelete(db, pList);
114340 SQLITE_PRIVATE IdList *sqlite3IdListAppend(Parse *pParse, IdList *pList, Token *pToken){
114343 if( pList==0 ){
114344 pList = sqlite3DbMallocZero(db, sizeof(IdList) );
114345 if( pList==0 ) return 0;
114347 pList->a = sqlite3ArrayAllocate(
114349 pList->a,
114350 sizeof(pList->a[0]),
114351 &pList->nId,
114355 sqlite3IdListDelete(db, pList);
114358 pList->a[i].zName = sqlite3NameFromToken(db, pToken);
114359 if( IN_RENAME_OBJECT && pList->a[i].zName ){
114360 sqlite3RenameTokenMap(pParse, (void*)pList->a[i].zName, pToken);
114362 return pList;
114368 SQLITE_PRIVATE void sqlite3IdListDelete(sqlite3 *db, IdList *pList){
114370 if( pList==0 ) return;
114371 for(i=0; i<pList->nId; i++){
114372 sqlite3DbFree(db, pList->a[i].zName);
114374 sqlite3DbFree(db, pList->a);
114375 sqlite3DbFreeNN(db, pList);
114382 SQLITE_PRIVATE int sqlite3IdListIndex(IdList *pList, const char *zName){
114384 if( pList==0 ) return -1;
114385 for(i=0; i<pList->nId; i++){
114386 if( sqlite3StrICmp(pList->a[i].zName, zName)==0 ) return i;
114514 SrcList *pList, /* Append to this SrcList. NULL creates a new SrcList */
114524 if( pList==0 ){
114525 pList = sqlite3DbMallocRawNN(pParse->db, sizeof(SrcList) );
114526 if( pList==0 ) return 0;
114527 pList->nAlloc = 1;
114528 pList->nSrc = 1;
114529 memset(&pList->a[0], 0, sizeof(pList->a[0]));
114530 pList->a[0].iCursor = -1;
114532 SrcList *pNew = sqlite3SrcListEnlarge(pParse, pList, 1, pList->nSrc);
114534 sqlite3SrcListDelete(db, pList);
114537 pList = pNew;
114540 pItem = &pList->a[pList->nSrc-1];
114551 return pList;
114557 SQLITE_PRIVATE void sqlite3SrcListAssignCursors(Parse *pParse, SrcList *pList){
114560 assert(pList || pParse->db->mallocFailed );
114561 if( pList ){
114562 for(i=0, pItem=pList->a; i<pList->nSrc; i++, pItem++){
114575 SQLITE_PRIVATE void sqlite3SrcListDelete(sqlite3 *db, SrcList *pList){
114578 if( pList==0 ) return;
114579 for(pItem=pList->a, i=0; i<pList->nSrc; i++, pItem++){
114590 sqlite3DbFreeNN(db, pList);
114684 SQLITE_PRIVATE void sqlite3SrcListFuncArgs(Parse *pParse, SrcList *p, ExprList *pList){
114690 pItem->u1.pFuncArg = pList;
114693 sqlite3ExprListDelete(pParse->db, pList);
115980 pLhs->x.pList = sqlite3ExprListDup(db, pEList, 0);
118615 if( pExpr->op!=TK_FUNCTION || !pExpr->x.pList ){
118619 nExpr = pExpr->x.pList->nExpr;
118640 Expr *pEscape = pExpr->x.pList->a[2].pExpr;
120010 ExprList *pList = 0; /* Changes list if ON UPDATE CASCADE */
120087 pList = sqlite3ExprListAppend(pParse, pList, pNew);
120088 sqlite3ExprListSetName(pParse, pList, &tFromCol, 0);
120129 pStep->pExprList = sqlite3ExprListDup(db, pList, EXPRDUP_REDUCE);
120142 sqlite3ExprListDelete(db, pList);
120897 ExprList *pList = 0; /* List of VALUES() to be inserted */
120926 pList = pSelect->pEList;
120996 assert( pList==0 );
121150 if( pList ){
121151 nColumn = pList->nExpr;
121152 if( sqlite3ResolveExprListNames(&sNC, pList) ){
121352 sqlite3ExprCode(pParse, pList->a[k].pExpr, iRegStore);
121378 sqlite3ExprCode(pParse, pList->a[ipkColumn].pExpr, regCols);
121435 Expr *pIpk = pList->a[ipkColumn].pExpr;
121440 sqlite3ExprCode(pParse, pList->a[ipkColumn].pExpr, regRowid);
121567 sqlite3ExprListDelete(db, pList);
129365 if( p->op==TK_FUNCTION && p->x.pList ){
129367 for(i=0; i<p->x.pList->nExpr; i++){
129368 sqlite3SetJoinExpr(p->x.pList->a[i].pExpr, iTable);
129388 if( p->op==TK_FUNCTION && p->x.pList ){
129390 for(i=0; i<p->x.pList->nExpr; i++){
129391 unsetJoinExpr(p->x.pList->a[i].pExpr, iTable);
129477 IdList *pList = pRight->pUsing;
129478 for(j=0; j<pList->nId; j++){
129484 zName = pList->a[j].zName;
130313 ExprList *pList, /* Form the KeyInfo object from this ExprList */
130323 nExpr = pList->nExpr;
130327 for(i=iStart, pItem=pList->a+iStart; i<nExpr; i++, pItem++){
132487 substExprList(pSubst, pExpr->x.pList);
132502 ExprList *pList /* List to scan and in which to make substitutes */
132505 if( pList==0 ) return;
132506 for(i=0; i<pList->nExpr; i++){
132507 pList->a[i].pExpr = substExpr(pSubst, pList->a[i].pExpr);
133460 ExprList *pEList = pFunc->x.pList; /* Arguments to agg function */
134344 if( pE->x.pList==0 || pE->x.pList->nExpr!=1 ){
134349 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pE->x.pList,0,0);
134366 ExprList *pList = pF->pExpr->x.pList;
134368 sqlite3VdbeAddOp2(v, OP_AggFinal, pF->iMem, pList ? pList->nExpr : 0);
134396 ExprList *pList = pF->pExpr->x.pList;
134417 if( pList ){
134418 nArg = pList->nExpr;
134420 sqlite3ExprCodeExprList(pParse, pList, regAgg, 0, SQLITE_ECEL_DUP);
134437 assert( pList!=0 ); /* pList!=0 if pF->pFunc has NEEDCOLL */
134438 for(j=0, pItem=pList->a; !pColl && j<nArg; j++, pItem++){
134623 if( pExpr->x.pList!=0 ) return 0; /* Must be count(*) */
135346 sqlite3ExprAnalyzeAggList(&sNC, pExpr->x.pList);
136038 Trigger *pList = 0; /* List of triggers to return */
136052 pTrig->pNext = (pList ? pList : pTab->pTrigger);
136053 pList = pTrig;
136058 return (pList ? pList : pTab->pTrigger);
136697 Trigger *pList = 0;
136701 pList = sqlite3TriggerList(pParse, pTab);
136703 assert( pList==0 || IsVirtual(pTab)==0 );
136704 for(p=pList; p; p=p->pNext){
136712 return (mask ? pList : 0);
141300 ExprList *pOrigLhs = pNew->pLeft->x.pList; /* Original unmodified LHS */
141319 pNew->pLeft->x.pList = pLhs;
141972 ExprList *pList = p->x.pList;
141973 assert( nReg<=pList->nExpr );
141975 sqlite3ExprCode(pParse, pList->a[i].pExpr, iReg+i);
143535 ExprList *pList; /* List of operands to the LIKE operator */
143550 pList = pExpr->x.pList;
143551 pLeft = pList->a[1].pExpr;
143553 pRight = sqlite3ExprSkipCollate(pList->a[0].pExpr);
143715 ExprList *pList;
143719 pList = pExpr->x.pList;
143720 if( pList==0 || pList->nExpr!=2 ){
143731 pCol = pList->a[1].pExpr;
143737 *ppRight = pList->a[0].pExpr;
143754 pCol = pList->a[0].pExpr;
143769 *ppRight = pList->a[1].pExpr;
144202 ExprList *pList = 0; /* The RHS of the IN operator */
144212 pList = sqlite3ExprListAppend(pWInfo->pParse, pList, pDup);
144222 pNew->x.pList = pList;
144229 sqlite3ExprListDelete(db, pList);
144349 pExpr = pExpr->x.pList->a[0].pExpr;
144416 pTerm->prereqRight = sqlite3WhereExprListUsage(pMaskSet, pExpr->x.pList);
144449 pLeft = pLeft->x.pList->a[pTerm->iField-1].pExpr;
144515 ExprList *pList = pExpr->x.pList;
144518 assert( pList!=0 );
144519 assert( pList->nExpr==2 );
144525 sqlite3ExprDup(db, pList->a[i].pExpr, 0));
144573 pLeft = pExpr->x.pList->a[1].pExpr;
144872 assert( p->x.pList==0 );
144876 }else if( p->x.pList ){
144877 mask |= sqlite3WhereExprListUsage(pMaskSet, p->x.pList);
144891 SQLITE_PRIVATE Bitmask sqlite3WhereExprListUsage(WhereMaskSet *pMaskSet, ExprList *pList){
144894 if( pList ){
144895 for(i=0; i<pList->nExpr; i++){
144896 mask |= sqlite3WhereExprUsage(pMaskSet, pList->a[i].pExpr);
145418 ExprList *pList, /* Expression list to search */
145426 for(i=0; i<pList->nExpr; i++){
145427 Expr *p = sqlite3ExprSkipCollateAndLikely(pList->a[i].pExpr);
145432 CollSeq *pColl = sqlite3ExprNNCollSeq(pParse, pList->a[i].pExpr);
146675 ExprList *pList, /* The value list on the RHS of "x IN (v1,v2,v3,...)" */
146687 for(i=0; rc==SQLITE_OK && i<pList->nExpr; i++){
146689 rc = whereEqualScanEst(pParse, pBuilder, pList->a[i].pExpr, &nEst);
147324 Expr *pLhs = pTerm->pExpr->pLeft->x.pList->a[i].pExpr;
147329 pRhs = pRhs->x.pList->a[i].pExpr;
147498 }else if( ALWAYS(pExpr->x.pList && pExpr->x.pList->nExpr) ){
147500 nIn = sqlite3LogEst(pExpr->x.pList->nExpr);
147625 rc = whereInScanEst(pParse, pBuilder, pExpr->x.pList, &nOut);
151138 static Window *windowFind(Parse *pParse, Window *pList, const char *zName){
151140 for(p=pList; p; p=p->pNextWin){
151168 Window *pList, /* List of named windows for this SELECT */
151173 Window *p = windowFind(pParse, pList, pWin->zName);
151184 sqlite3WindowChain(pParse, pWin, pList);
151397 ExprList *pList, /* List to which to append. Might be NULL */
151403 int nInit = pList ? pList->nExpr : 0;
151419 pList = sqlite3ExprListAppend(pParse, pList, pDup);
151420 if( pList ) pList->a[nInit+i].sortFlags = pAppend->a[i].sortFlags;
151423 return pList;
151520 ExprList *pArgs = pWin->pOwner->x.pList;
151752 SQLITE_PRIVATE void sqlite3WindowChain(Parse *pParse, Window *pWin, Window *pList){
151755 Window *pExist = windowFind(pParse, pList, pWin->zBase);
151899 ExprList *pList = pWin->pOwner->x.pList;
151900 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pList, 0, 0);
151987 ExprList *pList = pWin->pOwner->x.pList;
151988 return (pList ? pList->nExpr : 0);
152171 assert( pWin->bExprArgs || !nArg ||nArg==pWin->pOwner->x.pList->nExpr );
152172 assert( pWin->bExprArgs || nArg ||pWin->pOwner->x.pList==0 );
152184 nArg = pWin->pOwner->x.pList->nExpr;
152186 sqlite3ExprCodeExprList(pParse, pWin->pOwner->x.pList, regArg, 0, 0);
152198 pColl = sqlite3ExprNNCollSeq(pParse, pWin->pOwner->x.pList->a[0].pExpr);
152407 int nArg = pWin->pOwner->x.pList->nExpr;
153677 p->x.pList = 0;
157633 ExprList *pList = sqlite3ExprListAppend(pParse, yymsp[-3].minor.yy242, yymsp[-1].minor.yy202);
157636 yymsp[-4].minor.yy202->x.pList = pList;
157637 if( ALWAYS(pList->nExpr) ){
157638 yymsp[-4].minor.yy202->flags |= pList->a[0].pExpr->flags & EP_Propagate;
157641 sqlite3ExprListDelete(pParse->db, pList);
157662 ExprList *pList;
157665 pList = sqlite3ExprListAppend(pParse,0, yymsp[0].minor.yy202);
157666 pList = sqlite3ExprListAppend(pParse,pList, yymsp[-2].minor.yy202);
157667 yymsp[-2].minor.yy202 = sqlite3ExprFunction(pParse, pList, &yymsp[-1].minor.yy0, 0);
157674 ExprList *pList;
157677 pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy202);
157678 pList = sqlite3ExprListAppend(pParse,pList, yymsp[-4].minor.yy202);
157679 pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy202);
157680 yymsp[-4].minor.yy202 = sqlite3ExprFunction(pParse, pList, &yymsp[-3].minor.yy0, 0);
157719 ExprList *pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy202);
157720 pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy202);
157723 yymsp[-4].minor.yy202->x.pList = pList;
157725 sqlite3ExprListDelete(pParse->db, pList);
157753 yymsp[-4].minor.yy202->x.pList = yymsp[-1].minor.yy242;
157796 …yymsp[-4].minor.yy202->x.pList = yymsp[-1].minor.yy202 ? sqlite3ExprListAppend(pParse,yymsp[-2].mi…
166211 char *pList; /* Pointer to position list following iDocid */
168942 char *pList, /* Position list (no 0x00 term) */
168948 char *p = pList;
168949 char *pEnd = &pList[nList];
170382 char *pList, /* Pointer to doclist */
170388 if( pList==0 ){
170395 p->doclist.aAll = pList;
170400 sqlite3_free(pList);
170413 pRight = pList;
170419 pLeft = pList;
170492 char *pList;
170494 int rc = sqlite3Fts3DeferredTokenList(pDeferred, &pList, &nList);
170497 if( pList==0 ){
170499 pPhrase->doclist.pList = 0;
170504 aPoslist = pList;
170508 char *aOut = pList;
170515 aPoslist = pList;
170519 pPhrase->doclist.pList = 0;
170531 pPhrase->doclist.pList = aPoslist;
170543 p2 = pPhrase->doclist.pList;
170546 p1 = pPhrase->doclist.pList;
170557 pPhrase->doclist.pList = aOut;
170560 pPhrase->doclist.nList = (int)(aOut - pPhrase->doclist.pList);
170563 pPhrase->doclist.pList = 0;
170768 pDL->pList = pIter;
170770 pDL->nList = (int)(pIter - pDL->pList);
170793 char *pList;
170819 p->pList = pPhrase->doclist.pList;
170829 pTab, pToken->pSegcsr, &p->iDocid, &p->pList, &p->nList
170831 if( p->pList==0 ) *pbEof = 1;
170874 &pDL->iDocid, &pDL->pList, &pDL->nList
170876 if( pDL->pList==0 ) bEof = 1;
170920 memcpy(aDoclist, a[p->nToken-1].pList, nByte+1);
170925 char *pL = a[i].pList;
170936 pDL->pList = aDoclist;
170974 pDL->pList = pDL->pNextDocid;
171264 char *pList = 0;
171265 rc = fts3TermSelect(pTab, pToken, pTC->iCol, &nList, &pList);
171266 assert( rc==SQLITE_OK || pList==0 );
171269 pTab, pTC->pPhrase, pTC->iToken,pList,nList
171351 sqlite3_free(pPhrase->doclist.pList);
171353 pPhrase->doclist.pList = 0;
171394 assert( pPhrase->doclist.pList );
171396 p2 = pOut = pPhrase->doclist.pList;
171401 nNew = (int)(pOut - pPhrase->doclist.pList) - 1;
171402 assert( pPhrase->doclist.pList[nNew]=='\0' );
171404 memset(&pPhrase->doclist.pList[nNew], 0, pPhrase->doclist.nList - nNew);
171406 *paPoslist = pPhrase->doclist.pList;
171503 memset(pDl->pList, 0, pDl->nList);
171510 memset(pDl->pList, 0, pDl->nList);
171639 char *aPoslist = p->pPhrase->doclist.pList;
171648 aPoslist = pExpr->pRight->pPhrase->doclist.pList;
171752 bHit = (pPhrase->doclist.pList!=0);
171907 if( pPhrase && pPhrase->doclist.pList ){
171909 char *p = pPhrase->doclist.pList;
172126 pIter = pPhrase->doclist.pList;
176513 PendingList *pList; /* Doclist is assembled here */
177137 static void fts3PendingListDelete(PendingList *pList){
177138 sqlite3_free(pList);
177152 PendingList *pList;
177155 pList = (PendingList *)fts3HashFind(pHash, zToken, nToken);
177156 if( pList ){
177157 p->nPendingData -= (pList->nData + nToken + sizeof(Fts3HashElem));
177159 if( fts3PendingListAppend(&pList, p->iPrevDocid, iCol, iPos, &rc) ){
177160 if( pList==fts3HashInsert(pHash, zToken, nToken, pList) ){
177165 sqlite3_free(pList);
177170 p->nPendingData += (pList->nData + nToken + sizeof(Fts3HashElem));
177298 PendingList *pList = (PendingList *)fts3HashData(pElem);
177299 fts3PendingListDelete(pList);
177730 PendingList *pList = (PendingList *)fts3HashData(pElem);
177731 int nCopy = pList->nData+1;
177736 memcpy(aCopy, pList->aData, nCopy);
179012 char *pList = *ppList;
179014 char *pEnd = &pList[nList];
179016 char *p = pList;
179024 nList = (int)(p - pList);
179028 nList -= (int)(p - pList);
179029 pList = p;
179033 p = &pList[1];
179037 if( bZero && (pEnd - &pList[nList])>0){
179038 memset(&pList[nList], 0, pEnd - &pList[nList]);
179040 *ppList = pList;
179053 char *pList,
179065 memcpy(pMsr->aBuffer, pList, nList);
179096 char *pList;
179101 rc = fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
179115 rc = fts3MsrBufferData(pMsr, pList, nList+1);
179118 pList = pMsr->aBuffer;
179122 fts3ColumnFilter(pMsr->iColFilter, 1, &pList, &nList);
179126 *paPoslist = pList;
179354 char *pList = 0;
179358 fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
179369 fts3ColumnFilter(pFilter->iCol, 0, &pList, &nList);
179400 nWrite = sqlite3Fts3FirstFilter(iDelta, pList, nList, a);
179409 memcpy(&pCsr->aBuffer[nDoclist], pList, nList);
181829 fts3PendingListDelete(pDef->pList);
181830 pDef->pList = 0;
181843 fts3PendingListDelete(pDef->pList);
181891 fts3PendingListAppend(&pDef->pList, iDocid, i, iPos, &rc);
181901 if( pDef->pList ){
181902 rc = fts3PendingListAppendVarint(&pDef->pList, 0);
181922 if( p->pList==0 ){
181926 pRet = (char *)sqlite3_malloc(p->pList->nData);
181929 nSkip = sqlite3Fts3GetVarint(p->pList->aData, &dummy);
181930 *pnData = p->pList->nData - nSkip;
181933 memcpy(pRet, &p->pList->aData[nSkip], *pnData);
182250 char *pList; /* Pointer to start of phrase position list */
182660 pPhrase->pList = pCsr;
182672 pPhrase->pList==0 && pPhrase->pHead==0 && pPhrase->pTail==0
183050 char *pIter = pPhrase->doclist.pList;
183722 char *pList; /* Position-list */
183742 char *pList; /* Pointer to position list for phrase */
183747 rc = sqlite3Fts3EvalPhrasePoslist(p->pCsr, pExpr, p->iCol, &pList);
183749 if( pList ){
183750 fts3GetDeltaPosition(&pList, &iPos);
183757 pT->pList = pList;
183851 if( pT->pList && (pT->iPos-pT->iOff)<iMinPos ){
183862 if( 0==(0xFE&*pTerm->pList) ){
183863 pTerm->pList = 0;
183865 fts3GetDeltaPosition(&pTerm->pList, &pTerm->iPos);
192725 static GeoSegment *geopolySortSegmentsByYAndC(GeoSegment *pList){
192730 while( pList ){
192731 p = pList;
192732 pList = pList->pNext;
196380 sqlite3_stmt *pList = 0;
196385 p->rc = prepareFreeAndCollectError(p->dbMain, &pList, &p->zErrmsg,
196391 while( p->rc==SQLITE_OK && SQLITE_ROW==sqlite3_step(pList) ){
196392 const char *zIdx = (const char*)sqlite3_column_text(pList, 1);
196393 int bPartial = sqlite3_column_int(pList, 4);
196419 rbuFinalize(p, pList);
203411 static void sessionDeleteTable(SessionTable *pList){
203415 for(pTab=pList; pTab; pTab=pNext){
206304 SessionTable *pList; /* List of tables in current patch */
206514 if( pGrp->pList==0 ){
206528 for(pTab = pGrp->pList; pTab; pTab=pTab->pNext){
206550 for(ppTab=&pGrp->pList; *ppTab; ppTab=&(*ppTab)->pNext);
206632 for(pTab=pGrp->pList; rc==SQLITE_OK && pTab; pTab=pTab->pNext){
206744 sessionDeleteTable(pGrp->pList);
206958 for(pTab=p->grp.pList; pTab; pTab=pTab->pNext){
207145 sessionDeleteTable(p->grp.pList);
215497 Fts5HashEntry *pList;
215523 pList = 0;
215525 pList = fts5HashEntryMerge(pList, ap[i]);
215530 *ppSorted = pList;
217541 const u8 *pList = 0;
217545 sqlite3Fts5HashScanEntry(p->pHash, &zTerm, &pList, &nList);
217546 if( pList==0 ) goto next_none_eof;
217547 pIter->pLeaf->p = (u8*)pList;
217552 pIter->iLeafOffset = fts5GetVarint(pList, (u64*)&pIter->iRowid);
217615 const u8 *pList = 0;
217621 sqlite3Fts5HashScanEntry(p->pHash, &zTerm, &pList, &nList);
217623 if( pList==0 ){
217627 pIter->pLeaf->p = (u8*)pList;
217633 pIter->iLeafOffset = fts5GetVarint(pList, (u64*)&pIter->iRowid);
218076 const u8 *pList = 0;
218079 sqlite3Fts5HashScanEntry(p->pHash, (const char**)&z, &pList, &nList);
218081 if( pList ){
218084 pLeaf->p = (u8*)pList;