Remove ClassItem.setSuperClass()

The `ClassItem.setSuperClass()` is never called through a `ClassItem`
receiver. The implementations are called through an implementation
class receiver. The `PsiClassItem.setSuperClass()` is never called
at all. This change removes the `ClassItem.setSuperClass()` and the
`PsiClassItem.setSuperClass()` implementation.

Bug: 312558482
Test: ./gradlew
Change-Id: I984bf511581b2f051e7cb0bd0fc8a52d35430927
diff --git a/metalava-model-psi/src/main/java/com/android/tools/metalava/model/psi/PsiClassItem.kt b/metalava-model-psi/src/main/java/com/android/tools/metalava/model/psi/PsiClassItem.kt
index 2de5c67..56fdfe9 100644
--- a/metalava-model-psi/src/main/java/com/android/tools/metalava/model/psi/PsiClassItem.kt
+++ b/metalava-model-psi/src/main/java/com/android/tools/metalava/model/psi/PsiClassItem.kt
@@ -102,11 +102,6 @@
 
     override fun superClassType(): TypeItem? = superClassType
 
-    override fun setSuperClass(superClass: ClassItem?, superClassType: TypeItem?) {
-        this.superClass = superClass
-        this.superClassType = superClassType
-    }
-
     override var stubConstructor: ConstructorItem? = null
     override var artifact: String? = null
 
diff --git a/metalava-model-text/src/main/java/com/android/tools/metalava/model/text/TextClassItem.kt b/metalava-model-text/src/main/java/com/android/tools/metalava/model/text/TextClassItem.kt
index 6ecd6a9..0aa9359 100644
--- a/metalava-model-text/src/main/java/com/android/tools/metalava/model/text/TextClassItem.kt
+++ b/metalava-model-text/src/main/java/com/android/tools/metalava/model/text/TextClassItem.kt
@@ -143,7 +143,7 @@
 
     override fun superClassType(): TypeItem? = superClassType
 
-    override fun setSuperClass(superClass: ClassItem?, superClassType: TypeItem?) {
+    internal fun setSuperClass(superClass: ClassItem?, superClassType: TypeItem?) {
         this.superClass = superClass
         this.superClassType = superClassType
     }
diff --git a/metalava-model-turbine/src/main/java/com/android/tools/metalava/model/turbine/TurbineClassItem.kt b/metalava-model-turbine/src/main/java/com/android/tools/metalava/model/turbine/TurbineClassItem.kt
index 88ced15..4c185e2 100644
--- a/metalava-model-turbine/src/main/java/com/android/tools/metalava/model/turbine/TurbineClassItem.kt
+++ b/metalava-model-turbine/src/main/java/com/android/tools/metalava/model/turbine/TurbineClassItem.kt
@@ -143,7 +143,7 @@
         TODO("b/295800205")
     }
 
-    override fun setSuperClass(superClass: ClassItem?, superClassType: TypeItem?) {
+    internal fun setSuperClass(superClass: ClassItem?, superClassType: TypeItem?) {
         this.superClass = superClass as? TurbineClassItem
         this.superClassType = superClassType
     }
diff --git a/metalava-model/src/main/java/com/android/tools/metalava/model/ClassItem.kt b/metalava-model/src/main/java/com/android/tools/metalava/model/ClassItem.kt
index 3f08283..18981eb 100644
--- a/metalava-model/src/main/java/com/android/tools/metalava/model/ClassItem.kt
+++ b/metalava-model/src/main/java/com/android/tools/metalava/model/ClassItem.kt
@@ -226,9 +226,6 @@
 
     // Mutation APIs: Used to "fix up" the API hierarchy to only expose visible parts of the API.
 
-    // This replaces the "real" super class
-    fun setSuperClass(superClass: ClassItem?, superClassType: TypeItem? = superClass?.toType())
-
     // This replaces the interface types implemented by this class
     fun setInterfaceTypes(interfaceTypes: List<TypeItem>)