Package org.apache.lucene.expressions
Class SimpleBindings
- java.lang.Object
-
- org.apache.lucene.expressions.Bindings
-
- org.apache.lucene.expressions.SimpleBindings
-
public final class SimpleBindings extends Bindings
Simple class that binds expression variable names toDoubleValuesSources or otherExpressions.Example usage:
SimpleBindings bindings = new SimpleBindings(); // document's text relevance score bindings.add("_score", DoubleValuesSource.SCORES); // integer NumericDocValues field bindings.add("popularity", DoubleValuesSource.fromIntField("popularity")); // another expression bindings.add("recency", myRecencyExpression); // create a sort field in reverse order Sort sort = new Sort(expr.getSortField(bindings, true));
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classSimpleBindings.CycleDetectionBindings
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,java.util.function.Function<Bindings,DoubleValuesSource>>map
-
Constructor Summary
Constructors Constructor Description SimpleBindings()Creates a new empty Bindings
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidadd(java.lang.String name, Expression expression)Adds an Expression to the bindings.voidadd(java.lang.String name, DoubleValuesSource source)Bind aDoubleValuesSourcedirectly to the given name.voidadd(SortField sortField)Deprecated.private DoubleValuesSourcefromSortField(SortField field)DoubleValuesSourcegetDoubleValuesSource(java.lang.String name)Returns a DoubleValuesSource bound to the variable namevoidvalidate()Traverses the graph of bindings, checking there are no cycles or missing references
-
-
-
Field Detail
-
map
private final java.util.Map<java.lang.String,java.util.function.Function<Bindings,DoubleValuesSource>> map
-
-
Method Detail
-
add
@Deprecated public void add(SortField sortField)
Deprecated.Adds a SortField to the bindings.
-
add
public void add(java.lang.String name, DoubleValuesSource source)Bind aDoubleValuesSourcedirectly to the given name.
-
add
public void add(java.lang.String name, Expression expression)Adds an Expression to the bindings.This can be used to reference expressions from other expressions.
-
fromSortField
private DoubleValuesSource fromSortField(SortField field)
-
getDoubleValuesSource
public DoubleValuesSource getDoubleValuesSource(java.lang.String name)
Description copied from class:BindingsReturns a DoubleValuesSource bound to the variable name- Specified by:
getDoubleValuesSourcein classBindings
-
validate
public void validate()
Traverses the graph of bindings, checking there are no cycles or missing references- Throws:
java.lang.IllegalArgumentException- if the bindings is inconsistent
-
-