Package org.apache.lucene.search.spans
Class SpanWeight
- java.lang.Object
-
- org.apache.lucene.search.Weight
-
- org.apache.lucene.search.spans.SpanWeight
-
- All Implemented Interfaces:
SegmentCacheable
- Direct Known Subclasses:
org.apache.lucene.search.spans.SpanContainQuery.SpanContainWeight
,SpanNearQuery.SpanNearWeight
,SpanNotQuery.SpanNotWeight
,SpanOrQuery.SpanOrWeight
,SpanPositionCheckQuery.SpanPositionCheckWeight
,SpanTermQuery.SpanTermWeight
public abstract class SpanWeight extends Weight
Expert-only. Public for use by other weight implementations
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SpanWeight.Postings
Enumeration defining what postings information should be retrieved from the index for a given Spans-
Nested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer
-
-
Field Summary
Fields Modifier and Type Field Description protected String
field
protected Similarity
similarity
protected Similarity.SimWeight
simWeight
-
Fields inherited from class org.apache.lucene.search.Weight
parentQuery
-
-
Constructor Summary
Constructors Constructor Description SpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term,TermContext> termContexts, float boost)
Create a new SpanWeight
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Explanation
explain(LeafReaderContext context, int doc)
An explanation of the score computation for the named document.abstract void
extractTermContexts(Map<Term,TermContext> contexts)
Collect all TermContexts used by this WeightSimilarity.SimScorer
getSimScorer(LeafReaderContext context)
Return a SimScorer for this contextabstract Spans
getSpans(LeafReaderContext ctx, SpanWeight.Postings requiredPostings)
Expert: Return a Spans object iterating over matches from this WeightMatches
matches(LeafReaderContext context, int doc)
ReturnsMatches
for a specific document, ornull
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 returnMatchesUtils.MATCH_WITH_NO_TERMS
SpanScorer
scorer(LeafReaderContext context)
Returns aScorer
which can iterate in order over all matching documents and assign them a score.-
Methods inherited from class org.apache.lucene.search.Weight
bulkScorer, extractTerms, getQuery, scorerSupplier
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.search.SegmentCacheable
isCacheable
-
-
-
-
Field Detail
-
similarity
protected final Similarity similarity
-
simWeight
protected final Similarity.SimWeight simWeight
-
field
protected final String field
-
-
Constructor Detail
-
SpanWeight
public SpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term,TermContext> termContexts, float boost) throws IOException
Create a new SpanWeight- Parameters:
query
- the parent querysearcher
- the IndexSearcher to query againsttermContexts
- a map of terms to termcontexts for use in building the similarity. May be null if scores are not required- Throws:
IOException
- on error
-
-
Method Detail
-
extractTermContexts
public abstract void extractTermContexts(Map<Term,TermContext> contexts)
Collect all TermContexts used by this Weight- Parameters:
contexts
- a map to add the TermContexts 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
-
scorer
public SpanScorer scorer(LeafReaderContext context) throws IOException
Description copied from class:Weight
Returns aScorer
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 haveLeafReader.getLiveDocs()
applied, they need to be checked on top.- Specified by:
scorer
in classWeight
- Parameters:
context
- theLeafReaderContext
for which to return theScorer
.- Returns:
- a
Scorer
which scores documents in/out-of order. - Throws:
IOException
- if there is a low-level I/O error
-
getSimScorer
public Similarity.SimScorer getSimScorer(LeafReaderContext context) throws IOException
Return a SimScorer for this context- Parameters:
context
- the LeafReaderContext- Returns:
- a SimWeight
- Throws:
IOException
- on error
-
explain
public Explanation explain(LeafReaderContext context, int doc) throws IOException
Description copied from class:Weight
An explanation of the score computation for the named document.- Specified by:
explain
in classWeight
- Parameters:
context
- the readers context to create theExplanation
for.doc
- the document's id relative to the given context's reader- Returns:
- an Explanation for the score
- Throws:
IOException
- if anIOException
occurs
-
matches
public Matches matches(LeafReaderContext context, int doc) throws IOException
Description copied from class:Weight
ReturnsMatches
for a specific document, ornull
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 returnMatchesUtils.MATCH_WITH_NO_TERMS
- Overrides:
matches
in classWeight
- Parameters:
context
- the reader's context to create theMatches
fordoc
- the document's id relative to the given context's reader- Throws:
IOException
-
-