summaryrefslogtreecommitdiff
path: root/chromium/third_party/sqlite/sqlite-src-3240000/ext/fts5/fts5parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/sqlite/sqlite-src-3240000/ext/fts5/fts5parse.y')
-rw-r--r--chromium/third_party/sqlite/sqlite-src-3240000/ext/fts5/fts5parse.y197
1 files changed, 0 insertions, 197 deletions
diff --git a/chromium/third_party/sqlite/sqlite-src-3240000/ext/fts5/fts5parse.y b/chromium/third_party/sqlite/sqlite-src-3240000/ext/fts5/fts5parse.y
deleted file mode 100644
index 134125db1fa..00000000000
--- a/chromium/third_party/sqlite/sqlite-src-3240000/ext/fts5/fts5parse.y
+++ /dev/null
@@ -1,197 +0,0 @@
-/*
-** 2014 May 31
-**
-** The author disclaims copyright to this source code. In place of
-** a legal notice, here is a blessing:
-**
-** May you do good and not evil.
-** May you find forgiveness for yourself and forgive others.
-** May you share freely, never taking more than you give.
-**
-******************************************************************************
-**
-*/
-
-
-// All token codes are small integers with #defines that begin with "TK_"
-%token_prefix FTS5_
-
-// The type of the data attached to each token is Token. This is also the
-// default type for non-terminals.
-//
-%token_type {Fts5Token}
-%default_type {Fts5Token}
-
-// The generated parser function takes a 4th argument as follows:
-%extra_argument {Fts5Parse *pParse}
-
-// This code runs whenever there is a syntax error
-//
-%syntax_error {
- UNUSED_PARAM(yymajor); /* Silence a compiler warning */
- sqlite3Fts5ParseError(
- pParse, "fts5: syntax error near \"%.*s\"",TOKEN.n,TOKEN.p
- );
-}
-%stack_overflow {
- sqlite3Fts5ParseError(pParse, "fts5: parser stack overflow");
-}
-
-// The name of the generated procedure that implements the parser
-// is as follows:
-%name sqlite3Fts5Parser
-
-// The following text is included near the beginning of the C source
-// code file that implements the parser.
-//
-%include {
-#include "fts5Int.h"
-#include "fts5parse.h"
-
-/*
-** Disable all error recovery processing in the parser push-down
-** automaton.
-*/
-#define YYNOERRORRECOVERY 1
-
-/*
-** Make yytestcase() the same as testcase()
-*/
-#define yytestcase(X) testcase(X)
-
-/*
-** Indicate that sqlite3ParserFree() will never be called with a null
-** pointer.
-*/
-#define YYPARSEFREENOTNULL 1
-
-/*
-** Alternative datatype for the argument to the malloc() routine passed
-** into sqlite3ParserAlloc(). The default is size_t.
-*/
-#define YYMALLOCARGTYPE u64
-
-} // end %include
-
-%left OR.
-%left AND.
-%left NOT.
-%left TERM.
-%left COLON.
-
-input ::= expr(X). { sqlite3Fts5ParseFinished(pParse, X); }
-%destructor input { (void)pParse; }
-
-%type cnearset {Fts5ExprNode*}
-%type expr {Fts5ExprNode*}
-%type exprlist {Fts5ExprNode*}
-%destructor cnearset { sqlite3Fts5ParseNodeFree($$); }
-%destructor expr { sqlite3Fts5ParseNodeFree($$); }
-%destructor exprlist { sqlite3Fts5ParseNodeFree($$); }
-
-%type colset {Fts5Colset*}
-%destructor colset { sqlite3_free($$); }
-%type colsetlist {Fts5Colset*}
-%destructor colsetlist { sqlite3_free($$); }
-
-colset(A) ::= MINUS LCP colsetlist(X) RCP. {
- A = sqlite3Fts5ParseColsetInvert(pParse, X);
-}
-colset(A) ::= LCP colsetlist(X) RCP. { A = X; }
-colset(A) ::= STRING(X). {
- A = sqlite3Fts5ParseColset(pParse, 0, &X);
-}
-colset(A) ::= MINUS STRING(X). {
- A = sqlite3Fts5ParseColset(pParse, 0, &X);
- A = sqlite3Fts5ParseColsetInvert(pParse, A);
-}
-
-colsetlist(A) ::= colsetlist(Y) STRING(X). {
- A = sqlite3Fts5ParseColset(pParse, Y, &X); }
-colsetlist(A) ::= STRING(X). {
- A = sqlite3Fts5ParseColset(pParse, 0, &X);
-}
-
-expr(A) ::= expr(X) AND expr(Y). {
- A = sqlite3Fts5ParseNode(pParse, FTS5_AND, X, Y, 0);
-}
-expr(A) ::= expr(X) OR expr(Y). {
- A = sqlite3Fts5ParseNode(pParse, FTS5_OR, X, Y, 0);
-}
-expr(A) ::= expr(X) NOT expr(Y). {
- A = sqlite3Fts5ParseNode(pParse, FTS5_NOT, X, Y, 0);
-}
-
-expr(A) ::= colset(X) COLON LP expr(Y) RP. {
- sqlite3Fts5ParseSetColset(pParse, Y, X);
- A = Y;
-}
-expr(A) ::= LP expr(X) RP. {A = X;}
-expr(A) ::= exprlist(X). {A = X;}
-
-exprlist(A) ::= cnearset(X). {A = X;}
-exprlist(A) ::= exprlist(X) cnearset(Y). {
- A = sqlite3Fts5ParseImplicitAnd(pParse, X, Y);
-}
-
-cnearset(A) ::= nearset(X). {
- A = sqlite3Fts5ParseNode(pParse, FTS5_STRING, 0, 0, X);
-}
-cnearset(A) ::= colset(X) COLON nearset(Y). {
- A = sqlite3Fts5ParseNode(pParse, FTS5_STRING, 0, 0, Y);
- sqlite3Fts5ParseSetColset(pParse, A, X);
-}
-
-
-%type nearset {Fts5ExprNearset*}
-%type nearphrases {Fts5ExprNearset*}
-%destructor nearset { sqlite3Fts5ParseNearsetFree($$); }
-%destructor nearphrases { sqlite3Fts5ParseNearsetFree($$); }
-
-nearset(A) ::= phrase(Y). { A = sqlite3Fts5ParseNearset(pParse, 0, Y); }
-nearset(A) ::= CARET phrase(Y). {
- sqlite3Fts5ParseSetCaret(Y);
- A = sqlite3Fts5ParseNearset(pParse, 0, Y);
-}
-nearset(A) ::= STRING(X) LP nearphrases(Y) neardist_opt(Z) RP. {
- sqlite3Fts5ParseNear(pParse, &X);
- sqlite3Fts5ParseSetDistance(pParse, Y, &Z);
- A = Y;
-}
-
-nearphrases(A) ::= phrase(X). {
- A = sqlite3Fts5ParseNearset(pParse, 0, X);
-}
-nearphrases(A) ::= nearphrases(X) phrase(Y). {
- A = sqlite3Fts5ParseNearset(pParse, X, Y);
-}
-
-/*
-** The optional ", <integer>" at the end of the NEAR() arguments.
-*/
-neardist_opt(A) ::= . { A.p = 0; A.n = 0; }
-neardist_opt(A) ::= COMMA STRING(X). { A = X; }
-
-/*
-** A phrase. A set of primitives connected by "+" operators. Examples:
-**
-** "the" + "quick brown" + fo *
-** "the quick brown fo" *
-** the+quick+brown+fo*
-*/
-%type phrase {Fts5ExprPhrase*}
-%destructor phrase { sqlite3Fts5ParsePhraseFree($$); }
-
-phrase(A) ::= phrase(X) PLUS STRING(Y) star_opt(Z). {
- A = sqlite3Fts5ParseTerm(pParse, X, &Y, Z);
-}
-phrase(A) ::= STRING(Y) star_opt(Z). {
- A = sqlite3Fts5ParseTerm(pParse, 0, &Y, Z);
-}
-
-/*
-** Optional "*" character.
-*/
-%type star_opt {int}
-star_opt(A) ::= STAR. { A = 1; }
-star_opt(A) ::= . { A = 0; }