summaryrefslogtreecommitdiffstats
path: root/searchlib/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/main')
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java
index befe2179dc1..86541343edb 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java
@@ -25,6 +25,7 @@ import java.util.Deque;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import java.util.Optional;
import java.util.stream.Collectors;
/**
@@ -157,6 +158,11 @@ public class TensorFunctionNode extends CompositeNode {
}
@Override
+ public Optional<TensorFunction<Reference>> asTensorFunction() {
+ return Optional.of(new ExpressionTensorFunction(expression));
+ }
+
+ @Override
public String toString() {
return toString(ExpressionToStringContext.empty);
}
@@ -230,6 +236,11 @@ public class TensorFunctionNode extends CompositeNode {
}
@Override
+ public Optional<ScalarFunction<Reference>> asScalarFunction() {
+ return Optional.of(new ExpressionScalarFunction(expression));
+ }
+
+ @Override
public Tensor evaluate(EvaluationContext<Reference> context) {
return expression.evaluate((Context)context).asTensor();
}