Turn ParserNamespace into an abstract class
[yangtools.git] / parser / yang-parser-spi / src / main / java / org / opendaylight / yangtools / yang / parser / spi / TypeNamespace.java
index 52ea1016b9dc90662a6b0c2c8e77e00eddf3b8cd..49966d9f86de092919dbbd8928153f085cf5af6e 100644 (file)
@@ -13,7 +13,6 @@ import org.opendaylight.yangtools.yang.model.api.stmt.TypedefEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.TypedefStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.NamespaceBehaviour;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StatementNamespace.TreeScoped;
-import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
 /**
  * Derived types namespace. All derived type names defined within a parent node or at the top level of the module
@@ -27,8 +26,11 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
  * This namespace includes all type definitions implied by the language in which the current statement resides
  * (e.g. RFC6020/RFC7950 for YANG 1.0/1.1).
  */
-public interface TypeNamespace extends TreeScoped<QName, TypedefStatement, TypedefEffectiveStatement> {
-    NamespaceBehaviour<QName, StmtContext<?, TypedefStatement, TypedefEffectiveStatement>, @NonNull TypeNamespace>
-        BEHAVIOUR = NamespaceBehaviour.treeScoped(TypeNamespace.class);
+public final class TypeNamespace extends TreeScoped<QName, TypedefStatement, TypedefEffectiveStatement> {
+    public static final @NonNull NamespaceBehaviour<?, ?, ?> BEHAVIOUR =
+        NamespaceBehaviour.treeScoped(TypeNamespace.class);
 
+    private TypeNamespace() {
+        // Hidden on purpose
+    }
 }