Package org.apache.lucene.search
Class Scorer
- java.lang.Object
-
- org.apache.lucene.search.DocIdSetIterator
-
- org.apache.lucene.index.DocsEnum
-
- org.apache.lucene.search.Scorer
-
- Direct Known Subclasses:
ConstantScoreQuery.ConstantScorer,ScoreCachingWrappingScorer,SpanScorer
public abstract class Scorer extends DocsEnum
Expert: Common scoring functionality for different types of queries.A
Scoreriterates over documents matching a query in increasing order of doc Id.Document scores are computed using a given
Similarityimplementation.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.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classScorer.ChildScorerA child Scorer and its relationship to its parent.
-
Field Summary
Fields Modifier and Type Field Description protected Weightweightthe Scorer's parent Weight.-
Fields inherited from class org.apache.lucene.index.DocsEnum
FLAG_FREQS, FLAG_NONE
-
Fields inherited from class org.apache.lucene.search.DocIdSetIterator
NO_MORE_DOCS
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Collection<Scorer.ChildScorer>getChildren()Returns child sub-scorersWeightgetWeight()returns parent Weightabstract floatscore()Returns the score of the current document matching the query.voidscore(Collector collector)Scores and collects all matching documents.booleanscore(Collector collector, int max, int firstDocID)Expert: Collects matching documents in a range.-
Methods inherited from class org.apache.lucene.index.DocsEnum
attributes, freq
-
Methods inherited from class org.apache.lucene.search.DocIdSetIterator
advance, cost, docID, empty, nextDoc, slowAdvance
-
-
-
-
Field Detail
-
weight
protected final Weight weight
the Scorer's parent Weight. in some cases this may be null
-
-
Constructor Detail
-
Scorer
protected Scorer(Weight weight)
Constructs a Scorer- Parameters:
weight- The scorersWeight.
-
-
Method Detail
-
score
public void score(Collector collector) throws IOException
Scores and collects all matching documents.- Parameters:
collector- The collector to which all matching documents are passed.- Throws:
IOException
-
score
public boolean score(Collector collector, int max, int firstDocID) throws IOException
Expert: Collects matching documents in a range. Hook for optimization. Note,firstDocIDis added to ensure thatDocIdSetIterator.nextDoc()was called before this method.- Parameters:
collector- The collector to which all matching documents are passed.max- Do not score documents past this.firstDocID- The first document ID (ensuresDocIdSetIterator.nextDoc()is called before this method.- Returns:
- true if more matching documents may remain.
- Throws:
IOException
-
score
public abstract float score() throws IOExceptionReturns the score of the current document matching the query. Initially invalid, untilDocIdSetIterator.nextDoc()orDocIdSetIterator.advance(int)is called the first time, or when called from withinCollector.collect(int).- Throws:
IOException
-
getWeight
public Weight getWeight()
returns parent Weight
-
getChildren
public Collection<Scorer.ChildScorer> getChildren()
Returns child sub-scorers
-
-