Lines Matching defs:pColl

9147     CollSeq *pColl;        /* Used when p4type is P4_COLLSEQ */
14130 CollSeq *pColl; /* Collating sequence */
63261 CollSeq *pColl = pKeyInfo->aColl[j];
63262 const char *zColl = pColl ? pColl->zName : "nil";
63285 CollSeq *pColl = pOp->p4.pColl;
63286 sqlite3_snprintf(nTemp, zTemp, "(%.20s)", pColl->zName);
65473 ** using the collation sequence pColl. As usual, return a negative , zero
65480 const CollSeq *pColl
65482 if( pMem1->enc==pColl->enc ){
65485 return pColl->xCmp(pColl->pUser,pMem1->n,pMem1->z,pMem2->n,pMem2->z);
65496 v1 = sqlite3ValueText((sqlite3_value*)&c1, pColl->enc);
65498 v2 = sqlite3ValueText((sqlite3_value*)&c2, pColl->enc);
65500 rc = pColl->xCmp(pColl->pUser, n1, v1, n2, v2);
65512 ** sequence pColl and finally blob's ordered by memcmp().
65516 SQLITE_PRIVATE int sqlite3MemCompare(const Mem *pMem1, const Mem *pMem2, const CollSeq *pColl){
65582 assert( !pColl || pColl->xCmp );
65584 if( pColl ){
65585 return vdbeCompareMemString(pMem1, pMem2, pColl);
69570 ctx.pColl = pOp[-1].p4.pColl;
70001 assert( pOp->p4type==P4_COLLSEQ || pOp->p4.pColl==0 );
70004 res = sqlite3MemCompare(pIn3, pIn1, pOp->p4.pColl);
70076 CollSeq *pColl; /* Collating sequence to use on this term */
70104 pColl = pKeyInfo->aColl[i];
70106 iCompare = sqlite3MemCompare(&aMem[p1+idx], &aMem[p2+idx], pColl);
73693 ctx.pColl = 0;
73699 ctx.pColl = pOp[-1].p4.pColl;
78368 CollSeq *pColl = 0;
78378 pColl = sqlite3GetCollSeq(pParse, ENC(db), 0, p->u.zToken);
78390 pColl = sqlite3FindCollSeq(db, ENC(db), zColl, 0);
78404 if( sqlite3CheckCollSeq(pParse, pColl) ){
78405 pColl = 0;
78407 return pColl;
78504 CollSeq *pColl;
78507 pColl = sqlite3ExprCollSeq(pParse, pLeft);
78509 pColl = sqlite3ExprCollSeq(pParse, pRight);
78511 pColl = sqlite3ExprCollSeq(pParse, pLeft);
78512 if( !pColl ){
78513 pColl = sqlite3ExprCollSeq(pParse, pRight);
78516 return pColl;
80252 CollSeq *pColl = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
80269 (void*)pColl, P4_COLLSEQ);
80276 (void*)pColl, P4_COLLSEQ); VdbeCoverage(v);
81000 CollSeq *pColl = 0; /* A collating sequence */
81052 if( (pDef->funcFlags & SQLITE_FUNC_NEEDCOLL)!=0 && !pColl ){
81053 pColl = sqlite3ExprCollSeq(pParse, pFarg->a[i].pExpr);
81110 if( !pColl ) pColl = db->pDfltColl;
81111 sqlite3VdbeAddOp4(v, OP_CollSeq, 0, 0, 0, (char *)pColl, P4_COLLSEQ);
84570 char *pColl = (char*)sqlite3LocateCollSeq(pParse, pIdx->azColl[i]);
84574 sqlite3VdbeAddOp4(v, OP_Ne, regTemp, 0, regPrev+i, pColl, P4_COLLSEQ);
87509 CollSeq *pColl;
87511 pColl = sqlite3FindCollSeq(db, enc, zName, initbusy);
87512 if( !initbusy && (!pColl || !pColl->xCmp) ){
87513 pColl = sqlite3GetCollSeq(pParse, enc, pColl, zName);
87516 return pColl;
90128 ** Check to see if pIndex uses the collating sequence pColl. Return
90147 ** Recompute all indices of pTab that use the collating sequence pColl.
90148 ** If pColl==0 then recompute all indices of pTab.
90166 ** indices use the collating sequence pColl. If pColl==0 then recompute
90203 CollSeq *pColl; /* Collating sequence to be reindexed, or NULL */
90226 pColl = sqlite3FindCollSeq(db, ENC(db), zColl, 0);
90227 if( pColl ){
90425 static int synthCollSeq(sqlite3 *db, CollSeq *pColl){
90427 char *z = pColl->zName;
90433 memcpy(pColl, pColl2, sizeof(CollSeq));
90434 pColl->xDel = 0; /* Do not copy the destructor */
90446 ** If it is not NULL, then pColl must point to the database native encoding
90458 CollSeq *pColl, /* Collating sequence with native encoding, or NULL */
90464 p = pColl;
90496 SQLITE_PRIVATE int sqlite3CheckCollSeq(Parse *pParse, CollSeq *pColl){
90497 if( pColl ){
90498 const char *zName = pColl->zName;
90500 CollSeq *p = sqlite3GetCollSeq(pParse, ENC(db), pColl, zName);
90504 assert( p==pColl );
90529 CollSeq *pColl;
90531 pColl = sqlite3HashFind(&db->aCollSeq, zName, nName);
90533 if( 0==pColl && create ){
90534 pColl = sqlite3DbMallocZero(db, 3*sizeof(*pColl) + nName + 1 );
90535 if( pColl ){
90537 pColl[0].zName = (char*)&pColl[3];
90538 pColl[0].enc = SQLITE_UTF8;
90539 pColl[1].zName = (char*)&pColl[3];
90540 pColl[1].enc = SQLITE_UTF16LE;
90541 pColl[2].zName = (char*)&pColl[3];
90542 pColl[2].enc = SQLITE_UTF16BE;
90543 memcpy(pColl[0].zName, zName, nName);
90544 pColl[0].zName[nName] = 0;
90545 pDel = sqlite3HashInsert(&db->aCollSeq, pColl[0].zName, nName, pColl);
90548 ** return the pColl pointer to be deleted (because it wasn't added
90551 assert( pDel==0 || pDel==pColl );
90555 pColl = 0;
90559 return pColl;
90583 CollSeq *pColl;
90585 pColl = findCollSeqEntry(db, zName, create);
90587 pColl = db->pDfltColl;
90591 if( pColl ) pColl += enc-1;
90592 return pColl;
91715 return context->pColl;
91737 CollSeq *pColl;
91741 pColl = sqlite3GetFuncCollSeq(context);
91742 assert( pColl );
91748 if( (sqlite3MemCompare(argv[iBest], argv[i], pColl)^mask)>=0 ){
92496 CollSeq *pColl = sqlite3GetFuncCollSeq(context);
92498 if( sqlite3MemCompare(argv[0], argv[1], pColl)!=0 ){
93167 CollSeq *pColl = sqlite3GetFuncCollSeq(context);
93177 cmp = sqlite3MemCompare(pBest, pArg, pColl);
99802 CollSeq *pColl = (CollSeq *)sqliteHashData(p);
99804 sqlite3VdbeAddOp4(v, OP_String8, 0, 2, 0, pColl->zName, 0);
102167 CollSeq *pColl = sqlite3ExprCollSeq(pParse, pEList->a[i].pExpr);
102175 sqlite3VdbeChangeP4(v, -1, (const char *)pColl, P4_COLLSEQ);
102480 CollSeq *pColl;
102481 pColl = sqlite3ExprCollSeq(pParse, pItem->pExpr);
102482 if( !pColl ) pColl = db->pDfltColl;
102483 pInfo->aColl[i-iStart] = pColl;
103104 CollSeq *pColl;
103123 pColl = sqlite3ExprCollSeq(pParse, p);
103124 if( pColl ){
103125 pCol->zColl = sqlite3DbStrDup(db, pColl->zName);
103303 CollSeq *pColl;
103306 pColl = sqlite3ExprCollSeq(pParse, pTerm);
103308 pColl = multiSelectCollSeq(pParse, p, pItem->u.x.iOrderByCol-1);
103309 if( pColl==0 ) pColl = db->pDfltColl;
103311 sqlite3ExprAddCollateString(pParse, pTerm, pColl->zName);
103314 pRet->aColl[i] = pColl;
105907 CollSeq *pColl = 0;
105911 for(j=0, pItem=pList->a; !pColl && j<nArg; j++, pItem++){
105912 pColl = sqlite3ExprCollSeq(pParse, pItem->pExpr);
105914 if( !pColl ){
105915 pColl = pParse->db->pDfltColl;
105918 sqlite3VdbeAddOp4(v, OP_CollSeq, regHit, 0, 0, (char *)pColl, P4_COLLSEQ);
111393 CollSeq *pColl;
111400 pColl = sqlite3BinaryCompareCollSeq(pParse,
111402 if( pColl==0 ) pColl = pParse->db->pDfltColl;
111403 if( sqlite3StrICmp(pColl->zName, pScan->zCollName) ){
112329 CollSeq *pColl = sqlite3ExprCollSeq(pParse, pList->a[i].pExpr);
112330 if( ALWAYS(pColl) && 0==sqlite3StrICmp(pColl->zName, zColl) ){
112507 CollSeq *pColl; /* Collating sequence to on a column */
112589 pColl = sqlite3BinaryCompareCollSeq(pParse, pX->pLeft, pX->pRight);
112590 pIdx->azColl[n] = ALWAYS(pColl) ? pColl->zName : "BINARY";
112966 CollSeq *pColl;
112972 pColl = sqlite3LocateCollSeq(pParse, p->azColl[nEq]);
112988 int res = sqlite3MemCompare(p1, pVal, pColl);
112992 int res = sqlite3MemCompare(p2, pVal, pColl);
116061 CollSeq *pColl; /* COLLATE function from an ORDER BY clause term */
116125 pColl = sqlite3ExprCollSeq(pWInfo->pParse, pOrderBy->a[i].pExpr);
116126 if( !pColl ) pColl = db->pDfltColl;
116127 z1 = pColl->zName;
116128 pColl = sqlite3ExprCollSeq(pWInfo->pParse, pTerm->pExpr);
116129 if( !pColl ) pColl = db->pDfltColl;
116130 z2 = pColl->zName;
116209 pColl = sqlite3ExprCollSeq(pWInfo->pParse, pOrderBy->a[i].pExpr);
116210 if( !pColl ) pColl = db->pDfltColl;
116211 if( sqlite3StrICmp(pColl->zName, pIndex->azColl[j])!=0 ) continue;
123146 CollSeq *pColl = (CollSeq *)sqliteHashData(i);
123149 if( pColl[j].xDel ){
123150 pColl[j].xDel(pColl[j].pUser);
123153 sqlite3DbFree(db, pColl);
124181 CollSeq *pColl;
124205 pColl = sqlite3FindCollSeq(db, (u8)enc2, zName, 0);
124206 if( pColl && pColl->xCmp ){
124215 /* If collation sequence pColl was created directly by a call to
124221 if( (pColl->enc & ~SQLITE_UTF16_ALIGNED)==enc2 ){
124226 if( p->enc==pColl->enc ){
124236 pColl = sqlite3FindCollSeq(db, (u8)enc2, zName, 1);
124237 if( pColl==0 ) return SQLITE_NOMEM;
124238 pColl->xCmp = xCompare;
124239 pColl->pUser = pCtx;
124240 pColl->xDel = xDel;
124241 pColl->enc = (u8)(enc2 | (enc & SQLITE_UTF16_ALIGNED));