java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.queries.spans.SpanWeight
- All Implemented Interfaces:
SegmentCacheable
- Direct Known Subclasses:
PayloadScoreQuery.PayloadSpanWeight,SpanContainQuery.SpanContainWeight,SpanNearQuery.SpanGapQuery.SpanGapWeight,SpanNearQuery.SpanNearWeight,SpanNotQuery.SpanNotWeight,SpanOrQuery.SpanOrWeight,SpanPayloadCheckQuery.SpanPayloadCheckWeight,SpanPositionCheckQuery.SpanPositionCheckWeight,SpanTermQuery.SpanTermWeight
Expert-only. Public for use by other weight implementations
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumEnumeration defining what postings information should be retrieved from the index for a given Spansprivate static classNested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer, Weight.DefaultScorerSupplier -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Stringprotected final Similarityprotected final Similarity.SimScorerFields inherited from class org.apache.lucene.search.Weight
parentQuery -
Constructor Summary
ConstructorsConstructorDescriptionSpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) Create a new SpanWeight -
Method Summary
Modifier and TypeMethodDescriptionprivate Similarity.SimScorerbuildSimWeight(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) explain(LeafReaderContext context, int doc) An explanation of the score computation for the named document.abstract voidextractTermStates(Map<Term, TermStates> contexts) Collect all TermStates used by this WeightReturn the SimScorerabstract SpansgetSpans(LeafReaderContext ctx, SpanWeight.Postings requiredPostings) Expert: Return a Spans object iterating over matches from this Weightmatches(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.Methods inherited from class org.apache.lucene.search.Weight
bulkScorer, count, getQuery, scorerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.lucene.search.SegmentCacheable
isCacheable
-
Field Details
-
similarity
-
simScorer
-
field
-
-
Constructor Details
-
SpanWeight
public SpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) throws IOExceptionCreate a new SpanWeight- Parameters:
query- the parent querysearcher- the IndexSearcher to query againsttermStates- a map of terms toTermStatesfor use in building the similarity. May be null if scores are not required- Throws:
IOException- on error
-
-
Method Details
-
buildSimWeight
private Similarity.SimScorer buildSimWeight(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) throws IOException- Throws:
IOException
-
extractTermStates
Collect all TermStates used by this Weight- Parameters:
contexts- a map to add the TermStates to
-
getSpans
public abstract Spans getSpans(LeafReaderContext ctx, SpanWeight.Postings requiredPostings) throws IOException Expert: Return a Spans object iterating over matches from this Weight- Parameters:
ctx- a LeafReaderContext for this Spans- Returns:
- a Spans
- Throws:
IOException- on error
-
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:
-
getSimScorer
Return the SimScorer -
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
-
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
-