Enforce non-null compositions 96/101196/2
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 17 May 2022 21:38:07 +0000 (23:38 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 17 May 2022 21:42:38 +0000 (23:42 +0200)
Expressions may not contain null values, make sure we enforce that.

Change-Id: Icd08a1c9bc2d931837f7b31362d453d794a2a0bd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/stmt/IfFeatureExpr.java

index 0850b58e773953d40d9820049b04bd25002bc8a0..b1944f70fe5b5dd276ef0aa5f3b659b9d214a494 100644 (file)
@@ -36,7 +36,7 @@ import org.opendaylight.yangtools.yang.common.QName;
 @Beta
 public abstract sealed class IfFeatureExpr implements Immutable, Predicate<Set<QName>> {
     private abstract static sealed class Single extends IfFeatureExpr {
-        final QName qname;
+        final @NonNull QName qname;
 
         Single(final QName qname) {
             this.qname = requireNonNull(qname);
@@ -447,7 +447,8 @@ public abstract sealed class IfFeatureExpr implements Immutable, Predicate<Set<Q
             } else if (expr instanceof Absent) {
                 negative = true;
             } else {
-                return mixed.apply(exprs.toArray(new IfFeatureExpr[0]));
+                requireNonNull(expr);
+                negative = positive = true;
             }
         }