summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne Juul <arnej@yahooinc.com>2023-03-17 10:34:21 +0000
committerArne Juul <arnej@yahooinc.com>2023-03-17 13:43:26 +0000
commit07c7d7c29a960940213dba2db6f24c63353a0064 (patch)
treeca5f846da5ae7934322dae6d3bc05a04a0a59a03
parentefb6f7921c239a3c48eaf472189ae4e058e231b9 (diff)
handle DynamicTensor with embedded expressions
-rw-r--r--config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java
index 993a2442fdb..84d0997b12e 100644
--- a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java
+++ b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java
@@ -12,6 +12,7 @@ import com.yahoo.searchlib.rankingexpression.rule.ExpressionNode;
import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode;
import com.yahoo.searchlib.rankingexpression.rule.TensorFunctionNode;
import com.yahoo.searchlib.rankingexpression.transform.ExpressionTransformer;
+import com.yahoo.tensor.functions.DynamicTensor;
import com.yahoo.tensor.functions.Generate;
import com.yahoo.tensor.functions.Slice;
@@ -54,6 +55,13 @@ public class InputRecorder extends ExpressionTransformer<InputRecorderContext> {
}
return transformChildren(t, childContext);
}
+ if (f instanceof DynamicTensor d) {
+ for (var tf : d.cellGeneratorFunctions()) {
+ if (tf instanceof TensorFunctionNode.ExpressionTensorFunction expr) {
+ transform(expr.wrappedExpression(), context);
+ }
+ }
+ }
if (f instanceof Slice s) {
for (var tf : s.selectorFunctions()) {
if (tf instanceof TensorFunctionNode.ExpressionTensorFunction expr) {