Sorts by field's natural String sort order. All comparisons are done using String.compare, which is slow for medium to large result sets but possibly very fast for very small results sets.
More...
#include <FieldComparator.h>
Sorts by field's natural String sort order. All comparisons are done using String.compare, which is slow for medium to large result sets but possibly very fast for very small results sets.
◆ StringValComparator()
Lucene::StringValComparator::StringValComparator |
( |
int32_t |
numHits, |
|
|
const String & |
field |
|
) |
| |
◆ ~StringValComparator()
virtual Lucene::StringValComparator::~StringValComparator |
( |
| ) |
|
|
virtual |
◆ _getClassName()
static String Lucene::StringValComparator::_getClassName |
( |
| ) |
|
|
inlinestatic |
◆ compare()
virtual int32_t Lucene::StringValComparator::compare |
( |
int32_t |
slot1, |
|
|
int32_t |
slot2 |
|
) |
| |
|
virtual |
Compare hit at slot1 with hit at slot2.
- Parameters
-
slot1 | first slot to compare |
slot2 | second slot to compare |
- Returns
- any N < 0 if slot2's value is sorted after slot1, any N > 0 if the slot2's value is sorted before slot1 and 0 if they are equal
Implements Lucene::FieldComparator.
◆ compareBottom()
virtual int32_t Lucene::StringValComparator::compareBottom |
( |
int32_t |
doc | ) |
|
|
virtual |
Compare the bottom of the queue with doc. This will only invoked after setBottom has been called. This should return the same result as compare(int,int)
} as if bottom were slot1 and the new document were slot 2.
For a search that hits many results, this method will be the hotspot (invoked by far the most frequently).
- Parameters
-
- Returns
- any N < 0 if the doc's value is sorted after the bottom entry (not competitive), any N > 0 if the doc's value is sorted before the bottom entry and 0 if they are equal.
Implements Lucene::FieldComparator.
◆ copy()
virtual void Lucene::StringValComparator::copy |
( |
int32_t |
slot, |
|
|
int32_t |
doc |
|
) |
| |
|
virtual |
This method is called when a new hit is competitive. You should copy any state associated with this document that will be required for future comparisons, into the specified slot.
- Parameters
-
slot | which slot to copy the hit to |
doc | docID relative to current reader |
Implements Lucene::FieldComparator.
◆ getClassName()
virtual String Lucene::StringValComparator::getClassName |
( |
| ) |
|
|
inlinevirtual |
◆ setBottom()
virtual void Lucene::StringValComparator::setBottom |
( |
int32_t |
slot | ) |
|
|
virtual |
Set the bottom slot, ie the "weakest" (sorted last) entry in the queue. When compareBottom
is called, you should compare against this slot. This will always be called before compareBottom
.
- Parameters
-
slot | the currently weakest (sorted last) slot in the queue |
Implements Lucene::FieldComparator.
◆ setNextReader()
virtual void Lucene::StringValComparator::setNextReader |
( |
const IndexReaderPtr & |
reader, |
|
|
int32_t |
docBase |
|
) |
| |
|
virtual |
◆ shared_from_this()
◆ value()
virtual ComparableValue Lucene::StringValComparator::value |
( |
int32_t |
slot | ) |
|
|
virtual |
Return the actual value in the slot.
- Parameters
-
- Returns
- value in this slot upgraded to ComparableValue
Implements Lucene::FieldComparator.
◆ bottom
String Lucene::StringValComparator::bottom |
|
protected |
◆ currentReaderValues
Collection<String> Lucene::StringValComparator::currentReaderValues |
|
protected |
◆ field
String Lucene::StringValComparator::field |
|
protected |
◆ values
Collection<String> Lucene::StringValComparator::values |
|
protected |
The documentation for this class was generated from the following file: