Package org.apache.lucene.search.suggest.document

# Class CompletionWeight

java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.search.suggest.document.CompletionWeight

All Implemented Interfaces:
  `SegmentCacheable`

public class CompletionWeight extends Weight
Expert: the Weight for CompletionQuery, used to score and explain these queries.

Subclasses can override `setNextMatch(IntsRef)`, `boost()` and `context()` to calculate the boost and extract the context of a matched path prefix.

WARNING: This API is experimental and might change in incompatible ways in the next release.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.lucene.search.Weight

  `Weight.DefaultBulkScorer, Weight.DefaultScorerSupplier`

- ## Field Summary

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

  `parentQuery`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CompletionWeight(CompletionQuery query, Automaton automaton)`
  Creates a weight for `query` with an `automaton`, using the `reader` for index stats

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected float`
  `boost()`
  Returns the boost of the partial path set by `setNextMatch(IntsRef)`
  `protected CharSequence`
  `context()`
  Returns the context of the partial path set by `setNextMatch(IntsRef)`
  `Explanation`
  `explain(LeafReaderContext context, int doc)`
  `Automaton`
  `getAutomaton()`
  Returns the automaton specified by the `CompletionQuery`
  `boolean`
  `isCacheable(LeafReaderContext ctx)`
  This object can be cached
  `ScorerSupplier`
  `scorerSupplier(LeafReaderContext context)`
  `protected void`
  `setNextMatch(IntsRef pathPrefix)`
  Set for every partial path in the index that matched the query automaton.

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

  `bulkScorer, count, getQuery, matches, scorer`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### CompletionWeight

    public CompletionWeight(CompletionQuery query, Automaton automaton) throws IOException
    Creates a weight for `query` with an `automaton`, using the `reader` for index stats
    Throws:
      `IOException`

- ## Method Details

  - ### getAutomaton

    public Automaton getAutomaton()
    Returns the automaton specified by the `CompletionQuery`
    Returns:
      query automaton

  - ### setNextMatch

    protected void setNextMatch(IntsRef pathPrefix)
    Set for every partial path in the index that matched the query automaton.

    Subclasses should override `boost()` and `context()` to return an appropriate value with respect to the current pathPrefix.

    Parameters:
      `pathPrefix` - the prefix of a matched path

  - ### boost

    protected float boost()
    Returns the boost of the partial path set by `setNextMatch(IntsRef)`
    Returns:
      suggestion query-time boost

  - ### context

    protected CharSequence context()
    Returns the context of the partial path set by `setNextMatch(IntsRef)`
    Returns:
      suggestion context

  - ### scorerSupplier

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

  - ### isCacheable

    public boolean isCacheable(LeafReaderContext ctx)
    This object can be cached
    See Also:
      - `SegmentCacheable.isCacheable(LeafReaderContext)`

  - ### explain

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