public interface Weight
extends java.io.Serializable
The purpose of Weight is to make it so that searching does not modify
a Query, so that a Query instance can be reused.
Searcher dependent state of the query should reside in the Weight.
IndexReader dependent state should reside in the Scorer.
A Weight is used in the following way:
Weight is constructed by a top-level query,
given a Searcher (Query.createWeight(Searcher)).
sumOfSquaredWeights() method is called
on the Weight to compute
the query normalization factor Similarity.queryNorm(float)
of the query clauses contained in the query.
normalize(float).
At this point the weighting is complete.
Scorer is constructed by scorer(IndexReader).
| Modifier and Type | Method and Description |
|---|---|
Explanation |
explain(IndexReader reader,
int doc)
An explanation of the score computation for the named document.
|
Query |
getQuery()
The query that this concerns.
|
float |
getValue()
The weight for this query.
|
void |
normalize(float norm)
Assigns the query normalization factor to this.
|
Scorer |
scorer(IndexReader reader)
Constructs a scorer for this.
|
float |
sumOfSquaredWeights()
The sum of squared weights of contained query clauses.
|
Query getQuery()
float getValue()
float sumOfSquaredWeights()
throws java.io.IOException
java.io.IOExceptionvoid normalize(float norm)
Scorer scorer(IndexReader reader) throws java.io.IOException
java.io.IOExceptionExplanation explain(IndexReader reader, int doc) throws java.io.IOException
java.io.IOExceptionCopyright © 2000-2014 Apache Software Foundation. All Rights Reserved.