Rename Visibility to DescriptorVisibility

This commit is contained in:
Dmitriy Novozhilov
2020-09-01 16:06:06 +03:00
parent 2bcd8ee07f
commit d1fd1da56f
379 changed files with 2240 additions and 2250 deletions
@@ -56,20 +56,20 @@ public final class KotlinDescriptorIconProvider {
private static Icon getVisibilityIcon(@NotNull DeclarationDescriptor descriptor) {
if (descriptor instanceof DeclarationDescriptorWithVisibility) {
DeclarationDescriptorWithVisibility descriptorWithVisibility = (DeclarationDescriptorWithVisibility) descriptor;
Visibility visibility = descriptorWithVisibility.getVisibility().normalize();
if (visibility == Visibilities.PUBLIC) {
DescriptorVisibility visibility = descriptorWithVisibility.getVisibility().normalize();
if (visibility == DescriptorVisibilities.PUBLIC) {
return PlatformIcons.PUBLIC_ICON;
}
if (visibility == Visibilities.PROTECTED) {
if (visibility == DescriptorVisibilities.PROTECTED) {
return PlatformIcons.PROTECTED_ICON;
}
if (Visibilities.isPrivate(visibility)) {
if (DescriptorVisibilities.isPrivate(visibility)) {
return PlatformIcons.PRIVATE_ICON;
}
if (visibility == Visibilities.INTERNAL) {
if (visibility == DescriptorVisibilities.INTERNAL) {
return PlatformIcons.PACKAGE_LOCAL_ICON;
}
}
@@ -26,7 +26,7 @@ import com.intellij.psi.PsiElement
import org.jetbrains.annotations.TestOnly
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny
import org.jetbrains.kotlin.idea.util.application.runReadAction
import org.jetbrains.kotlin.psi.*
@@ -111,7 +111,7 @@ class KotlinStructureViewElement(
}
private fun isPublic(descriptor: DeclarationDescriptor?) =
(descriptor as? DeclarationDescriptorWithVisibility)?.visibility == Visibilities.PUBLIC
(descriptor as? DeclarationDescriptorWithVisibility)?.visibility == DescriptorVisibilities.PUBLIC
private fun countDescriptor(): DeclarationDescriptor? {
val element = element
@@ -132,14 +132,14 @@ class KotlinStructureViewElement(
private val visibility = (descriptor as? DeclarationDescriptorWithVisibility)?.visibility
val isPublic: Boolean
get() = visibility == Visibilities.PUBLIC
get() = visibility == DescriptorVisibilities.PUBLIC
val accessLevel: Int?
get() = when {
visibility == Visibilities.PUBLIC -> 1
visibility == Visibilities.INTERNAL -> 2
visibility == Visibilities.PROTECTED -> 3
visibility?.let { Visibilities.isPrivate(it) } == true -> 4
visibility == DescriptorVisibilities.PUBLIC -> 1
visibility == DescriptorVisibilities.INTERNAL -> 2
visibility == DescriptorVisibilities.PROTECTED -> 3
visibility?.let { DescriptorVisibilities.isPrivate(it) } == true -> 4
else -> null
}
}
@@ -152,7 +152,7 @@ class TypeInstantiationItems(
val allConstructors = classifier.constructors
val visibleConstructors = allConstructors.filter {
if (isAbstract)
visibilityFilter(it) || it.visibility == Visibilities.PROTECTED
visibilityFilter(it) || it.visibility == DescriptorVisibilities.PROTECTED
else
visibilityFilter(it)
}
@@ -142,7 +142,7 @@ fun Call.resolveCandidates(
if (filterOutByVisibility) {
candidates = candidates.filter {
Visibilities.isVisible(it.getDispatchReceiverWithSmartCast(), it.resultingDescriptor, inDescriptor)
DescriptorVisibilities.isVisible(it.getDispatchReceiverWithSmartCast(), it.resultingDescriptor, inDescriptor)
}
}
@@ -193,4 +193,4 @@ fun isEnumCompanionPropertyWithEntryConflict(element: PsiElement, expectedName:
if (!outerClass.isEnum()) return false
return outerClass.declarations.any { it is KtEnumEntry && it.name == expectedName }
}
}
@@ -48,7 +48,7 @@ private fun DeclarationDescriptorWithVisibility.isVisible(
bindingContext: BindingContext? = null,
resolutionScope: LexicalScope? = null
): Boolean {
if (Visibilities.isVisibleWithAnyReceiver(this, from)) return true
if (DescriptorVisibilities.isVisibleWithAnyReceiver(this, from)) return true
if (bindingContext == null || resolutionScope == null) return false
@@ -56,10 +56,10 @@ private fun DeclarationDescriptorWithVisibility.isVisible(
if (receiverExpression != null && !isExtension) {
val receiverType = bindingContext.getType(receiverExpression) ?: return false
val explicitReceiver = ExpressionReceiver.create(receiverExpression, receiverType, bindingContext)
return Visibilities.isVisible(explicitReceiver, this, from)
return DescriptorVisibilities.isVisible(explicitReceiver, this, from)
} else {
return resolutionScope.getImplicitReceiversHierarchy().any {
Visibilities.isVisible(it.value, this, from)
DescriptorVisibilities.isVisible(it.value, this, from)
}
}
}
@@ -104,12 +104,12 @@ fun compareDescriptors(project: Project, currentDescriptor: DeclarationDescripto
return false
}
fun Visibility.toKeywordToken(): KtModifierKeywordToken = when (val normalized = normalize()) {
Visibilities.PUBLIC -> KtTokens.PUBLIC_KEYWORD
Visibilities.PROTECTED -> KtTokens.PROTECTED_KEYWORD
Visibilities.INTERNAL -> KtTokens.INTERNAL_KEYWORD
fun DescriptorVisibility.toKeywordToken(): KtModifierKeywordToken = when (val normalized = normalize()) {
DescriptorVisibilities.PUBLIC -> KtTokens.PUBLIC_KEYWORD
DescriptorVisibilities.PROTECTED -> KtTokens.PROTECTED_KEYWORD
DescriptorVisibilities.INTERNAL -> KtTokens.INTERNAL_KEYWORD
else -> {
if (Visibilities.isPrivate(normalized)) {
if (DescriptorVisibilities.isPrivate(normalized)) {
KtTokens.PRIVATE_KEYWORD
} else {
error("Unexpected visibility '$normalized'")
@@ -144,4 +144,4 @@ fun <D : CallableMemberDescriptor> D.getDeepestSuperDeclarations(withThis: Boole
fun <T : DeclarationDescriptor> T.unwrapIfFakeOverride(): T {
return if (this is CallableMemberDescriptor) DescriptorUtils.unwrapFakeOverride(this) else this
}
}
@@ -19,7 +19,7 @@ class OverrideMembersHandler(private val preferConstructorParameters: Boolean =
for (member in descriptor.unsubstitutedMemberScope.getContributedDescriptors()) {
if (member is CallableMemberDescriptor && (member.kind != CallableMemberDescriptor.Kind.DECLARATION)) {
val overridden = member.overriddenDescriptors
if (overridden.any { it.modality == Modality.FINAL || Visibilities.isPrivate(it.visibility.normalize()) }) continue
if (overridden.any { it.modality == Modality.FINAL || DescriptorVisibilities.isPrivate(it.visibility.normalize()) }) continue
if (DescriptorUtils.isInterface(descriptor) && overridden.any { descriptor.builtIns.isMemberOfAny(it) }) continue
@@ -190,14 +190,14 @@ class DebuggerFieldSyntheticScope(val javaSyntheticPropertiesScope: JavaSyntheti
val getter = PropertyGetterDescriptorImpl(
propertyDescriptor, Annotations.EMPTY, Modality.FINAL,
Visibilities.PUBLIC, false, false, false,
DescriptorVisibilities.PUBLIC, false, false, false,
CallableMemberDescriptor.Kind.SYNTHESIZED,
null, sourceElement
).apply { initialize(type) }
val setter = if (isVar) PropertySetterDescriptorImpl(
propertyDescriptor, Annotations.EMPTY, Modality.FINAL,
Visibilities.PUBLIC, false, false, false,
DescriptorVisibilities.PUBLIC, false, false, false,
CallableMemberDescriptor.Kind.SYNTHESIZED,
null, sourceElement
).apply {
@@ -226,7 +226,7 @@ internal class DebuggerFieldPropertyDescriptor(
null,
Annotations.EMPTY,
Modality.FINAL,
Visibilities.PUBLIC,
DescriptorVisibilities.PUBLIC,
/*isVar = */isVar,
Name.identifier(fieldName + "_field"),
CallableMemberDescriptor.Kind.SYNTHESIZED,
@@ -237,4 +237,4 @@ internal class DebuggerFieldPropertyDescriptor(
/*isActual = */false,
/*isExternal = */false,
/*isDelegated = */false
)
)
@@ -209,7 +209,7 @@ class CodeFragmentCompiler(private val executionContext: ExecutionContext, priva
methodDescriptor.initialize(
null, classDescriptor.thisAsReceiverParameter, emptyList(),
parameters, returnType, Modality.FINAL, Visibilities.PUBLIC
parameters, returnType, Modality.FINAL, DescriptorVisibilities.PUBLIC
)
val memberScope = EvaluatorMemberScopeForMethod(methodDescriptor)
@@ -301,4 +301,4 @@ private class EvaluatorModuleDescriptor(
}
private val OutputFile.internalClassName: String
get() = relativePath.removeSuffix(".class").replace('/', '.')
get() = relativePath.removeSuffix(".class").replace('/', '.')
@@ -290,7 +290,7 @@ class CodeFragmentParameterAnalyzer(
)
}
val isLocalTarget = (target as? DeclarationDescriptorWithVisibility)?.visibility == Visibilities.LOCAL
val isLocalTarget = (target as? DeclarationDescriptorWithVisibility)?.visibility == DescriptorVisibilities.LOCAL
val isPrimaryConstructorParameter = !isLocalTarget
&& target is PropertyDescriptor
@@ -422,4 +422,4 @@ private class OnceUsedChecker(private val clazz: Class<*>) {
used = true
}
}
}
@@ -88,7 +88,7 @@ class DebugLabelPropertyDescriptorProvider(val codeFragment: KtCodeFragment, val
propertyDescriptor,
Annotations.EMPTY,
Modality.FINAL,
Visibilities.PUBLIC,
DescriptorVisibilities.PUBLIC,
/* isDefault = */ false,
/* isExternal = */ false,
/* isInline = */ false,
@@ -205,7 +205,7 @@ internal class DebugLabelPropertyDescriptor(
null,
Annotations.EMPTY,
Modality.FINAL,
Visibilities.PUBLIC,
DescriptorVisibilities.PUBLIC,
/*isVar = */false,
Name.identifier(labelName + "_DebugLabel"),
CallableMemberDescriptor.Kind.SYNTHESIZED,
@@ -177,9 +177,9 @@ abstract class FileRankingCalculator(private val checkClassFqName: Boolean = tru
private fun rankingForVisibility(descriptor: DeclarationDescriptorWithVisibility, accessible: Accessible): Ranking {
return collect(
accessible.isPublic && descriptor.visibility == Visibilities.PUBLIC,
accessible.isProtected && descriptor.visibility == Visibilities.PROTECTED,
accessible.isPrivate && descriptor.visibility == Visibilities.PRIVATE
accessible.isPublic && descriptor.visibility == DescriptorVisibilities.PUBLIC,
accessible.isProtected && descriptor.visibility == DescriptorVisibilities.PROTECTED,
accessible.isPrivate && descriptor.visibility == DescriptorVisibilities.PRIVATE
)
}
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.builtins.StandardNames
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.caches.resolve.analyze
import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall
@@ -160,7 +160,7 @@ class DeprecatedCallableAddReplaceWithInspection : AbstractApplicabilityBasedIns
override fun visitSimpleNameExpression(expression: KtSimpleNameExpression) {
val target = expression.resolveToCall()?.resultingDescriptor as? DeclarationDescriptorWithVisibility ?: return
if (Visibilities.isPrivate((target.visibility))) {
if (DescriptorVisibilities.isPrivate((target.visibility))) {
isGood = false
}
}
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.caches.resolve.analyze
import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny
import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.load.java.JavaVisibilities
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
import org.jetbrains.kotlin.load.java.descriptors.JavaMethodDescriptor
import org.jetbrains.kotlin.psi.*
import org.jetbrains.kotlin.psi.psiUtil.*
@@ -62,7 +62,7 @@ class KotlinRedundantOverrideInspection : AbstractKotlinInspection(), CleanupLoc
val functionDescriptor = context[BindingContext.FUNCTION, function]
if (function.hasDerivedProperty(functionDescriptor, context)) return
val overriddenDescriptors = functionDescriptor?.original?.overriddenDescriptors
if (overriddenDescriptors?.any { it is JavaMethodDescriptor && it.visibility == JavaVisibilities.PACKAGE_VISIBILITY } == true) return
if (overriddenDescriptors?.any { it is JavaMethodDescriptor && it.visibility == JavaDescriptorVisibilities.PACKAGE_VISIBILITY } == true) return
if (function.isAmbiguouslyDerived(overriddenDescriptors, context)) return
val descriptor = holder.manager.createProblemDescriptor(
@@ -136,7 +136,7 @@ private fun ClassDescriptor.findMemberFunction(name: Name): FunctionDescriptor?
}
private fun CallableDescriptor.isLocalOrExtension(extensionClassDescriptor: ClassDescriptor): Boolean {
return visibility == Visibilities.LOCAL ||
return visibility == DescriptorVisibilities.LOCAL ||
extensionReceiverParameter?.type?.constructor?.declarationDescriptor == extensionClassDescriptor
}
@@ -158,4 +158,4 @@ class RemoveRedundantCompanionReferenceFix : LocalQuickFix {
if (expression == receiver) parent.replace(selector) else parent.replace(receiver)
}
}
}
}
@@ -10,8 +10,8 @@ import com.intellij.psi.PsiElementVisitor
import org.jetbrains.kotlin.config.AnalysisFlags
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.config.ExplicitApiMode
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.idea.KotlinBundle
@@ -56,7 +56,7 @@ class RedundantVisibilityModifierInspection : AbstractKotlinInspection(), Cleanu
&& declaration is KtProperty
&& declaration.hasModifier(KtTokens.OVERRIDE_KEYWORD)
&& declaration.isVar
&& declaration.setterVisibility().let { it != null && it != Visibilities.PUBLIC }
&& declaration.setterVisibility().let { it != null && it != DescriptorVisibilities.PUBLIC }
) return
holder.registerProblem(
@@ -71,7 +71,7 @@ class RedundantVisibilityModifierInspection : AbstractKotlinInspection(), Cleanu
})
}
private fun KtProperty.setterVisibility(): Visibility? {
private fun KtProperty.setterVisibility(): DescriptorVisibility? {
val descriptor = descriptor as? PropertyDescriptor ?: return null
if (setter?.visibilityModifier() != null) {
val visibility = descriptor.setter?.visibility
@@ -518,7 +518,7 @@ class UnusedSymbolInspection : AbstractKotlinInspection() {
return when {
descriptor is ConstructorDescriptor -> {
val classDescriptor = descriptor.constructedClass
!classDescriptor.isInline && classDescriptor.visibility != Visibilities.LOCAL
!classDescriptor.isInline && classDescriptor.visibility != DescriptorVisibilities.LOCAL
}
hasModifier(KtTokens.INTERNAL_KEYWORD) -> false
descriptor !is FunctionDescriptor -> true
@@ -638,4 +638,4 @@ class SafeDeleteFix(declaration: KtDeclaration) : LocalQuickFix {
private fun safeDelete(project: Project, declaration: PsiElement) {
SafeDeleteHandler.invoke(project, arrayOf(declaration), false)
}
}
@@ -10,7 +10,7 @@ import com.intellij.openapi.module.Module
import com.intellij.psi.search.GlobalSearchScope
import org.jetbrains.kotlin.config.ApiVersion
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.caches.resolve.analyze
import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall
@@ -44,7 +44,7 @@ class AddThrowsAnnotationIntention : SelfTargetingIntention<KtThrowExpression>(
val containingDeclaration = element.getContainingDeclaration() ?: return false
val type = element.thrownExpression?.resolveToCall()?.resultingDescriptor?.returnType ?: return false
if ((type.constructor.declarationDescriptor as? DeclarationDescriptorWithVisibility)?.visibility == Visibilities.LOCAL) return false
if ((type.constructor.declarationDescriptor as? DeclarationDescriptorWithVisibility)?.visibility == DescriptorVisibilities.LOCAL) return false
val module = element.module ?: return false
if (!KOTLIN_THROWS_ANNOTATION_FQ_NAME.fqNameIsExists(module) &&
@@ -154,4 +154,4 @@ private fun FqName.fqNameIsExists(module: Module): Boolean = KotlinFullClassName
asString(),
module.project,
GlobalSearchScope.moduleWithLibrariesScope(module)
].isNotEmpty()
].isNotEmpty()
@@ -10,7 +10,7 @@ import com.intellij.openapi.editor.Editor
import com.intellij.openapi.util.TextRange
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.core.*
import org.jetbrains.kotlin.idea.util.runCommandOnAllExpectAndActualDeclaration
@@ -40,7 +40,7 @@ open class ChangeVisibilityModifierIntention protected constructor(val modifier:
val callableDescriptor = descriptor as? CallableDescriptor ?: return null
// cannot make visibility less than (or non-comparable with) any of the supers
if (callableDescriptor.overriddenDescriptors
.map { Visibilities.compare(it.visibility, targetVisibility) }
.map { DescriptorVisibilities.compare(it.visibility, targetVisibility) }
.any { it == null || it > 0 }
) return null
}
@@ -49,13 +49,13 @@ open class ChangeVisibilityModifierIntention protected constructor(val modifier:
if (element is KtPropertyAccessor) {
if (element.isGetter) return null
if (targetVisibility == Visibilities.PUBLIC) {
if (targetVisibility == DescriptorVisibilities.PUBLIC) {
val explicitVisibility = element.modifierList?.visibilityModifierType()?.value ?: return null
setTextGetter(KotlinBundle.lazyMessage("remove.0.modifier", explicitVisibility))
} else {
val propVisibility = (element.property.toDescriptor() as? DeclarationDescriptorWithVisibility)?.visibility ?: return null
if (propVisibility == targetVisibility) return null
val compare = Visibilities.compare(targetVisibility, propVisibility)
val compare = DescriptorVisibilities.compare(targetVisibility, propVisibility)
if (compare == null || compare > 0) return null
}
}
@@ -14,8 +14,8 @@ import com.intellij.openapi.project.Project
import com.intellij.openapi.util.TextRange
import com.intellij.psi.JavaDirectoryService
import com.intellij.refactoring.rename.PsiElementRenameHandler
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.core.KotlinNameSuggester
import org.jetbrains.kotlin.idea.core.ShortenReferences
@@ -103,7 +103,7 @@ class CreateKotlinSubClassIntention : SelfTargetingRangeIntention<KtClass>(
private fun createExternalSubclass(baseClass: KtClass, baseName: String, editor: Editor) {
var container: KtClassOrObject = baseClass
var name = baseName
var visibility = ModifiersChecker.resolveVisibilityFromModifiers(baseClass, Visibilities.PUBLIC)
var visibility = ModifiersChecker.resolveVisibilityFromModifiers(baseClass, org.jetbrains.kotlin.descriptors.DescriptorVisibilities.PUBLIC)
while (!container.isPrivate() && !container.isProtected() && !(container is KtClass && container.isInner())) {
val parent = container.containingClassOrObject
if (parent != null) {
@@ -112,7 +112,7 @@ class CreateKotlinSubClassIntention : SelfTargetingRangeIntention<KtClass>(
container = parent
name = "$parentName.$name"
val parentVisibility = ModifiersChecker.resolveVisibilityFromModifiers(parent, visibility)
if (Visibilities.compare(parentVisibility, visibility) ?: 0 < 0) {
if (org.jetbrains.kotlin.descriptors.DescriptorVisibilities.compare(parentVisibility, visibility) ?: 0 < 0) {
visibility = parentVisibility
}
}
@@ -176,11 +176,11 @@ class CreateKotlinSubClassIntention : SelfTargetingRangeIntention<KtClass>(
targetName: String,
baseClass: KtClass,
baseName: String,
defaultVisibility: Visibility = ModifiersChecker.resolveVisibilityFromModifiers(baseClass, Visibilities.PUBLIC)
defaultVisibility: DescriptorVisibility = ModifiersChecker.resolveVisibilityFromModifiers(baseClass, org.jetbrains.kotlin.descriptors.DescriptorVisibilities.PUBLIC)
): ClassHeaderBuilder {
return ClassHeaderBuilder().apply {
if (!baseClass.isInterface()) {
if (defaultVisibility != Visibilities.PUBLIC) {
if (defaultVisibility != org.jetbrains.kotlin.descriptors.DescriptorVisibilities.PUBLIC) {
modifier(defaultVisibility.name)
}
if (baseClass.isInner()) {
@@ -199,4 +199,4 @@ class CreateKotlinSubClassIntention : SelfTargetingRangeIntention<KtClass>(
editor.caretModel.moveToOffset(targetClass.textRange.startOffset)
ImplementMembersHandler().invoke(project, editor, targetClass.containingFile)
}
}
}
@@ -11,8 +11,8 @@ import com.intellij.openapi.editor.Editor
import com.intellij.openapi.project.Project
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.diagnostics.Diagnostic
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory0
import org.jetbrains.kotlin.idea.KotlinBundle
@@ -104,17 +104,17 @@ open class ChangeVisibilityFix(
fun create(
declaration: KtModifierListOwner,
descriptor: DeclarationDescriptorWithVisibility,
targetVisibility: Visibility
targetVisibility: DescriptorVisibility
): IntentionAction? {
if (!ExposedVisibilityChecker().checkDeclarationWithVisibility(declaration, descriptor, targetVisibility)) return null
val name = descriptor.name.asString()
return when (targetVisibility) {
Visibilities.PRIVATE -> ChangeToPrivateFix(declaration, name)
Visibilities.INTERNAL -> ChangeToInternalFix(declaration, name)
Visibilities.PROTECTED -> ChangeToProtectedFix(declaration, name)
Visibilities.PUBLIC -> ChangeToPublicFix(declaration, name)
DescriptorVisibilities.PRIVATE -> ChangeToPrivateFix(declaration, name)
DescriptorVisibilities.INTERNAL -> ChangeToInternalFix(declaration, name)
DescriptorVisibilities.PROTECTED -> ChangeToProtectedFix(declaration, name)
DescriptorVisibilities.PUBLIC -> ChangeToPublicFix(declaration, name)
else -> null
}
}
@@ -134,4 +134,4 @@ open class ChangeVisibilityFix(
)
}
}
}
}
@@ -21,8 +21,8 @@ import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.DescriptorWithRelation
import org.jetbrains.kotlin.descriptors.EffectiveVisibility
import org.jetbrains.kotlin.descriptors.EffectiveVisibility.Permissiveness.LESS
import org.jetbrains.kotlin.descriptors.Visibilities.*
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities.*
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.diagnostics.Diagnostic
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory3
import org.jetbrains.kotlin.idea.core.toDescriptor
@@ -35,12 +35,12 @@ import java.util.*
object ChangeVisibilityOnExposureFactory : KotlinIntentionActionsFactory() {
private fun addFixToTargetVisibility(
modifierListOwner: KtModifierListOwner,
descriptor: DeclarationDescriptorWithVisibility,
targetVisibility: Visibility,
boundVisibility: Visibility,
protectedAllowed: Boolean,
fixes: MutableList<IntentionAction>
modifierListOwner: KtModifierListOwner,
descriptor: DeclarationDescriptorWithVisibility,
targetVisibility: DescriptorVisibility,
boundVisibility: DescriptorVisibility,
protectedAllowed: Boolean,
fixes: MutableList<IntentionAction>
) {
val possibleVisibilities = when (targetVisibility) {
PROTECTED -> if (protectedAllowed) listOf(boundVisibility, PROTECTED) else listOf(boundVisibility)
@@ -85,4 +85,4 @@ object ChangeVisibilityOnExposureFactory : KotlinIntentionActionsFactory() {
)
return result
}
}
}
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor
import org.jetbrains.kotlin.descriptors.ClassDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.Visibilities.*
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities.*
import org.jetbrains.kotlin.diagnostics.Diagnostic
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory3
import org.jetbrains.kotlin.idea.caches.resolve.findModuleDescriptor
@@ -419,7 +419,7 @@ class CallableBuilder(val config: CallableBuilderConfiguration) {
return fakeFunction.initialize(
null, null, typeParameters, Collections.emptyList(), null,
null, Visibilities.INTERNAL
null, DescriptorVisibilities.INTERNAL
)
}
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix.createFromUsage.callableBuilder
import com.intellij.psi.PsiElement
import com.intellij.util.ArrayUtil
import org.jetbrains.kotlin.descriptors.ClassDescriptorWithResolutionScopes
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny
import org.jetbrains.kotlin.idea.core.KotlinNameSuggester
import org.jetbrains.kotlin.idea.quickfix.createFromUsage.createClass.ClassInfo
@@ -217,7 +217,7 @@ class ClassWithPrimaryConstructorInfo(
val classInfo: ClassInfo,
expectedTypeInfo: TypeInfo,
modifierList: KtModifierList? = null,
val primaryConstructorVisibility: Visibility? = null
val primaryConstructorVisibility: DescriptorVisibility? = null
) : CallableInfo(
classInfo.name,
TypeInfo.Empty,
@@ -6,7 +6,7 @@
package org.jetbrains.kotlin.idea.quickfix.createFromUsage.createClass
import org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.diagnostics.Diagnostic
import org.jetbrains.kotlin.idea.caches.resolve.analyzeAndGetResult
import org.jetbrains.kotlin.idea.intentions.getCallableDescriptor
@@ -95,8 +95,8 @@ object CreateClassFromConstructorCallActionFactory : CreateClassFromUsageFactory
(it.getArgumentExpression()?.getCallableDescriptor() as? ClassConstructorDescriptor)?.containingDeclaration?.visibility
}
val primaryConstructorVisibility = when {
Visibilities.PRIVATE in argumentClassVisibilities -> Visibilities.PRIVATE
Visibilities.INTERNAL in argumentClassVisibilities -> Visibilities.INTERNAL
DescriptorVisibilities.PRIVATE in argumentClassVisibilities -> DescriptorVisibilities.PRIVATE
DescriptorVisibilities.INTERNAL in argumentClassVisibilities -> DescriptorVisibilities.INTERNAL
else -> null
}
@@ -16,7 +16,7 @@ import com.intellij.openapi.ui.DialogWrapper
import com.intellij.psi.*
import org.jetbrains.annotations.Nls
import org.jetbrains.annotations.NonNls
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.KotlinFileType
import org.jetbrains.kotlin.idea.core.getFqNameWithImplicitPrefix
@@ -69,7 +69,7 @@ data class ClassInfo(
val open: Boolean = false,
val typeArguments: List<TypeInfo> = Collections.emptyList(),
val parameterInfos: List<ParameterInfo> = Collections.emptyList(),
val primaryConstructorVisibility: Visibility? = null
val primaryConstructorVisibility: DescriptorVisibility? = null
) {
val applicableParents by lazy {
targetParents.filter {
@@ -32,8 +32,8 @@ import org.jetbrains.kotlin.asJava.unwrapped
import org.jetbrains.kotlin.builtins.isNonExtensionFunctionType
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.KotlinLanguage
import org.jetbrains.kotlin.idea.caches.resolve.util.getJavaOrKotlinMemberDescriptor
import org.jetbrains.kotlin.idea.j2k.j2k
@@ -56,14 +56,14 @@ import org.jetbrains.kotlin.utils.keysToMap
import java.util.*
open class KotlinChangeInfo(
val methodDescriptor: KotlinMethodDescriptor,
private var name: String = methodDescriptor.name,
var newReturnTypeInfo: KotlinTypeInfo = KotlinTypeInfo(true, methodDescriptor.baseDescriptor.returnType),
var newVisibility: Visibility = methodDescriptor.visibility,
parameterInfos: List<KotlinParameterInfo> = methodDescriptor.parameters,
receiver: KotlinParameterInfo? = methodDescriptor.receiver,
val context: PsiElement,
primaryPropagationTargets: Collection<PsiElement> = emptyList()
val methodDescriptor: KotlinMethodDescriptor,
private var name: String = methodDescriptor.name,
var newReturnTypeInfo: KotlinTypeInfo = KotlinTypeInfo(true, methodDescriptor.baseDescriptor.returnType),
var newVisibility: DescriptorVisibility = methodDescriptor.visibility,
parameterInfos: List<KotlinParameterInfo> = methodDescriptor.parameters,
receiver: KotlinParameterInfo? = methodDescriptor.receiver,
val context: PsiElement,
primaryPropagationTargets: Collection<PsiElement> = emptyList()
) : ChangeInfo, UserDataHolder by UserDataHolderBase() {
private class JvmOverloadSignature(
val method: PsiMethod,
@@ -239,7 +239,7 @@ open class KotlinChangeInfo(
fun getNewSignature(inheritedCallable: KotlinCallableDefinitionUsage<PsiElement>): String {
val buffer = StringBuilder()
val isCustomizedVisibility = newVisibility != Visibilities.DEFAULT_VISIBILITY
val isCustomizedVisibility = newVisibility != DescriptorVisibilities.DEFAULT_VISIBILITY
if (kind == Kind.PRIMARY_CONSTRUCTOR) {
buffer.append(name)
@@ -172,7 +172,7 @@ class KotlinChangeSignatureData(
override fun getParametersCount(): Int = baseDescriptor.valueParameters.size
override fun getVisibility(): Visibility = baseDescriptor.visibility
override fun getVisibility(): DescriptorVisibility = baseDescriptor.visibility
override fun getMethod(): PsiElement = baseDeclaration
@@ -84,7 +84,7 @@ class KotlinChangeSignatureUsageProcessor : ChangeSignatureUsageProcessor {
methodDescriptor = methodDescriptor,
name = "",
newReturnTypeInfo = KotlinTypeInfo(true),
newVisibility = Visibilities.DEFAULT_VISIBILITY,
newVisibility = DescriptorVisibilities.DEFAULT_VISIBILITY,
parameterInfos = emptyList<KotlinParameterInfo>(),
receiver = null,
context = method
@@ -10,12 +10,12 @@ import com.intellij.refactoring.changeSignature.MethodDescriptor
import com.intellij.usageView.UsageInfo
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.descriptors.ConstructorDescriptor
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.refactoring.changeSignature.usages.KotlinCallableDefinitionUsage
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
import org.jetbrains.kotlin.psi.KtCallableDeclaration
interface KotlinMethodDescriptor : MethodDescriptor<KotlinParameterInfo, Visibility> {
interface KotlinMethodDescriptor : MethodDescriptor<KotlinParameterInfo, DescriptorVisibility> {
enum class Kind(val isConstructor: Boolean) {
FUNCTION(false),
PRIMARY_CONSTRUCTOR(true),
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.idea.refactoring.changeSignature
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
class KotlinMutableMethodDescriptor(override val original: KotlinMethodDescriptor) : KotlinMethodDescriptor by original {
private val parameters: MutableList<KotlinParameterInfo> = original.parameters
@@ -42,7 +42,7 @@ class KotlinMutableMethodDescriptor(override val original: KotlinMethodDescripto
receiver?.let { parameters.add(it) }
}
override fun getVisibility(): Visibility? {
override fun getVisibility(): DescriptorVisibility? {
return original.visibility
}
}
}
@@ -11,8 +11,8 @@ import com.intellij.refactoring.BaseRefactoringProcessor
import com.intellij.refactoring.ui.RefactoringDialog
import com.intellij.ui.EditorTextField
import com.intellij.util.ui.FormBuilder
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.KotlinFileType
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.refactoring.changeSignature.*
@@ -31,7 +31,7 @@ class KotlinChangePropertySignatureDialog(
private val commandName: String?
) : RefactoringDialog(project, true) {
private val visibilityCombo = ComboBox(
arrayOf(Visibilities.INTERNAL, Visibilities.PRIVATE, Visibilities.PROTECTED, Visibilities.PUBLIC)
arrayOf(DescriptorVisibilities.INTERNAL, DescriptorVisibilities.PRIVATE, DescriptorVisibilities.PROTECTED, DescriptorVisibilities.PUBLIC)
)
private val nameField = EditorTextField(methodDescriptor.name)
private var returnTypeField: EditorTextField by Delegates.notNull()
@@ -146,7 +146,7 @@ class KotlinChangePropertySignatureDialog(
originalDescriptor,
nameField.text,
KotlinTypeInfo(true, null, returnTypeField.text),
visibilityCombo.selectedItem as Visibility,
visibilityCombo.selectedItem as DescriptorVisibility,
emptyList(),
receiver,
originalDescriptor.method
@@ -168,4 +168,4 @@ class KotlinChangePropertySignatureDialog(
return KotlinChangeSignatureProcessor(project, changeInfo, commandName)
}
}
}
}
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.idea.refactoring.changeSignature.ui
import com.intellij.openapi.project.Project
import com.intellij.openapi.ui.Messages
import com.intellij.openapi.ui.Messages.OkCancelResult
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import javax.swing.Icon
// FIX ME WHEN BUNCH 193 REMOVED
@@ -30,4 +30,4 @@ fun showOkCancelDialog(
)
}
typealias ComboBox = com.intellij.openapi.ui.ComboBox<Visibility>
typealias ComboBox = com.intellij.openapi.ui.ComboBox<DescriptorVisibility>
@@ -42,8 +42,8 @@ import com.intellij.util.Consumer
import com.intellij.util.ui.UIUtil
import com.intellij.util.ui.table.JBTableRow
import com.intellij.util.ui.table.JBTableRowEditor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.Visibility
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.KotlinFileType
import org.jetbrains.kotlin.idea.caches.resolve.analyze
@@ -71,7 +71,7 @@ class KotlinChangeSignatureDialog(
) : ChangeSignatureDialogBase<
KotlinParameterInfo,
PsiElement,
Visibility,
DescriptorVisibility,
KotlinMethodDescriptor,
ParameterTableModelItemBase<KotlinParameterInfo>,
KotlinCallableParameterTableModel>(project, methodDescriptor, false, context) {
@@ -320,7 +320,7 @@ class KotlinChangeSignatureDialog(
}
override fun createVisibilityControl() = ComboBoxVisibilityPanel(
arrayOf(Visibilities.INTERNAL, Visibilities.PRIVATE, Visibilities.PROTECTED, Visibilities.PUBLIC)
arrayOf(DescriptorVisibilities.INTERNAL, DescriptorVisibilities.PRIVATE, DescriptorVisibilities.PROTECTED, DescriptorVisibilities.PUBLIC)
)
override fun updateSignatureAlarmFired() {
@@ -481,13 +481,13 @@ class KotlinChangeSignatureDialog(
}
private fun evaluateChangeInfo(
parametersModel: KotlinCallableParameterTableModel,
returnTypeCodeFragment: PsiCodeFragment?,
methodDescriptor: KotlinMethodDescriptor,
visibility: Visibility?,
methodName: String,
defaultValueContext: PsiElement,
forPreview: Boolean
parametersModel: KotlinCallableParameterTableModel,
returnTypeCodeFragment: PsiCodeFragment?,
methodDescriptor: KotlinMethodDescriptor,
visibility: DescriptorVisibility?,
methodName: String,
defaultValueContext: PsiElement,
forPreview: Boolean
): KotlinChangeInfo {
val parameters = parametersModel.items.map { parameter ->
val parameterInfo = parameter.parameter
@@ -507,7 +507,7 @@ class KotlinChangeSignatureDialog(
methodDescriptor.original,
methodName,
returnTypeCodeFragment.getTypeInfo(true, forPreview),
visibility ?: Visibilities.DEFAULT_VISIBILITY,
visibility ?: DescriptorVisibilities.DEFAULT_VISIBILITY,
parameters,
parametersModel.receiver,
defaultValueContext
@@ -17,7 +17,7 @@ import org.jetbrains.kotlin.builtins.KotlinBuiltIns
import org.jetbrains.kotlin.builtins.isFunctionType
import org.jetbrains.kotlin.descriptors.ClassDescriptor
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.core.*
import org.jetbrains.kotlin.idea.core.util.isMultiLine
import org.jetbrains.kotlin.idea.inspections.PublicApiImplicitTypeInspection
@@ -499,8 +499,8 @@ fun ExtractionGeneratorConfiguration.generateDeclaration(
val visibility = (descriptor.visibility ?: KtTokens.DEFAULT_VISIBILITY_KEYWORD).toVisibility()
return when {
visibility.isPublicAPI -> true
inspection.reportInternal && visibility == Visibilities.INTERNAL -> true
inspection.reportPrivate && visibility == Visibilities.PRIVATE -> true
inspection.reportInternal && visibility == DescriptorVisibilities.INTERNAL -> true
inspection.reportPrivate && visibility == DescriptorVisibilities.PRIVATE -> true
else -> false
}
}
@@ -5,7 +5,6 @@
package org.jetbrains.kotlin.idea.refactoring.move.moveDeclarations
import com.intellij.lang.java.JavaLanguage
import com.intellij.openapi.module.Module
import com.intellij.openapi.module.ModuleUtilCore
import com.intellij.openapi.module.impl.scopes.JdkScope
@@ -51,7 +50,7 @@ import org.jetbrains.kotlin.idea.search.not
import org.jetbrains.kotlin.idea.util.projectStructure.getModule
import org.jetbrains.kotlin.idea.util.projectStructure.module
import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.load.java.JavaVisibilities
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.platform.jvm.isJvm
@@ -136,15 +135,15 @@ class MoveConflictChecker(
private fun DeclarationDescriptor.isVisibleIn(where: DeclarationDescriptor): Boolean {
return when {
this !is DeclarationDescriptorWithVisibility -> true
!Visibilities.isVisibleIgnoringReceiver(this, where) -> false
this is ConstructorDescriptor -> Visibilities.isVisibleIgnoringReceiver(containingDeclaration, where)
!DescriptorVisibilities.isVisibleIgnoringReceiver(this, where) -> false
this is ConstructorDescriptor -> DescriptorVisibilities.isVisibleIgnoringReceiver(containingDeclaration, where)
else -> true
}
}
private fun DeclarationDescriptor.wrap(
newContainer: DeclarationDescriptor? = null,
newVisibility: Visibility? = null
newVisibility: DescriptorVisibility? = null
): DeclarationDescriptor? {
if (newContainer == null && newVisibility == null) return this
@@ -153,14 +152,14 @@ class MoveConflictChecker(
is CallableMemberDescriptor -> object : CallableMemberDescriptor by wrappedDescriptor {
override fun getOriginal() = this
override fun getContainingDeclaration() = newContainer ?: wrappedDescriptor.containingDeclaration
override fun getVisibility(): Visibility = newVisibility ?: wrappedDescriptor.visibility
override fun getVisibility(): DescriptorVisibility = newVisibility ?: wrappedDescriptor.visibility
override fun getSource() =
newContainer?.let { SourceElement { DescriptorUtils.getContainingSourceFile(it) } } ?: wrappedDescriptor.source
}
is ClassDescriptor -> object : ClassDescriptor by wrappedDescriptor {
override fun getOriginal() = this
override fun getContainingDeclaration() = newContainer ?: wrappedDescriptor.containingDeclaration
override fun getVisibility(): Visibility = newVisibility ?: wrappedDescriptor.visibility
override fun getVisibility(): DescriptorVisibility = newVisibility ?: wrappedDescriptor.visibility
override fun getSource() =
newContainer?.let { SourceElement { DescriptorUtils.getContainingSourceFile(it) } } ?: wrappedDescriptor.source
}
@@ -170,24 +169,24 @@ class MoveConflictChecker(
private fun DeclarationDescriptor.asPredicted(
newContainer: DeclarationDescriptor,
actualVisibility: Visibility?
actualVisibility: DescriptorVisibility?
): DeclarationDescriptor? {
val visibility = actualVisibility ?: (this as? DeclarationDescriptorWithVisibility)?.visibility ?: return null
val adjustedVisibility = if (visibility == Visibilities.PROTECTED && newContainer is PackageFragmentDescriptor) {
Visibilities.PUBLIC
val adjustedVisibility = if (visibility == DescriptorVisibilities.PROTECTED && newContainer is PackageFragmentDescriptor) {
DescriptorVisibilities.PUBLIC
} else {
visibility
}
return wrap(newContainer, adjustedVisibility)
}
private fun DeclarationDescriptor.visibilityAsViewedFromJava(): Visibility? {
private fun DeclarationDescriptor.visibilityAsViewedFromJava(): DescriptorVisibility? {
if (this !is DeclarationDescriptorWithVisibility) return null
return when (visibility) {
Visibilities.PRIVATE -> {
if (this is ClassDescriptor && DescriptorUtils.isTopLevelDeclaration(this)) JavaVisibilities.PACKAGE_VISIBILITY else null
DescriptorVisibilities.PRIVATE -> {
if (this is ClassDescriptor && DescriptorUtils.isTopLevelDeclaration(this)) JavaDescriptorVisibilities.PACKAGE_VISIBILITY else null
}
Visibilities.PROTECTED -> JavaVisibilities.PROTECTED_AND_PACKAGE
DescriptorVisibilities.PROTECTED -> JavaDescriptorVisibilities.PROTECTED_AND_PACKAGE
else -> null
}
}
@@ -380,7 +379,7 @@ class MoveConflictChecker(
val referencedDescriptor = resolutionFacade.resolveToDescriptor(referencedElement)
if (referencedDescriptor is DeclarationDescriptorWithVisibility
&& referencedDescriptor.visibility == Visibilities.PUBLIC
&& referencedDescriptor.visibility == DescriptorVisibilities.PUBLIC
&& moveTarget is KotlinMoveTargetForExistingElement
&& moveTarget.targetElement.parentsWithSelf.filterIsInstance<KtClassOrObject>().all { it.isPublic }
) continue
@@ -442,7 +441,7 @@ class MoveConflictChecker(
fun DeclarationDescriptorWithVisibility.isVisibleFrom(ref: PsiReference): Boolean {
val targetVisibility = visibility.normalize()
if (targetVisibility == Visibilities.PUBLIC) return true
if (targetVisibility == DescriptorVisibilities.PUBLIC) return true
val refElement = ref.element
val referrer = refElement.getStrictParentOfType<KtNamedDeclaration>()
@@ -454,7 +453,7 @@ class MoveConflictChecker(
if (!isVisibleIn(referrerDescriptor)) return true
return when (targetVisibility) {
Visibilities.PROTECTED -> isProtectedVisible(referrerDescriptor)
DescriptorVisibilities.PROTECTED -> isProtectedVisible(referrerDescriptor)
else -> isVisibleIn(targetContainer)
}
}
@@ -18,7 +18,7 @@ import com.intellij.util.containers.MultiMap
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.KotlinBundle
import org.jetbrains.kotlin.idea.caches.resolve.*
import org.jetbrains.kotlin.idea.core.setVisibility
@@ -132,7 +132,7 @@ class MoveKotlinMethodProcessor(
if (where == null || targetVariableIsMethodParameter()) return
val targetDescriptor = targetVariable.resolveToDescriptorIfAny() as? DeclarationDescriptorWithVisibility
?: return
if (!Visibilities.isVisibleIgnoringReceiver(targetDescriptor, where) && method.manager.isInProject(targetVariable)) {
if (!DescriptorVisibilities.isVisibleIgnoringReceiver(targetDescriptor, where) && method.manager.isInProject(targetVariable)) {
targetVariable.setVisibility(KtTokens.PUBLIC_KEYWORD)
}
}
@@ -224,7 +224,7 @@ private fun KotlinPullUpData.checkVisibility(
if (targetDescriptor in memberDescriptors.values) return
val target = (targetDescriptor as? DeclarationDescriptorWithSource)?.source?.getPsi() ?: return
if (targetDescriptor is DeclarationDescriptorWithVisibility
&& !Visibilities.isVisibleIgnoringReceiver(targetDescriptor, targetClassDescriptor)
&& !DescriptorVisibilities.isVisibleIgnoringReceiver(targetDescriptor, targetClassDescriptor)
) {
val message = RefactoringBundle.message(
"0.uses.1.which.is.not.accessible.from.the.superclass",
@@ -264,4 +264,4 @@ private fun KotlinPullUpData.checkVisibility(
}
)
}
}
}
@@ -209,7 +209,7 @@ private fun checkVisibility(
fun reportConflictIfAny(targetDescriptor: DeclarationDescriptor) {
val target = (targetDescriptor as? DeclarationDescriptorWithSource)?.source?.getPsi() ?: return
if (targetDescriptor is DeclarationDescriptorWithVisibility
&& !Visibilities.isVisibleIgnoringReceiver(targetDescriptor, targetClassDescriptor)
&& !DescriptorVisibilities.isVisibleIgnoringReceiver(targetDescriptor, targetClassDescriptor)
) {
val message = KotlinBundle.message(
"text.0.uses.1.which.is.not.accessible.from.2",
@@ -86,7 +86,7 @@ internal fun checkRedeclarations(
descriptor: DeclarationDescriptor = declaration.unsafeResolveToDescriptor(resolutionFacade)
) {
fun DeclarationDescriptor.isTopLevelPrivate(): Boolean =
this is DeclarationDescriptorWithVisibility && visibility == Visibilities.PRIVATE && containingDeclaration is PackageFragmentDescriptor
this is DeclarationDescriptorWithVisibility && visibility == DescriptorVisibilities.PRIVATE && containingDeclaration is PackageFragmentDescriptor
fun isInSameFile(d1: DeclarationDescriptor, d2: DeclarationDescriptor): Boolean =
(d1 as? DeclarationDescriptorWithSource)?.source?.getPsi()?.containingFile == (d2 as? DeclarationDescriptorWithSource)?.source
@@ -370,4 +370,4 @@ internal fun checkNewNameUsagesRetargeting(
checkUsagesRetargeting(candidate, declaration, currentName, false, listOf(descriptor), usages, newUsages)
usages.filterIsInstanceTo<KtResolvableCollisionUsageInfo, MutableList<UsageInfo>>(newUsages)
}
}
}
@@ -231,7 +231,7 @@ class ImportInsertHelperImpl(private val project: Project) : ImportInsertHelper(
fun isVisible(descriptor: DeclarationDescriptor): Boolean {
if (descriptor !is DeclarationDescriptorWithVisibility) return true
val visibility = descriptor.visibility
return !visibility.mustCheckInImports() || Visibilities.isVisibleIgnoringReceiver(descriptor, filePackage)
return !visibility.mustCheckInImports() || DescriptorVisibilities.isVisibleIgnoringReceiver(descriptor, filePackage)
}
val kindFilter = DescriptorKindFilter.ALL.withoutKinds(DescriptorKindFilter.PACKAGES_MASK)
@@ -25,7 +25,7 @@ import junit.framework.TestCase
import org.jetbrains.kotlin.asJava.getRepresentativeLightMethod
import org.jetbrains.kotlin.asJava.toLightMethods
import org.jetbrains.kotlin.builtins.DefaultBuiltIns
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
import org.jetbrains.kotlin.idea.caches.resolve.analyze
import org.jetbrains.kotlin.idea.refactoring.changeSignature.ui.KotlinChangeSignatureDialog.Companion.getTypeCodeFragmentContext
import org.jetbrains.kotlin.idea.refactoring.changeSignature.ui.KotlinChangeSignatureDialog.Companion.getTypeInfo
@@ -277,12 +277,12 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
}
fun testChangeConstructorVisibility() {
doTest { newVisibility = Visibilities.PROTECTED }
doTest { newVisibility = DescriptorVisibilities.PROTECTED }
}
fun testAddConstructorVisibility() {
doTest {
newVisibility = Visibilities.PROTECTED
newVisibility = DescriptorVisibilities.PROTECTED
val newParameter = KotlinParameterInfo(
callableDescriptor = originalBaseFunctionDescriptor,
@@ -297,7 +297,7 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
fun testConstructor() {
doTest {
newVisibility = Visibilities.PUBLIC
newVisibility = DescriptorVisibilities.PUBLIC
newParameters[0].valOrVar = KotlinValVar.Var
newParameters[1].valOrVar = KotlinValVar.None
@@ -313,7 +313,7 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
fun testGenericConstructor() {
doTest {
newVisibility = Visibilities.PUBLIC
newVisibility = DescriptorVisibilities.PUBLIC
newParameters[0].valOrVar = KotlinValVar.Var
newParameters[1].valOrVar = KotlinValVar.None
@@ -338,7 +338,7 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
fun testFunctions() {
doTest {
newVisibility = Visibilities.PUBLIC
newVisibility = DescriptorVisibilities.PUBLIC
newParameters[0].name = "_x1"
newParameters[1].name = "_x2"
@@ -350,7 +350,7 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
fun testGenericFunctions() {
doTest {
newVisibility = Visibilities.PUBLIC
newVisibility = DescriptorVisibilities.PUBLIC
newParameters[0].name = "_x1"
newParameters[1].name = "_x2"
@@ -370,7 +370,7 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
fun testFunctionsAddRemoveArguments() {
doTest {
newVisibility = Visibilities.INTERNAL
newVisibility = DescriptorVisibilities.INTERNAL
val defaultValueForCall = KtPsiFactory(project).createExpression("null")
val newParameters = newParameters
@@ -1270,11 +1270,11 @@ class KotlinChangeSignatureTest : KotlinLightCodeInsightFixtureTestCase() {
}
fun testMakePrimaryConstructorPrivateNoParams() {
doTest { newVisibility = Visibilities.PRIVATE }
doTest { newVisibility = DescriptorVisibilities.PRIVATE }
}
fun testMakePrimaryConstructorPublic() {
doTest { newVisibility = Visibilities.PUBLIC }
doTest { newVisibility = DescriptorVisibilities.PUBLIC }
}
fun testRenameExtensionParameterWithNamedArgs() {