diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2024-01-13 12:02:22 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2024-01-13 12:02:22 +0100 |
commit | aa894f7341b2e4388afdd8776da120205bb7c1db (patch) | |
tree | 31a0240257974a915062cbb1294e601e918d21f3 /indexinglanguage | |
parent | a393f0a47e0317bf58f82a1a5158bd3e75499904 (diff) |
- Require non-null inner expression in foreach.
- Let null conversion buble up.
Diffstat (limited to 'indexinglanguage')
-rw-r--r-- | indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ForEachExpression.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ForEachExpression.java b/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ForEachExpression.java index b7339975503..25ac948c435 100644 --- a/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ForEachExpression.java +++ b/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ForEachExpression.java @@ -11,6 +11,8 @@ import com.yahoo.vespa.indexinglanguage.FieldValueConverter; import com.yahoo.vespa.objects.ObjectOperation; import com.yahoo.vespa.objects.ObjectPredicate; +import java.util.Objects; + /** * @author Simon Thoresen Hult */ @@ -20,7 +22,7 @@ public final class ForEachExpression extends CompositeExpression { public ForEachExpression(Expression exp) { super(UnresolvedDataType.INSTANCE); - this.exp = exp; + this.exp = Objects.requireNonNull(exp); } public Expression getInnerExpression() { @@ -29,7 +31,8 @@ public final class ForEachExpression extends CompositeExpression { @Override public ForEachExpression convertChildren(ExpressionConverter converter) { - return new ForEachExpression(converter.convert(exp)); + Expression converted = converter.convert(exp); + return converted != null ? new ForEachExpression(converted) : null; } @Override |