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


Loading...
Searching...
No Matches
FilteredQuery.h
Go to the documentation of this file.
1
2// 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 FILTEREDQUERY_H
8#define FILTEREDQUERY_H
9
10#include "Query.h"
11
12namespace Lucene {
13
20class LPPAPI FilteredQuery : public Query {
21public:
26 FilteredQuery(const QueryPtr& query, const FilterPtr& filter);
27
28 virtual ~FilteredQuery();
29
31
32private:
33 QueryPtr query;
34 FilterPtr filter;
35
36public:
37 using Query::toString;
38
41 virtual WeightPtr createWeight(const SearcherPtr& searcher);
42
44 virtual QueryPtr rewrite(const IndexReaderPtr& reader);
45
48
49 virtual void extractTerms(SetTerm terms);
50
52 virtual String toString(const String& field);
53
54 virtual bool equals(const LuceneObjectPtr& other);
55 virtual int32_t hashCode();
57
58 friend class FilteredQueryWeight;
59};
60
61}
62
63#endif
#define LUCENE_CLASS(Name)
Definition LuceneObject.h:24
A query that applies a filter to the results of another query.
Definition FilteredQuery.h:20
virtual String toString(const String &field)
Prints a user-readable version of this query.
virtual int32_t hashCode()
Return hash code for this object.
virtual void extractTerms(SetTerm terms)
Adds all terms occurring in this query to the terms set. Only works if this query is in its rewritten...
virtual bool equals(const LuceneObjectPtr &other)
Return whether two objects are equal.
virtual LuceneObjectPtr clone(const LuceneObjectPtr &other=LuceneObjectPtr())
Returns a clone of this query.
virtual WeightPtr createWeight(const SearcherPtr &searcher)
Returns a Weight that applies the filter to the enclosed query's Weight. This is accomplished by over...
FilteredQuery(const QueryPtr &query, const FilterPtr &filter)
Constructs a new query which applies a filter to the results of the original query....
virtual QueryPtr rewrite(const IndexReaderPtr &reader)
Rewrites the wrapped query.
The abstract base class for queries.
Definition Query.h:31
Definition AbstractAllTermDocs.h:12
boost::shared_ptr< LuceneObject > LuceneObjectPtr
Definition LuceneTypes.h:539
boost::shared_ptr< Query > QueryPtr
Definition LuceneTypes.h:420
boost::shared_ptr< Searcher > SearcherPtr
Definition LuceneTypes.h:434
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition LuceneTypes.h:157
boost::shared_ptr< Filter > FilterPtr
Definition LuceneTypes.h:358
boost::shared_ptr< Weight > WeightPtr
Definition LuceneTypes.h:480

clucene.sourceforge.net