Lucene++ - a full-featured, c++ search engine
API Documentation

TermRangeQuery.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2014 Alan Wright. All rights reserved.
3 // Distributable under the terms of either the Apache License (Version 2.0)
4 // or the GNU Lesser General Public License.
6
7 #ifndef TERMRANGEQUERY_H
8 #define TERMRANGEQUERY_H
9
10 #include "MultiTermQuery.h"
11
12 namespace Lucene {
13
21 class LPPAPI TermRangeQuery : public MultiTermQuery {
22 public:
42 TermRangeQuery(const String& fieldName, StringValue lowerTerm, StringValue upperTerm, bool includeLower,
43 bool includeUpper, CollatorPtr collator = CollatorPtr());
44
45 virtual ~TermRangeQuery();
46
47 LUCENE_CLASS(TermRangeQuery);
48
49 protected:
50 StringValue lowerTerm;
51 StringValue upperTerm;
52 CollatorPtr collator;
53 String field;
54 bool includeLower;
55 bool includeUpper;
56
57 public:
58 using MultiTermQuery::toString;
59
61 String getField();
62
64 String getLowerTerm();
65
67 String getUpperTerm();
68
70 bool includesLower();
71
73 bool includesUpper();
74
76 CollatorPtr getCollator();
77
78 virtual LuceneObjectPtr clone(const LuceneObjectPtr& other = LuceneObjectPtr());
79 virtual String toString(const String& field);
80 virtual int32_t hashCode();
81 virtual bool equals(const LuceneObjectPtr& other);
82
83 protected:
84 virtual FilteredTermEnumPtr getEnum(const IndexReaderPtr& reader);
85 };
86
87 }
88
89 #endif
Lucene::Query::toString
virtual String toString()
Prints a query to a string.
Lucene::LuceneObjectPtr
boost::shared_ptr< LuceneObject > LuceneObjectPtr
Definition: LuceneTypes.h:539
Lucene::TermRangeQuery
A Query that matches documents within an range of terms.
Definition: TermRangeQuery.h:21
Lucene::TermRangeQuery::includeUpper
bool includeUpper
Definition: TermRangeQuery.h:55
Lucene::MultiTermQuery
An abstract Query that matches documents containing a subset of terms provided by a FilteredTermEnum ...
Definition: MultiTermQuery.h:31
Lucene::TermRangeQuery::upperTerm
StringValue upperTerm
Definition: TermRangeQuery.h:51
Lucene::IndexReaderPtr
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157
LUCENE_CLASS
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
Lucene
Definition: AbstractAllTermDocs.h:12
Lucene::TermRangeQuery::includeLower
bool includeLower
Definition: TermRangeQuery.h:54
Lucene::TermRangeQuery::collator
CollatorPtr collator
Definition: TermRangeQuery.h:52
MultiTermQuery.h
Lucene::FilteredTermEnumPtr
boost::shared_ptr< FilteredTermEnum > FilteredTermEnumPtr
Definition: LuceneTypes.h:365
Lucene::TermRangeQuery::field
String field
Definition: TermRangeQuery.h:53
Lucene::CollatorPtr
boost::shared_ptr< Collator > CollatorPtr
Definition: LuceneTypes.h:525

clucene.sourceforge.net