## org.apache.lucene.search.spans
Class SpanMultiTermQueryWrapper.TopTermsSpanBooleanQueryRewrite

    java.lang.Object
      org.apache.lucene.search.MultiTermQuery.RewriteMethod
          org.apache.lucene.search.spans.SpanMultiTermQueryWrapper.SpanRewriteMethod
              org.apache.lucene.search.spans.SpanMultiTermQueryWrapper.TopTermsSpanBooleanQueryRewrite

All Implemented Interfaces:
  Serializable

Enclosing class:
  SpanMultiTermQueryWrapper<Q extends MultiTermQuery>

    public static final class SpanMultiTermQueryWrapper.TopTermsSpanBooleanQueryRewrite

extends SpanMultiTermQueryWrapper.SpanRewriteMethod

A rewrite method that first translates each term into a SpanTermQuery in a `BooleanClause.Occur.SHOULD` clause in a BooleanQuery, and keeps the scores as computed by the query.

This rewrite method only uses the top scoring terms so it will not overflow the boolean max clause count.

See Also:
  `MultiTermQuery.setRewriteMethod(org.apache.lucene.search.MultiTermQuery.RewriteMethod)`, Serialized Form

Constructor Summary
`SpanMultiTermQueryWrapper.TopTermsSpanBooleanQueryRewrite(int size)` Create a TopTermsSpanBooleanQueryRewrite for at most `size` terms.

Method Summary
`boolean` `equals(Object obj)`
`int` `getSize()` return the maximum priority queue size
`int` `hashCode()`
`SpanQuery` `rewrite(IndexReader reader, MultiTermQuery query)`

Methods inherited from class org.apache.lucene.search.MultiTermQuery.RewriteMethod
`getTermsEnum`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SpanMultiTermQueryWrapper.TopTermsSpanBooleanQueryRewrite

    public SpanMultiTermQueryWrapper.TopTermsSpanBooleanQueryRewrite(int size)

  Create a TopTermsSpanBooleanQueryRewrite for at most `size` terms.

Method Detail

### getSize

    public int getSize()

  return the maximum priority queue size

### rewrite

    public SpanQuery rewrite(IndexReader reader,
                             MultiTermQuery query)
                      throws IOException

  Specified by:
    `rewrite` in class `SpanMultiTermQueryWrapper.SpanRewriteMethod`
  Throws:
    `IOException`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### equals

    public boolean equals(Object obj)

  Overrides:
    `equals` in class `Object`