Lines Matching refs:pParse
134 void sqlite3Fts5ParseError(Fts5Parse *pParse, const char *zFmt, ...){ in sqlite3Fts5ParseError() argument
137 if( pParse->rc==SQLITE_OK ){ in sqlite3Fts5ParseError()
138 assert( pParse->zErr==0 ); in sqlite3Fts5ParseError()
139 pParse->zErr = sqlite3_vmprintf(zFmt, ap); in sqlite3Fts5ParseError()
140 pParse->rc = SQLITE_ERROR; in sqlite3Fts5ParseError()
153 Fts5Parse *pParse, in fts5ExprGetToken() argument
188 sqlite3Fts5ParseError(pParse, "unterminated string"); in fts5ExprGetToken()
199 sqlite3Fts5ParseError(pParse, "fts5: syntax error near \"%.1s\"", z); in fts5ExprGetToken()
1589 Fts5Parse *pParse, /* Parse context */ in sqlite3Fts5ParseNearset() argument
1596 if( pParse->rc==SQLITE_OK ){ in sqlite3Fts5ParseNearset()
1605 pParse->rc = SQLITE_NOMEM; in sqlite3Fts5ParseNearset()
1616 pParse->rc = SQLITE_NOMEM; in sqlite3Fts5ParseNearset()
1624 assert( pParse->rc!=SQLITE_OK ); in sqlite3Fts5ParseNearset()
1630 assert( pParse!=0 ); in sqlite3Fts5ParseNearset()
1631 assert( pParse->apPhrase!=0 ); in sqlite3Fts5ParseNearset()
1632 assert( pParse->nPhrase>=2 ); in sqlite3Fts5ParseNearset()
1633 assert( pLast==pParse->apPhrase[pParse->nPhrase-2] ); in sqlite3Fts5ParseNearset()
1637 pParse->nPhrase--; in sqlite3Fts5ParseNearset()
1641 pParse->apPhrase[pParse->nPhrase-2] = pPhrase; in sqlite3Fts5ParseNearset()
1642 pParse->nPhrase--; in sqlite3Fts5ParseNearset()
1743 void sqlite3Fts5ParseFinished(Fts5Parse *pParse, Fts5ExprNode *p){ in sqlite3Fts5ParseFinished() argument
1744 assert( pParse->pExpr==0 ); in sqlite3Fts5ParseFinished()
1745 pParse->pExpr = p; in sqlite3Fts5ParseFinished()
1748 static int parseGrowPhraseArray(Fts5Parse *pParse){ in parseGrowPhraseArray() argument
1749 if( (pParse->nPhrase % 8)==0 ){ in parseGrowPhraseArray()
1750 sqlite3_int64 nByte = sizeof(Fts5ExprPhrase*) * (pParse->nPhrase + 8); in parseGrowPhraseArray()
1752 apNew = (Fts5ExprPhrase**)sqlite3_realloc64(pParse->apPhrase, nByte); in parseGrowPhraseArray()
1754 pParse->rc = SQLITE_NOMEM; in parseGrowPhraseArray()
1757 pParse->apPhrase = apNew; in parseGrowPhraseArray()
1768 Fts5Parse *pParse, /* Parse context */ in sqlite3Fts5ParseTerm() argument
1773 Fts5Config *pConfig = pParse->pConfig; in sqlite3Fts5ParseTerm()
1791 pParse->rc = rc; in sqlite3Fts5ParseTerm()
1797 if( parseGrowPhraseArray(pParse) ){ in sqlite3Fts5ParseTerm()
1801 pParse->nPhrase++; in sqlite3Fts5ParseTerm()
1807 sCtx.pPhrase = sqlite3Fts5MallocZero(&pParse->rc, sizeof(Fts5ExprPhrase)); in sqlite3Fts5ParseTerm()
1811 pParse->apPhrase[pParse->nPhrase-1] = sCtx.pPhrase; in sqlite3Fts5ParseTerm()
1917 void sqlite3Fts5ParseNear(Fts5Parse *pParse, Fts5Token *pTok){ in sqlite3Fts5ParseNear() argument
1920 pParse, "fts5: syntax error near \"%.*s\"", pTok->n, pTok->p in sqlite3Fts5ParseNear()
1926 Fts5Parse *pParse, in sqlite3Fts5ParseSetDistance() argument
1938 pParse, "expected integer, got \"%.*s\"", p->n, p->p in sqlite3Fts5ParseSetDistance()
1961 Fts5Parse *pParse, /* Store SQLITE_NOMEM here if required */ in fts5ParseColset() argument
1968 assert( pParse->rc==SQLITE_OK ); in fts5ParseColset()
1969 assert( iCol>=0 && iCol<pParse->pConfig->nCol ); in fts5ParseColset()
1973 pParse->rc = SQLITE_NOMEM; in fts5ParseColset()
2001 Fts5Colset *sqlite3Fts5ParseColsetInvert(Fts5Parse *pParse, Fts5Colset *p){ in sqlite3Fts5ParseColsetInvert() argument
2003 int nCol = pParse->pConfig->nCol; in sqlite3Fts5ParseColsetInvert()
2005 pRet = (Fts5Colset*)sqlite3Fts5MallocZero(&pParse->rc, in sqlite3Fts5ParseColsetInvert()
2025 Fts5Parse *pParse, /* Store SQLITE_NOMEM here if required */ in sqlite3Fts5ParseColset() argument
2033 z = sqlite3Fts5Strndup(&pParse->rc, p->p, p->n); in sqlite3Fts5ParseColset()
2034 if( pParse->rc==SQLITE_OK ){ in sqlite3Fts5ParseColset()
2035 Fts5Config *pConfig = pParse->pConfig; in sqlite3Fts5ParseColset()
2041 sqlite3Fts5ParseError(pParse, "no such column: %s", z); in sqlite3Fts5ParseColset()
2043 pRet = fts5ParseColset(pParse, pColset, iCol); in sqlite3Fts5ParseColset()
2049 assert( pParse->rc!=SQLITE_OK ); in sqlite3Fts5ParseColset()
2108 Fts5Parse *pParse, in fts5ParseSetColset() argument
2113 if( pParse->rc==SQLITE_OK ){ in fts5ParseSetColset()
2130 pNear->pColset = fts5CloneColset(&pParse->rc, pColset); in fts5ParseSetColset()
2136 fts5ParseSetColset(pParse, pNode->apChild[i], pColset, ppFree); in fts5ParseSetColset()
2146 Fts5Parse *pParse, in sqlite3Fts5ParseSetColset() argument
2151 if( pParse->pConfig->eDetail==FTS5_DETAIL_NONE ){ in sqlite3Fts5ParseSetColset()
2152 sqlite3Fts5ParseError(pParse, in sqlite3Fts5ParseSetColset()
2156 fts5ParseSetColset(pParse, pExpr, pColset, &pFree); in sqlite3Fts5ParseSetColset()
2217 Fts5Parse *pParse, in fts5ParsePhraseToAnd() argument
2226 assert( pParse->bPhraseToAnd ); in fts5ParsePhraseToAnd()
2229 pRet = (Fts5ExprNode*)sqlite3Fts5MallocZero(&pParse->rc, nByte); in fts5ParsePhraseToAnd()
2234 pParse->nPhrase--; in fts5ParsePhraseToAnd()
2237 &pParse->rc, sizeof(Fts5ExprPhrase) in fts5ParsePhraseToAnd()
2240 if( parseGrowPhraseArray(pParse) ){ in fts5ParsePhraseToAnd()
2243 pParse->apPhrase[pParse->nPhrase++] = pPhrase; in fts5ParsePhraseToAnd()
2246 &pParse->rc, pNear->apPhrase[0]->aTerm[ii].zTerm, -1 in fts5ParsePhraseToAnd()
2248 pRet->apChild[ii] = sqlite3Fts5ParseNode(pParse, FTS5_STRING, in fts5ParsePhraseToAnd()
2249 0, 0, sqlite3Fts5ParseNearset(pParse, 0, pPhrase) in fts5ParsePhraseToAnd()
2255 if( pParse->rc ){ in fts5ParsePhraseToAnd()
2271 Fts5Parse *pParse, /* Parse context */ in sqlite3Fts5ParseNode() argument
2279 if( pParse->rc==SQLITE_OK ){ in sqlite3Fts5ParseNode()
2291 && pParse->bPhraseToAnd in sqlite3Fts5ParseNode()
2294 pRet = fts5ParsePhraseToAnd(pParse, pNear); in sqlite3Fts5ParseNode()
2305 pRet = (Fts5ExprNode*)sqlite3Fts5MallocZero(&pParse->rc, nByte); in sqlite3Fts5ParseNode()
2321 if( pParse->pConfig->eDetail!=FTS5_DETAIL_FULL ){ in sqlite3Fts5ParseNode()
2327 sqlite3Fts5ParseError(pParse, in sqlite3Fts5ParseNode()
2344 assert( pParse->rc!=SQLITE_OK ); in sqlite3Fts5ParseNode()
2353 Fts5Parse *pParse, /* Parse context */ in sqlite3Fts5ParseImplicitAnd() argument
2360 if( pParse->rc ){ in sqlite3Fts5ParseImplicitAnd()
2386 assert( pParse->apPhrase[pParse->nPhrase-1]==pRight->pNear->apPhrase[0] ); in sqlite3Fts5ParseImplicitAnd()
2389 pParse->nPhrase--; in sqlite3Fts5ParseImplicitAnd()
2401 ap = &pParse->apPhrase[pParse->nPhrase-1-pRight->pNear->nPhrase]; in sqlite3Fts5ParseImplicitAnd()
2404 pParse->nPhrase--; in sqlite3Fts5ParseImplicitAnd()
2409 pRet = sqlite3Fts5ParseNode(pParse, FTS5_AND, pLeft, pRight, 0); in sqlite3Fts5ParseImplicitAnd()