java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.search.TermQuery.TermWeight
- All Implemented Interfaces:
SegmentCacheable
- Enclosing class:
TermQuery
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer, Weight.DefaultScorerSupplier -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ScoreModeprivate final Similarityprivate final Similarity.SimScorerprivate final TermStatesFields inherited from class org.apache.lucene.search.Weight
parentQuery -
Constructor Summary
ConstructorsConstructorDescriptionTermWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost, TermStates termStates) -
Method Summary
Modifier and TypeMethodDescriptionintcount(LeafReaderContext context) Counts the number of live documents that match a givenWeight.parentQueryin a leaf.explain(LeafReaderContext context, int doc) An explanation of the score computation for the named document.private TermsEnumgetTermsEnum(LeafReaderContext context) Returns aTermsEnumpositioned at this weights Term or null if the term does not exist in the given contextbooleanmatches(LeafReaderContext context, int doc) ReturnsMatchesfor a specific document, ornullif the document does not match the parent queryscorerSupplier(LeafReaderContext context) Get aScorerSupplier, which allows knowing the cost of theScorerbefore building it.private booleantermNotInReader(LeafReader reader, Term term) toString()Methods inherited from class org.apache.lucene.search.Weight
bulkScorer, getQuery, scorer
-
Field Details
-
similarity
-
simScorer
-
termStates
-
scoreMode
-
-
Constructor Details
-
TermWeight
public TermWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost, TermStates termStates) throws IOException - Throws:
IOException
-
-
Method Details
-
matches
Description copied from class:WeightReturnsMatchesfor a specific document, ornullif the document does not match the parent queryA query match that contains no position information (for example, a Point or DocValues query) will return
MatchesUtils.MATCH_WITH_NO_TERMS- Overrides:
matchesin classWeight- Parameters:
context- the reader's context to create theMatchesfordoc- the document's id relative to the given context's reader- Throws:
IOException
-
toString
-
scorerSupplier
Description copied from class:WeightGet aScorerSupplier, which allows knowing the cost of theScorerbefore building it. A scorer supplier for the sameLeafReaderContextinstance may be requested multiple times as part of a single search call.Note: It must return null if the scorer is null.
- Specified by:
scorerSupplierin classWeight- Parameters:
context- the leaf reader context- Returns:
- a
ScorerSupplierproviding the scorer, or null if scorer is null - Throws:
IOException- if an IOException occurs- See Also:
-
isCacheable
- Returns:
trueif the object can be cached against a given leaf
-
getTermsEnum
Returns aTermsEnumpositioned at this weights Term or null if the term does not exist in the given context- Throws:
IOException
-
termNotInReader
- Throws:
IOException
-
explain
Description copied from class:WeightAn explanation of the score computation for the named document.- Specified by:
explainin classWeight- Parameters:
context- the readers context to create theExplanationfor.doc- the document's id relative to the given context's reader- Returns:
- an Explanation for the score
- Throws:
IOException- if anIOExceptionoccurs
-
count
Description copied from class:WeightCounts the number of live documents that match a givenWeight.parentQueryin a leaf.The default implementation returns -1 for every query. This indicates that the count could not be computed in sub-linear time.
Specific query classes should override it to provide other accurate sub-linear implementations (that actually return the count). Look at
MatchAllDocsQuery.createWeight(IndexSearcher, ScoreMode, float)for an exampleWe use this property of the function to count hits in
IndexSearcher.count(Query).- Overrides:
countin classWeight- Parameters:
context- theLeafReaderContextfor which to return the count.- Returns:
- integer count of the number of matches
- Throws:
IOException- if there is a low-level I/O error
-