Rename Visibility to DescriptorVisibility
This commit is contained in:
@@ -487,9 +487,9 @@ class ControlFlowInformationProvider private constructor(
|
||||
|
||||
val receiverValue = expression.getResolvedCall(trace.bindingContext)?.getDispatchReceiverWithSmartCast()
|
||||
|
||||
if (Visibilities.isVisible(receiverValue, variableDescriptor, descriptor)
|
||||
if (DescriptorVisibilities.isVisible(receiverValue, variableDescriptor, descriptor)
|
||||
&& setterDescriptor != null
|
||||
&& !Visibilities.isVisible(receiverValue, setterDescriptor, descriptor)
|
||||
&& !DescriptorVisibilities.isVisible(receiverValue, setterDescriptor, descriptor)
|
||||
) {
|
||||
report(
|
||||
Errors.INVISIBLE_SETTER.on(
|
||||
@@ -1315,4 +1315,4 @@ fun ParameterDescriptor.index(): Int =
|
||||
is ReceiverParameterDescriptor -> -1
|
||||
is ValueParameterDescriptor -> index
|
||||
else -> error("expected either receiver or value parameter, but got: $this")
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -42,7 +42,7 @@ sealed class LocalVariableAccessorDescriptor(
|
||||
val returnType =
|
||||
if (isGetter) correspondingVariable.type else correspondingVariable.builtIns.unitType
|
||||
@Suppress("LeakingThis")
|
||||
initialize(null, null, emptyList(), valueParameters, returnType, Modality.FINAL, Visibilities.LOCAL)
|
||||
initialize(null, null, emptyList(), valueParameters, returnType, Modality.FINAL, DescriptorVisibilities.LOCAL)
|
||||
}
|
||||
|
||||
private fun createValueParameter(name: Name, type: KotlinType): ValueParameterDescriptorImpl {
|
||||
|
||||
+2
-2
@@ -92,8 +92,8 @@ public class LocalVariableDescriptor extends VariableDescriptorWithInitializerIm
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
return Visibilities.LOCAL;
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return DescriptorVisibilities.LOCAL;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
@@ -123,9 +123,9 @@ public interface Errors {
|
||||
|
||||
//Elements with "INVISIBLE_REFERENCE" error are marked as unresolved, unlike elements with "INVISIBLE_MEMBER" error
|
||||
//"INVISIBLE_REFERENCE" is used for invisible classes references and references in import
|
||||
DiagnosticFactory3<KtSimpleNameExpression, DeclarationDescriptor, Visibility, DeclarationDescriptor> INVISIBLE_REFERENCE =
|
||||
DiagnosticFactory3<KtSimpleNameExpression, DeclarationDescriptor, DescriptorVisibility, DeclarationDescriptor> INVISIBLE_REFERENCE =
|
||||
DiagnosticFactory3.create(ERROR);
|
||||
DiagnosticFactory3<PsiElement, DeclarationDescriptor, Visibility, DeclarationDescriptor> INVISIBLE_MEMBER = DiagnosticFactory3.create(ERROR, CALL_ELEMENT);
|
||||
DiagnosticFactory3<PsiElement, DeclarationDescriptor, DescriptorVisibility, DeclarationDescriptor> INVISIBLE_MEMBER = DiagnosticFactory3.create(ERROR, CALL_ELEMENT);
|
||||
DiagnosticFactory1<KtElement, DeclarationDescriptor> DEPRECATED_ACCESS_BY_SHORT_NAME = DiagnosticFactory1.create(WARNING);
|
||||
|
||||
DiagnosticFactory1<PsiElement, ConstructorDescriptor> PROTECTED_CONSTRUCTOR_NOT_IN_SUPER_CALL = DiagnosticFactory1.create(ERROR);
|
||||
@@ -496,9 +496,9 @@ public interface Errors {
|
||||
DiagnosticFactory2<KtNamedDeclaration, CallableMemberDescriptor, DeclarationDescriptor> OVERRIDING_FINAL_MEMBER =
|
||||
DiagnosticFactory2.create(ERROR, OVERRIDE_MODIFIER);
|
||||
|
||||
DiagnosticFactory3<KtModifierListOwner, Visibility, CallableMemberDescriptor, DeclarationDescriptor> CANNOT_WEAKEN_ACCESS_PRIVILEGE =
|
||||
DiagnosticFactory3<KtModifierListOwner, DescriptorVisibility, CallableMemberDescriptor, DeclarationDescriptor> CANNOT_WEAKEN_ACCESS_PRIVILEGE =
|
||||
DiagnosticFactory3.create(ERROR, VISIBILITY_MODIFIER);
|
||||
DiagnosticFactory3<KtModifierListOwner, Visibility, CallableMemberDescriptor, DeclarationDescriptor> CANNOT_CHANGE_ACCESS_PRIVILEGE =
|
||||
DiagnosticFactory3<KtModifierListOwner, DescriptorVisibility, CallableMemberDescriptor, DeclarationDescriptor> CANNOT_CHANGE_ACCESS_PRIVILEGE =
|
||||
DiagnosticFactory3.create(ERROR, VISIBILITY_MODIFIER);
|
||||
DiagnosticFactory2<KtNamedDeclaration, CallableMemberDescriptor, DeclarationWithDiagnosticComponents> RETURN_TYPE_MISMATCH_ON_OVERRIDE =
|
||||
DiagnosticFactory2.create(ERROR, DECLARATION_RETURN_TYPE);
|
||||
@@ -1029,7 +1029,7 @@ public interface Errors {
|
||||
DiagnosticFactory0<KtTypeParameterList> LOCAL_VARIABLE_WITH_TYPE_PARAMETERS_WARNING = DiagnosticFactory0.create(WARNING);
|
||||
DiagnosticFactory0<KtTypeParameterList> LOCAL_VARIABLE_WITH_TYPE_PARAMETERS = DiagnosticFactory0.create(ERROR);
|
||||
|
||||
DiagnosticFactory3<KtExpression, DeclarationDescriptor, Visibility, DeclarationDescriptor> INVISIBLE_SETTER = DiagnosticFactory3.create(ERROR);
|
||||
DiagnosticFactory3<KtExpression, DeclarationDescriptor, DescriptorVisibility, DeclarationDescriptor> INVISIBLE_SETTER = DiagnosticFactory3.create(ERROR);
|
||||
|
||||
DiagnosticFactory1<PsiElement, KtKeywordToken> VAL_OR_VAR_ON_LOOP_PARAMETER = DiagnosticFactory1.create(ERROR);
|
||||
DiagnosticFactory1<PsiElement, KtKeywordToken> VAL_OR_VAR_ON_FUN_PARAMETER = DiagnosticFactory1.create(ERROR);
|
||||
|
||||
@@ -99,7 +99,7 @@ object Renderers {
|
||||
}
|
||||
|
||||
@JvmField
|
||||
val VISIBILITY = Renderer<Visibility> {
|
||||
val VISIBILITY = Renderer<DescriptorVisibility> {
|
||||
it.externalDisplayName
|
||||
}
|
||||
|
||||
@@ -134,7 +134,7 @@ object Renderers {
|
||||
|
||||
@JvmField
|
||||
val NAME_OF_CONTAINING_DECLARATION_OR_FILE = Renderer<DeclarationDescriptor> {
|
||||
if (DescriptorUtils.isTopLevelDeclaration(it) && it is DeclarationDescriptorWithVisibility && it.visibility == Visibilities.PRIVATE) {
|
||||
if (DescriptorUtils.isTopLevelDeclaration(it) && it is DeclarationDescriptorWithVisibility && it.visibility == DescriptorVisibilities.PRIVATE) {
|
||||
"file"
|
||||
} else {
|
||||
val containingDeclaration = it.containingDeclaration
|
||||
|
||||
+13
-13
@@ -37,18 +37,18 @@ import org.jetbrains.kotlin.types.checker.KotlinTypeRefiner
|
||||
* This class has its own synthetic declaration inside.
|
||||
*/
|
||||
class SyntheticClassOrObjectDescriptor(
|
||||
c: LazyClassContext,
|
||||
parentClassOrObject: KtPureClassOrObject,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
name: Name,
|
||||
source: SourceElement,
|
||||
outerScope: LexicalScope,
|
||||
private val modality: Modality,
|
||||
private val visibility: Visibility,
|
||||
override val annotations: Annotations,
|
||||
constructorVisibility: Visibility,
|
||||
private val kind: ClassKind,
|
||||
private val isCompanionObject: Boolean
|
||||
c: LazyClassContext,
|
||||
parentClassOrObject: KtPureClassOrObject,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
name: Name,
|
||||
source: SourceElement,
|
||||
outerScope: LexicalScope,
|
||||
private val modality: Modality,
|
||||
private val visibility: DescriptorVisibility,
|
||||
override val annotations: Annotations,
|
||||
constructorVisibility: DescriptorVisibility,
|
||||
private val kind: ClassKind,
|
||||
private val isCompanionObject: Boolean
|
||||
) : ClassDescriptorBase(c.storageManager, containingDeclaration, name, source, false), ClassDescriptorWithResolutionScopes {
|
||||
val syntheticDeclaration: KtPureClassOrObject = SyntheticDeclaration(parentClassOrObject, name.asString())
|
||||
|
||||
@@ -116,7 +116,7 @@ class SyntheticClassOrObjectDescriptor(
|
||||
|
||||
override fun toString(): String = "synthetic class " + name.toString() + " in " + containingDeclaration
|
||||
|
||||
private fun createUnsubstitutedPrimaryConstructor(constructorVisibility: Visibility): ClassConstructorDescriptor {
|
||||
private fun createUnsubstitutedPrimaryConstructor(constructorVisibility: DescriptorVisibility): ClassConstructorDescriptor {
|
||||
val constructor = DescriptorFactory.createPrimaryConstructorForObject(thisDescriptor, source)
|
||||
constructor.visibility = constructorVisibility
|
||||
constructor.returnType = getDefaultType()
|
||||
|
||||
@@ -114,7 +114,7 @@ object DataClassDescriptorResolver {
|
||||
parameterDescriptors,
|
||||
classDescriptor.defaultType,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
trace.record(BindingContext.DATA_CLASS_COPY_FUNCTION, classDescriptor, functionDescriptor)
|
||||
|
||||
@@ -601,7 +601,7 @@ class DeclarationsChecker(
|
||||
}
|
||||
|
||||
private fun checkPrivateExpectedDeclaration(declaration: KtDeclaration, descriptor: MemberDescriptor) {
|
||||
if (descriptor.isExpect && Visibilities.isPrivate(descriptor.visibility)) {
|
||||
if (descriptor.isExpect && DescriptorVisibilities.isPrivate(descriptor.visibility)) {
|
||||
trace.report(EXPECTED_PRIVATE_DECLARATION.on(declaration.modifierList?.getModifier(KtTokens.PRIVATE_KEYWORD) ?: declaration))
|
||||
}
|
||||
}
|
||||
@@ -884,15 +884,15 @@ class DeclarationsChecker(
|
||||
}
|
||||
} else {
|
||||
if (propertyDescriptor.isOverridable
|
||||
&& accessorDescriptor.visibility == Visibilities.PRIVATE
|
||||
&& propertyDescriptor.visibility != Visibilities.PRIVATE) {
|
||||
&& accessorDescriptor.visibility == DescriptorVisibilities.PRIVATE
|
||||
&& propertyDescriptor.visibility != DescriptorVisibilities.PRIVATE) {
|
||||
if (propertyDescriptor.modality == Modality.ABSTRACT) {
|
||||
reportVisibilityModifierDiagnostics(tokens.values, Errors.PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY)
|
||||
} else {
|
||||
reportVisibilityModifierDiagnostics(tokens.values, Errors.PRIVATE_SETTER_FOR_OPEN_PROPERTY)
|
||||
}
|
||||
} else {
|
||||
val compare = Visibilities.compare(accessorDescriptor.visibility, propertyDescriptor.visibility)
|
||||
val compare = DescriptorVisibilities.compare(accessorDescriptor.visibility, propertyDescriptor.visibility)
|
||||
if (compare == null || compare > 0) {
|
||||
reportVisibilityModifierDiagnostics(tokens.values, Errors.SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY)
|
||||
}
|
||||
|
||||
@@ -78,7 +78,7 @@ class DelegationResolver<T : CallableMemberDescriptor> private constructor(
|
||||
.setOwner(ownerDescriptor)
|
||||
.setDispatchReceiverParameter(ownerDescriptor.thisAsReceiverParameter)
|
||||
.setModality(newModality)
|
||||
.setVisibility(Visibilities.INHERITED)
|
||||
.setVisibility(DescriptorVisibilities.INHERITED)
|
||||
.setKind(DELEGATION)
|
||||
.setCopyOverrides(false)
|
||||
.build() as T
|
||||
|
||||
@@ -263,29 +263,29 @@ public class DescriptorResolver {
|
||||
}
|
||||
}
|
||||
|
||||
public static Visibility getDefaultVisibility(KtModifierListOwner modifierListOwner, DeclarationDescriptor containingDescriptor) {
|
||||
Visibility defaultVisibility;
|
||||
public static DescriptorVisibility getDefaultVisibility(KtModifierListOwner modifierListOwner, DeclarationDescriptor containingDescriptor) {
|
||||
DescriptorVisibility defaultVisibility;
|
||||
if (containingDescriptor instanceof ClassDescriptor) {
|
||||
KtModifierList modifierList = modifierListOwner.getModifierList();
|
||||
defaultVisibility = modifierList != null && modifierList.hasModifier(OVERRIDE_KEYWORD)
|
||||
? Visibilities.INHERITED
|
||||
: Visibilities.DEFAULT_VISIBILITY;
|
||||
? DescriptorVisibilities.INHERITED
|
||||
: DescriptorVisibilities.DEFAULT_VISIBILITY;
|
||||
}
|
||||
else if (containingDescriptor instanceof FunctionDescriptor || containingDescriptor instanceof PropertyDescriptor) {
|
||||
defaultVisibility = Visibilities.LOCAL;
|
||||
defaultVisibility = DescriptorVisibilities.LOCAL;
|
||||
}
|
||||
else {
|
||||
defaultVisibility = Visibilities.DEFAULT_VISIBILITY;
|
||||
defaultVisibility = DescriptorVisibilities.DEFAULT_VISIBILITY;
|
||||
}
|
||||
return defaultVisibility;
|
||||
}
|
||||
|
||||
public static Modality getDefaultModality(DeclarationDescriptor containingDescriptor, Visibility visibility, boolean isBodyPresent) {
|
||||
public static Modality getDefaultModality(DeclarationDescriptor containingDescriptor, DescriptorVisibility visibility, boolean isBodyPresent) {
|
||||
Modality defaultModality;
|
||||
if (containingDescriptor instanceof ClassDescriptor) {
|
||||
boolean isTrait = ((ClassDescriptor) containingDescriptor).getKind() == ClassKind.INTERFACE;
|
||||
boolean isDefinitelyAbstract = isTrait && !isBodyPresent;
|
||||
Modality basicModality = isTrait && !Visibilities.isPrivate(visibility) ? Modality.OPEN : Modality.FINAL;
|
||||
Modality basicModality = isTrait && !DescriptorVisibilities.isPrivate(visibility) ? Modality.OPEN : Modality.FINAL;
|
||||
defaultModality = isDefinitelyAbstract ? Modality.ABSTRACT : basicModality;
|
||||
}
|
||||
else {
|
||||
@@ -720,7 +720,7 @@ public class DescriptorResolver {
|
||||
}
|
||||
|
||||
KtModifierList modifierList = typeAlias.getModifierList();
|
||||
Visibility visibility = resolveVisibilityFromModifiers(typeAlias, getDefaultVisibility(typeAlias, containingDeclaration));
|
||||
DescriptorVisibility visibility = resolveVisibilityFromModifiers(typeAlias, getDefaultVisibility(typeAlias, containingDeclaration));
|
||||
|
||||
Annotations allAnnotations = annotationResolver.resolveAnnotationsWithArguments(scope, modifierList, trace);
|
||||
Name name = KtPsiUtil.safeName(typeAlias.getName());
|
||||
@@ -874,7 +874,7 @@ public class DescriptorResolver {
|
||||
KtModifierList modifierList = variableDeclaration.getModifierList();
|
||||
boolean isVar = variableDeclaration.isVar();
|
||||
|
||||
Visibility visibility = resolveVisibilityFromModifiers(variableDeclaration, getDefaultVisibility(variableDeclaration, container));
|
||||
DescriptorVisibility visibility = resolveVisibilityFromModifiers(variableDeclaration, getDefaultVisibility(variableDeclaration, container));
|
||||
Modality modality = container instanceof ClassDescriptor
|
||||
? resolveMemberModalityFromModifiers(variableDeclaration,
|
||||
getDefaultModality(container, visibility, propertyInfo.getHasBody()),
|
||||
@@ -1032,7 +1032,7 @@ public class DescriptorResolver {
|
||||
return type;
|
||||
}
|
||||
|
||||
if (!Visibilities.isPrivate(descriptor.getVisibility())) {
|
||||
if (!DescriptorVisibilities.isPrivate(descriptor.getVisibility())) {
|
||||
if (type.getConstructor().getSupertypes().size() == 1) {
|
||||
return type.getConstructor().getSupertypes().iterator().next();
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ class ExposedVisibilityChecker(private val trace: BindingTrace? = null) {
|
||||
fun checkDeclarationWithVisibility(
|
||||
modifierListOwner: KtModifierListOwner,
|
||||
descriptor: DeclarationDescriptorWithVisibility,
|
||||
visibility: Visibility
|
||||
visibility: DescriptorVisibility
|
||||
): Boolean {
|
||||
return when {
|
||||
modifierListOwner is KtFunction &&
|
||||
@@ -78,7 +78,7 @@ class ExposedVisibilityChecker(private val trace: BindingTrace? = null) {
|
||||
function: KtFunction,
|
||||
functionDescriptor: FunctionDescriptor,
|
||||
// for checking situation with modified basic visibility
|
||||
visibility: Visibility = functionDescriptor.visibility
|
||||
visibility: DescriptorVisibility = functionDescriptor.visibility
|
||||
): Boolean {
|
||||
val functionVisibility = functionDescriptor.effectiveVisibility(visibility)
|
||||
var result = true
|
||||
@@ -116,7 +116,7 @@ class ExposedVisibilityChecker(private val trace: BindingTrace? = null) {
|
||||
property: KtProperty,
|
||||
propertyDescriptor: PropertyDescriptor,
|
||||
// for checking situation with modified basic visibility
|
||||
visibility: Visibility = propertyDescriptor.visibility
|
||||
visibility: DescriptorVisibility = propertyDescriptor.visibility
|
||||
): Boolean {
|
||||
val propertyVisibility = propertyDescriptor.effectiveVisibility(visibility)
|
||||
val restricting = propertyDescriptor.type.leastPermissiveDescriptor(propertyVisibility)
|
||||
|
||||
@@ -83,7 +83,7 @@ object FunctionsFromAny {
|
||||
functionFromAny.valueParameters.map { it.copy(functionDescriptor, it.name, it.index) },
|
||||
functionFromAny.returnType,
|
||||
Modality.OPEN,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
return functionDescriptor
|
||||
@@ -98,4 +98,4 @@ object FunctionsFromAny {
|
||||
return declaredFunctions.none(checkParameters) &&
|
||||
fromSupertypes.none { checkParameters(it) && it.modality == Modality.FINAL }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ object InlineClassDescriptorResolver {
|
||||
createValueParametersForSpecializedEquals(functionDescriptor, inlinedValue),
|
||||
owner.builtIns.booleanType,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
return functionDescriptor
|
||||
@@ -102,7 +102,7 @@ object InlineClassDescriptorResolver {
|
||||
if (isBoxMethod) listOf(createValueParameterForBoxing(functionDescriptor, inlinedValue)) else emptyList(),
|
||||
if (isBoxMethod) owner.defaultType else inlinedValue.returnType,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
return functionDescriptor
|
||||
@@ -141,4 +141,4 @@ object InlineClassDescriptorResolver {
|
||||
false, false, false, null, SourceElement.NO_SOURCE
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,7 +167,7 @@ class LocalVariableResolver(
|
||||
containingDeclaration,
|
||||
annotationResolver.resolveAnnotationsWithArguments(scope, variable.modifierList, trace),
|
||||
Modality.FINAL,
|
||||
Visibilities.INTERNAL,
|
||||
DescriptorVisibilities.INTERNAL,
|
||||
variable.isVar,
|
||||
KtPsiUtil.safeName(variable.name),
|
||||
CallableMemberDescriptor.Kind.DECLARATION,
|
||||
@@ -207,7 +207,7 @@ class LocalVariableResolver(
|
||||
|
||||
private fun initializeWithDefaultGetterSetter(propertyDescriptor: PropertyDescriptorImpl) {
|
||||
var getter = propertyDescriptor.getter
|
||||
if (getter == null && !Visibilities.isPrivate(propertyDescriptor.visibility)) {
|
||||
if (getter == null && !DescriptorVisibilities.isPrivate(propertyDescriptor.visibility)) {
|
||||
getter = DescriptorFactory.createDefaultGetter(propertyDescriptor, Annotations.EMPTY)
|
||||
getter.initialize(propertyDescriptor.type)
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ class MissingSupertypesResolver(
|
||||
* Type parameters are skipped here in favor to explicit checks for bounds, local declarations are ignored for optimization
|
||||
*/
|
||||
if (supertypeDeclaration !is ClassDescriptor || supertypeDeclaration.isExpect) continue
|
||||
if (supertypeDeclaration.visibility == Visibilities.LOCAL) continue
|
||||
if (supertypeDeclaration.visibility == DescriptorVisibilities.LOCAL) continue
|
||||
|
||||
val superTypeClassId = supertypeDeclaration.classId ?: continue
|
||||
val dependency = moduleDescriptor.findClassAcrossModuleDependencies(superTypeClassId)
|
||||
|
||||
@@ -134,19 +134,19 @@ public class ModifiersChecker {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static Visibility resolveVisibilityFromModifiers(
|
||||
public static DescriptorVisibility resolveVisibilityFromModifiers(
|
||||
@NotNull KtModifierListOwner modifierListOwner,
|
||||
@NotNull Visibility defaultVisibility
|
||||
@NotNull DescriptorVisibility defaultVisibility
|
||||
) {
|
||||
return resolveVisibilityFromModifiers(modifierListOwner.getModifierList(), defaultVisibility);
|
||||
}
|
||||
|
||||
public static Visibility resolveVisibilityFromModifiers(@Nullable KtModifierList modifierList, @NotNull Visibility defaultVisibility) {
|
||||
public static DescriptorVisibility resolveVisibilityFromModifiers(@Nullable KtModifierList modifierList, @NotNull DescriptorVisibility defaultVisibility) {
|
||||
if (modifierList == null) return defaultVisibility;
|
||||
if (modifierList.hasModifier(PRIVATE_KEYWORD)) return Visibilities.PRIVATE;
|
||||
if (modifierList.hasModifier(PUBLIC_KEYWORD)) return Visibilities.PUBLIC;
|
||||
if (modifierList.hasModifier(PROTECTED_KEYWORD)) return Visibilities.PROTECTED;
|
||||
if (modifierList.hasModifier(INTERNAL_KEYWORD)) return Visibilities.INTERNAL;
|
||||
if (modifierList.hasModifier(PRIVATE_KEYWORD)) return DescriptorVisibilities.PRIVATE;
|
||||
if (modifierList.hasModifier(PUBLIC_KEYWORD)) return DescriptorVisibilities.PUBLIC;
|
||||
if (modifierList.hasModifier(PROTECTED_KEYWORD)) return DescriptorVisibilities.PROTECTED;
|
||||
if (modifierList.hasModifier(INTERNAL_KEYWORD)) return DescriptorVisibilities.INTERNAL;
|
||||
return defaultVisibility;
|
||||
}
|
||||
|
||||
|
||||
@@ -232,7 +232,7 @@ class OverloadResolver(
|
||||
|
||||
private fun DeclarationDescriptor.isPrivate() =
|
||||
this is DeclarationDescriptorWithVisibility &&
|
||||
Visibilities.isPrivate(this.visibility)
|
||||
DescriptorVisibilities.isPrivate(this.visibility)
|
||||
|
||||
private fun checkOverloadsInClass(members: Collection<CallableMemberDescriptor>) {
|
||||
if (members.size == 1) return
|
||||
|
||||
@@ -504,7 +504,7 @@ class OverrideResolver(
|
||||
private fun checkVisibilityForMember(declaration: KtDeclaration, memberDescriptor: CallableMemberDescriptor) {
|
||||
val visibility = memberDescriptor.visibility
|
||||
for (descriptor in memberDescriptor.overriddenDescriptors) {
|
||||
val compare = Visibilities.compare(visibility, descriptor.visibility)
|
||||
val compare = DescriptorVisibilities.compare(visibility, descriptor.visibility)
|
||||
if (compare == null) {
|
||||
trace.report(
|
||||
CANNOT_CHANGE_ACCESS_PRIVILEGE.on(
|
||||
@@ -601,7 +601,7 @@ class OverrideResolver(
|
||||
val relevantDirectlyOverridden =
|
||||
getRelevantDirectlyOverridden(overriddenDeclarationsByDirectParent, allFilteredOverriddenDeclarations)
|
||||
|
||||
if (descriptor.visibility === Visibilities.INVISIBLE_FAKE) {
|
||||
if (descriptor.visibility === DescriptorVisibilities.INVISIBLE_FAKE) {
|
||||
checkInvisibleFakeOverride(descriptor, relevantDirectlyOverridden, reportingStrategy)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -811,10 +811,10 @@ internal fun isVisible(
|
||||
|
||||
val visibility = descriptor.visibility
|
||||
if (position == QualifierPosition.IMPORT) {
|
||||
if (Visibilities.isPrivate(visibility)) return Visibilities.inSameFile(descriptor, shouldBeVisibleFrom)
|
||||
if (DescriptorVisibilities.isPrivate(visibility)) return DescriptorVisibilities.inSameFile(descriptor, shouldBeVisibleFrom)
|
||||
if (!visibility.mustCheckInImports()) return true
|
||||
}
|
||||
return Visibilities.isVisibleIgnoringReceiver(descriptor, shouldBeVisibleFrom)
|
||||
return DescriptorVisibilities.isVisibleIgnoringReceiver(descriptor, shouldBeVisibleFrom)
|
||||
}
|
||||
|
||||
internal enum class QualifierPosition {
|
||||
|
||||
@@ -88,7 +88,7 @@ class ShadowedExtensionChecker(val typeSpecificityComparator: TypeSpecificityCom
|
||||
}
|
||||
|
||||
private fun DeclarationDescriptorWithVisibility.isPublic() =
|
||||
visibility.normalize() == Visibilities.PUBLIC
|
||||
visibility.normalize() == DescriptorVisibilities.PUBLIC
|
||||
|
||||
private fun isExtensionFunctionShadowedByMemberFunction(extension: FunctionDescriptor, member: FunctionDescriptor): Boolean {
|
||||
// Permissive check:
|
||||
|
||||
@@ -324,7 +324,7 @@ class TypeResolver(
|
||||
type: KotlinType,
|
||||
source: SourceElement
|
||||
) : VariableDescriptorImpl(containingDeclaration, annotations, name, type, source) {
|
||||
override fun getVisibility() = Visibilities.LOCAL
|
||||
override fun getVisibility() = DescriptorVisibilities.LOCAL
|
||||
|
||||
override fun substitute(substitutor: TypeSubstitutor): VariableDescriptor? {
|
||||
throw UnsupportedOperationException("Should not be called for descriptor of type ${this::class.java}")
|
||||
|
||||
@@ -87,13 +87,13 @@ class VarianceCheckerCore(
|
||||
}
|
||||
|
||||
fun checkMember(member: KtCallableDeclaration, descriptor: CallableMemberDescriptor) =
|
||||
Visibilities.isPrivate(descriptor.visibility) || checkCallableDeclaration(context, member, descriptor)
|
||||
DescriptorVisibilities.isPrivate(descriptor.visibility) || checkCallableDeclaration(context, member, descriptor)
|
||||
|
||||
private fun TypeParameterDescriptor.varianceWithManual() =
|
||||
if (manualVariance != null && this.original == manualVariance.descriptor) manualVariance.variance else variance
|
||||
|
||||
fun recordPrivateToThisIfNeeded(descriptor: CallableMemberDescriptor) {
|
||||
if (isIrrelevant(descriptor) || descriptor.visibility != Visibilities.PRIVATE) return
|
||||
if (isIrrelevant(descriptor) || descriptor.visibility != DescriptorVisibilities.PRIVATE) return
|
||||
|
||||
val psiElement = descriptor.source.getPsi() as? KtCallableDeclaration ?: return
|
||||
|
||||
@@ -185,11 +185,11 @@ class VarianceCheckerCore(
|
||||
|
||||
private fun recordPrivateToThis(descriptor: CallableMemberDescriptor) {
|
||||
when (descriptor) {
|
||||
is FunctionDescriptorImpl -> descriptor.visibility = Visibilities.PRIVATE_TO_THIS
|
||||
is FunctionDescriptorImpl -> descriptor.visibility = DescriptorVisibilities.PRIVATE_TO_THIS
|
||||
is PropertyDescriptorImpl -> {
|
||||
descriptor.visibility = Visibilities.PRIVATE_TO_THIS
|
||||
descriptor.visibility = DescriptorVisibilities.PRIVATE_TO_THIS
|
||||
for (accessor in descriptor.accessors) {
|
||||
(accessor as PropertyAccessorDescriptorImpl).visibility = Visibilities.PRIVATE_TO_THIS
|
||||
(accessor as PropertyAccessorDescriptorImpl).visibility = DescriptorVisibilities.PRIVATE_TO_THIS
|
||||
}
|
||||
}
|
||||
else -> throw IllegalStateException("Unexpected descriptor type: ${descriptor::class.java.name}")
|
||||
|
||||
@@ -177,14 +177,14 @@ class CandidateResolver(
|
||||
}
|
||||
|
||||
private fun CallCandidateResolutionContext<*>.checkVisibilityWithoutReceiver() = checkAndReport {
|
||||
checkVisibilityWithDispatchReceiver(Visibilities.ALWAYS_SUITABLE_RECEIVER, null)
|
||||
checkVisibilityWithDispatchReceiver(DescriptorVisibilities.ALWAYS_SUITABLE_RECEIVER, null)
|
||||
}
|
||||
|
||||
private fun CallCandidateResolutionContext<*>.checkVisibilityWithDispatchReceiver(
|
||||
receiverArgument: ReceiverValue?,
|
||||
smartCastType: KotlinType?
|
||||
): ResolutionStatus {
|
||||
val invisibleMember = Visibilities.findInvisibleMember(
|
||||
val invisibleMember = DescriptorVisibilities.findInvisibleMember(
|
||||
getReceiverValueWithSmartCast(receiverArgument, smartCastType), candidateDescriptor, scope.ownerDescriptor
|
||||
)
|
||||
return if (invisibleMember != null) {
|
||||
@@ -204,7 +204,7 @@ class CandidateResolver(
|
||||
private fun CallCandidateResolutionContext<*>.isCandidateVisible(
|
||||
receiverArgument: ReceiverValue?,
|
||||
smartCastType: KotlinType?
|
||||
) = Visibilities.findInvisibleMember(
|
||||
) = DescriptorVisibilities.findInvisibleMember(
|
||||
getReceiverValueWithSmartCast(receiverArgument, smartCastType),
|
||||
candidateDescriptor, scope.ownerDescriptor
|
||||
) == null
|
||||
@@ -474,7 +474,7 @@ class CandidateResolver(
|
||||
if (!context.isDebuggerContext
|
||||
&& candidateCall.dispatchReceiver != null
|
||||
// Do not report error if it's already reported when checked without receiver
|
||||
&& context.isCandidateVisible(receiverArgument = Visibilities.ALWAYS_SUITABLE_RECEIVER, smartCastType = null)) {
|
||||
&& context.isCandidateVisible(receiverArgument = DescriptorVisibilities.ALWAYS_SUITABLE_RECEIVER, smartCastType = null)) {
|
||||
resultStatus = resultStatus.combine(
|
||||
context.checkVisibilityWithDispatchReceiver(
|
||||
candidateCall.dispatchReceiver, candidateCall.smartCastDispatchReceiverType
|
||||
|
||||
@@ -259,7 +259,7 @@ internal class InlineChecker(private val descriptor: FunctionDescriptor) : CallC
|
||||
val isInlineFunPublicOrPublishedApi = inlineFunEffectiveVisibility.publicApi
|
||||
if (isInlineFunPublicOrPublishedApi &&
|
||||
!isCalledFunPublicOrPublishedApi &&
|
||||
calledDescriptor.visibility !== Visibilities.LOCAL) {
|
||||
calledDescriptor.visibility !== DescriptorVisibilities.LOCAL) {
|
||||
context.trace.report(NON_PUBLIC_CALL_FROM_PUBLIC_INLINE.on(expression, calledDescriptor, descriptor))
|
||||
} else {
|
||||
checkPrivateClassMemberAccess(calledDescriptor, expression, context)
|
||||
@@ -267,8 +267,8 @@ internal class InlineChecker(private val descriptor: FunctionDescriptor) : CallC
|
||||
|
||||
if (calledDescriptor !is ConstructorDescriptor &&
|
||||
isInlineFunPublicOrPublishedApi &&
|
||||
inlineFunEffectiveVisibility.toVisibility() !== Visibilities.PROTECTED &&
|
||||
calledFunEffectiveVisibility.toVisibility() === Visibilities.PROTECTED) {
|
||||
inlineFunEffectiveVisibility.toVisibility() !== DescriptorVisibilities.PROTECTED &&
|
||||
calledFunEffectiveVisibility.toVisibility() === DescriptorVisibilities.PROTECTED) {
|
||||
if (prohibitProtectedCallFromInline) {
|
||||
context.trace.report(PROTECTED_CALL_FROM_PUBLIC_INLINE_ERROR.on(expression, calledDescriptor))
|
||||
} else {
|
||||
|
||||
+4
-4
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.resolve.calls.checkers
|
||||
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.descriptors.ConstructorDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.impl.TypeAliasConstructorDescriptor
|
||||
import org.jetbrains.kotlin.diagnostics.Errors
|
||||
import org.jetbrains.kotlin.psi.KtConstructorCalleeExpression
|
||||
@@ -35,9 +35,9 @@ object ProtectedConstructorCallChecker : CallChecker {
|
||||
|
||||
val actualConstructor = (descriptor as? TypeAliasConstructorDescriptor)?.underlyingConstructorDescriptor ?: descriptor
|
||||
|
||||
if (actualConstructor.visibility.normalize() != Visibilities.PROTECTED) return
|
||||
if (actualConstructor.visibility.normalize() != DescriptorVisibilities.PROTECTED) return
|
||||
// Error already reported
|
||||
if (!Visibilities.isVisibleWithAnyReceiver(descriptor, scopeOwner)) return
|
||||
if (!DescriptorVisibilities.isVisibleWithAnyReceiver(descriptor, scopeOwner)) return
|
||||
|
||||
val calleeExpression = resolvedCall.call.calleeExpression
|
||||
|
||||
@@ -55,7 +55,7 @@ object ProtectedConstructorCallChecker : CallChecker {
|
||||
// And without ProtectedConstructorCallChecker such calls would be allowed only because they are performed within subclass
|
||||
// of constructor owner
|
||||
@Suppress("DEPRECATION")
|
||||
if (Visibilities.findInvisibleMember(Visibilities.FALSE_IF_PROTECTED, descriptor, scopeOwner) == actualConstructor.original) {
|
||||
if (DescriptorVisibilities.findInvisibleMember(DescriptorVisibilities.FALSE_IF_PROTECTED, descriptor, scopeOwner) == actualConstructor.original) {
|
||||
context.trace.report(Errors.PROTECTED_CONSTRUCTOR_NOT_IN_SUPER_CALL.on(reportOn, descriptor))
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -130,7 +130,7 @@ private fun isAccessedBeforeAllClosureWriters(
|
||||
|
||||
|
||||
private fun DeclarationDescriptorWithVisibility.isInvisibleFromOtherModules(): Boolean {
|
||||
if (Visibilities.INVISIBLE_FROM_OTHER_MODULES.contains(visibility)) return true
|
||||
if (DescriptorVisibilities.INVISIBLE_FROM_OTHER_MODULES.contains(visibility)) return true
|
||||
|
||||
val containingDeclaration = containingDeclaration
|
||||
return containingDeclaration is DeclarationDescriptorWithVisibility && containingDeclaration.isInvisibleFromOtherModules()
|
||||
|
||||
@@ -89,7 +89,7 @@ class DynamicCallableDescriptors(private val storageManager: StorageManager, bui
|
||||
owner,
|
||||
Annotations.EMPTY,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC,
|
||||
DescriptorVisibilities.PUBLIC,
|
||||
true,
|
||||
name,
|
||||
CallableMemberDescriptor.Kind.DECLARATION,
|
||||
@@ -132,7 +132,7 @@ class DynamicCallableDescriptors(private val storageManager: StorageManager, bui
|
||||
createValueParameters(functionDescriptor, call),
|
||||
dynamicType,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
functionDescriptor.setHasSynthesizedParameterNames(true)
|
||||
functionDescriptor.isOperator = isConventionCall(call)
|
||||
|
||||
+3
-3
@@ -105,8 +105,8 @@ class ExplicitApiDeclarationChecker : DeclarationChecker {
|
||||
val callableMemberDescriptor = descriptor as? CallableMemberDescriptor
|
||||
|
||||
val visibility = callableMemberDescriptor?.effectiveVisibility()?.toVisibility()
|
||||
return (checkForPublicApi && visibility?.isPublicAPI == true) || (checkForInternal && visibility == Visibilities.INTERNAL) ||
|
||||
(checkForPrivate && visibility == Visibilities.PRIVATE)
|
||||
return (checkForPublicApi && visibility?.isPublicAPI == true) || (checkForInternal && visibility == DescriptorVisibilities.INTERNAL) ||
|
||||
(checkForPrivate && visibility == DescriptorVisibilities.PRIVATE)
|
||||
}
|
||||
|
||||
fun returnTypeCheckIsApplicable(element: KtCallableDeclaration): Boolean {
|
||||
@@ -120,4 +120,4 @@ class ExplicitApiDeclarationChecker : DeclarationChecker {
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -47,7 +47,7 @@ object InlineClassDeclarationChecker : DeclarationChecker {
|
||||
}
|
||||
|
||||
val primaryConstructorVisibility = descriptor.unsubstitutedPrimaryConstructor?.visibility
|
||||
if (primaryConstructorVisibility != null && primaryConstructorVisibility != Visibilities.PUBLIC) {
|
||||
if (primaryConstructorVisibility != null && primaryConstructorVisibility != DescriptorVisibilities.PUBLIC) {
|
||||
trace.report(Errors.NON_PUBLIC_PRIMARY_CONSTRUCTOR_OF_INLINE_CLASS.on(primaryConstructor.visibilityModifier() ?: inlineKeyword))
|
||||
return
|
||||
}
|
||||
@@ -173,4 +173,4 @@ class ReservedMembersAndConstructsForInlineClass : DeclarationChecker {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ import org.jetbrains.kotlin.types.typeUtil.isSubtypeOf
|
||||
|
||||
object KClassWithIncorrectTypeArgumentChecker : DeclarationChecker {
|
||||
override fun check(declaration: KtDeclaration, descriptor: DeclarationDescriptor, context: DeclarationCheckerContext) {
|
||||
if (descriptor !is CallableMemberDescriptor || descriptor.visibility == Visibilities.LOCAL) return
|
||||
if (descriptor !is CallableMemberDescriptor || descriptor.visibility == DescriptorVisibilities.LOCAL) return
|
||||
|
||||
if (declaration !is KtCallableDeclaration || declaration.typeReference != null) return
|
||||
|
||||
|
||||
+2
-2
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility
|
||||
import org.jetbrains.kotlin.descriptors.PropertyAccessorDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.diagnostics.Errors
|
||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||
import org.jetbrains.kotlin.resolve.BindingContext
|
||||
@@ -32,7 +32,7 @@ object PublishedApiUsageChecker {
|
||||
descriptor: DeclarationDescriptor,
|
||||
trace: BindingTrace
|
||||
) {
|
||||
if (descriptor !is DeclarationDescriptorWithVisibility || descriptor.visibility == Visibilities.INTERNAL) return
|
||||
if (descriptor !is DeclarationDescriptorWithVisibility || descriptor.visibility == DescriptorVisibilities.INTERNAL) return
|
||||
// Don't report the diagnostic twice
|
||||
if (descriptor is PropertyAccessorDescriptor) return
|
||||
|
||||
|
||||
+1
-1
@@ -45,7 +45,7 @@ class ResultClassInReturnTypeChecker : DeclarationChecker {
|
||||
}
|
||||
|
||||
val visibility = (declarationDescriptor as DeclarationDescriptorWithVisibility).visibility
|
||||
return !Visibilities.isPrivate(visibility) && visibility != Visibilities.LOCAL
|
||||
return !DescriptorVisibilities.isPrivate(visibility) && visibility != DescriptorVisibilities.LOCAL
|
||||
}
|
||||
|
||||
return true
|
||||
|
||||
@@ -51,8 +51,8 @@ class FunctionImportedFromObject(
|
||||
override fun getOriginal() = _original as FunctionDescriptor
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor?, modality: Modality?, visibility: Visibility?,
|
||||
kind: CallableMemberDescriptor.Kind?, copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor?, modality: Modality?, visibility: DescriptorVisibility?,
|
||||
kind: CallableMemberDescriptor.Kind?, copyOverrides: Boolean
|
||||
): FunctionDescriptor {
|
||||
throw UnsupportedOperationException("copy() should not be called on ${this::class.java.simpleName}, was called for $this")
|
||||
}
|
||||
@@ -71,8 +71,8 @@ class PropertyImportedFromObject(
|
||||
override fun getOriginal() = _original as PropertyDescriptor
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor?, modality: Modality?, visibility: Visibility?,
|
||||
kind: CallableMemberDescriptor.Kind?, copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor?, modality: Modality?, visibility: DescriptorVisibility?,
|
||||
kind: CallableMemberDescriptor.Kind?, copyOverrides: Boolean
|
||||
): FunctionDescriptor {
|
||||
throw UnsupportedOperationException("copy() should not be called on ${this::class.java.simpleName}, was called for $this")
|
||||
}
|
||||
|
||||
+1
-1
@@ -142,7 +142,7 @@ class InlineAnalyzerExtension(
|
||||
return
|
||||
}
|
||||
|
||||
if (Visibilities.isPrivate(callableDescriptor.visibility)) {
|
||||
if (DescriptorVisibilities.isPrivate(callableDescriptor.visibility)) {
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.resolve.inline
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.MemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
|
||||
@@ -31,7 +31,7 @@ fun MemberDescriptor.isInlineOnly(): Boolean =
|
||||
(hasInlineOnlyAnnotation() || DescriptorUtils.getDirectMember(this).hasInlineOnlyAnnotation())
|
||||
|
||||
private fun MemberDescriptor.isPrivateInlineSuspend(): Boolean =
|
||||
this is FunctionDescriptor && isSuspend && isInline && visibility == Visibilities.PRIVATE
|
||||
this is FunctionDescriptor && isSuspend && isInline && visibility == DescriptorVisibilities.PRIVATE
|
||||
|
||||
fun MemberDescriptor.isInlineWithReified(): Boolean =
|
||||
this is CallableMemberDescriptor && (hasReifiedParameters() || DescriptorUtils.getDirectMember(this).hasReifiedParameters())
|
||||
|
||||
@@ -269,7 +269,7 @@ class FileScopeFactory(
|
||||
override fun getContributedClassifier(name: Name, location: LookupLocation): ClassifierDescriptor? {
|
||||
if (name in excludedNames) return null
|
||||
val classifier = scope.getContributedClassifier(name, location) ?: return null
|
||||
val visible = Visibilities.isVisibleIgnoringReceiver(classifier as DeclarationDescriptorWithVisibility, fromDescriptor)
|
||||
val visible = DescriptorVisibilities.isVisibleIgnoringReceiver(classifier as DeclarationDescriptorWithVisibility, fromDescriptor)
|
||||
return classifier.takeIf { filteringKind == if (visible) FilteringKind.VISIBLE_CLASSES else FilteringKind.INVISIBLE_CLASSES }
|
||||
}
|
||||
|
||||
|
||||
@@ -240,7 +240,7 @@ class LazyImportScope(
|
||||
val visibility = (descriptor as DeclarationDescriptorWithVisibility).visibility
|
||||
val includeVisible = filteringKind == FilteringKind.VISIBLE_CLASSES
|
||||
if (!visibility.mustCheckInImports()) return includeVisible
|
||||
return Visibilities.isVisibleIgnoringReceiver(descriptor, components.moduleDescriptor) == includeVisible
|
||||
return DescriptorVisibilities.isVisibleIgnoringReceiver(descriptor, components.moduleDescriptor) == includeVisible
|
||||
}
|
||||
|
||||
override fun getContributedClassifier(name: Name, location: LookupLocation): ClassifierDescriptor? {
|
||||
|
||||
+6
-6
@@ -56,8 +56,8 @@ import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import static kotlin.collections.CollectionsKt.firstOrNull;
|
||||
import static org.jetbrains.kotlin.descriptors.Visibilities.PRIVATE;
|
||||
import static org.jetbrains.kotlin.descriptors.Visibilities.PUBLIC;
|
||||
import static org.jetbrains.kotlin.descriptors.DescriptorVisibilities.PRIVATE;
|
||||
import static org.jetbrains.kotlin.descriptors.DescriptorVisibilities.PUBLIC;
|
||||
import static org.jetbrains.kotlin.diagnostics.Errors.*;
|
||||
import static org.jetbrains.kotlin.lexer.KtTokens.INNER_KEYWORD;
|
||||
import static org.jetbrains.kotlin.resolve.BindingContext.TYPE;
|
||||
@@ -79,7 +79,7 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements ClassDes
|
||||
|
||||
private final LazyClassTypeConstructor typeConstructor;
|
||||
private final NotNullLazyValue<Modality> modality;
|
||||
private final Visibility visibility;
|
||||
private final DescriptorVisibility visibility;
|
||||
private final ClassKind kind;
|
||||
private final boolean isInner;
|
||||
private final boolean isData;
|
||||
@@ -149,7 +149,7 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements ClassDes
|
||||
}
|
||||
|
||||
boolean isLocal = classOrObject != null && KtPsiUtil.isLocal(classOrObject);
|
||||
this.visibility = isLocal ? Visibilities.LOCAL : resolveVisibilityFromModifiers(modifierList, Visibilities.DEFAULT_VISIBILITY);
|
||||
this.visibility = isLocal ? DescriptorVisibilities.LOCAL : resolveVisibilityFromModifiers(modifierList, DescriptorVisibilities.DEFAULT_VISIBILITY);
|
||||
|
||||
this.isInner = modifierList != null && modifierList.hasModifier(INNER_KEYWORD) && !isIllegalInner(this);
|
||||
this.isData = modifierList != null && modifierList.hasModifier(KtTokens.DATA_KEYWORD);
|
||||
@@ -292,7 +292,7 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements ClassDes
|
||||
) {
|
||||
{
|
||||
initialize(null, null, Collections.emptyList(), Collections.emptyList(),
|
||||
null, Modality.FINAL, Visibilities.PRIVATE);
|
||||
null, Modality.FINAL, DescriptorVisibilities.PRIVATE);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -513,7 +513,7 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements ClassDes
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return visibility;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -38,7 +38,7 @@ class LazyTypeAliasDescriptor(
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
sourceElement: SourceElement,
|
||||
visibility: Visibility
|
||||
visibility: DescriptorVisibility
|
||||
) : AbstractTypeAliasDescriptor(containingDeclaration, annotations, name, sourceElement, visibility),
|
||||
TypeAliasDescriptor {
|
||||
override val constructors: Collection<TypeAliasConstructorDescriptor> by storageManager.createLazyValue {
|
||||
@@ -122,7 +122,7 @@ class LazyTypeAliasDescriptor(
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
sourceElement: SourceElement,
|
||||
visibility: Visibility
|
||||
visibility: DescriptorVisibility
|
||||
): LazyTypeAliasDescriptor =
|
||||
LazyTypeAliasDescriptor(
|
||||
storageManager, trace,
|
||||
|
||||
+1
-1
@@ -230,7 +230,7 @@ public class ControlStructureTypingUtils {
|
||||
valueParameters,
|
||||
returnType,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
);
|
||||
return function;
|
||||
}
|
||||
|
||||
+2
-2
@@ -628,7 +628,7 @@ class DoubleColonExpressionResolver(
|
||||
createValueParametersForInvokeInFunctionType(functionDescriptor, type.arguments.dropLast(1)),
|
||||
type.arguments.last().type,
|
||||
Modality.FINAL,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
|
||||
context.trace.record(BindingContext.FUNCTION, expression, functionDescriptor)
|
||||
@@ -826,7 +826,7 @@ class DoubleColonExpressionResolver(
|
||||
): Boolean {
|
||||
val receiver = receiverTypeFor(descriptor, lhs)?.let(::TransientReceiver)
|
||||
val setter = descriptor.setter
|
||||
return descriptor.isVar && (setter == null || Visibilities.isVisible(receiver, setter, scopeOwnerDescriptor))
|
||||
return descriptor.isVar && (setter == null || DescriptorVisibilities.isVisible(receiver, setter, scopeOwnerDescriptor))
|
||||
}
|
||||
|
||||
fun createKCallableTypeForReference(
|
||||
|
||||
+1
-1
@@ -239,7 +239,7 @@ public class ExpressionTypingUtils {
|
||||
|
||||
public static boolean isLocalFunction(@Nullable DeclarationDescriptor descriptor) {
|
||||
if (descriptor != null && descriptor.getClass() == SimpleFunctionDescriptorImpl.class) {
|
||||
return ((SimpleFunctionDescriptorImpl) descriptor).getVisibility() == Visibilities.LOCAL;
|
||||
return ((SimpleFunctionDescriptorImpl) descriptor).getVisibility() == DescriptorVisibilities.LOCAL;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -109,8 +109,8 @@ fun getNonPrivateTraitMembersForDelegation(
|
||||
): CallableMemberDescriptor? {
|
||||
val traitMember = findInterfaceImplementation(descriptor, returnImplNotDelegate)
|
||||
if (traitMember == null ||
|
||||
Visibilities.isPrivate(traitMember.visibility) ||
|
||||
traitMember.visibility == Visibilities.INVISIBLE_FAKE
|
||||
DescriptorVisibilities.isPrivate(traitMember.visibility) ||
|
||||
traitMember.visibility == DescriptorVisibilities.INVISIBLE_FAKE
|
||||
) return null
|
||||
return traitMember
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user