Class SpanWeight

    • Constructor Detail

      • SpanWeight

        public SpanWeight​(SpanQuery query,
                          IndexSearcher searcher,
                          java.util.Map<Term,​TermStates> termStates,
                          float boost)
                   throws java.io.IOException
        Create a new SpanWeight
        Parameters:
        query - the parent query
        searcher - the IndexSearcher to query against
        termStates - a map of terms to TermStates for use in building the similarity. May be null if scores are not required
        Throws:
        java.io.IOException - on error
    • Method Detail

      • extractTermStates

        public abstract void extractTermStates​(java.util.Map<Term,​TermStates> contexts)
        Collect all TermStates used by this Weight
        Parameters:
        contexts - a map to add the TermStates to
      • getSpans

        public abstract Spans getSpans​(LeafReaderContext ctx,
                                       SpanWeight.Postings requiredPostings)
                                throws java.io.IOException
        Expert: Return a Spans object iterating over matches from this Weight
        Parameters:
        ctx - a LeafReaderContext for this Spans
        Returns:
        a Spans
        Throws:
        java.io.IOException - on error
      • scorer

        public SpanScorer scorer​(LeafReaderContext context)
                          throws java.io.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:
        java.io.IOException - if there is a low-level I/O error
      • getSimScorer

        public LeafSimScorer getSimScorer​(LeafReaderContext context)
                                   throws java.io.IOException
        Return a LeafSimScorer for this context
        Parameters:
        context - the LeafReaderContext
        Returns:
        a SimWeight
        Throws:
        java.io.IOException - on error
      • explain

        public Explanation explain​(LeafReaderContext context,
                                   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:
        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:
        java.io.IOException - if an IOException occurs
      • matches

        public Matches matches​(LeafReaderContext context,
                               int doc)
                        throws java.io.IOException
        Description copied from class: Weight
        Returns Matches for a specific document, or null if the document does not match the parent query

        A query match that contains no position information (for example, a Point or DocValues query) will return MatchesUtils.MATCH_WITH_NO_TERMS

        Overrides:
        matches in class Weight
        Parameters:
        context - the reader's context to create the Matches for
        doc - the document's id relative to the given context's reader
        Throws:
        java.io.IOException