• Home
  • Raw
  • Download

Lines Matching refs:pList

17386     ExprList *pList;     /* op = IN, EXISTS, SELECT, CASE, FUNCTION, BETWEEN */  member
29068 pFarg = pExpr->x.pList;
29108 sqlite3TreeViewExprList(pView, pExpr->x.pList, 0, 0);
29127 Expr *pY = pExpr->x.pList->a[0].pExpr;
29128 Expr *pZ = pExpr->x.pList->a[1].pExpr;
29150 sqlite3TreeViewExprList(pView, pExpr->x.pList, 0, 0);
29173 sqlite3TreeViewBareExprList(pView, pExpr->x.pList, "VECTOR");
29208 const ExprList *pList,
29212 if( pList==0 ){
29217 for(i=0; i<pList->nExpr; i++){
29218 int j = pList->a[i].u.x.iOrderByCol;
29219 char *zName = pList->a[i].zName;
29220 int moreToFollow = i<pList->nExpr - 1;
29234 sqlite3TreeViewExpr(pView, pList->a[i].pExpr, moreToFollow);
29243 const ExprList *pList,
29248 sqlite3TreeViewBareExprList(pView, pList, zLabel);
50304 static struct RowSetEntry *rowSetListToTree(struct RowSetEntry *pList){
50309 assert( pList!=0 );
50310 p = pList;
50311 pList = p->pRight;
50313 for(iDepth=1; pList; iDepth++){
50315 p = pList;
50316 pList = p->pRight;
50318 p->pRight = rowSetNDeepTree(&pList, iDepth);
53746 PgHdr *pList; /* List of dirty pages to revert */
53757 pList = sqlite3PcacheDirtyList(pPager->pPCache);
53758 while( pList && rc==SQLITE_OK ){
53759 PgHdr *pNext = pList->pDirty;
53760 rc = pagerUndoCallback((void *)pPager, pList->pgno);
53761 pList = pNext;
53778 PgHdr *pList, /* List of frames to log */
53787 assert( pList );
53790 for(p=pList; p && p->pDirty; p=p->pDirty){
53795 assert( pList->pDirty==0 || isCommit );
53801 PgHdr **ppNext = &pList;
53803 for(p=pList; (*ppNext = p)!=0; p=p->pDirty){
53809 assert( pList );
53815 if( pList->pgno==1 ) pager_write_changecounter(pList);
53817 pPager->pageSize, pList, nTruncate, isCommit, pPager->walSyncFlags
53820 for(p=pList; p; p=p->pDirty){
53826 pList = sqlite3PcacheDirtyList(pPager->pPCache);
53827 for(p=pList; p; p=p->pDirty){
55010 static int pager_write_pagelist(Pager *pPager, PgHdr *pList){
55017 assert( isOpen(pPager->fd) || pList->pDirty==0 );
55034 && (pList->pDirty || pList->pgno>pPager->dbHintSize)
55041 while( rc==SQLITE_OK && pList ){
55042 Pgno pgno = pList->pgno;
55052 if( pgno<=pPager->dbSize && 0==(pList->flags&PGHDR_DONT_WRITE) ){
55056 assert( (pList->flags&PGHDR_NEED_SYNC)==0 );
55057 if( pList->pgno==1 ) pager_write_changecounter(pList);
55060 CODEC2(pPager, pList->pData, pgno, 6, return SQLITE_NOMEM_BKPT, pData);
55078 sqlite3BackupUpdate(pPager->pBackup, pgno, (u8*)pList->pData);
55081 PAGERID(pPager), pgno, pager_pagehash(pList)));
55087 pager_set_pagehash(pList);
55088 pList = pList->pDirty;
55277 PgHdr *pList = sqlite3PcacheDirtyList(pPager->pPCache);
55279 while( rc==SQLITE_OK && pList ){
55280 PgHdr *pNext = pList->pDirty;
55281 if( pList->nRef==0 ){
55282 rc = pagerStress((void*)pPager, pList);
55284 pList = pNext;
56998 PgHdr *pList;
57001 pList = sqlite3PcacheDirtyList(pPager->pPCache);
57002 if( pList==0 ){
57006 pList = pPageOne;
57007 pList->pDirty = 0;
57010 if( ALWAYS(pList) ){
57011 rc = pagerWalFrames(pPager, pList, pPager->dbSize, 1);
57114 pList = sqlite3PcacheDirtyList(pPager->pPCache);
57119 rc = pager_write_pagelist(pPager, pList);
57142 rc = pager_write_pagelist(pPager, pList);
61636 PgHdr *pList, /* List of dirty pages to write */
61652 assert( pList );
61660 { int cnt; for(cnt=0, p=pList; p; p=p->pDirty, cnt++){}
61733 for(p=pList; p; p=p->pDirty){
61831 for(p=pList; p && rc==SQLITE_OK; p=p->pDirty){
65817 BtShared *pList;
65828 pList = GLOBAL(BtShared*,sqlite3SharedCacheList);
65829 while( ALWAYS(pList) && pList->pNext!=pBt ){
65830 pList=pList->pNext;
65832 if( ALWAYS(pList) ){
65833 pList->pNext = pBt->pNext;
75775 ExprList *pList = 0; /* Function arguments */
75780 pList = p->x.pList;
75781 if( pList ) nVal = pList->nExpr;
75790 if( pList ){
75797 rc = sqlite3ValueFromExpr(db, pList->a[i].pExpr, enc, aff, &apVal[i]);
91917 SorterRecord *pList; /* Linked list of records */
92781 vdbeSorterRecordFree(0, pTask->list.pList);
92972 vdbeSorterRecordFree(0, pSorter->list.pList);
92974 pSorter->list.pList = 0;
93124 static int vdbeSorterSort(SortSubtask *pTask, SorterList *pList){
93133 p = pList->pList;
93143 if( pList->aMemory ){
93144 if( (u8*)p==pList->aMemory ){
93147 assert( p->u.iNext<sqlite3MallocSize(pList->aMemory) );
93148 pNext = (SorterRecord*)&pList->aMemory[p->u.iNext];
93168 pList->pList = p;
93275 static int vdbeSorterListToPMA(SortSubtask *pTask, SorterList *pList){
93283 i64 iSz = pList->szPMA + sqlite3VarintLen(pList->szPMA) + pTask->file.iEof;
93288 assert( pList->szPMA>0 );
93300 vdbeSorterExtendFile(db, pTask->file.pFd, pTask->file.iEof+pList->szPMA+9);
93305 rc = vdbeSorterSort(pTask, pList);
93315 vdbePmaWriteVarint(&writer, pList->szPMA);
93316 for(p=pList->pList; p; p=pNext){
93320 if( pList->aMemory==0 ) sqlite3_free(p);
93322 pList->pList = p;
93327 assert( rc!=SQLITE_OK || pList->pList==0 );
93465 assert( pTask->list.pList==0 );
93470 pSorter->list.pList = 0;
93547 assert( rc!=SQLITE_OK || pSorter->list.pList==0 );
93563 if( pSorter->list.pList ){
93564 iListOff = (u8*)pSorter->list.pList - pSorter->list.aMemory;
93572 pSorter->list.pList = (SorterRecord*)&aNew[iListOff];
93580 if( pSorter->list.pList ){
93581 pNew->u.iNext = (int)((u8*)(pSorter->list.pList) - pSorter->list.aMemory);
93588 pNew->u.pNext = pSorter->list.pList;
93593 pSorter->list.pList = pNew;
94317 if( pSorter->list.pList ){
94330 assert( pSorter->list.pList );
94382 SorterRecord *pFree = pSorter->list.pList;
94383 pSorter->list.pList = pFree->u.pNext;
94386 rc = pSorter->list.pList ? SQLITE_OK : SQLITE_DONE;
94413 *pnKey = pSorter->list.pList->nVal;
94414 pKey = SRVAL(pSorter->list.pList);
94954 static int walkWindowList(Walker *pWalker, Window *pList){
94956 for(pWin=pList; pWin; pWin=pWin->pNextWin){
94993 assert( pExpr->x.pList==0 || pExpr->pRight==0 );
94999 }else if( pExpr->x.pList ){
95000 if( sqlite3WalkExprList(pWalker, pExpr->x.pList) ) return WRC_Abort;
95553 assert( pExpr->x.pList==0 );
95845 ExprList *pList = pExpr->x.pList; /* The argument list */
95846 int n = pList ? pList->nExpr : 0; /* Number of arguments */
95872 pExpr->iTable = exprProbability(pList->a[1].pExpr);
95986 sqlite3WalkExprList(pWalker, pList);
96078 nRight = sqlite3ExprVectorSize(pExpr->x.pList->a[0].pExpr);
96080 nRight = sqlite3ExprVectorSize(pExpr->x.pList->a[1].pExpr);
96814 ExprList *pList /* The expression list to be analyzed. */
96817 if( pList ){
96818 for(i=0; i<pList->nExpr; i++){
96819 if( sqlite3ResolveExprNames(pNC, pList->a[i].pExpr) ) return WRC_Abort;
96873 ExprList *pList /* Expression list to resolve. May be NULL. */
96893 if( pList ) rc = sqlite3ResolveExprListNames(&sNC, pList);
97010 assert( pExpr->x.pList->nExpr>0 );
97012 pExpr = pExpr->x.pList->a[0].pExpr;
97069 assert( p->x.pList==0 || p->pRight==0 );
97073 if( p->x.pList!=0 && ALWAYS(!ExprHasProperty(p, EP_xIsSelect)) ){
97075 for(i=0; ALWAYS(i<p->x.pList->nExpr); i++){
97076 if( ExprHasProperty(p->x.pList->a[i].pExpr, EP_Collate) ){
97077 pNext = p->x.pList->a[i].pExpr;
97276 return pExpr->x.pList->nExpr;
97306 return pVector->x.pList->a[i].pExpr;
97364 if( pVector->op==TK_VECTOR ) pVector = pVector->x.pList->a[iField].pExpr;
97425 *ppExpr = pVector->x.pList->a[iField].pExpr;
97586 }else if( p->x.pList ){
97587 heightOfExprList(p->x.pList, &nHeight);
97588 p->flags |= EP_Propagate & sqlite3ExprListFlags(p->x.pList);
97622 if( p && p->x.pList && !ExprHasProperty(p, EP_xIsSelect) ){
97623 p->flags |= EP_Propagate & sqlite3ExprListFlags(p->x.pList);
97842 ExprList *pList, /* Argument list */
97851 sqlite3ExprListDelete(db, pList); /* Avoid memory leak when malloc fails */
97854 if( pList && pList->nExpr > pParse->db->aLimit[SQLITE_LIMIT_FUNCTION_ARG] ){
97857 pNew->x.pList = pList;
97966 assert( p->x.pList==0 || p->pRight==0 );
97973 sqlite3ExprListDelete(db, p->x.pList);
98060 if( p->pLeft || p->x.pList ){
98176 pNew->x.pList = sqlite3ExprListDup(db, p->x.pList, dupFlags);
98473 ExprList *pList, /* List to which to append. Might be NULL */
98479 if( pList==0 ){
98480 pList = sqlite3DbMallocRawNN(db, sizeof(ExprList) );
98481 if( pList==0 ){
98484 pList->nExpr = 0;
98485 }else if( (pList->nExpr & (pList->nExpr-1))==0 ){
98487 pNew = sqlite3DbRealloc(db, pList,
98488 sizeof(*pList)+(2*(sqlite3_int64)pList->nExpr-1)*sizeof(pList->a[0]));
98492 pList = pNew;
98494 pItem = &pList->a[pList->nExpr++];
98499 return pList;
98504 sqlite3ExprListDelete(db, pList);
98521 ExprList *pList, /* List to which to append. Might be NULL */
98528 int iFirst = pList ? pList->nExpr : 0;
98547 pList = sqlite3ExprListAppend(pParse, pList, pSubExpr);
98548 if( pList ){
98549 assert( pList->nExpr==iFirst+i+1 );
98550 pList->a[pList->nExpr-1].zName = pColumns->a[i].zName;
98555 if( !db->mallocFailed && pExpr->op==TK_SELECT && ALWAYS(pList!=0) ){
98556 Expr *pFirst = pList->a[iFirst].pExpr;
98576 return pList;
98603 ExprList *pList, /* List to which to add the span. */
98607 assert( pList!=0 || pParse->db->mallocFailed!=0 );
98608 if( pList ){
98610 assert( pList->nExpr>0 );
98611 pItem = &pList->a[pList->nExpr-1];
98631 ExprList *pList, /* List to which to add the span. */
98636 assert( pList!=0 || db->mallocFailed!=0 );
98637 if( pList ){
98638 struct ExprList_item *pItem = &pList->a[pList->nExpr-1];
98639 assert( pList->nExpr>0 );
98665 static SQLITE_NOINLINE void exprListDeleteNN(sqlite3 *db, ExprList *pList){
98666 int i = pList->nExpr;
98667 struct ExprList_item *pItem = pList->a;
98668 assert( pList->nExpr>0 );
98675 sqlite3DbFreeNN(db, pList);
98677 SQLITE_PRIVATE void sqlite3ExprListDelete(sqlite3 *db, ExprList *pList){
98678 if( pList ) exprListDeleteNN(db, pList);
98685 SQLITE_PRIVATE u32 sqlite3ExprListFlags(const ExprList *pList){
98688 assert( pList!=0 );
98689 for(i=0; i<pList->nExpr; i++){
98690 Expr *pExpr = pList->a[i].pExpr;
99439 && (!sqlite3InRhsIsConstant(pX) || pX->x.pList->nExpr<=2)
99676 }else if( ALWAYS(pExpr->x.pList!=0) ){
99686 ExprList *pList = pExpr->x.pList;
99701 for(i=pList->nExpr, pItem=pList->a; i>0; i--, pItem++){
99981 ExprList *pList = pExpr->x.pList;
99992 for(ii=0; ii<pList->nExpr; ii++){
99993 r2 = sqlite3ExprCodeTemp(pParse, pList->a[ii].pExpr, &regToFree);
99994 if( regCkNull && sqlite3ExprCanBeNull(pList->a[ii].pExpr) ){
99997 if( ii<pList->nExpr-1 || destIfNull!=destIfFalse ){
100000 VdbeCoverageIf(v, ii<pList->nExpr-1);
100001 VdbeCoverageIf(v, ii==pList->nExpr-1);
100312 sqlite3ExprCodeFactorable(pParse, p->x.pList->a[i].pExpr, i+iResult);
100629 pFarg = pExpr->x.pList;
100934 assert( !ExprHasProperty(pExpr, EP_xIsSelect) && pExpr->x.pList );
100935 assert(pExpr->x.pList->nExpr > 0);
100936 pEList = pExpr->x.pList;
101177 ExprList *pList, /* The expression list to be coded */
101186 assert( pList!=0 );
101189 n = pList->nExpr;
101191 for(pItem=pList->a, i=0; i<n; i++, pItem++){
101273 compLeft.pRight = pExpr->x.pList->a[0].pExpr;
101276 compRight.pRight = pExpr->x.pList->a[1].pExpr;
101748 if( sqlite3ExprListCompare(pA->x.pList, pB->x.pList, iTab) ) return 2;
102062 sqlite3WalkExprList(&w, pExpr->x.pList);
102207 pExpr->x.pList ? pExpr->x.pList->nExpr : 0, enc, 0);
102266 SQLITE_PRIVATE void sqlite3ExprAnalyzeAggList(NameContext *pNC, ExprList *pList){
102269 if( pList ){
102270 for(pItem=pList->a, i=0; i<pList->nExpr; i++, pItem++){
102984 RenameToken *pList; /* List of tokens to overwrite */
103137 pToken->pNext = pCtx->pList;
103138 pCtx->pList = pToken;
103208 RenameToken *pBest = pCtx->pList;
103215 for(pp=&pCtx->pList; *pp!=pBest; pp=&(*pp)->pNext);
103392 while( pRename->pList ){
103722 renameTokenFree(db, sCtx.pList);
103904 renameTokenFree(db, sCtx.pList);
106428 SrcList *pList /* The Source list to check and modify */
106434 if( NEVER(pList==0) ) return 0;
106436 for(i=0, pItem=pList->a; i<pList->nSrc; i++, pItem++){
106514 if( sqlite3FixExprList(pFix, pExpr->x.pList) ) return 1;
106525 ExprList *pList /* The expression to be fixed to one database */
106529 if( pList==0 ) return 0;
106530 for(i=0, pItem=pList->a; i<pList->nExpr; i++, pItem++){
108238 ExprList *pList, /* List of field names to be indexed */
108254 if( pList==0 ){
108260 nTerm = pList->nExpr;
108262 Expr *pCExpr = sqlite3ExprSkipCollate(pList->a[i].pExpr);
108282 if( IN_RENAME_OBJECT && pList ){
108283 Expr *pCExpr = sqlite3ExprSkipCollate(pList->a[0].pExpr);
108290 if( pList ) pParse->iPkSortOrder = pList->a[0].sortOrder;
108297 sqlite3CreateIndex(pParse, 0, 0, 0, pList, onError, 0,
108299 pList = 0;
108303 sqlite3ExprListDelete(pParse->db, pList);
108690 ExprList *pList;
108693 pList = sqlite3ExprListAppend(pParse, 0,
108695 if( pList==0 ) return;
108696 pList->a[0].sortOrder = pParse->iPkSortOrder;
108698 sqlite3CreateIndex(pParse, 0, 0, 0, pList, pTab->keyConf, 0, 0, 0, 0,
109970 ExprList *pList, /* A list of columns to be indexed */
110159 if( pList==0 ){
110164 pList = sqlite3ExprListAppend(pParse, 0,
110166 if( pList==0 ) goto exit_create_index;
110167 assert( pList->nExpr==1 );
110168 sqlite3ExprListSetSortOrder(pList, sortOrder);
110170 sqlite3ExprListCheckLength(pParse, pList, "index");
110177 for(i=0; i<pList->nExpr; i++){
110178 Expr *pExpr = pList->a[i].pExpr;
110190 assert( pList->nExpr + nExtraCol <= 32767 /* Fits in i16 */ );
110191 pIndex = sqlite3AllocateIndexObject(db, pList->nExpr + nExtraCol,
110206 pIndex->nKeyCol = pList->nExpr;
110231 pListItem = pList->a;
110233 pIndex->aColExpr = pList;
110234 pList = 0;
110252 pIndex->aColExpr = pList;
110253 pList = 0;
110530 sqlite3ExprListDelete(db, pList);
110696 SQLITE_PRIVATE IdList *sqlite3IdListAppend(Parse *pParse, IdList *pList, Token *pToken){
110699 if( pList==0 ){
110700 pList = sqlite3DbMallocZero(db, sizeof(IdList) );
110701 if( pList==0 ) return 0;
110703 pList->a = sqlite3ArrayAllocate(
110705 pList->a,
110706 sizeof(pList->a[0]),
110707 &pList->nId,
110711 sqlite3IdListDelete(db, pList);
110714 pList->a[i].zName = sqlite3NameFromToken(db, pToken);
110715 if( IN_RENAME_OBJECT && pList->a[i].zName ){
110716 sqlite3RenameTokenMap(pParse, (void*)pList->a[i].zName, pToken);
110718 return pList;
110724 SQLITE_PRIVATE void sqlite3IdListDelete(sqlite3 *db, IdList *pList){
110726 if( pList==0 ) return;
110727 for(i=0; i<pList->nId; i++){
110728 sqlite3DbFree(db, pList->a[i].zName);
110730 sqlite3DbFree(db, pList->a);
110731 sqlite3DbFreeNN(db, pList);
110738 SQLITE_PRIVATE int sqlite3IdListIndex(IdList *pList, const char *zName){
110740 if( pList==0 ) return -1;
110741 for(i=0; i<pList->nId; i++){
110742 if( sqlite3StrICmp(pList->a[i].zName, zName)==0 ) return i;
110870 SrcList *pList, /* Append to this SrcList. NULL creates a new SrcList */
110880 if( pList==0 ){
110881 pList = sqlite3DbMallocRawNN(pParse->db, sizeof(SrcList) );
110882 if( pList==0 ) return 0;
110883 pList->nAlloc = 1;
110884 pList->nSrc = 1;
110885 memset(&pList->a[0], 0, sizeof(pList->a[0]));
110886 pList->a[0].iCursor = -1;
110888 SrcList *pNew = sqlite3SrcListEnlarge(pParse, pList, 1, pList->nSrc);
110890 sqlite3SrcListDelete(db, pList);
110893 pList = pNew;
110896 pItem = &pList->a[pList->nSrc-1];
110907 return pList;
110913 SQLITE_PRIVATE void sqlite3SrcListAssignCursors(Parse *pParse, SrcList *pList){
110916 assert(pList || pParse->db->mallocFailed );
110917 if( pList ){
110918 for(i=0, pItem=pList->a; i<pList->nSrc; i++, pItem++){
110931 SQLITE_PRIVATE void sqlite3SrcListDelete(sqlite3 *db, SrcList *pList){
110934 if( pList==0 ) return;
110935 for(pItem=pList->a, i=0; i<pList->nSrc; i++, pItem++){
110946 sqlite3DbFreeNN(db, pList);
111040 SQLITE_PRIVATE void sqlite3SrcListFuncArgs(Parse *pParse, SrcList *p, ExprList *pList){
111046 pItem->u1.pFuncArg = pList;
111049 sqlite3ExprListDelete(pParse->db, pList);
112287 pLhs->x.pList = sqlite3ExprListDup(db, pEList, 0);
114904 if( pExpr->op!=TK_FUNCTION || !pExpr->x.pList ){
114908 nExpr = pExpr->x.pList->nExpr;
114916 Expr *pEscape = pExpr->x.pList->a[2].pExpr;
116281 ExprList *pList = 0; /* Changes list if ON UPDATE CASCADE */
116350 pList = sqlite3ExprListAppend(pParse, pList, pNew);
116351 sqlite3ExprListSetName(pParse, pList, &tFromCol, 0);
116392 pStep->pExprList = sqlite3ExprListDup(db, pList, EXPRDUP_REDUCE);
116405 sqlite3ExprListDelete(db, pList);
117042 ExprList *pList = 0; /* List of VALUES() to be inserted */
117070 pList = pSelect->pEList;
117140 assert( pList==0 );
117278 if( pList ){
117279 nColumn = pList->nExpr;
117280 if( sqlite3ResolveExprListNames(&sNC, pList) ){
117404 sqlite3ExprCode(pParse, pList->a[ipkColumn].pExpr, regCols);
117425 if( (!useTempTable && !pList) || (pColumn && j>=pColumn->nId)
117432 sqlite3ExprCodeAndCache(pParse, pList->a[j].pExpr, regCols+i+1);
117467 Expr *pIpk = pList->a[ipkColumn].pExpr;
117472 sqlite3ExprCode(pParse, pList->a[ipkColumn].pExpr, regRowid);
117534 sqlite3ExprCode(pParse, pList->a[j].pExpr, iRegStore);
117622 sqlite3ExprListDelete(db, pList);
125077 if( p->op==TK_FUNCTION && p->x.pList ){
125079 for(i=0; i<p->x.pList->nExpr; i++){
125080 setJoinExpr(p->x.pList->a[i].pExpr, iTable);
125100 if( p->op==TK_FUNCTION && p->x.pList ){
125102 for(i=0; i<p->x.pList->nExpr; i++){
125103 unsetJoinExpr(p->x.pList->a[i].pExpr, iTable);
125188 IdList *pList = pRight->pUsing;
125189 for(j=0; j<pList->nId; j++){
125195 zName = pList->a[j].zName;
126022 ExprList *pList, /* Form the KeyInfo object from this ExprList */
126032 nExpr = pList->nExpr;
126036 for(i=iStart, pItem=pList->a+iStart; i<nExpr; i++, pItem++){
128171 substExprList(pSubst, pExpr->x.pList);
128178 ExprList *pList /* List to scan and in which to make substitutes */
128181 if( pList==0 ) return;
128182 for(i=0; i<pList->nExpr; i++){
128183 pList->a[i].pExpr = substExpr(pSubst, pList->a[i].pExpr);
129080 ExprList *pEList = pFunc->x.pList; /* Arguments to agg function */
129952 if( pE->x.pList==0 || pE->x.pList->nExpr!=1 ){
129957 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pE->x.pList,0,0);
129974 ExprList *pList = pF->pExpr->x.pList;
129976 sqlite3VdbeAddOp2(v, OP_AggFinal, pF->iMem, pList ? pList->nExpr : 0);
130004 ExprList *pList = pF->pExpr->x.pList;
130006 if( pList ){
130007 nArg = pList->nExpr;
130009 sqlite3ExprCodeExprList(pParse, pList, regAgg, 0, SQLITE_ECEL_DUP);
130024 assert( pList!=0 ); /* pList!=0 if pF->pFunc has NEEDCOLL */
130025 for(j=0, pItem=pList->a; !pColl && j<nArg; j++, pItem++){
130207 if( pExpr->x.pList!=0 ) return 0; /* Must be count(*) */
130899 sqlite3ExprAnalyzeAggList(&sNC, sAggInfo.aFunc[i].pExpr->x.pList);
131559 Trigger *pList = 0; /* List of triggers to return */
131573 pTrig->pNext = (pList ? pList : pTab->pTrigger);
131574 pList = pTrig;
131579 return (pList ? pList : pTab->pTrigger);
132210 Trigger *pList = 0;
132214 pList = sqlite3TriggerList(pParse, pTab);
132216 assert( pList==0 || IsVirtual(pTab)==0 );
132217 for(p=pList; p; p=p->pNext){
132225 return (mask ? pList : 0);
136630 ExprList *pOrigLhs = pNew->pLeft->x.pList; /* Original unmodified LHS */
136649 pNew->pLeft->x.pList = pLhs;
137297 ExprList *pList = p->x.pList;
137298 assert( nReg<=pList->nExpr );
137300 sqlite3ExprCode(pParse, pList->a[i].pExpr, iReg+i);
138695 ExprList *pList; /* List of operands to the LIKE operator */
138710 pList = pExpr->x.pList;
138711 pLeft = pList->a[1].pExpr;
138713 pRight = sqlite3ExprSkipCollate(pList->a[0].pExpr);
138864 ExprList *pList;
138868 pList = pExpr->x.pList;
138869 if( pList==0 || pList->nExpr!=2 ){
138880 pCol = pList->a[1].pExpr;
138885 *ppRight = pList->a[0].pExpr;
138902 pCol = pList->a[0].pExpr;
138916 *ppRight = pList->a[1].pExpr;
139347 ExprList *pList = 0; /* The RHS of the IN operator */
139357 pList = sqlite3ExprListAppend(pWInfo->pParse, pList, pDup);
139367 pNew->x.pList = pList;
139374 sqlite3ExprListDelete(db, pList);
139494 pExpr = pExpr->x.pList->a[0].pExpr;
139561 pTerm->prereqRight = sqlite3WhereExprListUsage(pMaskSet, pExpr->x.pList);
139594 pLeft = pLeft->x.pList->a[pTerm->iField-1].pExpr;
139660 ExprList *pList = pExpr->x.pList;
139663 assert( pList!=0 );
139664 assert( pList->nExpr==2 );
139670 sqlite3ExprDup(db, pList->a[i].pExpr, 0));
139718 pLeft = pExpr->x.pList->a[1].pExpr;
140012 assert( p->x.pList==0 );
140016 }else if( p->x.pList ){
140017 mask |= sqlite3WhereExprListUsage(pMaskSet, p->x.pList);
140030 SQLITE_PRIVATE Bitmask sqlite3WhereExprListUsage(WhereMaskSet *pMaskSet, ExprList *pList){
140033 if( pList ){
140034 for(i=0; i<pList->nExpr; i++){
140035 mask |= sqlite3WhereExprUsage(pMaskSet, pList->a[i].pExpr);
140546 ExprList *pList, /* Expression list to search */
140554 for(i=0; i<pList->nExpr; i++){
140555 Expr *p = sqlite3ExprSkipCollate(pList->a[i].pExpr);
140560 CollSeq *pColl = sqlite3ExprNNCollSeq(pParse, pList->a[i].pExpr);
141813 ExprList *pList, /* The value list on the RHS of "x IN (v1,v2,v3,...)" */
141825 for(i=0; rc==SQLITE_OK && i<pList->nExpr; i++){
141827 rc = whereEqualScanEst(pParse, pBuilder, pList->a[i].pExpr, &nEst);
142445 Expr *pLhs = pTerm->pExpr->pLeft->x.pList->a[i].pExpr;
142450 pRhs = pRhs->x.pList->a[i].pExpr;
142618 }else if( ALWAYS(pExpr->x.pList && pExpr->x.pList->nExpr) ){
142620 nIn = sqlite3LogEst(pExpr->x.pList->nExpr);
142747 rc = whereInScanEst(pParse, pBuilder, pExpr->x.pList, &nOut);
146108 static Window *windowFind(Parse *pParse, Window *pList, const char *zName){
146110 for(p=pList; p; p=p->pNextWin){
146138 Window *pList, /* List of named windows for this SELECT */
146143 Window *p = windowFind(pParse, pList, pWin->zName);
146154 sqlite3WindowChain(pParse, pWin, pList);
146347 ExprList *pList, /* List to which to append. Might be NULL */
146352 int nInit = pList ? pList->nExpr : 0;
146355 pList = sqlite3ExprListAppend(pParse, pList, pDup);
146356 if( pList ) pList->a[nInit+i].sortOrder = pAppend->a[i].sortOrder;
146359 return pList;
146424 pSublist = exprListAppendList(pParse, pSublist, pWin->pOwner->x.pList);
146619 SQLITE_PRIVATE void sqlite3WindowChain(Parse *pParse, Window *pWin, Window *pList){
146622 Window *pExist = windowFind(pParse, pList, pWin->zBase);
146731 ExprList *pList = pWin->pOwner->x.pList;
146732 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pList, 0, 0);
146819 ExprList *pList = pWin->pOwner->x.pList;
146820 return (pList ? pList->nExpr : 0);
146894 assert( nArg==0 || nArg==pWin->pOwner->x.pList->nExpr );
146895 assert( nArg || pWin->pOwner->x.pList==0 );
146905 pColl = sqlite3ExprNNCollSeq(pParse, pWin->pOwner->x.pList->a[0].pExpr);
147149 int nArg = pWin->pOwner->x.pList->nExpr;
148313 p->x.pList = 0;
152144 ExprList *pList = sqlite3ExprListAppend(pParse, yymsp[-3].minor.yy434, yymsp[-1].minor.yy524);
152147 yymsp[-4].minor.yy524->x.pList = pList;
152149 sqlite3ExprListDelete(pParse->db, pList);
152168 ExprList *pList;
152171 pList = sqlite3ExprListAppend(pParse,0, yymsp[0].minor.yy524);
152172 pList = sqlite3ExprListAppend(pParse,pList, yymsp[-2].minor.yy524);
152173 yymsp[-2].minor.yy524 = sqlite3ExprFunction(pParse, pList, &yymsp[-1].minor.yy0, 0);
152180 ExprList *pList;
152183 pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy524);
152184 pList = sqlite3ExprListAppend(pParse,pList, yymsp[-4].minor.yy524);
152185 pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy524);
152186 yymsp[-4].minor.yy524 = sqlite3ExprFunction(pParse, pList, &yymsp[-3].minor.yy0, 0);
152225 ExprList *pList = sqlite3ExprListAppend(pParse,0, yymsp[-2].minor.yy524);
152226 pList = sqlite3ExprListAppend(pParse,pList, yymsp[0].minor.yy524);
152229 yymsp[-4].minor.yy524->x.pList = pList;
152231 sqlite3ExprListDelete(pParse->db, pList);
152281 yymsp[-4].minor.yy524->x.pList = yymsp[-1].minor.yy434;
152324 …yymsp[-4].minor.yy524->x.pList = yymsp[-1].minor.yy524 ? sqlite3ExprListAppend(pParse,yymsp[-2].mi…
160372 char *pList; /* Pointer to position list following iDocid */
163082 char *pList, /* Position list (no 0x00 term) */
163088 char *p = pList;
163089 char *pEnd = &pList[nList];
164510 char *pList, /* Pointer to doclist */
164516 if( pList==0 ){
164523 p->doclist.aAll = pList;
164528 sqlite3_free(pList);
164541 pRight = pList;
164547 pLeft = pList;
164620 char *pList;
164622 int rc = sqlite3Fts3DeferredTokenList(pDeferred, &pList, &nList);
164625 if( pList==0 ){
164627 pPhrase->doclist.pList = 0;
164632 aPoslist = pList;
164636 char *aOut = pList;
164643 aPoslist = pList;
164647 pPhrase->doclist.pList = 0;
164659 pPhrase->doclist.pList = aPoslist;
164671 p2 = pPhrase->doclist.pList;
164674 p1 = pPhrase->doclist.pList;
164685 pPhrase->doclist.pList = aOut;
164688 pPhrase->doclist.nList = (int)(aOut - pPhrase->doclist.pList);
164691 pPhrase->doclist.pList = 0;
164896 pDL->pList = pIter;
164898 pDL->nList = (int)(pIter - pDL->pList);
164921 char *pList;
164947 p->pList = pPhrase->doclist.pList;
164957 pTab, pToken->pSegcsr, &p->iDocid, &p->pList, &p->nList
164959 if( p->pList==0 ) *pbEof = 1;
165002 &pDL->iDocid, &pDL->pList, &pDL->nList
165004 if( pDL->pList==0 ) bEof = 1;
165048 memcpy(aDoclist, a[p->nToken-1].pList, nByte+1);
165053 char *pL = a[i].pList;
165064 pDL->pList = aDoclist;
165102 pDL->pList = pDL->pNextDocid;
165392 char *pList = 0;
165393 rc = fts3TermSelect(pTab, pToken, pTC->iCol, &nList, &pList);
165394 assert( rc==SQLITE_OK || pList==0 );
165397 pTab, pTC->pPhrase, pTC->iToken,pList,nList
165479 sqlite3_free(pPhrase->doclist.pList);
165481 pPhrase->doclist.pList = 0;
165522 assert( pPhrase->doclist.pList );
165524 p2 = pOut = pPhrase->doclist.pList;
165529 nNew = (int)(pOut - pPhrase->doclist.pList) - 1;
165530 assert( pPhrase->doclist.pList[nNew]=='\0' );
165532 memset(&pPhrase->doclist.pList[nNew], 0, pPhrase->doclist.nList - nNew);
165534 *paPoslist = pPhrase->doclist.pList;
165631 memset(pDl->pList, 0, pDl->nList);
165638 memset(pDl->pList, 0, pDl->nList);
165766 char *aPoslist = p->pPhrase->doclist.pList;
165775 aPoslist = pExpr->pRight->pPhrase->doclist.pList;
165879 bHit = (pPhrase->doclist.pList!=0);
166034 if( pPhrase && pPhrase->doclist.pList ){
166036 char *p = pPhrase->doclist.pList;
166253 pIter = pPhrase->doclist.pList;
170643 PendingList *pList; /* Doclist is assembled here */
171267 static void fts3PendingListDelete(PendingList *pList){
171268 sqlite3_free(pList);
171282 PendingList *pList;
171285 pList = (PendingList *)fts3HashFind(pHash, zToken, nToken);
171286 if( pList ){
171287 p->nPendingData -= (pList->nData + nToken + sizeof(Fts3HashElem));
171289 if( fts3PendingListAppend(&pList, p->iPrevDocid, iCol, iPos, &rc) ){
171290 if( pList==fts3HashInsert(pHash, zToken, nToken, pList) ){
171295 sqlite3_free(pList);
171300 p->nPendingData += (pList->nData + nToken + sizeof(Fts3HashElem));
171428 PendingList *pList = (PendingList *)fts3HashData(pElem);
171429 fts3PendingListDelete(pList);
171860 PendingList *pList = (PendingList *)fts3HashData(pElem);
171861 int nCopy = pList->nData+1;
171866 memcpy(aCopy, pList->aData, nCopy);
173141 char *pList = *ppList;
173143 char *pEnd = &pList[nList];
173145 char *p = pList;
173153 nList = (int)(p - pList);
173157 nList -= (int)(p - pList);
173158 pList = p;
173162 p = &pList[1];
173166 if( bZero && (pEnd - &pList[nList])>0){
173167 memset(&pList[nList], 0, pEnd - &pList[nList]);
173169 *ppList = pList;
173182 char *pList,
173194 memcpy(pMsr->aBuffer, pList, nList);
173225 char *pList;
173230 rc = fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
173244 rc = fts3MsrBufferData(pMsr, pList, nList+1);
173247 pList = pMsr->aBuffer;
173251 fts3ColumnFilter(pMsr->iColFilter, 1, &pList, &nList);
173255 *paPoslist = pList;
173483 char *pList = 0;
173487 fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
173498 fts3ColumnFilter(pFilter->iCol, 0, &pList, &nList);
173529 nWrite = sqlite3Fts3FirstFilter(iDelta, pList, nList, a);
173538 memcpy(&pCsr->aBuffer[nDoclist], pList, nList);
175952 fts3PendingListDelete(pDef->pList);
175953 pDef->pList = 0;
175966 fts3PendingListDelete(pDef->pList);
176014 fts3PendingListAppend(&pDef->pList, iDocid, i, iPos, &rc);
176024 if( pDef->pList ){
176025 rc = fts3PendingListAppendVarint(&pDef->pList, 0);
176045 if( p->pList==0 ){
176049 pRet = (char *)sqlite3_malloc(p->pList->nData);
176052 nSkip = sqlite3Fts3GetVarint(p->pList->aData, &dummy);
176053 *pnData = p->pList->nData - nSkip;
176056 memcpy(pRet, &p->pList->aData[nSkip], *pnData);
176373 char *pList; /* Pointer to start of phrase position list */
176783 pPhrase->pList = pCsr;
176795 pPhrase->pList==0 && pPhrase->pHead==0 && pPhrase->pTail==0
177173 char *pIter = pPhrase->doclist.pList;
177845 char *pList; /* Position-list */
177865 char *pList; /* Pointer to position list for phrase */
177870 rc = sqlite3Fts3EvalPhrasePoslist(p->pCsr, pExpr, p->iCol, &pList);
177872 if( pList ){
177873 fts3GetDeltaPosition(&pList, &iPos);
177880 pT->pList = pList;
177974 if( pT->pList && (pT->iPos-pT->iOff)<iMinPos ){
177985 if( 0==(0xFE&*pTerm->pList) ){
177986 pTerm->pList = 0;
177988 fts3GetDeltaPosition(&pTerm->pList, &pTerm->iPos);
186700 static GeoSegment *geopolySortSegmentsByYAndC(GeoSegment *pList){
186705 while( pList ){
186706 p = pList;
186707 pList = pList->pNext;
190338 sqlite3_stmt *pList = 0;
190343 p->rc = prepareFreeAndCollectError(p->dbMain, &pList, &p->zErrmsg,
190349 while( p->rc==SQLITE_OK && SQLITE_ROW==sqlite3_step(pList) ){
190350 const char *zIdx = (const char*)sqlite3_column_text(pList, 1);
190351 int bPartial = sqlite3_column_int(pList, 4);
190374 rbuFinalize(p, pList);
196971 static void sessionDeleteTable(SessionTable *pList){
196975 for(pTab=pList; pTab; pTab=pNext){
199864 SessionTable *pList; /* List of tables in current patch */
200074 if( pGrp->pList==0 ){
200088 for(pTab = pGrp->pList; pTab; pTab=pTab->pNext){
200110 for(ppTab=&pGrp->pList; *ppTab; ppTab=&(*ppTab)->pNext);
200192 for(pTab=pGrp->pList; rc==SQLITE_OK && pTab; pTab=pTab->pNext){
200304 sessionDeleteTable(pGrp->pList);
200518 for(pTab=p->grp.pList; pTab; pTab=pTab->pNext){
200705 sessionDeleteTable(p->grp.pList);
208998 Fts5HashEntry *pList;
209024 pList = 0;
209026 pList = fts5HashEntryMerge(pList, ap[i]);
209031 *ppSorted = pList;
211046 const u8 *pList = 0;
211050 sqlite3Fts5HashScanEntry(p->pHash, &zTerm, &pList, &nList);
211051 if( pList==0 ) goto next_none_eof;
211052 pIter->pLeaf->p = (u8*)pList;
211057 pIter->iLeafOffset = fts5GetVarint(pList, (u64*)&pIter->iRowid);
211120 const u8 *pList = 0;
211126 sqlite3Fts5HashScanEntry(p->pHash, &zTerm, &pList, &nList);
211128 if( pList==0 ){
211132 pIter->pLeaf->p = (u8*)pList;
211138 pIter->iLeafOffset = fts5GetVarint(pList, (u64*)&pIter->iRowid);
211581 const u8 *pList = 0;
211584 sqlite3Fts5HashScanEntry(p->pHash, (const char**)&z, &pList, &nList);
211586 if( pList ){
211589 pLeaf->p = (u8*)pList;