Simplify Abstract{Declared,Undeclareds}EffectiveStatement 79/99779/2
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 16 Feb 2022 22:10:13 +0000 (23:10 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Thu, 17 Feb 2022 08:31:14 +0000 (09:31 +0100)
We have a superfluous argument of the EffectiveStatement representation.
Remove it to simplify user verbosity.

Change-Id: I203431817313b8325a3599b29cffb85af7a11c4b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
16 files changed:
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/AbstractChoiceEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/AbstractContainerEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/AbstractGroupingEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/AbstractListEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/ActionEffectiveStatementImpl.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/DeclaredCaseEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/DeclaredInputEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/DeclaredOutputEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/NotificationEffectiveStatementImpl.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/RpcEffectiveStatementImpl.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/UndeclaredCaseEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/UndeclaredInputEffectiveStatement.java
model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/eff/UndeclaredOutputEffectiveStatement.java
model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractDeclaredEffectiveStatement.java
model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractUndeclaredEffectiveStatement.java
parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveModule.java

index c7065c07d538b815fd511b6587654b7dd23330a8..4171fe5dde1e8de1c56b17d7513bddcea4516a61 100644 (file)
@@ -25,8 +25,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.A
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.DataSchemaNodeMixin;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.MandatoryMixin;
 
-public abstract class AbstractChoiceEffectiveStatement
-        extends DefaultWithDataTree<QName, ChoiceStatement, ChoiceEffectiveStatement>
+public abstract class AbstractChoiceEffectiveStatement extends DefaultWithDataTree<QName, ChoiceStatement>
         implements ChoiceEffectiveStatement, ChoiceSchemaNode, DataSchemaNodeMixin<ChoiceStatement>,
             AugmentationTargetMixin<QName, ChoiceStatement>, MandatoryMixin<QName, ChoiceStatement> {
     private final int flags;
index b15dbf60db3bd26cf6df827ff1d9c34cf6799c4a..1087fcf3753928b8ccfcf7c89c1bb3706c7adca7 100644 (file)
@@ -25,8 +25,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.M
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.NotificationNodeContainerMixin;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.PresenceMixin;
 
-public abstract class AbstractContainerEffectiveStatement
-        extends WithTypedefNamespace<QName, ContainerStatement, ContainerEffectiveStatement>
+public abstract class AbstractContainerEffectiveStatement extends WithTypedefNamespace<QName, ContainerStatement>
         implements ContainerEffectiveStatement, ContainerSchemaNode, DataSchemaNodeMixin<ContainerStatement>,
             DataNodeContainerMixin<QName, ContainerStatement>, ActionNodeContainerMixin<QName, ContainerStatement>,
             ActionNodeContainerCompat<QName, ContainerStatement, ContainerEffectiveStatement>,
index 160cdd6092807793003b726a4e69a324dc1cc2f8..a041bb37f38f3ffd4583720b7493ebd4abc89048 100644 (file)
@@ -21,8 +21,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.D
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.NotificationNodeContainerMixin;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.SchemaNodeMixin;
 
-public abstract class AbstractGroupingEffectiveStatement
-        extends WithTypedefNamespace<QName, GroupingStatement, GroupingEffectiveStatement>
+public abstract class AbstractGroupingEffectiveStatement extends WithTypedefNamespace<QName, GroupingStatement>
         implements GroupingDefinition, GroupingEffectiveStatement,
             DataNodeContainerMixin<QName, GroupingStatement>, SchemaNodeMixin<GroupingStatement>,
             ActionNodeContainerMixin<QName, GroupingStatement>,
index 3b33f694cfa40463b85266f63d4ae6b64f2c7199..b14b5cde8d205f126790d3552e32cefaf5f26795 100644 (file)
@@ -30,8 +30,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.N
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.UserOrderedAwareMixin;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.WhenConditionMixin;
 
-abstract class AbstractListEffectiveStatement
-        extends WithTypedefNamespace<QName, ListStatement, ListEffectiveStatement>
+abstract class AbstractListEffectiveStatement extends WithTypedefNamespace<QName, ListStatement>
         implements ListEffectiveStatement, ListSchemaNode,
             ActionNodeContainerCompat<QName, ListStatement, ListEffectiveStatement>,
             NotificationNodeContainerCompat<QName, ListStatement, ListEffectiveStatement>,
index cd70b920a286dc4e4d4e92763504ee6888c045d1..369e37ca8b7707fb35af00ef9dc29c41f851237f 100644 (file)
@@ -20,8 +20,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveS
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.CopyableMixin;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.OperationDefinitionMixin;
 
-public final class ActionEffectiveStatementImpl
-        extends WithTypedefNamespace<QName, ActionStatement, ActionEffectiveStatement>
+public final class ActionEffectiveStatementImpl extends WithTypedefNamespace<QName, ActionStatement>
         implements ActionDefinition, ActionEffectiveStatement, OperationDefinitionMixin<ActionStatement>,
                    CopyableMixin<QName, ActionStatement> {
     private final @NonNull QName argument;
index e4eba4264417f07dea744eb1c5da1a2222a50f38..dbd2a564f883b93e38720fa20f2f0fcf76031fdd 100644 (file)
@@ -18,8 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.CaseEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.CaseStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithDataTree;
 
-public final class DeclaredCaseEffectiveStatement
-        extends DefaultWithDataTree<QName, CaseStatement, CaseEffectiveStatement>
+public final class DeclaredCaseEffectiveStatement extends DefaultWithDataTree<QName, CaseStatement>
         implements CaseEffectiveStatementMixin {
     private final @NonNull QName argument;
     private final int flags;
index ec6c51cab4aa83f6c9cc2b81adddec77ec13ef0f..19c73bc99d602e6c87a36cbeff9aaa1adff18950 100644 (file)
@@ -20,8 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.InputStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithDataTree.WithTypedefNamespace;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.OperationContainerMixin;
 
-public final class DeclaredInputEffectiveStatement
-        extends WithTypedefNamespace<QName, InputStatement, InputEffectiveStatement>
+public final class DeclaredInputEffectiveStatement extends WithTypedefNamespace<QName, InputStatement>
         implements InputEffectiveStatement, InputSchemaNode, OperationContainerMixin<InputStatement> {
     private final @NonNull QName argument;
     private final int flags;
index 488fd72d4d44a7fbec2fbfc6e8e28fd9baaf1d8a..f56f293f219a0e7f73b350c409edd920f4dd09de 100644 (file)
@@ -20,8 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.OutputStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithDataTree.WithTypedefNamespace;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.OperationContainerMixin;
 
-public final class DeclaredOutputEffectiveStatement
-        extends WithTypedefNamespace<QName, OutputStatement, OutputEffectiveStatement>
+public final class DeclaredOutputEffectiveStatement extends WithTypedefNamespace<QName, OutputStatement>
         implements OutputEffectiveStatement, OutputSchemaNode, OperationContainerMixin<OutputStatement> {
     private final @NonNull QName argument;
     private final int flags;
index 093ffbaae9aa23ea05127919320236842901ecf7..8603d286389e311219517eb909e1e030b7bcc837 100644 (file)
@@ -24,8 +24,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.D
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.MustConstraintMixin;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.SchemaNodeMixin;
 
-public final class NotificationEffectiveStatementImpl
-        extends WithTypedefNamespace<QName, NotificationStatement, NotificationEffectiveStatement>
+public final class NotificationEffectiveStatementImpl extends WithTypedefNamespace<QName, NotificationStatement>
         implements NotificationDefinition, NotificationEffectiveStatement,
                    SchemaNodeMixin<NotificationStatement>, DataNodeContainerMixin<QName, NotificationStatement>,
                    AugmentationTargetMixin<QName, NotificationStatement>, CopyableMixin<QName, NotificationStatement>,
index 5891a6cad2b19675fff8cf56a25796a8b9481fe0..31701ff61a27c00a460e7fb66922958d5a486055 100644 (file)
@@ -19,7 +19,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.RpcStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithDataTree.WithTypedefNamespace;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.OperationDefinitionMixin;
 
-public final class RpcEffectiveStatementImpl extends WithTypedefNamespace<QName, RpcStatement, RpcEffectiveStatement>
+public final class RpcEffectiveStatementImpl extends WithTypedefNamespace<QName, RpcStatement>
         implements RpcDefinition, RpcEffectiveStatement, OperationDefinitionMixin<RpcStatement> {
     private final @NonNull QName argument;
     private final int flags;
index 453c5bb3778a314c14f433da0be973621670aa66..a56c61770d4f911d37cc04d54e254b351466c7ca 100644 (file)
@@ -18,8 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.CaseEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.CaseStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractUndeclaredEffectiveStatement.DefaultWithDataTree;
 
-public final class UndeclaredCaseEffectiveStatement
-        extends DefaultWithDataTree<QName, CaseStatement, CaseEffectiveStatement>
+public final class UndeclaredCaseEffectiveStatement extends DefaultWithDataTree<QName, CaseStatement>
         implements CaseEffectiveStatementMixin {
     private final @NonNull QName argument;
     private final int flags;
index f35e233610156369c4dfa3e34f8fea8a2c34d914..e8ad9c0b1a1cb3cd96c0fd11d206921ab462187e 100644 (file)
@@ -20,8 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.InputStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractUndeclaredEffectiveStatement.DefaultWithDataTree;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.OperationContainerMixin;
 
-public final class UndeclaredInputEffectiveStatement
-        extends DefaultWithDataTree<QName, InputStatement, InputEffectiveStatement>
+public final class UndeclaredInputEffectiveStatement extends DefaultWithDataTree<QName, InputStatement>
         implements InputEffectiveStatement, InputSchemaNode, OperationContainerMixin<InputStatement> {
     private final @NonNull QName argument;
     private final int flags;
index cbf44550b8084292d647ca3de238194f2faa12e5..5e5cfb93ffedbaf2e4b5f8366ff2596c3fffee72 100644 (file)
@@ -20,8 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.OutputStatement;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractUndeclaredEffectiveStatement.DefaultWithDataTree;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.OperationContainerMixin;
 
-public final class UndeclaredOutputEffectiveStatement
-        extends DefaultWithDataTree<QName, OutputStatement, OutputEffectiveStatement>
+public final class UndeclaredOutputEffectiveStatement extends DefaultWithDataTree<QName, OutputStatement>
         implements OutputEffectiveStatement, OutputSchemaNode, OperationContainerMixin<OutputStatement> {
     private final @NonNull QName argument;
     private final int flags;
index a11f0725d18b4bbac77674c0e2dcb4a6678f1bae..92ab46c4fecf0c68b98612d94f46bfbf09cb28a1 100644 (file)
@@ -53,10 +53,9 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class WithSchemaTree<A, D extends DeclaredStatement<A>,
-            E extends SchemaTreeAwareEffectiveStatement<A, D>> extends AbstractDeclaredEffectiveStatement<A, D> {
+    public abstract static class WithSchemaTree<A, D extends DeclaredStatement<A>>
+            extends AbstractDeclaredEffectiveStatement<A, D> {
         @Override
         @SuppressWarnings("unchecked")
         protected <K, V, N extends IdentifierNamespace<K, V>> Optional<? extends Map<K, V>> getNamespaceContents(
@@ -86,10 +85,8 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class WithDataTree<A, D extends DeclaredStatement<A>,
-            E extends DataTreeAwareEffectiveStatement<A, D>> extends WithSchemaTree<A, D, E> {
+    public abstract static class WithDataTree<A, D extends DeclaredStatement<A>> extends WithSchemaTree<A, D> {
         @Override
         @SuppressWarnings("unchecked")
         protected <K, V, N extends IdentifierNamespace<K, V>> Optional<? extends Map<K, V>> getNamespaceContents(
@@ -215,10 +212,8 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class DefaultWithSchemaTree<A, D extends DeclaredStatement<A>,
-            E extends SchemaTreeAwareEffectiveStatement<A, D>> extends WithSchemaTree<A, D, E> {
+    public abstract static class DefaultWithSchemaTree<A, D extends DeclaredStatement<A>> extends WithSchemaTree<A, D> {
         private final @NonNull Map<QName, SchemaTreeEffectiveStatement<?>> schemaTree;
         private final @NonNull Object substatements;
         private final @NonNull D declared;
@@ -230,7 +225,7 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
             this.schemaTree = immutableNamespaceOf(createSchemaTreeNamespace(substatements));
         }
 
-        protected DefaultWithSchemaTree(final DefaultWithSchemaTree<A, D, E> original) {
+        protected DefaultWithSchemaTree(final DefaultWithSchemaTree<A, D> original) {
             this.declared = original.declared;
             this.schemaTree = original.schemaTree;
             this.substatements = original.substatements;
@@ -258,12 +253,10 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class DefaultWithDataTree<A, D extends DeclaredStatement<A>,
-            E extends DataTreeAwareEffectiveStatement<A, D>> extends WithDataTree<A, D, E> {
-        public abstract static class WithTypedefNamespace<A, D extends DeclaredStatement<A>,
-                E extends DataTreeAwareEffectiveStatement<A, D>> extends DefaultWithDataTree<A, D, E> {
+    public abstract static class DefaultWithDataTree<A, D extends DeclaredStatement<A>> extends WithDataTree<A, D> {
+        public abstract static class WithTypedefNamespace<A, D extends DeclaredStatement<A>>
+                extends DefaultWithDataTree<A, D> {
             protected WithTypedefNamespace(final D declared,
                 final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
                 super(declared, substatements);
@@ -271,7 +264,7 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
                 createTypedefNamespace(substatements);
             }
 
-            protected WithTypedefNamespace(final WithTypedefNamespace<A, D, E> original) {
+            protected WithTypedefNamespace(final WithTypedefNamespace<A, D> original) {
                 super(original);
             }
 
@@ -302,7 +295,7 @@ public abstract class AbstractDeclaredEffectiveStatement<A, D extends DeclaredSt
             this.dataTree = createDataTreeNamespace(schema.values(), schemaTree);
         }
 
-        protected DefaultWithDataTree(final DefaultWithDataTree<A, D, E> original) {
+        protected DefaultWithDataTree(final DefaultWithDataTree<A, D> original) {
             this.declared = original.declared;
             this.schemaTree = original.schemaTree;
             this.dataTree = original.dataTree;
index 5ba540f0e0285c4c818d1a2f7ea31e6b68d065fa..3b48eee8eb09444f47bda8e73d394da6007637fb 100644 (file)
@@ -42,10 +42,9 @@ public abstract class AbstractUndeclaredEffectiveStatement<A, D extends Declared
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class WithSchemaTree<A, D extends DeclaredStatement<A>,
-            E extends SchemaTreeAwareEffectiveStatement<A, D>> extends AbstractUndeclaredEffectiveStatement<A, D> {
+    public abstract static class WithSchemaTree<A, D extends DeclaredStatement<A>>
+            extends AbstractUndeclaredEffectiveStatement<A, D> {
         @Override
         @SuppressWarnings("unchecked")
         protected <K, V, N extends IdentifierNamespace<K, V>> Optional<? extends Map<K, V>> getNamespaceContents(
@@ -75,10 +74,8 @@ public abstract class AbstractUndeclaredEffectiveStatement<A, D extends Declared
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class WithDataTree<A, D extends DeclaredStatement<A>,
-            E extends DataTreeAwareEffectiveStatement<A, D>> extends WithSchemaTree<A, D, E> {
+    public abstract static class WithDataTree<A, D extends DeclaredStatement<A>> extends WithSchemaTree<A, D> {
         @Override
         @SuppressWarnings("unchecked")
         protected <K, V, N extends IdentifierNamespace<K, V>> Optional<? extends Map<K, V>> getNamespaceContents(
@@ -97,10 +94,8 @@ public abstract class AbstractUndeclaredEffectiveStatement<A, D extends Declared
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class DefaultWithSchemaTree<A, D extends DeclaredStatement<A>,
-            E extends SchemaTreeAwareEffectiveStatement<A, D>> extends WithSchemaTree<A, D, E> {
+    public abstract static class DefaultWithSchemaTree<A, D extends DeclaredStatement<A>> extends WithSchemaTree<A, D> {
         private final @NonNull Map<QName, SchemaTreeEffectiveStatement<?>> schemaTree;
         private final @NonNull Object substatements;
 
@@ -109,7 +104,7 @@ public abstract class AbstractUndeclaredEffectiveStatement<A, D extends Declared
             this.schemaTree = immutableNamespaceOf(createSchemaTreeNamespace(substatements));
         }
 
-        protected DefaultWithSchemaTree(final DefaultWithSchemaTree<A, D, E> original) {
+        protected DefaultWithSchemaTree(final DefaultWithSchemaTree<A, D> original) {
             this.schemaTree = original.schemaTree;
             this.substatements = original.substatements;
         }
@@ -131,10 +126,8 @@ public abstract class AbstractUndeclaredEffectiveStatement<A, D extends Declared
      *
      * @param <A> Argument type ({@link Empty} if statement does not have argument.)
      * @param <D> Class representing declared version of this statement.
-     * @param <E> Class representing effective version of this statement.
      */
-    public abstract static class DefaultWithDataTree<A, D extends DeclaredStatement<A>,
-            E extends DataTreeAwareEffectiveStatement<A, D>> extends WithDataTree<A, D, E> {
+    public abstract static class DefaultWithDataTree<A, D extends DeclaredStatement<A>> extends WithDataTree<A, D> {
         private final @NonNull Map<QName, SchemaTreeEffectiveStatement<?>> schemaTree;
         private final @NonNull Map<QName, DataTreeEffectiveStatement<?>> dataTree;
         private final @NonNull Object substatements;
@@ -146,7 +139,7 @@ public abstract class AbstractUndeclaredEffectiveStatement<A, D extends Declared
             this.substatements = maskList(substatements);
         }
 
-        protected DefaultWithDataTree(final DefaultWithDataTree<A, D, E> original) {
+        protected DefaultWithDataTree(final DefaultWithDataTree<A, D> original) {
             this.schemaTree = original.schemaTree;
             this.dataTree = original.dataTree;
             this.substatements = original.substatements;
index 5335338f4dd50114e8e7cae93565c4139cd6db54..fb7077ebde6c00d16466362b3c7463abfa422535 100644 (file)
@@ -60,7 +60,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 @Beta
 public abstract class AbstractEffectiveModule<D extends DeclaredStatement<Unqualified>,
         E extends DataTreeAwareEffectiveStatement<Unqualified, D>>
-        extends WithTypedefNamespace<Unqualified, D, E>
+        extends WithTypedefNamespace<Unqualified, D>
         implements ModuleLike, DocumentedNodeMixin<Unqualified, D>, NotificationNodeContainerCompat<Unqualified, D, E> {
     private final String prefix;
     private final ImmutableSet<GroupingDefinition> groupings;