aboutsummaryrefslogtreecommitdiffstats
path: root/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-04-12 22:22:59 +0200
committerGitHub <noreply@github.com>2023-04-12 22:22:59 +0200
commit0f64c658ff7ac6d006d286f3c765812a5003feaa (patch)
tree580928dec7ce9e615ba0364465f37f19781372e7 /indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java
parentf5dea0f0c237ba8eed0d18c6a41b7a9305cbe074 (diff)
parent878a918b39185800b7720510336e589deb13c301 (diff)
Merge pull request #26668 from vespa-engine/bratseth/use-visitorv8.151.21
Replace reflection by visitor
Diffstat (limited to 'indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java')
-rw-r--r--indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java b/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java
index 4f83cbfdd8c..86826770828 100644
--- a/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java
+++ b/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ChoiceExpression.java
@@ -3,6 +3,7 @@ package com.yahoo.vespa.indexinglanguage.expressions;
import com.yahoo.document.DataType;
import com.yahoo.document.datatypes.FieldValue;
+import com.yahoo.vespa.indexinglanguage.ExpressionConverter;
import java.util.Arrays;
import java.util.Collection;
@@ -32,6 +33,11 @@ public class ChoiceExpression extends ExpressionList<Expression> {
}
@Override
+ public ChoiceExpression convertChildren(ExpressionConverter converter) {
+ return new ChoiceExpression(asList().stream().map(choice -> converter.branch().convert(choice)).toList());
+ }
+
+ @Override
protected void doExecute(ExecutionContext context) {
FieldValue input = context.getValue();
for (Expression expression : this) {