org.apache.lucene.search.spans

## Class SpanScorer

- java.lang.Object
- - org.apache.lucene.search.Scorable
  - - org.apache.lucene.search.Scorer
    - - org.apache.lucene.search.spans.SpanScorer

    public class SpanScorer
    extends Scorer

A basic `Scorer` over `Spans`.

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.Scorable

`Scorable.ChildScorable`

### Field Summary

Fields
`protected LeafSimScorer` `docScorer`
`protected Spans` `spans`

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

`weight`

### Constructor Summary

Constructors
Constructor and Description
`SpanScorer(SpanWeight weight, Spans spans, LeafSimScorer docScorer)` Sole constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`int` `docID()` Returns the doc ID that is currently being scored.
`float` `getMaxScore(int upTo)` Return the maximum score that documents between the last `target` that this iterator was `shallow-advanced` to included and `upTo` included.
`Spans` `getSpans()` return the Spans for this Scorer
`DocIdSetIterator` `iterator()` Return a `DocIdSetIterator` over matching documents.
`float` `score()` Returns the score of the current document matching the query.
`protected float` `scoreCurrentDoc()` Score the current doc.
`protected void` `setFreqCurrentDoc()` Sets `freq` and `numMatches` for the current document.
`TwoPhaseIterator` `twoPhaseIterator()` Optional method: Return a `TwoPhaseIterator` view of this `Scorer`.

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

`advanceShallow, getWeight`

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

`getChildren, setMinCompetitiveScore`

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

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

### Field Detail

#### spans

    protected final Spans spans

#### docScorer

    protected final LeafSimScorer docScorer

### Constructor Detail

#### SpanScorer

    public SpanScorer(SpanWeight weight,
                      Spans spans,
                      LeafSimScorer docScorer)

Sole constructor.

### Method Detail

#### getSpans

    public Spans getSpans()

return the Spans for this Scorer

#### docID

    public int docID()

Description copied from class: `Scorable`
Returns the doc ID that is currently being scored.

Specified by:
  `docID` in class `Scorable`

#### iterator

    public DocIdSetIterator iterator()

Description copied from class: `Scorer`
Return a `DocIdSetIterator` over matching documents. The returned iterator will either be positioned on `-1` if no documents have been scored yet, `DocIdSetIterator.NO_MORE_DOCS` if all documents have been scored already, or the last document id that has been scored otherwise. The returned iterator is a view: calling this method several times will return iterators that have the same state.

Specified by:
  `iterator` in class `Scorer`

#### twoPhaseIterator

    public TwoPhaseIterator twoPhaseIterator()

Description copied from class: `Scorer`
Optional method: Return a `TwoPhaseIterator` view of this `Scorer`. A return value of `null` indicates that two-phase iteration is not supported. Note that the returned `TwoPhaseIterator`'s `approximation` must advance synchronously with the `Scorer.iterator()`: advancing the approximation must advance the iterator and vice-versa. Implementing this method is typically useful on `Scorer`s that have a high per-document overhead in order to confirm matches. The default implementation returns `null`.

Overrides:
  `twoPhaseIterator` in class `Scorer`

#### scoreCurrentDoc

    protected float scoreCurrentDoc()
                             throws IOException

Score the current doc. The default implementation scores the doc with the similarity using the slop-adjusted `freq`.

Throws:
  `IOException`

#### setFreqCurrentDoc

    protected final void setFreqCurrentDoc()
                                    throws IOException

Sets `freq` and `numMatches` for the current document.

This will be called at most once per document.

Throws:
  `IOException`

#### score

    public final float score()
                      throws IOException

Description copied from class: `Scorable`
Returns the score of the current document matching the query.

Specified by:
  `score` in class `Scorable`
Throws:
  `IOException`

#### getMaxScore

    public float getMaxScore(int upTo)
                      throws IOException

Description copied from class: `Scorer`
Return the maximum score that documents between the last `target` that this iterator was `shallow-advanced` to included and `upTo` included.

Specified by:
  `getMaxScore` in class `Scorer`
Throws:
  `IOException`