Package org.apache.lucene.queries.spans

# Class SpanWeight

java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.queries.spans.SpanWeight

All Implemented Interfaces:
  `SegmentCacheable`

Direct Known Subclasses:
  `org.apache.lucene.queries.spans.SpanContainQuery.SpanContainWeight`, `SpanNearQuery.SpanNearWeight`, `SpanNotQuery.SpanNotWeight`, `SpanOrQuery.SpanOrWeight`, `SpanPayloadCheckQuery.SpanPayloadCheckWeight`, `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 enum`
  `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, Weight.DefaultScorerSupplier`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final String`
  `field`
  `protected final Similarity`
  `similarity`
  `protected final Similarity.SimScorer`
  `simScorer`

  ### Fields inherited from class org.apache.lucene.search.Weight

  `parentQuery`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term,TermStates> termStates, float boost)`
  Create a new SpanWeight

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Explanation`
  `explain(LeafReaderContext context, int doc)`
  `abstract void`
  `extractTermStates(Map<Term,TermStates> contexts)`
  Collect all TermStates used by this Weight
  `Similarity.SimScorer`
  `getSimScorer()`
  Return the SimScorer
  `abstract Spans`
  `getSpans(LeafReaderContext ctx, SpanWeight.Postings requiredPostings)`
  Expert: Return a Spans object iterating over matches from this Weight
  `Matches`
  `matches(LeafReaderContext context, int doc)`
  `ScorerSupplier`
  `scorerSupplier(LeafReaderContext context)`

  ### Methods inherited from class org.apache.lucene.search.Weight

  `bulkScorer, count, getQuery, scorer`

  ### 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 Details

  - ### similarity

    protected final Similarity similarity

  - ### simScorer

    protected final Similarity.SimScorer simScorer

  - ### field

    protected final String field

- ## Constructor Details

  - ### SpanWeight

    public SpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term,TermStates> termStates, float boost) throws IOException
    Create a new SpanWeight
    Parameters:
      `query` - the parent query
      `searcher` - the IndexSearcher to query against
      `termStates` - a map of terms to `TermStates` for use in building the similarity. May be null if scores are not required
    Throws:
      `IOException` - on error

- ## Method Details

  - ### extractTermStates

    public abstract void extractTermStates(Map<Term,TermStates> contexts)
    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

    public ScorerSupplier scorerSupplier(LeafReaderContext context) throws IOException
    Specified by:
      `scorerSupplier` in class `Weight`
    Throws:
      `IOException`

  - ### getSimScorer

    public Similarity.SimScorer getSimScorer()
    Return the SimScorer

  - ### explain

    public Explanation explain(LeafReaderContext context, int doc) throws IOException
    Specified by:
      `explain` in class `Weight`
    Throws:
      `IOException`

  - ### matches

    public Matches matches(LeafReaderContext context, int doc) throws IOException
    Overrides:
      `matches` in class `Weight`
    Throws:
      `IOException`