org.apache.lucene.search

## Class BooleanQuery.BooleanWeight

- java.lang.Object
- - org.apache.lucene.search.Weight
  - - org.apache.lucene.search.BooleanQuery.BooleanWeight

- All Implemented Interfaces:
    java.io.Serializable
  Enclosing class:
    BooleanQuery

      protected class BooleanQuery.BooleanWeight
      extends Weight

  Expert: the Weight for BooleanQuery, used to normalize, score and explain these queries.

  NOTE: this API and implementation is subject to change suddenly in the next release.

  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Similarity` | `similarity` The Similarity implementation.
    `protected java.util.ArrayList` | `weights`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BooleanWeight(Searcher searcher)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Explanation` | `explain(IndexReader reader, int doc)` An explanation of the score computation for the named document.
    `Query` | `getQuery()` The query that this concerns.
    `float` | `getValue()` The weight for this query.
    `void` | `normalize(float norm)` Assigns the query normalization factor to this.
    `Scorer` | `scorer(IndexReader reader, boolean scoreDocsInOrder, boolean topScorer)` Returns a `Scorer` which scores documents in/out-of order according to `scoreDocsInOrder`.
    `boolean` | `scoresDocsOutOfOrder()` Returns true iff this implementation scores docs only out of order.
    `float` | `sumOfSquaredWeights()` The sum of squared weights of contained query clauses.

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

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

- - ### Field Detail

    - #### similarity

          protected Similarity similarity

      The Similarity implementation.

    - #### weights

          protected java.util.ArrayList weights

  - ### Constructor Detail

    - #### BooleanWeight

          public BooleanWeight(Searcher searcher)
                        throws java.io.IOException

      Throws:
        `java.io.IOException`

  - ### Method Detail

    - #### getQuery

          public Query getQuery()

      Description copied from class: `Weight`
      The query that this concerns.
      Specified by:
        `getQuery` in class `Weight`

    - #### getValue

          public float getValue()

      Description copied from class: `Weight`
      The weight for this query.
      Specified by:
        `getValue` in class `Weight`

    - #### sumOfSquaredWeights

          public float sumOfSquaredWeights()
                                    throws java.io.IOException

      Description copied from class: `Weight`
      The sum of squared weights of contained query clauses.
      Specified by:
        `sumOfSquaredWeights` in class `Weight`
      Throws:
        `java.io.IOException`

    - #### normalize

          public void normalize(float norm)

      Description copied from class: `Weight`
      Assigns the query normalization factor to this.
      Specified by:
        `normalize` in class `Weight`

    - #### explain

          public Explanation explain(IndexReader reader,
                                     int doc)
                              throws java.io.IOException

      Description copied from class: `Weight`
      An explanation of the score computation for the named document.
      Specified by:
        `explain` in class `Weight`
      Parameters:
        `reader` - sub-reader containing the give doc
      Returns:
        an Explanation for the score
      Throws:
        `java.io.IOException`

    - #### scorer

          public Scorer scorer(IndexReader reader,
                               boolean scoreDocsInOrder,
                               boolean topScorer)
                        throws java.io.IOException

      Description copied from class: `Weight`
      Returns a `Scorer` which scores documents in/out-of order according to `scoreDocsInOrder`.

      NOTE: even if `scoreDocsInOrder` is false, it is recommended to check whether the returned `Scorer` indeed scores documents out of order (i.e., call `Weight.scoresDocsOutOfOrder()`), as some `Scorer` implementations will always return documents in-order.
      NOTE: null can be returned if no documents will be scored by this query.

      Specified by:
        `scorer` in class `Weight`
      Parameters:
        `reader` - the `IndexReader` for which to return the `Scorer`.
        `scoreDocsInOrder` - specifies whether in-order scoring of documents is required. Note that if set to false (i.e., out-of-order scoring is required), this method can return whatever scoring mode it supports, as every in-order scorer is also an out-of-order one. However, an out-of-order scorer may not support `DocIdSetIterator.nextDoc()` and/or `DocIdSetIterator.advance(int)`, therefore it is recommended to request an in-order scorer if use of these methods is required.
        `topScorer` - if true, `Scorer.score(Collector)` will be called; if false, `DocIdSetIterator.nextDoc()` and/or `DocIdSetIterator.advance(int)` will be called.
      Returns:
        a `Scorer` which scores documents in/out-of order.
      Throws:
        `java.io.IOException`

    - #### scoresDocsOutOfOrder

          public boolean scoresDocsOutOfOrder()

      Description copied from class: `Weight`
      Returns true iff this implementation scores docs only out of order. This method is used in conjunction with `Collector`'s `acceptsDocsOutOfOrder` and `Weight.scorer(org.apache.lucene.index.IndexReader, boolean, boolean)` to create a matching `Scorer` instance for a given `Collector`, or vice versa.

      NOTE: the default implementation returns `false`, i.e. the `Scorer` scores documents in-order.

      Overrides:
        `scoresDocsOutOfOrder` in class `Weight`

Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.