diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-07-20 12:48:23 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-07-20 12:48:23 +0200 |
commit | 89496953aa57fb86465e554c009e38a0fff83577 (patch) | |
tree | c83e7ae4deb983ec76a4429ffa104d10d0c3932d /searchlib | |
parent | 7da071be1acf39adacb8b31b9922a6e3754a279b (diff) |
Basic Java model evaluation
Diffstat (limited to 'searchlib')
3 files changed, 9 insertions, 2 deletions
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java index aec5b2367bf..3adae63c803 100755 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/RankingExpression.java @@ -276,7 +276,7 @@ public class RankingExpression implements Serializable { * Returns the value of evaluating this expression over the given context. * * @param context The variable bindings to use for this evaluation. - * @return The evaluation result. + * @return the evaluation result. * @throws IllegalArgumentException if there are variables which are not bound in the given map */ public Value evaluate(Context context) { diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/AbstractArrayContext.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/AbstractArrayContext.java index 893e31c7087..41bf827748a 100644 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/AbstractArrayContext.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/AbstractArrayContext.java @@ -54,6 +54,7 @@ public abstract class AbstractArrayContext extends Context implements Cloneable, protected final double[] doubleValues() { return indexedBindings.doubleValues(); } protected final boolean ignoreUnknownValues() { return ignoreUnknownValues; } + @Override public Set<String> names() { return indexedBindings.names(); } diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/ContextIndex.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/ContextIndex.java index 4f1465cd1f5..ad6facbf0af 100644 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/ContextIndex.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/evaluation/ContextIndex.java @@ -1,7 +1,9 @@ package com.yahoo.searchlib.rankingexpression.evaluation; /** - * Indexed context lookup methods + * Indexed context lookup methods. + * Any context which implements these methods supports optimizations where map lookups + * are replaced by indexed lookups. * * @author bratseth */ @@ -17,4 +19,8 @@ public interface ContextIndex { */ int getIndex(String name); + Value get(int index); + + double getDouble(int index); + } |