Minor, make CompanionObjectMapping a singleton
This commit is contained in:
@@ -18,6 +18,7 @@ package org.jetbrains.kotlin.load.java;
|
||||
|
||||
import kotlin.text.Regex;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.kotlin.builtins.CompanionObjectMapping;
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor;
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor;
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor;
|
||||
@@ -25,7 +26,6 @@ import org.jetbrains.kotlin.descriptors.PropertyDescriptor;
|
||||
import org.jetbrains.kotlin.name.ClassId;
|
||||
import org.jetbrains.kotlin.name.FqName;
|
||||
import org.jetbrains.kotlin.name.Name;
|
||||
import org.jetbrains.kotlin.platform.JavaToKotlinClassMap;
|
||||
import org.jetbrains.kotlin.util.capitalizeDecapitalize.CapitalizeDecapitalizeKt;
|
||||
|
||||
import static org.jetbrains.kotlin.resolve.DescriptorUtils.isClassOrEnumClass;
|
||||
@@ -103,7 +103,6 @@ public final class JvmAbi {
|
||||
public static boolean isCompanionObjectWithBackingFieldsInOuter(@NotNull DeclarationDescriptor companionObject) {
|
||||
return isCompanionObject(companionObject) &&
|
||||
isClassOrEnumClass(companionObject.getContainingDeclaration()) &&
|
||||
!JavaToKotlinClassMap.INSTANCE.isMappedCompanion((ClassDescriptor) companionObject);
|
||||
!CompanionObjectMapping.INSTANCE.hasMappingToObject((ClassDescriptor) companionObject);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-7
@@ -43,7 +43,6 @@ public class JavaToKotlinClassMap implements PlatformToKotlinClassMap {
|
||||
|
||||
private final Map<FqNameUnsafe, FqName> mutableToReadOnly = new HashMap<FqNameUnsafe, FqName>();
|
||||
private final Map<FqNameUnsafe, FqName> readOnlyToMutable = new HashMap<FqNameUnsafe, FqName>();
|
||||
private final CompanionObjectMapping companionObjectMapping;
|
||||
|
||||
private JavaToKotlinClassMap() {
|
||||
add(Object.class, FQ_NAMES.any);
|
||||
@@ -69,8 +68,7 @@ public class JavaToKotlinClassMap implements PlatformToKotlinClassMap {
|
||||
add(ClassId.topLevel(jvmType.getWrapperFqName()), KotlinBuiltIns.getPrimitiveFqName(jvmType.getPrimitiveType()));
|
||||
}
|
||||
|
||||
companionObjectMapping = new CompanionObjectMapping();
|
||||
for (FqName fqName : companionObjectMapping.allClassesWithIntrinsicCompanions()) {
|
||||
for (FqName fqName : CompanionObjectMapping.INSTANCE.allClassesWithIntrinsicCompanions()) {
|
||||
add(ClassId.topLevel(
|
||||
new FqName("kotlin.jvm.internal." + fqName.shortName().asString() + "CompanionObject")),
|
||||
fqName.child(SpecialNames.DEFAULT_NAME_FOR_COMPANION_OBJECT));
|
||||
@@ -119,10 +117,6 @@ public class JavaToKotlinClassMap implements PlatformToKotlinClassMap {
|
||||
return kotlinToJava.get(kotlinFqName);
|
||||
}
|
||||
|
||||
public boolean isMappedCompanion(@NotNull ClassDescriptor descriptor) {
|
||||
return companionObjectMapping.hasMappingToObject(descriptor);
|
||||
}
|
||||
|
||||
private void add(
|
||||
@NotNull Class<?> javaClass,
|
||||
@NotNull FqName kotlinReadOnlyFqName,
|
||||
|
||||
Reference in New Issue
Block a user