summaryrefslogtreecommitdiff
path: root/src/mongo/db/fts/fts_query_parser.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/fts/fts_query_parser.h')
-rw-r--r--src/mongo/db/fts/fts_query_parser.h89
1 files changed, 43 insertions, 46 deletions
diff --git a/src/mongo/db/fts/fts_query_parser.h b/src/mongo/db/fts/fts_query_parser.h
index 32804fd63fd..b5e8c53207f 100644
--- a/src/mongo/db/fts/fts_query_parser.h
+++ b/src/mongo/db/fts/fts_query_parser.h
@@ -34,57 +34,54 @@
namespace mongo {
- namespace fts {
+namespace fts {
- struct QueryToken {
- enum Type { WHITESPACE, DELIMITER, TEXT, INVALID };
- QueryToken( Type type, StringData data, unsigned offset, bool previousWhiteSpace )
- : type( type ),
- data( data ),
- offset( offset ),
- previousWhiteSpace( previousWhiteSpace ) {}
+struct QueryToken {
+ enum Type { WHITESPACE, DELIMITER, TEXT, INVALID };
+ QueryToken(Type type, StringData data, unsigned offset, bool previousWhiteSpace)
+ : type(type), data(data), offset(offset), previousWhiteSpace(previousWhiteSpace) {}
- bool ok() const { return type != INVALID; }
-
- Type type;
- StringData data;
- unsigned offset;
- bool previousWhiteSpace;
- };
+ bool ok() const {
+ return type != INVALID;
+ }
- /**
- * The pseudo EXBNF for the query parsing language is:
- *
- * SEARCH STRING = TOKEN_LIST ( ' ' TOKEN_LIST )*
- *
- * TOKEN_LIST = SEARCH_TOKEN
- * |'-' SEARCH_TOKEN
- * | QUOTED_SEARCH_TOKEN
- * |'-' QUOTED_SEARCH_TOKEN
- *
- * QUOTED_SEARCH_TOKEN = '“' SEARCH_TOKEN+ '"'
- *
- * SEARCH_TOKEN = CHARACTER_EXCLUDING_SPECIAL_CHARS
- *
- * SPECIAL_CHARS = '-' | ' ' | '"'
- */
- class FTSQueryParser {
- MONGO_DISALLOW_COPYING( FTSQueryParser );
- public:
+ Type type;
+ StringData data;
+ unsigned offset;
+ bool previousWhiteSpace;
+};
- FTSQueryParser(StringData str);
- bool more() const;
- QueryToken next();
+/**
+ * The pseudo EXBNF for the query parsing language is:
+ *
+ * SEARCH STRING = TOKEN_LIST ( ' ' TOKEN_LIST )*
+ *
+ * TOKEN_LIST = SEARCH_TOKEN
+ * |'-' SEARCH_TOKEN
+ * | QUOTED_SEARCH_TOKEN
+ * |'-' QUOTED_SEARCH_TOKEN
+ *
+ * QUOTED_SEARCH_TOKEN = '“' SEARCH_TOKEN+ '"'
+ *
+ * SEARCH_TOKEN = CHARACTER_EXCLUDING_SPECIAL_CHARS
+ *
+ * SPECIAL_CHARS = '-' | ' ' | '"'
+ */
+class FTSQueryParser {
+ MONGO_DISALLOW_COPYING(FTSQueryParser);
- private:
- QueryToken::Type getType( char c ) const;
- bool skipWhitespace();
+public:
+ FTSQueryParser(StringData str);
+ bool more() const;
+ QueryToken next();
- unsigned _pos;
- bool _previousWhiteSpace;
- const StringData _raw;
- };
+private:
+ QueryToken::Type getType(char c) const;
+ bool skipWhitespace();
- }
+ unsigned _pos;
+ bool _previousWhiteSpace;
+ const StringData _raw;
+};
+}
}
-