From 41cfb4e2ed94427762eb71e4180c00cdad572cec Mon Sep 17 00:00:00 2001 From: Dmitry Gridin Date: Fri, 15 Mar 2019 12:27:58 +0700 Subject: [PATCH] Minor: refactoring createClassUtils.kt --- .../createClass/createClassUtils.kt | 43 ++++++++++--------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createClass/createClassUtils.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createClass/createClassUtils.kt index 1fd0744319d..0ac4be9d5bb 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createClass/createClassUtils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createClass/createClassUtils.kt @@ -43,7 +43,6 @@ import org.jetbrains.kotlin.resolve.scopes.receivers.Qualifier import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue import org.jetbrains.kotlin.types.* import org.jetbrains.kotlin.types.substitutions.getTypeSubstitution -import java.lang.AssertionError import java.util.* import org.jetbrains.kotlin.descriptors.ClassKind as ClassDescriptorKind @@ -52,9 +51,9 @@ internal fun String.checkClassName(): Boolean = isNotEmpty() && Character.isUppe private fun String.checkPackageName(): Boolean = isNotEmpty() && Character.isLowerCase(first()) internal fun getTargetParentsByQualifier( - element: KtElement, - isQualified: Boolean, - qualifierDescriptor: DeclarationDescriptor? + element: KtElement, + isQualified: Boolean, + qualifierDescriptor: DeclarationDescriptor? ): List { val file = element.containingKtFile val project = file.project @@ -66,8 +65,7 @@ internal fun getTargetParentsByQualifier( qualifierDescriptor is PackageViewDescriptor -> if (qualifierDescriptor.fqName != file.packageFqName) { listOfNotNull(JavaPsiFacade.getInstance(project).findPackage(qualifierDescriptor.fqName.asString())) - } - else listOf(file) + } else listOf(file) else -> emptyList() } @@ -79,7 +77,11 @@ internal fun getTargetParentsByCall(call: Call, context: BindingContext): List

getTargetParentsByQualifier(callElement, false, null) - is Qualifier -> getTargetParentsByQualifier(callElement, true, context[BindingContext.REFERENCE_TARGET, receiver.referenceExpression]) + is Qualifier -> getTargetParentsByQualifier( + callElement, + true, + context[BindingContext.REFERENCE_TARGET, receiver.referenceExpression] + ) is ReceiverValue -> getTargetParentsByQualifier(callElement, true, receiver.type.constructor.declarationDescriptor) else -> throw AssertionError("Unexpected receiver: $receiver") } @@ -88,7 +90,7 @@ internal fun getTargetParentsByCall(call: Call, context: BindingContext): List

false } + || descriptor is TypeParameterDescriptor + ) return { _ -> false } return { classKind -> when (classKind) { ClassKind.ENUM_ENTRY -> isEnum && containingDeclaration == DescriptorToSourceUtils.descriptorToDeclaration(descriptor) ClassKind.INTERFACE -> containingDeclaration !is PsiClass - || (descriptor as? ClassDescriptor)?.kind == ClassDescriptorKind.INTERFACE + || (descriptor as? ClassDescriptor)?.kind == ClassDescriptorKind.INTERFACE else -> canHaveSubtypes } } @@ -118,11 +121,11 @@ internal fun KtSimpleNameExpression.getCreatePackageFixIfApplicable(targetParent if (!name.checkPackageName()) return null val basePackage: PsiPackage = - when (targetParent) { - is KtFile -> JavaPsiFacade.getInstance(targetParent.project).findPackage(targetParent.packageFqName.asString()) - is PsiPackage -> targetParent - else -> null - } + when (targetParent) { + is KtFile -> JavaPsiFacade.getInstance(targetParent.project).findPackage(targetParent.packageFqName.asString()) + is PsiPackage -> targetParent + else -> null + } ?: return null val baseName = basePackage.qualifiedName @@ -138,9 +141,9 @@ internal fun KtSimpleNameExpression.getCreatePackageFixIfApplicable(targetParent } data class UnsubstitutedTypeConstraintInfo( - val typeParameter: TypeParameterDescriptor, - private val originalSubstitution: Map, - val upperBound: KotlinType + val typeParameter: TypeParameterDescriptor, + private val originalSubstitution: Map, + val upperBound: KotlinType ) { fun performSubstitution(vararg substitution: Pair): TypeConstraintInfo? { val currentSubstitution = LinkedHashMap().apply { @@ -153,8 +156,8 @@ data class UnsubstitutedTypeConstraintInfo( } data class TypeConstraintInfo( - val typeParameter: TypeParameterDescriptor, - val upperBound: KotlinType + val typeParameter: TypeParameterDescriptor, + val upperBound: KotlinType ) fun getUnsubstitutedTypeConstraintInfo(element: KtTypeElement): UnsubstitutedTypeConstraintInfo? {