Lines Matching refs:Fts3Expr

126733 typedef struct Fts3Expr Fts3Expr;
126837 Fts3Expr *pExpr; /* Parsed MATCH query string */
126937 ** If Fts3Expr.eType is FTSQUERY_PHRASE and isLoaded is true, then aDoclist
126955 struct Fts3Expr {
126958 Fts3Expr *pParent; /* pParent->pLeft==this or pParent->pRight==this */
126959 Fts3Expr *pLeft; /* Left operand */
126960 Fts3Expr *pRight; /* Right operand */
127086 SQLITE_PRIVATE int sqlite3Fts3EvalPhraseStats(Fts3Cursor *, Fts3Expr *, u32 *);
127107 char **, int, int, int, const char *, int, Fts3Expr **, char **
127109 SQLITE_PRIVATE void sqlite3Fts3ExprFree(Fts3Expr *);
127128 SQLITE_PRIVATE int sqlite3Fts3EvalPhrasePoslist(Fts3Cursor *, Fts3Expr *, int iCol, char **);
130743 Fts3Expr *pExpr, /* Allocate readers for this expression */
131381 ** expression. Also the Fts3Expr.bDeferred variable is set to true for any
131395 Fts3Expr *pExpr, /* Expression to initialize phrases in */
131432 Fts3Expr *pRoot; /* Root of NEAR/AND cluster */
131446 Fts3Expr *pRoot, /* Root of current AND/NEAR cluster */
131447 Fts3Expr *pExpr, /* Expression to consider */
131449 Fts3Expr ***ppOr, /* Write new OR root to *(*ppOr)++ */
131561 Fts3Expr *pRoot, /* Consider tokens with this root node */
131701 Fts3Expr **apOr;
131704 + sizeof(Fts3Expr *) * nOr * 2
131706 apOr = (Fts3Expr **)&aTC[nToken];
131713 Fts3Expr **ppOr = apOr;
131812 ** Fts3Expr.bEof (non-zero if EOF - there is no next row)
131813 ** Fts3Expr.iDocid (valid if bEof==0. The docid of the next row)
131845 Fts3Expr *pExpr, /* Expr. to advance to next matching row */
131856 Fts3Expr *pLeft = pExpr->pLeft;
131857 Fts3Expr *pRight = pExpr->pRight;
131892 Fts3Expr *pLeft = pExpr->pLeft;
131893 Fts3Expr *pRight = pExpr->pRight;
131920 Fts3Expr *pLeft = pExpr->pLeft;
131921 Fts3Expr *pRight = pExpr->pRight;
131959 ** (Fts3Expr->pPhrase.doclist.pList/nList) for each phrase in the expression.
131968 static int fts3EvalNearTest(Fts3Expr *pExpr, int *pRc){
131996 Fts3Expr *p;
132056 Fts3Expr *pExpr, /* Expr to test. May or may not be root. */
132089 Fts3Expr *p;
132197 Fts3Expr *pExpr = pCsr->pExpr;
132238 Fts3Expr *pExpr,
132271 ** After allocating the Fts3Expr.aMI[] array for each phrase in the
132274 ** the values in Fts3Expr.aMI[] according to the position-list currently
132275 ** found in Fts3Expr.pPhrase->doclist.pList for each of the phrase
132278 static void fts3EvalUpdateCounts(Fts3Expr *pExpr){
132314 ** populates the Fts3Expr.aMI[] array for expression pExpr. If pExpr is part
132323 Fts3Expr *pExpr /* FTSQUERY_PHRASE expression */
132330 Fts3Expr *pRoot; /* Root of NEAR expression */
132331 Fts3Expr *p; /* Iterator used for several purposes */
132348 Fts3Expr *pE = (p->eType==FTSQUERY_PHRASE?p:p->pRight);
132435 Fts3Expr *pExpr, /* Phrase expression */
132483 Fts3Expr *pExpr, /* Phrase to return doclist for */
132509 Fts3Expr *p; /* Used to iterate from pExpr to root */
132510 Fts3Expr *pNear; /* Most senior NEAR ancestor (or pExpr) */
133380 static int fts3ExprParse(ParseContext *, const char *, int, Fts3Expr **, int *);
133384 ** and other information (column names etc.) in pParse. Create an Fts3Expr
133389 ** Fts3Expr structure (if any) by passing it to sqlite3_free().
133398 Fts3Expr **ppExpr, /* OUT: expression */
133405 Fts3Expr *pRet = 0;
133423 nByte = sizeof(Fts3Expr) + sizeof(Fts3Phrase) + nToken;
133424 pRet = (Fts3Expr *)fts3MallocZero(nByte);
133485 ** input buffer and create an Fts3Expr structure of type FTSQUERY_PHRASE
133489 ** allocated Fts3Expr structure. Otherwise, either SQLITE_NOMEM (out of memory
133496 Fts3Expr **ppExpr /* OUT: expression */
133501 Fts3Expr *p = 0;
133506 const int nSpace = sizeof(Fts3Expr) + sizeof(Fts3Phrase);
133509 /* The final Fts3Expr data structure, including the Fts3Phrase,
133518 ** Buffer p: Points to the Fts3Expr structure, followed by the Fts3Phrase
133525 ** appends buffer zTemp to buffer p, and fills in the Fts3Expr and Fts3Phrase
133604 ** The output variable *ppExpr is populated with an allocated Fts3Expr
133614 Fts3Expr **ppExpr, /* OUT: expression */
133632 Fts3Expr *pRet = 0;
133682 pRet = (Fts3Expr *)fts3MallocZero(sizeof(Fts3Expr));
133759 ** The argument is an Fts3Expr structure for a binary operator (any type
133777 static int opPrecedence(Fts3Expr *p){
133799 Fts3Expr **ppHead, /* Pointer to the root node of a tree */
133800 Fts3Expr *pPrev, /* Node most recently inserted into the tree */
133801 Fts3Expr *pNew /* New binary node to insert into expression tree */
133803 Fts3Expr *pSplit = pPrev;
133832 Fts3Expr **ppExpr, /* OUT: Parsed query structure */
133835 Fts3Expr *pRet = 0;
133836 Fts3Expr *pPrev = 0;
133837 Fts3Expr *pNotBranch = 0; /* Only used in legacy parse mode */
133844 Fts3Expr *p = 0;
133857 Fts3Expr *pNot = fts3MallocZero(sizeof(Fts3Expr));
133889 Fts3Expr *pAnd;
133891 pAnd = fts3MallocZero(sizeof(Fts3Expr));
133952 Fts3Expr *pIter = pNotBranch;
133978 static int fts3ExprCheckDepth(Fts3Expr *p, int nMaxDepth){
134004 static int fts3ExprBalance(Fts3Expr **pp, int nMaxDepth){
134006 Fts3Expr *pRoot = *pp; /* Initial root node */
134007 Fts3Expr *pFree = 0; /* List of free nodes. Linked by pParent. */
134015 Fts3Expr **apLeaf;
134016 apLeaf = (Fts3Expr **)sqlite3_malloc(sizeof(Fts3Expr *) * nMaxDepth);
134020 memset(apLeaf, 0, sizeof(Fts3Expr *) * nMaxDepth);
134025 Fts3Expr *p;
134036 Fts3Expr *pParent = p->pParent; /* Current parent of p */
134118 Fts3Expr *pDel;
134160 Fts3Expr **ppExpr /* OUT: Parsed query structure */
134194 ** query expression and create a tree of Fts3Expr structures representing the
134223 Fts3Expr **ppExpr, /* OUT: Parsed query structure */
134259 static void fts3FreeExprNode(Fts3Expr *p){
134273 SQLITE_PRIVATE void sqlite3Fts3ExprFree(Fts3Expr *pDel){
134274 Fts3Expr *p;
134280 Fts3Expr *pParent = p->pParent;
134341 static char *exprToString(Fts3Expr *pExpr, char *zBuf){
134411 Fts3Expr *pExpr;
142432 ** Fts3Expr.aDoclist[]/nDoclist.
142532 Fts3Expr *pExpr, /* Expression to iterate phrases of */
142534 int (*x)(Fts3Expr*,int,void*), /* Callback function to invoke for phrases */
142564 Fts3Expr *pExpr, /* Expression to iterate phrases of */
142565 int (*x)(Fts3Expr*,int,void*), /* Callback function to invoke for phrases */
142574 ** for each phrase into Fts3Expr.aDoclist[]/nDoclist. See also
142577 static int fts3ExprLoadDoclistsCb(Fts3Expr *pExpr, int iPhrase, void *ctx){
142614 static int fts3ExprPhraseCountCb(Fts3Expr *pExpr, int iPhrase, void *ctx){
142620 static int fts3ExprPhraseCount(Fts3Expr *pExpr){
142752 static int fts3SnippetFindPositions(Fts3Expr *pExpr, int iPhrase, void *ctx){
143161 Fts3Expr *pExpr, /* Phrase expression node */
143177 Fts3Expr *pExpr, /* Phrase expression node */
143277 Fts3Expr *pExpr; /* Pointer to phrase expression */
143290 Fts3Expr *pExpr, /* Phrase expression node */
143489 Fts3Expr *pExpr;
143706 static int fts3ExprTermOffsetInit(Fts3Expr *pExpr, int iPhrase, void *ctx){