Remove yang.model.util.BaseTypes
[yangtools.git] / yang / yang-model-api / src / main / java / org / opendaylight / yangtools / yang / model / api / type / EmptyTypeDefinition.java
index 4e3611eb6fb472d84017d50669bd0b9a14604761..1648bf2d1522f488425dc464328d3871849f7f79 100644 (file)
@@ -7,8 +7,31 @@
  */
 package org.opendaylight.yangtools.yang.model.api.type;
 
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
+import org.opendaylight.yangtools.yang.common.QName;
+import org.opendaylight.yangtools.yang.common.YangConstants;
 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
 
 public interface EmptyTypeDefinition extends TypeDefinition<EmptyTypeDefinition> {
+    /**
+     * Well-known QName of the {@code empty} built-in type.
+     */
+    QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "empty").intern();
 
+    static int hashCode(final @NonNull EmptyTypeDefinition type) {
+        return TypeDefinitions.basicHashCode(type);
+    }
+
+    static boolean equals(final @NonNull EmptyTypeDefinition type, final @Nullable Object obj) {
+        if (type == obj) {
+            return true;
+        }
+
+        return TypeDefinitions.castIfEquals(EmptyTypeDefinition.class, type, obj) != null;
+    }
+
+    static String toString(final @NonNull EmptyTypeDefinition type) {
+        return TypeDefinitions.toStringHelper(type).toString();
+    }
 }