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


BooleanClause.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 BOOLEANCLAUSE_H
8 #define BOOLEANCLAUSE_H
9 
10 #include "LuceneObject.h"
11 
12 namespace Lucene {
13 
15 class LPPAPI BooleanClause : public LuceneObject {
16 public:
18  enum Occur {
21 
26 
29  MUST_NOT
30  };
31 
32 public:
33  BooleanClause(const QueryPtr& query, Occur occur);
34  virtual ~BooleanClause();
35 
37 
38 protected:
42 
43 public:
45  void setOccur(Occur occur);
46 
48  void setQuery(const QueryPtr& query);
49 
50  bool isProhibited();
51  bool isRequired();
52 
53  virtual bool equals(const LuceneObjectPtr& other);
54  virtual int32_t hashCode();
55  virtual String toString();
56 };
57 
58 }
59 
60 #endif
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
A clause in a BooleanQuery.
Definition: BooleanClause.h:15
virtual int32_t hashCode()
Return hash code for this object.
BooleanClause(const QueryPtr &query, Occur occur)
virtual String toString()
Returns a string representation of the object.
virtual bool equals(const LuceneObjectPtr &other)
Return whether two objects are equal.
void setQuery(const QueryPtr &query)
Occur occur
Definition: BooleanClause.h:41
Occur
Specifies how clauses are to occur in matching documents.
Definition: BooleanClause.h:18
@ SHOULD
Use this operator for clauses that should appear in the matching documents. For a BooleanQuery with n...
Definition: BooleanClause.h:25
@ MUST
Use this operator for clauses that must appear in the matching documents.
Definition: BooleanClause.h:20
QueryPtr query
The query whose matching documents are combined by the boolean query.
Definition: BooleanClause.h:36
void setOccur(Occur occur)
Base class for all Lucene classes.
Definition: LuceneObject.h:31
Definition: AbstractAllTermDocs.h:12
boost::shared_ptr< LuceneObject > LuceneObjectPtr
Definition: LuceneTypes.h:539
boost::shared_ptr< Query > QueryPtr
Definition: LuceneTypes.h:420

clucene.sourceforge.net