public final class FunctionMatchQuery extends Query
DoubleValues value matching a predicate
This query works by a linear scan of the index, and is best used in
conjunction with other queries that can restrict the number of
documents visited| Modifier and Type | Field and Description |
|---|---|
private java.util.function.DoublePredicate |
filter |
private DoubleValuesSource |
source |
| Constructor and Description |
|---|
FunctionMatchQuery(DoubleValuesSource source,
java.util.function.DoublePredicate filter)
Create a FunctionMatchQuery
|
| Modifier and Type | Method and Description |
|---|---|
Weight |
createWeight(IndexSearcher searcher,
ScoreMode scoreMode,
float boost)
Expert: Constructs an appropriate Weight implementation for this query.
|
boolean |
equals(java.lang.Object o)
Override and implement query instance equivalence properly in a subclass.
|
int |
hashCode()
Override and implement query hash code properly in a subclass.
|
java.lang.String |
toString(java.lang.String field)
Prints a query to a string, with
field assumed to be the
default field and omitted. |
void |
visit(QueryVisitor visitor)
Recurse through the query tree, visiting any child queries
|
classHash, rewrite, sameClassAs, toStringprivate final DoubleValuesSource source
private final java.util.function.DoublePredicate filter
public FunctionMatchQuery(DoubleValuesSource source, java.util.function.DoublePredicate filter)
source - a DoubleValuesSource to use for valuesfilter - the predicate to match againstpublic java.lang.String toString(java.lang.String field)
Queryfield assumed to be the
default field and omitted.public void visit(QueryVisitor visitor)
Querypublic Weight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws java.io.IOException
QueryOnly implemented by primitive queries, which re-write to themselves.
createWeight in class QueryscoreMode - How the produced scorers will be consumed.boost - The boost that is propagated by the parent queries.java.io.IOExceptionpublic boolean equals(java.lang.Object o)
QueryQueryCache works properly.
Typically a query will be equal to another only if it's an instance of
the same class and its document-filtering properties are identical that other
instance. Utility methods are provided for certain repetitive code.equals in class QueryQuery.sameClassAs(Object),
Query.classHash()public int hashCode()
QueryQueryCache works properly.hashCode in class QueryQuery.equals(Object)