Index: third_party/sqlite/sqlite-src-3100200/ext/fts5/fts5parse.y |
diff --git a/third_party/sqlite/sqlite-src-3100200/ext/fts5/fts5parse.y b/third_party/sqlite/sqlite-src-3100200/ext/fts5/fts5parse.y |
deleted file mode 100644 |
index 0e81771b4f1bf2184e459c6e7b9503107eee5fee..0000000000000000000000000000000000000000 |
--- a/third_party/sqlite/sqlite-src-3100200/ext/fts5/fts5parse.y |
+++ /dev/null |
@@ -1,182 +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 { |
- sqlite3Fts5ParseError( |
- pParse, "fts5: syntax error near \"%.*s\"",TOKEN.n,TOKEN.p |
- ); |
-} |
-%stack_overflow { |
- assert( 0 ); |
-} |
- |
-// 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($$); } |
- |
-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) ::= 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 = sqlite3Fts5ParseNode(pParse, FTS5_AND, X, Y, 0); |
-} |
- |
-cnearset(A) ::= nearset(X). { |
- A = sqlite3Fts5ParseNode(pParse, FTS5_STRING, 0, 0, X); |
-} |
-cnearset(A) ::= colset(X) COLON nearset(Y). { |
- sqlite3Fts5ParseSetColset(pParse, Y, X); |
- A = sqlite3Fts5ParseNode(pParse, FTS5_STRING, 0, 0, Y); |
-} |
- |
-%type colset {Fts5Colset*} |
-%destructor colset { sqlite3_free($$); } |
-%type colsetlist {Fts5Colset*} |
-%destructor colsetlist { sqlite3_free($$); } |
- |
-colset(A) ::= LCP colsetlist(X) RCP. { A = X; } |
-colset(A) ::= STRING(X). { |
- A = sqlite3Fts5ParseColset(pParse, 0, &X); |
-} |
- |
-colsetlist(A) ::= colsetlist(Y) STRING(X). { |
- A = sqlite3Fts5ParseColset(pParse, Y, &X); } |
-colsetlist(A) ::= STRING(X). { |
- A = sqlite3Fts5ParseColset(pParse, 0, &X); |
-} |
- |
- |
-%type nearset {Fts5ExprNearset*} |
-%type nearphrases {Fts5ExprNearset*} |
-%destructor nearset { sqlite3Fts5ParseNearsetFree($$); } |
-%destructor nearphrases { sqlite3Fts5ParseNearsetFree($$); } |
- |
-nearset(A) ::= phrase(X). { A = sqlite3Fts5ParseNearset(pParse, 0, X); } |
-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; } |