diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-02-13 13:17:26 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-02-13 13:17:26 +0100 |
commit | c17b1582face7c7f31fea7e151a5855908fe04f5 (patch) | |
tree | f8bee44d00de3945b17bf08fbd5c963c5d07b41f /config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java | |
parent | 101e046bb6df5a3269331600228c75c372102979 (diff) |
Typecheck all WIP
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java index d1a29271014..51c7618acff 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java @@ -33,6 +33,7 @@ import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.stream.Collectors; /** * Represents a rank profile - a named set of ranking settings @@ -747,7 +748,9 @@ public class RankProfile implements Serializable, Cloneable { * referable from this rank profile. */ public TypeContext typeContext(QueryProfileRegistry queryProfiles) { - MapTypeContext context = new MapTypeContext(); + MapEvaluationTypeContext context = new MapEvaluationTypeContext(getMacros().values().stream() + .map(Macro::asExpressionFunction) + .collect(Collectors.toList())); // Add small constants getConstants().forEach((k, v) -> context.setType(FeatureNames.asConstantFeature(k), v.type())); @@ -955,7 +958,7 @@ public class RankProfile implements Serializable, Cloneable { return inline && formalParams.size() == 0; // only inline no-arg macros; } - public ExpressionFunction toExpressionMacro() { + public ExpressionFunction asExpressionFunction() { return new ExpressionFunction(getName(), getFormalParams(), getRankingExpression()); } |