public static class FieldComparator.FloatComparator extends FieldComparator.NumericComparator<Float>
FieldCache.getFloats(org.apache.lucene.index.AtomicReader, java.lang.String, boolean)
and sorts by ascending valueFieldComparator.ByteComparator, FieldComparator.DocComparator, FieldComparator.DoubleComparator, FieldComparator.FloatComparator, FieldComparator.IntComparator, FieldComparator.LongComparator, FieldComparator.NumericComparator<T extends Number>, FieldComparator.RelevanceComparator, FieldComparator.ShortComparator, FieldComparator.TermOrdValComparator, FieldComparator.TermValComparator
docsWithField, field, missingValue
Constructor and Description |
---|
FieldComparator.FloatComparator(int numHits,
String field,
FieldCache.Parser parser,
Float missingValue) |
Modifier and Type | Method and Description |
---|---|
int |
compare(int slot1,
int slot2)
Compare hit at slot1 with hit at slot2.
|
int |
compareBottom(int doc)
Compare the bottom of the queue with this doc.
|
int |
compareTop(int doc)
Compare the top value with this doc.
|
void |
copy(int slot,
int doc)
This method is called when a new hit is competitive.
|
protected FieldCache.Floats |
getFloatValues(AtomicReaderContext context,
String field)
Expert: provides source of floats for sorting
|
void |
setBottom(int bottom)
Set the bottom slot, ie the "weakest" (sorted last)
entry in the queue.
|
FieldComparator<Float> |
setNextReader(AtomicReaderContext context)
Set a new
AtomicReaderContext . |
void |
setTopValue(Float value)
Record the top value, for future calls to
FieldComparator.compareTop(int) . |
Float |
value(int slot)
Return the actual value in the slot.
|
compareValues, setScorer
public FieldComparator.FloatComparator(int numHits, String field, FieldCache.Parser parser, Float missingValue)
public int compare(int slot1, int slot2)
FieldComparator
compare
in class FieldComparator<Float>
slot1
- first slot to compareslot2
- second slot to comparepublic int compareBottom(int doc)
FieldComparator
FieldComparator.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).
compareBottom
in class FieldComparator<Float>
doc
- that was hitpublic void copy(int slot, int doc)
FieldComparator
copy
in class FieldComparator<Float>
slot
- which slot to copy the hit todoc
- docID relative to current readerpublic FieldComparator<Float> setNextReader(AtomicReaderContext context) throws IOException
FieldComparator
AtomicReaderContext
. All subsequent docIDs are relative to
the current reader (you must add docBase if you need to
map it to a top-level docID).setNextReader
in class FieldComparator.NumericComparator<Float>
context
- current reader contextIOException
- if there is a low-level IO errorprotected FieldCache.Floats getFloatValues(AtomicReaderContext context, String field) throws IOException
IOException
public void setBottom(int bottom)
FieldComparator
FieldComparator.compareBottom(int)
is
called, you should compare against this slot. This
will always be called before FieldComparator.compareBottom(int)
.setBottom
in class FieldComparator<Float>
bottom
- the currently weakest (sorted last) slot in the queuepublic void setTopValue(Float value)
FieldComparator
FieldComparator.compareTop(int)
. This is only called for searches that
use searchAfter (deep paging), and is called before any
calls to FieldComparator.setNextReader(org.apache.lucene.index.AtomicReaderContext)
.setTopValue
in class FieldComparator<Float>
public Float value(int slot)
FieldComparator
value
in class FieldComparator<Float>
slot
- the valuepublic int compareTop(int doc)
FieldComparator
FieldComparator.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).compareTop
in class FieldComparator<Float>
doc
- that was hitCopyright © 2000-2014 Apache Software Foundation. All Rights Reserved.