org.apache.lucene.search

## Class IndriAndWeight

- java.lang.Object
- - org.apache.lucene.search.Weight
  - - org.apache.lucene.search.IndriAndWeight

All Implemented Interfaces:
  SegmentCacheable

    public class IndriAndWeight
    extends Weight

The Weight for IndriAndQuery, used to normalize, score and explain these queries.

### Nested Class Summary

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

`Weight.DefaultBulkScorer`

### Field Summary

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

`parentQuery`

### Constructor Summary

Constructors
Constructor and Description
`IndriAndWeight(IndriAndQuery query, IndexSearcher searcher, ScoreMode scoreMode, float boost)`

### Method Summary

All Methods Instance Methods Concrete Methods
`BulkScorer` `bulkScorer(LeafReaderContext context)` Optional method, to return a `BulkScorer` to score the query and send hits to a `Collector`.
`Explanation` `explain(LeafReaderContext context, int doc)` An explanation of the score computation for the named document.
`void` `extractTerms(Set<Term> terms)` Expert: adds all terms occurring in this query to the terms set.
`boolean` `isCacheable(LeafReaderContext ctx)`
`Scorer` `scorer(LeafReaderContext context)` Returns a `Scorer` which can iterate in order over all matching documents and assign them a score.

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

`getQuery, matches, scorerSupplier`

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

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

### Constructor Detail

#### IndriAndWeight

    public IndriAndWeight(IndriAndQuery query,
                          IndexSearcher searcher,
                          ScoreMode scoreMode,
                          float boost)
                   throws IOException

Throws:
  `IOException`

### Method Detail

#### extractTerms

    public void extractTerms(Set<Term> terms)

Description copied from class: `Weight`
Expert: adds all terms occurring in this query to the terms set. If the `Weight` was created with `needsScores == true` then this method will only extract terms which are used for scoring, otherwise it will extract all terms which are used for matching.

Specified by:
  `extractTerms` in class `Weight`

#### scorer

    public Scorer scorer(LeafReaderContext context)
                  throws IOException

Description copied from class: `Weight`
Returns a `Scorer` 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 have `LeafReader.getLiveDocs()` applied, they need to be checked on top.

Specified by:
  `scorer` in class `Weight`
Parameters:
  `context` - the `LeafReaderContext` for which to return the `Scorer`.
Returns:
  a `Scorer` which scores documents in/out-of order.
Throws:
  `IOException` - if there is a low-level I/O error

#### bulkScorer

    public BulkScorer bulkScorer(LeafReaderContext context)
                          throws IOException

Description copied from class: `Weight`
Optional method, to return a `BulkScorer` to score the query and send hits to a `Collector`. Only queries that have a different top-level approach need to override this; the default implementation pulls a normal `Scorer` and iterates and collects the resulting hits which are not marked as deleted.

Overrides:
  `bulkScorer` in class `Weight`
Parameters:
  `context` - the `LeafReaderContext` for which to return the `Scorer`.
Returns:
  a `BulkScorer` which scores documents and passes them to a collector.
Throws:
  `IOException` - if there is a low-level I/O error

#### isCacheable

    public boolean isCacheable(LeafReaderContext ctx)

Returns:
  `true` if the object can be cached against a given leaf

#### 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 class `Weight`
Parameters:
  `context` - the readers context to create the `Explanation` for.
  `doc` - the document's id relative to the given context's reader
Returns:
  an Explanation for the score
Throws:
  `IOException` - if an `IOException` occurs