Show / Hide Table of Contents

    Class ScoringRewrite<Q>

    Base rewrite method that translates each term into a query, and keeps the scores as computed by the query.

    @lucene.internal - Only public to be accessible by spans package.

    Inheritance
    System.Object
    MultiTermQuery.RewriteMethod
    TermCollectingRewrite<Q>
    ScoringRewrite<Q>
    Inherited Members
    TermCollectingRewrite<Q>.GetTopLevelQuery()
    TermCollectingRewrite<Q>.AddClause(Q, Term, Int32, Single)
    TermCollectingRewrite<Q>.AddClause(Q, Term, Int32, Single, TermContext)
    MultiTermQuery.RewriteMethod.GetTermsEnum(MultiTermQuery, Terms, AttributeSource)
    Namespace: Lucene.Net.Search
    Assembly: Lucene.Net.dll
    Syntax
    public abstract class ScoringRewrite<Q> : TermCollectingRewrite<Q> where Q : Query
    Type Parameters
    Name Description
    Q

    Fields

    | Improve this Doc View Source

    CONSTANT_SCORE_BOOLEAN_QUERY_REWRITE

    Like SCORING_BOOLEAN_QUERY_REWRITE except scores are not computed. Instead, each matching document receives a constant score equal to the query's boost.

    NOTE: this rewrite method will hit BooleanQuery.TooManyClausesException if the number of terms exceeds MaxClauseCount.

    Declaration
    public static readonly MultiTermQuery.RewriteMethod CONSTANT_SCORE_BOOLEAN_QUERY_REWRITE
    Field Value
    Type Description
    MultiTermQuery.RewriteMethod
    See Also
    MultiTermRewriteMethod
    | Improve this Doc View Source

    SCORING_BOOLEAN_QUERY_REWRITE

    A rewrite method that first translates each term into SHOULD clause in a BooleanQuery, and keeps the scores as computed by the query. Note that typically such scores are meaningless to the user, and require non-trivial CPU to compute, so it's almost always better to use CONSTANT_SCORE_AUTO_REWRITE_DEFAULT instead.

    NOTE: this rewrite method will hit BooleanQuery.TooManyClausesException if the number of terms exceeds MaxClauseCount.

    Declaration
    public static readonly ScoringRewrite<BooleanQuery> SCORING_BOOLEAN_QUERY_REWRITE
    Field Value
    Type Description
    ScoringRewrite<BooleanQuery>
    See Also
    MultiTermRewriteMethod

    Methods

    | Improve this Doc View Source

    CheckMaxClauseCount(Int32)

    This method is called after every new term to check if the number of max clauses (e.g. in BooleanQuery) is not exceeded. Throws the corresponding .

    Declaration
    protected abstract void CheckMaxClauseCount(int count)
    Parameters
    Type Name Description
    System.Int32 count
    | Improve this Doc View Source

    Rewrite(IndexReader, MultiTermQuery)

    Declaration
    public override Query Rewrite(IndexReader reader, MultiTermQuery query)
    Parameters
    Type Name Description
    IndexReader reader
    MultiTermQuery query
    Returns
    Type Description
    Query
    Overrides
    MultiTermQuery.RewriteMethod.Rewrite(IndexReader, MultiTermQuery)
    • Improve this Doc
    • View Source
    Back to top Copyright © 2020 Licensed to the Apache Software Foundation (ASF)