final class TermQuery.TermWeight extends Weight
Weight.DefaultBulkScorer
Modifier and Type | Field and Description |
---|---|
private ScoreMode |
scoreMode |
private Similarity |
similarity |
private Similarity.SimScorer |
simScorer |
private TermStates |
termStates |
parentQuery
Constructor and Description |
---|
TermWeight(IndexSearcher searcher,
ScoreMode scoreMode,
float boost,
TermStates termStates) |
Modifier and Type | Method and Description |
---|---|
Explanation |
explain(LeafReaderContext context,
int doc)
An explanation of the score computation for the named document.
|
void |
extractTerms(java.util.Set<Term> terms)
Expert: adds all terms occurring in this query to the terms set.
|
private TermsEnum |
getTermsEnum(LeafReaderContext context)
Returns a
TermsEnum positioned at this weights Term or null if
the term does not exist in the given context |
boolean |
isCacheable(LeafReaderContext ctx) |
Matches |
matches(LeafReaderContext context,
int doc)
Returns
Matches for a specific document, or null if the document
does not match the parent query
A query match that contains no position information (for example, a Point or
DocValues query) will return MatchesUtils.MATCH_WITH_NO_TERMS |
Scorer |
scorer(LeafReaderContext context)
Returns a
Scorer which can iterate in order over all matching
documents and assign them a score. |
private boolean |
termNotInReader(LeafReader reader,
Term term) |
java.lang.String |
toString() |
bulkScorer, getQuery, scorerSupplier
private final Similarity similarity
private final Similarity.SimScorer simScorer
private final TermStates termStates
private final ScoreMode scoreMode
public TermWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost, TermStates termStates) throws java.io.IOException
java.io.IOException
public void extractTerms(java.util.Set<Term> terms)
Weight
Weight
was created with needsScores == true
then this
method will only extract terms which are used for scoring, otherwise it
will extract all terms which are used for matching.extractTerms
in class Weight
public Matches matches(LeafReaderContext context, int doc) throws java.io.IOException
Weight
Matches
for a specific document, or null
if the document
does not match the parent query
A query match that contains no position information (for example, a Point or
DocValues query) will return MatchesUtils.MATCH_WITH_NO_TERMS
public java.lang.String toString()
toString
in class java.lang.Object
public Scorer scorer(LeafReaderContext context) throws java.io.IOException
Weight
Scorer
which can iterate in order over all matching
documents and assign them a score.
NOTE: null can be returned if no documents will be scored by this query.
NOTE: The returned Scorer
does not have
LeafReader.getLiveDocs()
applied, they need to be checked on top.
scorer
in class Weight
context
- the LeafReaderContext
for which to return the Scorer
.Scorer
which scores documents in/out-of order.java.io.IOException
- if there is a low-level I/O errorpublic boolean isCacheable(LeafReaderContext ctx)
true
if the object can be cached against a given leafprivate TermsEnum getTermsEnum(LeafReaderContext context) throws java.io.IOException
TermsEnum
positioned at this weights Term or null if
the term does not exist in the given contextjava.io.IOException
private boolean termNotInReader(LeafReader reader, Term term) throws java.io.IOException
java.io.IOException
public Explanation explain(LeafReaderContext context, int doc) throws java.io.IOException
Weight
explain
in class Weight
context
- the readers context to create the Explanation
for.doc
- the document's id relative to the given context's readerjava.io.IOException
- if an IOException
occurs