Class Weight

    • Field Detail

      • parentQuery

        protected final Query parentQuery
    • Constructor Detail

      • Weight

        protected Weight​(Query query)
        Sole constructor, typically invoked by sub-classes.
        Parameters:
        query - the parent query
    • Method Detail

      • extractTerms

        @Deprecated
        public abstract void extractTerms​(java.util.Set<Term> terms)
        Expert: adds all terms occurring in this query to the terms set. If the Weight was created with needsScores == true then this method will only extract terms which are used for scoring, otherwise it will extract all terms which are used for matching.
      • matches

        public Matches matches​(LeafReaderContext context,
                               int doc)
                        throws java.io.IOException
        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
        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
      • explain

        public abstract Explanation explain​(LeafReaderContext context,
                                            int doc)
                                     throws java.io.IOException
        An explanation of the score computation for the named document.
        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
      • getQuery

        public final Query getQuery()
        The query that this concerns.
      • scorer

        public abstract Scorer scorer​(LeafReaderContext context)
                               throws java.io.IOException
        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.

        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
      • bulkScorer

        public BulkScorer bulkScorer​(LeafReaderContext context)
                              throws java.io.IOException
        Optional method, to return a BulkScorer to score the query and send hits to a Collector. Only queries that have a different top-level approach need to override this; the default implementation pulls a normal Scorer and iterates and collects the resulting hits which are not marked as deleted.
        Parameters:
        context - the LeafReaderContext for which to return the Scorer.
        Returns:
        a BulkScorer which scores documents and passes them to a collector.
        Throws:
        java.io.IOException - if there is a low-level I/O error