Package org.apache.lucene.search
Class FieldComparator.RelevanceComparator
java.lang.Object
org.apache.lucene.search.FieldComparator<Float>
org.apache.lucene.search.FieldComparator.RelevanceComparator
- Enclosing class:
- FieldComparator<T>
Sorts by descending relevance.  NOTE: if you are
  sorting only by descending relevance and then
  secondarily by ascending docID, performance is faster
  using 
TopScoreDocCollector directly (which IndexSearcher.search(org.apache.lucene.search.Query, int) uses when no Sort is
  specified).- 
Nested Class SummaryNested classes/interfaces inherited from class org.apache.lucene.search.FieldComparatorFieldComparator.ByteComparator, FieldComparator.DocComparator, FieldComparator.DoubleComparator, FieldComparator.FloatComparator, FieldComparator.IntComparator, FieldComparator.LongComparator, FieldComparator.NumericComparator<T extends Number>, FieldComparator.RelevanceComparator, FieldComparator.ShortComparator, FieldComparator.TermOrdValComparator, FieldComparator.TermValComparator
- 
Method SummaryModifier and TypeMethodDescriptionintcompare(int slot1, int slot2) Compare hit at slot1 with hit at slot2.intcompareBottom(int doc) Compare the bottom of the queue with this doc.intcompareTop(int doc) Compare the top value with this doc.intcompareValues(Float first, Float second) Returns -1 if first is less than second.voidcopy(int slot, int doc) This method is called when a new hit is competitive.voidsetBottom(int bottom) Set the bottom slot, ie the "weakest" (sorted last) entry in the queue.setNextReader(AtomicReaderContext context) Set a newAtomicReaderContext.voidSets the Scorer to use in case a document's score is needed.voidsetTopValue(Float value) Record the top value, for future calls toFieldComparator.compareTop(int).value(int slot) Return the actual value in the slot.
- 
Method Details- 
comparepublic int compare(int slot1, int slot2) Description copied from class:FieldComparatorCompare hit at slot1 with hit at slot2.- Specified by:
- comparein class- FieldComparator<Float>
- 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
 
- 
compareBottomDescription copied from class:FieldComparatorCompare the bottom of the queue with this doc. This will only invoked after setBottom has been called. This should return the same result asFieldComparator.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). - Specified by:
- compareBottomin class- FieldComparator<Float>
- Parameters:
- doc- that was hit
- 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.
- Throws:
- IOException
 
- 
copyDescription copied from class:FieldComparatorThis 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.- Specified by:
- copyin class- FieldComparator<Float>
- Parameters:
- slot- which slot to copy the hit to
- doc- docID relative to current reader
- Throws:
- IOException
 
- 
setNextReaderDescription copied from class:FieldComparatorSet a newAtomicReaderContext. All subsequent docIDs are relative to the current reader (you must add docBase if you need to map it to a top-level docID).- Specified by:
- setNextReaderin class- FieldComparator<Float>
- Parameters:
- context- current reader context
- Returns:
- the comparator to use for this segment; most comparators can just return "this" to reuse the same comparator across segments
 
- 
setBottompublic void setBottom(int bottom) Description copied from class:FieldComparatorSet the bottom slot, ie the "weakest" (sorted last) entry in the queue. WhenFieldComparator.compareBottom(int)is called, you should compare against this slot. This will always be called beforeFieldComparator.compareBottom(int).- Specified by:
- setBottomin class- FieldComparator<Float>
- Parameters:
- bottom- the currently weakest (sorted last) slot in the queue
 
- 
setTopValueDescription copied from class:FieldComparatorRecord the top value, for future calls toFieldComparator.compareTop(int). This is only called for searches that use searchAfter (deep paging), and is called before any calls toFieldComparator.setNextReader(org.apache.lucene.index.AtomicReaderContext).- Specified by:
- setTopValuein class- FieldComparator<Float>
 
- 
setScorerDescription copied from class:FieldComparatorSets the Scorer to use in case a document's score is needed.- Overrides:
- setScorerin class- FieldComparator<Float>
- Parameters:
- scorer- Scorer instance that you should use to obtain the current hit's score, if necessary.
 
- 
valueDescription copied from class:FieldComparatorReturn the actual value in the slot.- Specified by:
- valuein class- FieldComparator<Float>
- Parameters:
- slot- the value
- Returns:
- value in this slot
 
- 
compareValuesDescription copied from class:FieldComparatorReturns -1 if first is less than second. Default impl to assume the type implements Comparable and invoke .compareTo; be sure to override this method if your FieldComparator's type isn't a Comparable or if your values may sometimes be null- Overrides:
- compareValuesin class- FieldComparator<Float>
 
- 
compareTopDescription copied from class:FieldComparatorCompare the top value with this doc. This will only invoked after setTopValue has been called. This should return the same result asFieldComparator.compare(int,int)} as if topValue were slot1 and the new document were slot 2. This is only called for searches that use searchAfter (deep paging).- Specified by:
- compareTopin class- FieldComparator<Float>
- Parameters:
- doc- that was hit
- 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.
- Throws:
- IOException
 
 
-