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


SpanNearQuery.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 SPANNEARQUERY_H
8 #define SPANNEARQUERY_H
9 
10 #include "SpanQuery.h"
11 
12 namespace Lucene {
13 
16 class LPPAPI SpanNearQuery : public SpanQuery {
17 public:
21  SpanNearQuery(Collection<SpanQueryPtr> clauses, int32_t slop, bool inOrder, bool collectPayloads = true);
22  virtual ~SpanNearQuery();
23 
25 
26 protected:
28  int32_t slop;
29  bool inOrder;
30 
31  String field;
33 
34 public:
35  using SpanQuery::toString;
36 
39 
41  int32_t getSlop();
42 
44  bool isInOrder();
45 
46  virtual String getField();
47  virtual void extractTerms(SetTerm terms);
48  virtual String toString(const String& field);
49  virtual SpansPtr getSpans(const IndexReaderPtr& reader);
50  virtual QueryPtr rewrite(const IndexReaderPtr& reader);
52  virtual bool equals(const LuceneObjectPtr& other);
53  virtual int32_t hashCode();
54 };
55 
56 }
57 
58 #endif
#define LUCENE_CLASS(Name)
Definition: LuceneObject.h:24
virtual String toString()
Prints a query to a string.
Matches spans which are near one another. One can specify slop, the maximum number of intervening unm...
Definition: SpanNearQuery.h:16
Collection< SpanQueryPtr > clauses
Definition: SpanNearQuery.h:24
virtual String toString(const String &field)
Prints a query to a string, with field assumed to be the default field and omitted.
virtual QueryPtr rewrite(const IndexReaderPtr &reader)
Called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into ...
virtual LuceneObjectPtr clone(const LuceneObjectPtr &other=LuceneObjectPtr())
Returns a clone of this query.
int32_t getSlop()
Return the maximum number of intervening unmatched positions permitted.
SpanNearQuery(Collection< SpanQueryPtr > clauses, int32_t slop, bool inOrder, bool collectPayloads=true)
Construct a SpanNearQuery. Matches spans matching a span from each clause, with up to slop total unma...
String field
Definition: SpanNearQuery.h:31
virtual bool equals(const LuceneObjectPtr &other)
Return whether two objects are equal.
bool collectPayloads
Definition: SpanNearQuery.h:32
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...
bool isInOrder()
Return true if matches are required to be in-order.
virtual String getField()
Returns the name of the field matched by this query.
int32_t slop
Definition: SpanNearQuery.h:28
virtual int32_t hashCode()
Return hash code for this object.
bool inOrder
Definition: SpanNearQuery.h:29
virtual SpansPtr getSpans(const IndexReaderPtr &reader)
Returns the matches for this query in an index. Used internally to search for spans.
Collection< SpanQueryPtr > getClauses()
Return the clauses whose spans are matched.
Base class for span-based queries.
Definition: SpanQuery.h:15
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< Spans > SpansPtr
Definition: LuceneTypes.h:453
boost::shared_ptr< IndexReader > IndexReaderPtr
Definition: LuceneTypes.h:157

clucene.sourceforge.net