public class SpanScorer extends Scorer
Scorable.ChildScorable
Modifier and Type | Field and Description |
---|---|
protected LeafSimScorer |
docScorer |
private float |
freq
accumulated sloppy freq (computed in setFreqCurrentDoc)
|
private int |
lastScoredDoc |
private int |
numMatches
number of matches (computed in setFreqCurrentDoc)
|
protected Spans |
spans |
Constructor and Description |
---|
SpanScorer(SpanWeight weight,
Spans spans,
LeafSimScorer docScorer)
Sole constructor.
|
Modifier and Type | Method and Description |
---|---|
int |
docID()
Returns the doc ID that is currently being scored.
|
private void |
ensureFreq()
Ensure setFreqCurrentDoc is called, if not already called for the current doc.
|
float |
getMaxScore(int upTo)
Return the maximum score that documents between the last
target
that this iterator was shallow-advanced to
included and upTo included. |
Spans |
getSpans()
return the Spans for this Scorer
|
DocIdSetIterator |
iterator()
Return a
DocIdSetIterator over matching documents. |
float |
score()
Returns the score of the current document matching the query.
|
protected float |
scoreCurrentDoc()
Score the current doc.
|
protected void |
setFreqCurrentDoc()
Sets
freq and numMatches for the current document. |
(package private) float |
sloppyFreq()
Returns the intermediate "sloppy freq" adjusted for edit distance
|
TwoPhaseIterator |
twoPhaseIterator()
Optional method: Return a
TwoPhaseIterator view of this
Scorer . |
advanceShallow, getWeight
getChildren, setMinCompetitiveScore
protected final Spans spans
protected final LeafSimScorer docScorer
private float freq
private int numMatches
private int lastScoredDoc
public SpanScorer(SpanWeight weight, Spans spans, LeafSimScorer docScorer)
public Spans getSpans()
public int docID()
Scorable
public DocIdSetIterator iterator()
Scorer
DocIdSetIterator
over matching documents.
The returned iterator will either be positioned on -1
if no
documents have been scored yet, DocIdSetIterator.NO_MORE_DOCS
if all documents have been scored already, or the last document id that
has been scored otherwise.
The returned iterator is a view: calling this method several times will
return iterators that have the same state.public TwoPhaseIterator twoPhaseIterator()
Scorer
TwoPhaseIterator
view of this
Scorer
. A return value of null
indicates that
two-phase iteration is not supported.
Note that the returned TwoPhaseIterator
's
approximation
must
advance synchronously with the Scorer.iterator()
: advancing the
approximation must advance the iterator and vice-versa.
Implementing this method is typically useful on Scorer
s
that have a high per-document overhead in order to confirm matches.
The default implementation returns null
.twoPhaseIterator
in class Scorer
protected float scoreCurrentDoc() throws java.io.IOException
freq
.java.io.IOException
protected final void setFreqCurrentDoc() throws java.io.IOException
java.io.IOException
private void ensureFreq() throws java.io.IOException
java.io.IOException
public final float score() throws java.io.IOException
Scorable
public float getMaxScore(int upTo) throws java.io.IOException
Scorer
target
that this iterator was shallow-advanced
to
included and upTo
included.getMaxScore
in class Scorer
java.io.IOException
final float sloppyFreq() throws java.io.IOException
java.io.IOException