Decouple choice/case statements
[yangtools.git] / parser / yang-parser-reactor / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / reactor / AbstractResumedStatement.java
index c73b58559290cdb4c568f60014e7014f5d8ebf7d..89df4c0852eca9126ef55db136316b94a9b28398 100644 (file)
@@ -172,11 +172,10 @@ abstract class AbstractResumedStatement<A, D extends DeclaredStatement<A>, E ext
         checkState(inProgressPhase != ModelProcessingPhase.EFFECTIVE_MODEL,
                 "Declared statement cannot be added in effective phase at: %s", sourceReference());
 
-        final Optional<StatementSupport<?, ?, ?>> implicitParent =
-                definition().getImplicitParentFor(def.getPublicView());
+        final var implicitParent = definition().getImplicitParentFor(this, def.getPublicView());
         if (implicitParent.isPresent()) {
-            return createImplicitParent(offset, implicitParent.get(), ref, argument).createSubstatement(offset, def,
-                    ref, argument);
+            return createImplicitParent(offset, implicitParent.orElseThrow(), ref, argument)
+                .createSubstatement(offset, def, ref, argument);
         }
 
         final AbstractResumedStatement<X, Y, Z> ret = new SubstatementContext<>(this, def, ref, argument);