Class SpanScorer

Direct Known Subclasses:
PayloadScoreQuery.PayloadSpanScorer

public class SpanScorer extends Scorer
A basic Scorer over Spans.
  • Field Details

    • spans

      protected final Spans spans
    • docScorer

      protected final LeafSimScorer docScorer
    • freq

      private float freq
      accumulated sloppy freq (computed in setFreqCurrentDoc)
    • lastScoredDoc

      private int lastScoredDoc
  • Constructor Details

  • Method Details

    • 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 Scorers 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 for the current document.

      This will be called at most once per document.

      Throws:
      IOException
    • ensureFreq

      private void ensureFreq() throws IOException
      Ensure setFreqCurrentDoc is called, if not already called for the current doc.
      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
    • sloppyFreq

      final float sloppyFreq() throws IOException
      Returns the intermediate "sloppy freq" adjusted for edit distance
      Throws:
      IOException