Introduce ClassId.getShortClassName() for convenience
This commit is contained in:
@@ -91,8 +91,8 @@ public class BuiltinsPackageFragment(
|
||||
|
||||
val classProto = ProtoBuf.Class.parseFrom(stream, extensionRegistry)
|
||||
|
||||
val expectedShortName = classId.getRelativeClassName().shortName()
|
||||
val actualShortName = nameResolver.getClassId(classProto.getFqName()).getRelativeClassName().shortName()
|
||||
val expectedShortName = classId.getShortClassName()
|
||||
val actualShortName = nameResolver.getClassId(classProto.getFqName()).getShortClassName()
|
||||
if (!actualShortName.isSpecial() && actualShortName != expectedShortName) {
|
||||
// Workaround for case-insensitive file systems,
|
||||
// otherwise we'd find "Collection" for "collection" etc
|
||||
|
||||
@@ -59,6 +59,11 @@ public final class ClassId {
|
||||
return relativeClassName;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public Name getShortClassName() {
|
||||
return relativeClassName.shortName();
|
||||
}
|
||||
|
||||
public boolean isLocal() {
|
||||
return local;
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ class KClassImpl<T>(override val jClass: Class<T>) : KCallableContainerImpl(), K
|
||||
return when {
|
||||
jClass.isAnonymousClass() -> null
|
||||
classId.isLocal() -> calculateLocalClassName(jClass)
|
||||
else -> classId.getRelativeClassName().shortName().asString()
|
||||
else -> classId.getShortClassName().asString()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+12
-9
@@ -16,25 +16,28 @@
|
||||
|
||||
package org.jetbrains.kotlin.serialization.deserialization.descriptors
|
||||
|
||||
import org.jetbrains.kotlin.serialization.Flags
|
||||
import org.jetbrains.kotlin.serialization.ProtoBuf
|
||||
import org.jetbrains.kotlin.serialization.deserialization.*
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.descriptors.impl.AbstractClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.impl.EnumEntrySyntheticClassDescriptor
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.DescriptorFactory
|
||||
import org.jetbrains.kotlin.resolve.OverridingUtil
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
|
||||
import org.jetbrains.kotlin.resolve.scopes.JetScope
|
||||
import org.jetbrains.kotlin.resolve.scopes.StaticScopeForKotlinClass
|
||||
import org.jetbrains.kotlin.serialization.Flags
|
||||
import org.jetbrains.kotlin.serialization.ProtoBuf
|
||||
import org.jetbrains.kotlin.serialization.deserialization
|
||||
import org.jetbrains.kotlin.serialization.deserialization.DeserializationContext
|
||||
import org.jetbrains.kotlin.serialization.deserialization.NameResolver
|
||||
import org.jetbrains.kotlin.types.AbstractClassTypeConstructor
|
||||
import org.jetbrains.kotlin.types.JetType
|
||||
import org.jetbrains.kotlin.serialization.deserialization
|
||||
import org.jetbrains.kotlin.utils.addIfNotNull
|
||||
import org.jetbrains.kotlin.resolve.scopes.JetScope
|
||||
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
|
||||
import org.jetbrains.kotlin.utils.singletonOrEmptyList
|
||||
import java.util.*
|
||||
import java.util.ArrayList
|
||||
import java.util.HashSet
|
||||
import java.util.LinkedHashSet
|
||||
|
||||
public class DeserializedClassDescriptor(
|
||||
outerContext: DeserializationContext,
|
||||
@@ -42,7 +45,7 @@ public class DeserializedClassDescriptor(
|
||||
nameResolver: NameResolver
|
||||
) : ClassDescriptor, AbstractClassDescriptor(
|
||||
outerContext.storageManager,
|
||||
nameResolver.getClassId(classProto.getFqName()).getRelativeClassName().shortName()
|
||||
nameResolver.getClassId(classProto.getFqName()).getShortClassName()
|
||||
) {
|
||||
private val modality = deserialization.modality(Flags.MODALITY.get(classProto.getFlags()))
|
||||
private val visibility = deserialization.visibility(Flags.VISIBILITY.get(classProto.getFlags()))
|
||||
|
||||
Reference in New Issue
Block a user