00001 #ifndef LUX_API_QUERYPARSER_H
00002 #define LUX_API_QUERYPARSER_H
00003
00004 #include <string>
00005 #include "lux/query/phrase_query.h"
00006 #include "lux/query/boolean_query.h"
00007
00008 namespace Lux {
00009
00010 struct phrase_t {
00011 std::string index;
00012 std::string phrase;
00013 };
00014
00018 class QueryParser {
00019 public:
00024 static Query *parse(const char *query);
00029 static Query *parse(std::string query);
00030
00031 private:
00032 static phrase_t split_token_(std::string &token);
00033
00034 };
00035 }
00036
00037 #endif