public abstract class Expression extends Object
Example usage:
   // compile an expression:
   Expression expr = JavascriptCompiler.compile("sqrt(_score) + ln(popularity)");
   
   // SimpleBindings just maps variables to SortField instances
   SimpleBindings bindings = new SimpleBindings();    
   bindings.add(new SortField("_score", SortField.Type.SCORE));
   bindings.add(new SortField("popularity", SortField.Type.INT));
   
   // create a sort field and sort by it (reverse order)
   Sort sort = new Sort(expr.getSortField(bindings, true));
   Query query = new TermQuery(new Term("body", "contents"));
   searcher.search(query, null, 10, sort);
 JavascriptCompiler.compile(java.lang.String)| Modifier and Type | Field and Description | 
|---|---|
String | 
sourceText
The original source text 
 | 
String[] | 
variables
Named variables referred to by this expression 
 | 
| Modifier | Constructor and Description | 
|---|---|
protected  | 
Expression(String sourceText,
          String[] variables)
Creates a new  
Expression. | 
| Modifier and Type | Method and Description | 
|---|---|
abstract double | 
evaluate(DoubleValues[] functionValues)
Evaluates the expression for the current document. 
 | 
DoubleValuesSource | 
getDoubleValuesSource(Bindings bindings)
Get a DoubleValuesSource which can compute the value of this expression in the context of the given bindings. 
 | 
Rescorer | 
getRescorer(Bindings bindings)
Get a  
Rescorer, to rescore first-pass hits
  using this expression. | 
SortField | 
getSortField(Bindings bindings,
            boolean reverse)
Get a sort field which can be used to rank documents by this expression. 
 | 
public final String sourceText
public final String[] variables
public abstract double evaluate(DoubleValues[] functionValues)
functionValues - DoubleValues for each element of variables.public DoubleValuesSource getDoubleValuesSource(Bindings bindings)
bindings - Bindings to use for external values in this expressionpublic SortField getSortField(Bindings bindings, boolean reverse)
Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.