public abstract class Scorer extends DocIdSetIterator
A Scorer
iterates over documents matching a
query in increasing order of doc Id.
Document scores are computed using a given Similarity
implementation.
NOTE: The values Float.Nan,
Float.NEGATIVE_INFINITY and Float.POSITIVE_INFINITY are
not valid scores. Certain collectors (eg TopScoreDocCollector
) will not properly collect hits
with these scores.
Modifier and Type | Class and Description |
---|---|
static class |
Scorer.ChildScorer
A child Scorer and its relationship to its parent.
|
Modifier and Type | Field and Description |
---|---|
protected Weight |
weight
the Scorer's parent Weight.
|
NO_MORE_DOCS
Modifier | Constructor and Description |
---|---|
protected |
Scorer(Weight weight)
Constructs a Scorer
|
Modifier and Type | Method and Description |
---|---|
abstract float |
freq()
Returns number of matches for the current document.
|
Collection<Scorer.ChildScorer> |
getChildren()
Returns child sub-scorers
|
Weight |
getWeight()
returns parent Weight
|
abstract float |
score()
Returns the score of the current document matching the query.
|
void |
score(Collector collector)
Scores and collects all matching documents.
|
boolean |
score(Collector collector,
int max,
int firstDocID)
Expert: Collects matching documents in a range.
|
advance, docID, nextDoc
protected final Weight weight
protected Scorer(Weight weight)
weight
- The scorers Weight
.public void score(Collector collector) throws IOException
collector
- The collector to which all matching documents are passed.IOException
public boolean score(Collector collector, int max, int firstDocID) throws IOException
firstDocID
is added to ensure that DocIdSetIterator.nextDoc()
was called before this method.collector
- The collector to which all matching documents are passed.max
- Do not score documents past this.firstDocID
- The first document ID (ensures DocIdSetIterator.nextDoc()
is called before
this method.IOException
public abstract float score() throws IOException
DocIdSetIterator.nextDoc()
or DocIdSetIterator.advance(int)
is called the first time, or when called from within
Collector.collect(int)
.IOException
public abstract float freq() throws IOException
IOException
public Weight getWeight()
public Collection<Scorer.ChildScorer> getChildren()
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.