#include <queryparser.h>
Public Types | |
enum | feature_flag { FLAG_BOOLEAN = 1, FLAG_PHRASE = 2, FLAG_LOVEHATE = 4, FLAG_BOOLEAN_ANY_CASE = 8, FLAG_WILDCARD = 16, FLAG_PURE_NOT = 32, FLAG_PARTIAL = 64 } |
Enum of feature flags. More... | |
enum | stem_strategy { STEM_NONE, STEM_SOME, STEM_ALL } |
Public Member Functions | |
QueryParser (const QueryParser &o) | |
Copy constructor. | |
QueryParser & | operator= (const QueryParser &o) |
Assignment. | |
QueryParser () | |
Default constructor. | |
~QueryParser () | |
Destructor. | |
void | set_stemmer (const Xapian::Stem &stemmer) |
Set the stemmer. | |
void | set_stemming_strategy (stem_strategy strategy) |
Set the stemming strategy. | |
void | set_stopper (const Stopper *stop=NULL) |
Set the stopper. | |
void | set_default_op (Query::op default_op) |
Set the default boolean operator. | |
Query::op | get_default_op () const |
Get the default boolean operator. | |
void | set_database (const Database &db) |
Specify the database being searched. | |
Query | parse_query (const std::string &query_string, unsigned flags=FLAG_PHRASE|FLAG_BOOLEAN|FLAG_LOVEHATE, const std::string &default_prefix="") |
Parse a query. | |
void | add_prefix (const std::string &field, const std::string &prefix) |
Add a probabilistic term prefix. | |
void | add_boolean_prefix (const std::string &field, const std::string &prefix) |
Add a boolean term prefix allowing the user to restrict a search with a boolean filter specified in the free text query. | |
TermIterator | stoplist_begin () const |
Iterate over terms omitted from the query as stopwords. | |
TermIterator | stoplist_end () const |
TermIterator | unstem_begin (const std::string &term) const |
Iterate over unstemmed forms of the given (stemmed) term used in the query. | |
TermIterator | unstem_end (const std::string &) const |
void | add_valuerangeprocessor (Xapian::ValueRangeProcessor *vrproc) |
Register a ValueRangeProcessor. | |
std::string | get_description () const |
Return a string describing this object. |
|
Enum of feature flags.
|
|
Copy constructor.
|
|
Default constructor.
|
|
Destructor.
|
|
Add a boolean term prefix allowing the user to restrict a search with a boolean filter specified in the free text query. E.g. qp.add_boolean_prefix("site", "H"); Allows the user to restrict a search with site:xapian.org which will be converted to Hxapian.org combined with any probabilistic query with OP_FILTER. If multiple boolean filters are specified in a query for the same prefix, they will be combined with the OR operator. Then, if there are boolean filters for different prefixes, they will be combined with the AND operator. Multiple fields can be mapped to the same prefix (so you can e.g. make site: and domain: aliases for each other). Instances of fields with different aliases but the same prefix will still be combined with the OR operator. For example, if "site" and "domain" map to "H", but author maps to "A", a search for "site:Foo domain:Bar author:Fred" will map to "(Hfoo OR Hbar) AND Afred".
|
|
Add a probabilistic term prefix. E.g. qp.add_prefix("author", "A"); Allows the user to search for author:orwell which will search for the term "Aorwel" (assuming English stemming is in use). Multiple fields can be mapped to the same prefix (so you can e.g. make title: and subject: aliases for each other).
|
|
Register a ValueRangeProcessor.
|
|
Get the default boolean operator.
|
|
Return a string describing this object.
|
|
Assignment.
|
|
Parse a query.
|
|
Specify the database being searched.
|
|
Set the default boolean operator.
|
|
Set the stemmer.
|
|
Set the stemming strategy.
|
|
Set the stopper.
|
|
Iterate over terms omitted from the query as stopwords.
|
|
Iterate over unstemmed forms of the given (stemmed) term used in the query.
|