Rename Visibility to DescriptorVisibility
This commit is contained in:
@@ -22,7 +22,7 @@ class CloneableClassScope(
|
||||
SimpleFunctionDescriptorImpl.create(containingClass, Annotations.EMPTY, CLONE_NAME, DECLARATION, SourceElement.NO_SOURCE).apply {
|
||||
initialize(
|
||||
null, containingClass.thisAsReceiverParameter, emptyList(), emptyList(), containingClass.builtIns.anyType,
|
||||
Modality.OPEN, Visibilities.PROTECTED
|
||||
Modality.OPEN, DescriptorVisibilities.PROTECTED
|
||||
)
|
||||
}
|
||||
)
|
||||
|
||||
@@ -198,7 +198,7 @@ open class JvmBuiltInsSettings(
|
||||
cloneFromCloneable: SimpleFunctionDescriptor
|
||||
): SimpleFunctionDescriptor = cloneFromCloneable.newCopyBuilder().apply {
|
||||
setOwner(arrayClassDescriptor)
|
||||
setVisibility(Visibilities.PUBLIC)
|
||||
setVisibility(DescriptorVisibilities.PUBLIC)
|
||||
setReturnType(arrayClassDescriptor.defaultType)
|
||||
setDispatchReceiverParameter(arrayClassDescriptor.thisAsReceiverParameter)
|
||||
}.build()!!
|
||||
|
||||
+17
-17
@@ -22,12 +22,12 @@ import org.jetbrains.kotlin.descriptors.*;
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils;
|
||||
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue;
|
||||
|
||||
public class JavaVisibilities {
|
||||
private JavaVisibilities() {
|
||||
public class JavaDescriptorVisibilities {
|
||||
private JavaDescriptorVisibilities() {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static final Visibility PACKAGE_VISIBILITY = new Visibility("package", false) {
|
||||
public static final DescriptorVisibility PACKAGE_VISIBILITY = new DescriptorVisibility("package", false) {
|
||||
@Override
|
||||
public boolean isVisible(@Nullable ReceiverValue receiver, @NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
return areInSamePackage(what, from);
|
||||
@@ -39,9 +39,9 @@ public class JavaVisibilities {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Integer compareTo(@NotNull Visibility visibility) {
|
||||
protected Integer compareTo(@NotNull DescriptorVisibility visibility) {
|
||||
if (this == visibility) return 0;
|
||||
if (Visibilities.isPrivate(visibility)) return 1;
|
||||
if (DescriptorVisibilities.isPrivate(visibility)) return 1;
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -59,8 +59,8 @@ public class JavaVisibilities {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility normalize() {
|
||||
return Visibilities.PROTECTED;
|
||||
public DescriptorVisibility normalize() {
|
||||
return DescriptorVisibilities.PROTECTED;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@@ -71,7 +71,7 @@ public class JavaVisibilities {
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility PROTECTED_STATIC_VISIBILITY = new Visibility("protected_static", true) {
|
||||
public static final DescriptorVisibility PROTECTED_STATIC_VISIBILITY = new DescriptorVisibility("protected_static", true) {
|
||||
@Override
|
||||
public boolean isVisible(@Nullable ReceiverValue receiver, @NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
return isVisibleForProtectedAndPackage(receiver, what, from);
|
||||
@@ -96,13 +96,13 @@ public class JavaVisibilities {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility normalize() {
|
||||
return Visibilities.PROTECTED;
|
||||
public DescriptorVisibility normalize() {
|
||||
return DescriptorVisibilities.PROTECTED;
|
||||
}
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility PROTECTED_AND_PACKAGE = new Visibility("protected_and_package", true) {
|
||||
public static final DescriptorVisibility PROTECTED_AND_PACKAGE = new DescriptorVisibility("protected_and_package", true) {
|
||||
@Override
|
||||
public boolean isVisible(@Nullable ReceiverValue receiver, @NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
return isVisibleForProtectedAndPackage(receiver, what, from);
|
||||
@@ -114,10 +114,10 @@ public class JavaVisibilities {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Integer compareTo(@NotNull Visibility visibility) {
|
||||
protected Integer compareTo(@NotNull DescriptorVisibility visibility) {
|
||||
if (this == visibility) return 0;
|
||||
if (visibility == Visibilities.INTERNAL) return null;
|
||||
if (Visibilities.isPrivate(visibility)) return 1;
|
||||
if (visibility == DescriptorVisibilities.INTERNAL) return null;
|
||||
if (DescriptorVisibilities.isPrivate(visibility)) return 1;
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -135,8 +135,8 @@ public class JavaVisibilities {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility normalize() {
|
||||
return Visibilities.PROTECTED;
|
||||
public DescriptorVisibility normalize() {
|
||||
return DescriptorVisibilities.PROTECTED;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -149,7 +149,7 @@ public class JavaVisibilities {
|
||||
return true;
|
||||
}
|
||||
|
||||
return Visibilities.PROTECTED.isVisible(receiver, what, from);
|
||||
return DescriptorVisibilities.PROTECTED.isVisible(receiver, what, from);
|
||||
}
|
||||
|
||||
private static boolean areInSamePackage(@NotNull DeclarationDescriptor first, @NotNull DeclarationDescriptor second) {
|
||||
+1
-1
@@ -91,7 +91,7 @@ public class JavaMethodDescriptor extends SimpleFunctionDescriptorImpl implement
|
||||
@NotNull List<ValueParameterDescriptor> unsubstitutedValueParameters,
|
||||
@Nullable KotlinType unsubstitutedReturnType,
|
||||
@Nullable Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
@Nullable Map<? extends UserDataKey<?>, ?> userData
|
||||
) {
|
||||
SimpleFunctionDescriptorImpl descriptor = super.initialize(
|
||||
|
||||
+3
-3
@@ -41,7 +41,7 @@ public class JavaPropertyDescriptor extends PropertyDescriptorImpl implements Ja
|
||||
@NotNull DeclarationDescriptor containingDeclaration,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
boolean isVar,
|
||||
@NotNull Name name,
|
||||
@NotNull SourceElement source,
|
||||
@@ -62,7 +62,7 @@ public class JavaPropertyDescriptor extends PropertyDescriptorImpl implements Ja
|
||||
@NotNull DeclarationDescriptor containingDeclaration,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
boolean isVar,
|
||||
@NotNull Name name,
|
||||
@NotNull SourceElement source,
|
||||
@@ -78,7 +78,7 @@ public class JavaPropertyDescriptor extends PropertyDescriptorImpl implements Ja
|
||||
protected PropertyDescriptorImpl createSubstitutedCopy(
|
||||
@NotNull DeclarationDescriptor newOwner,
|
||||
@NotNull Modality newModality,
|
||||
@NotNull Visibility newVisibility,
|
||||
@NotNull DescriptorVisibility newVisibility,
|
||||
@Nullable PropertyDescriptor original,
|
||||
@NotNull Kind kind,
|
||||
@NotNull Name newName,
|
||||
|
||||
+2
-2
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.descriptors.impl.ClassDescriptorBase
|
||||
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
|
||||
import org.jetbrains.kotlin.load.java.FakePureImplementationsProvider
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.JvmAnnotationNames
|
||||
import org.jetbrains.kotlin.load.java.components.JavaResolverCache
|
||||
import org.jetbrains.kotlin.load.java.components.TypeUsage
|
||||
@@ -90,7 +90,7 @@ class LazyJavaClassDescriptor(
|
||||
// Kotlin considers this "private in package" just as "private" and thinks they are invisible for inheritors,
|
||||
// so their functions are invisible fake which is not true.
|
||||
override fun getVisibility() =
|
||||
if (visibility == Visibilities.PRIVATE && jClass.outerClass == null) JavaVisibilities.PACKAGE_VISIBILITY else visibility
|
||||
if (visibility == DescriptorVisibilities.PRIVATE && jClass.outerClass == null) JavaDescriptorVisibilities.PACKAGE_VISIBILITY else visibility
|
||||
|
||||
override fun isInner() = isInner
|
||||
override fun isData() = false
|
||||
|
||||
+3
-3
@@ -637,10 +637,10 @@ class LazyJavaClassMemberScope(
|
||||
return constructorDescriptor
|
||||
}
|
||||
|
||||
private fun getConstructorVisibility(classDescriptor: ClassDescriptor): Visibility {
|
||||
private fun getConstructorVisibility(classDescriptor: ClassDescriptor): DescriptorVisibility {
|
||||
val visibility = classDescriptor.visibility
|
||||
if (visibility == JavaVisibilities.PROTECTED_STATIC_VISIBILITY) {
|
||||
return JavaVisibilities.PROTECTED_AND_PACKAGE
|
||||
if (visibility == JavaDescriptorVisibilities.PROTECTED_STATIC_VISIBILITY) {
|
||||
return JavaDescriptorVisibilities.PROTECTED_AND_PACKAGE
|
||||
}
|
||||
return visibility
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.load.java.structure
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
@@ -38,7 +38,7 @@ interface JavaModifierListOwner : JavaElement {
|
||||
val isAbstract: Boolean
|
||||
val isStatic: Boolean
|
||||
val isFinal: Boolean
|
||||
val visibility: Visibility
|
||||
val visibility: DescriptorVisibility
|
||||
}
|
||||
|
||||
interface JavaTypeParameterListOwner : JavaElement {
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.types.typeUtil.representativeUpperBound
|
||||
|
||||
fun shouldHideConstructorDueToInlineClassTypeValueParameters(descriptor: CallableMemberDescriptor): Boolean {
|
||||
val constructorDescriptor = descriptor as? ClassConstructorDescriptor ?: return false
|
||||
if (Visibilities.isPrivate(constructorDescriptor.visibility)) return false
|
||||
if (DescriptorVisibilities.isPrivate(constructorDescriptor.visibility)) return false
|
||||
if (constructorDescriptor.constructedClass.isInline) return false
|
||||
if (DescriptorUtils.isSealedClass(constructorDescriptor.constructedClass)) return false
|
||||
|
||||
|
||||
+9
-9
@@ -16,9 +16,9 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.runtime.structure
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.load.java.JavaVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.load.java.JavaDescriptorVisibilities
|
||||
import org.jetbrains.kotlin.load.java.structure.JavaModifierListOwner
|
||||
import java.lang.reflect.Modifier
|
||||
|
||||
@@ -34,15 +34,15 @@ interface ReflectJavaModifierListOwner : JavaModifierListOwner {
|
||||
override val isFinal: Boolean
|
||||
get() = Modifier.isFinal(modifiers)
|
||||
|
||||
override val visibility: Visibility
|
||||
override val visibility: DescriptorVisibility
|
||||
get() = modifiers.let { modifiers ->
|
||||
when {
|
||||
Modifier.isPublic(modifiers) -> Visibilities.PUBLIC
|
||||
Modifier.isPrivate(modifiers) -> Visibilities.PRIVATE
|
||||
Modifier.isPublic(modifiers) -> DescriptorVisibilities.PUBLIC
|
||||
Modifier.isPrivate(modifiers) -> DescriptorVisibilities.PRIVATE
|
||||
Modifier.isProtected(modifiers) ->
|
||||
if (Modifier.isStatic(modifiers)) JavaVisibilities.PROTECTED_STATIC_VISIBILITY
|
||||
else JavaVisibilities.PROTECTED_AND_PACKAGE
|
||||
else -> JavaVisibilities.PACKAGE_VISIBILITY
|
||||
if (Modifier.isStatic(modifiers)) JavaDescriptorVisibilities.PROTECTED_STATIC_VISIBILITY
|
||||
else JavaDescriptorVisibilities.PROTECTED_AND_PACKAGE
|
||||
else -> JavaDescriptorVisibilities.PACKAGE_VISIBILITY
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -75,7 +75,7 @@ class FunctionClassDescriptor(
|
||||
override fun getKind() = ClassKind.INTERFACE
|
||||
override fun getModality() = Modality.ABSTRACT
|
||||
override fun getUnsubstitutedPrimaryConstructor() = null
|
||||
override fun getVisibility() = Visibilities.PUBLIC
|
||||
override fun getVisibility() = DescriptorVisibilities.PUBLIC
|
||||
override fun isCompanionObject() = false
|
||||
override fun isInner() = false
|
||||
override fun isData() = false
|
||||
|
||||
+1
-1
@@ -121,7 +121,7 @@ class FunctionInvokeDescriptor private constructor(
|
||||
.map { createValueParameter(result, it.index, it.value) },
|
||||
typeParameters.last().defaultType,
|
||||
Modality.ABSTRACT,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
)
|
||||
result.setHasSynthesizedParameterNames(true)
|
||||
return result
|
||||
|
||||
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.builtins.StandardNames.COROUTINES_PACKAGE_FQ_NAME_RE
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.SourceElement
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.descriptors.impl.EmptyPackageFragmentDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.impl.MutableClassDescriptor
|
||||
@@ -31,7 +31,7 @@ private val FAKE_CONTINUATION_CLASS_DESCRIPTOR_EXPERIMENTAL =
|
||||
CONTINUATION_INTERFACE_FQ_NAME_EXPERIMENTAL.shortName(), SourceElement.NO_SOURCE, LockBasedStorageManager.NO_LOCKS
|
||||
).apply {
|
||||
modality = Modality.ABSTRACT
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
setTypeParameterDescriptors(
|
||||
TypeParameterDescriptorImpl.createWithDefaultBound(
|
||||
this, Annotations.EMPTY, false, Variance.IN_VARIANCE, Name.identifier("T"), 0, LockBasedStorageManager.NO_LOCKS
|
||||
@@ -47,7 +47,7 @@ private val FAKE_CONTINUATION_CLASS_DESCRIPTOR_RELEASE =
|
||||
CONTINUATION_INTERFACE_FQ_NAME_RELEASE.shortName(), SourceElement.NO_SOURCE, LockBasedStorageManager.NO_LOCKS
|
||||
).apply {
|
||||
modality = Modality.ABSTRACT
|
||||
visibility = Visibilities.PUBLIC
|
||||
visibility = DescriptorVisibilities.PUBLIC
|
||||
setTypeParameterDescriptors(
|
||||
TypeParameterDescriptorImpl.createWithDefaultBound(
|
||||
this, Annotations.EMPTY, false, Variance.IN_VARIANCE, Name.identifier("T"), 0, LockBasedStorageManager.NO_LOCKS
|
||||
|
||||
@@ -55,7 +55,7 @@ public interface CallableMemberDescriptor extends CallableDescriptor, MemberDesc
|
||||
Kind getKind();
|
||||
|
||||
@NotNull
|
||||
CallableMemberDescriptor copy(DeclarationDescriptor newOwner, Modality modality, Visibility visibility, Kind kind, boolean copyOverrides);
|
||||
CallableMemberDescriptor copy(DeclarationDescriptor newOwner, Modality modality, DescriptorVisibility visibility, Kind kind, boolean copyOverrides);
|
||||
|
||||
@NotNull
|
||||
CopyBuilder<? extends CallableMemberDescriptor> newCopyBuilder();
|
||||
@@ -68,7 +68,7 @@ public interface CallableMemberDescriptor extends CallableDescriptor, MemberDesc
|
||||
CopyBuilder<D> setModality(@NotNull Modality modality);
|
||||
|
||||
@NotNull
|
||||
CopyBuilder<D> setVisibility(@NotNull Visibility visibility);
|
||||
CopyBuilder<D> setVisibility(@NotNull DescriptorVisibility visibility);
|
||||
|
||||
@NotNull
|
||||
CopyBuilder<D> setKind(@NotNull Kind kind);
|
||||
|
||||
@@ -27,10 +27,10 @@ interface ClassConstructorDescriptor : ConstructorDescriptor {
|
||||
override fun substitute(substitutor: TypeSubstitutor): ClassConstructorDescriptor?
|
||||
|
||||
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
|
||||
): ClassConstructorDescriptor
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ public interface ClassDescriptor extends ClassifierDescriptorWithTypeParameters,
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
Visibility getVisibility();
|
||||
DescriptorVisibility getVisibility();
|
||||
|
||||
boolean isCompanionObject();
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ public interface ConstructorDescriptor extends FunctionDescriptor {
|
||||
ConstructorDescriptor copy(
|
||||
DeclarationDescriptor newOwner,
|
||||
Modality modality,
|
||||
Visibility visibility,
|
||||
DescriptorVisibility visibility,
|
||||
Kind kind,
|
||||
boolean copyOverrides
|
||||
);
|
||||
|
||||
+1
-1
@@ -20,5 +20,5 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public interface DeclarationDescriptorWithVisibility extends DeclarationDescriptor {
|
||||
@NotNull
|
||||
Visibility getVisibility();
|
||||
DescriptorVisibility getVisibility();
|
||||
}
|
||||
|
||||
+21
-21
@@ -31,9 +31,9 @@ import org.jetbrains.kotlin.utils.CollectionsKt;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class Visibilities {
|
||||
public class DescriptorVisibilities {
|
||||
@NotNull
|
||||
public static final Visibility PRIVATE = new Visibility("private", false) {
|
||||
public static final DescriptorVisibility PRIVATE = new DescriptorVisibility("private", false) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
return true;
|
||||
@@ -102,7 +102,7 @@ public class Visibilities {
|
||||
* }
|
||||
*/
|
||||
@NotNull
|
||||
public static final Visibility PRIVATE_TO_THIS = new Visibility("private_to_this", false) {
|
||||
public static final DescriptorVisibility PRIVATE_TO_THIS = new DescriptorVisibility("private_to_this", false) {
|
||||
@Override
|
||||
public boolean isVisible(@Nullable ReceiverValue thisObject, @NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
if (PRIVATE.isVisible(thisObject, what, from)) {
|
||||
@@ -132,7 +132,7 @@ public class Visibilities {
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility PROTECTED = new Visibility("protected", true) {
|
||||
public static final DescriptorVisibility PROTECTED = new DescriptorVisibility("protected", true) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
return false;
|
||||
@@ -198,7 +198,7 @@ public class Visibilities {
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility INTERNAL = new Visibility("internal", false) {
|
||||
public static final DescriptorVisibility INTERNAL = new DescriptorVisibility("internal", false) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
return true;
|
||||
@@ -220,7 +220,7 @@ public class Visibilities {
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility PUBLIC = new Visibility("public", true) {
|
||||
public static final DescriptorVisibility PUBLIC = new DescriptorVisibility("public", true) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
return false;
|
||||
@@ -233,7 +233,7 @@ public class Visibilities {
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility LOCAL = new Visibility("local", false) {
|
||||
public static final DescriptorVisibility LOCAL = new DescriptorVisibility("local", false) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
return true;
|
||||
@@ -246,7 +246,7 @@ public class Visibilities {
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public static final Visibility INHERITED = new Visibility("inherited", false) {
|
||||
public static final DescriptorVisibility INHERITED = new DescriptorVisibility("inherited", false) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
throw new IllegalStateException("This method shouldn't be invoked for INHERITED visibility");
|
||||
@@ -260,7 +260,7 @@ public class Visibilities {
|
||||
|
||||
/* Visibility for fake override invisible members (they are created for better error reporting) */
|
||||
@NotNull
|
||||
public static final Visibility INVISIBLE_FAKE = new Visibility("invisible_fake", false) {
|
||||
public static final DescriptorVisibility INVISIBLE_FAKE = new DescriptorVisibility("invisible_fake", false) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
return true;
|
||||
@@ -281,7 +281,7 @@ public class Visibilities {
|
||||
// Currently used as default visibility of FunctionDescriptor
|
||||
// It's needed to prevent NPE when requesting non-nullable visibility of descriptor before `initialize` has been called
|
||||
@NotNull
|
||||
public static final Visibility UNKNOWN = new Visibility("unknown", false) {
|
||||
public static final DescriptorVisibility UNKNOWN = new DescriptorVisibility("unknown", false) {
|
||||
@Override
|
||||
public boolean mustCheckInImports() {
|
||||
throw new IllegalStateException("This method shouldn't be invoked for UNKNOWN visibility");
|
||||
@@ -295,10 +295,10 @@ public class Visibilities {
|
||||
}
|
||||
};
|
||||
|
||||
public static final Set<Visibility> INVISIBLE_FROM_OTHER_MODULES =
|
||||
public static final Set<DescriptorVisibility> INVISIBLE_FROM_OTHER_MODULES =
|
||||
Collections.unmodifiableSet(SetsKt.setOf(PRIVATE, PRIVATE_TO_THIS, INTERNAL, LOCAL));
|
||||
|
||||
private Visibilities() {
|
||||
private DescriptorVisibilities() {
|
||||
}
|
||||
|
||||
public static boolean isVisible(@Nullable ReceiverValue receiver, @NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
@@ -306,15 +306,15 @@ public class Visibilities {
|
||||
}
|
||||
|
||||
/**
|
||||
* @see Visibility.isVisible contract
|
||||
* @see DescriptorVisibility.isVisible contract
|
||||
*/
|
||||
public static boolean isVisibleIgnoringReceiver(@NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
return findInvisibleMember(ALWAYS_SUITABLE_RECEIVER, what, from) == null;
|
||||
}
|
||||
|
||||
/**
|
||||
* @see Visibility.isVisible contract
|
||||
* @see Visibilities.RECEIVER_DOES_NOT_EXIST
|
||||
* @see DescriptorVisibility.isVisible contract
|
||||
* @see DescriptorVisibilities.RECEIVER_DOES_NOT_EXIST
|
||||
*/
|
||||
public static boolean isVisibleWithAnyReceiver(@NotNull DeclarationDescriptorWithVisibility what, @NotNull DeclarationDescriptor from) {
|
||||
return findInvisibleMember(IRRELEVANT_RECEIVER, what, from) == null;
|
||||
@@ -353,10 +353,10 @@ public class Visibilities {
|
||||
return null;
|
||||
}
|
||||
|
||||
private static final Map<Visibility, Integer> ORDERED_VISIBILITIES;
|
||||
private static final Map<DescriptorVisibility, Integer> ORDERED_VISIBILITIES;
|
||||
|
||||
static {
|
||||
Map<Visibility, Integer> visibilities = CollectionsKt.newHashMapWithExpectedSize(4);
|
||||
Map<DescriptorVisibility, Integer> visibilities = CollectionsKt.newHashMapWithExpectedSize(4);
|
||||
visibilities.put(PRIVATE_TO_THIS, 0);
|
||||
visibilities.put(PRIVATE, 0);
|
||||
visibilities.put(INTERNAL, 1);
|
||||
@@ -367,7 +367,7 @@ public class Visibilities {
|
||||
|
||||
/*package*/
|
||||
@Nullable
|
||||
static Integer compareLocal(@NotNull Visibility first, @NotNull Visibility second) {
|
||||
static Integer compareLocal(@NotNull DescriptorVisibility first, @NotNull DescriptorVisibility second) {
|
||||
if (first == second) return 0;
|
||||
Integer firstIndex = ORDERED_VISIBILITIES.get(first);
|
||||
Integer secondIndex = ORDERED_VISIBILITIES.get(second);
|
||||
@@ -378,7 +378,7 @@ public class Visibilities {
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static Integer compare(@NotNull Visibility first, @NotNull Visibility second) {
|
||||
public static Integer compare(@NotNull DescriptorVisibility first, @NotNull DescriptorVisibility second) {
|
||||
Integer result = first.compareTo(second);
|
||||
if (result != null) {
|
||||
return result;
|
||||
@@ -390,7 +390,7 @@ public class Visibilities {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static final Visibility DEFAULT_VISIBILITY = PUBLIC;
|
||||
public static final DescriptorVisibility DEFAULT_VISIBILITY = PUBLIC;
|
||||
|
||||
/**
|
||||
* This value should be used for receiverValue parameter of Visibility.isVisible
|
||||
@@ -462,7 +462,7 @@ public class Visibilities {
|
||||
}
|
||||
};
|
||||
|
||||
public static boolean isPrivate(@NotNull Visibility visibility) {
|
||||
public static boolean isPrivate(@NotNull DescriptorVisibility visibility) {
|
||||
return visibility == PRIVATE || visibility == PRIVATE_TO_THIS;
|
||||
}
|
||||
|
||||
+4
-4
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.descriptors
|
||||
|
||||
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue
|
||||
|
||||
abstract class Visibility protected constructor(
|
||||
abstract class DescriptorVisibility protected constructor(
|
||||
val name: String,
|
||||
val isPublicAPI: Boolean
|
||||
) {
|
||||
@@ -52,8 +52,8 @@ abstract class Visibility protected constructor(
|
||||
/**
|
||||
* @return null if the answer is unknown
|
||||
*/
|
||||
protected open fun compareTo(visibility: Visibility): Int? {
|
||||
return Visibilities.compareLocal(this, visibility)
|
||||
protected open fun compareTo(visibility: DescriptorVisibility): Int? {
|
||||
return DescriptorVisibilities.compareLocal(this, visibility)
|
||||
}
|
||||
|
||||
// internal representation for descriptors
|
||||
@@ -66,7 +66,7 @@ abstract class Visibility protected constructor(
|
||||
|
||||
final override fun toString() = internalDisplayName
|
||||
|
||||
open fun normalize(): Visibility = this
|
||||
open fun normalize(): DescriptorVisibility = this
|
||||
|
||||
// Should be overloaded in Java visibilities
|
||||
open fun customEffectiveVisibility(): EffectiveVisibility? = null
|
||||
@@ -41,7 +41,7 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
override fun relation(other: EffectiveVisibility): Permissiveness =
|
||||
if (this == other || Local == other) Permissiveness.SAME else Permissiveness.LESS
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.PRIVATE
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
// Effectively same as Private
|
||||
@@ -49,14 +49,14 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
override fun relation(other: EffectiveVisibility): Permissiveness =
|
||||
if (this == other || Private == other) Permissiveness.SAME else Permissiveness.LESS
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.LOCAL
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.LOCAL
|
||||
}
|
||||
|
||||
object Public : EffectiveVisibility("public", publicApi = true) {
|
||||
override fun relation(other: EffectiveVisibility): Permissiveness =
|
||||
if (this == other) Permissiveness.SAME else Permissiveness.MORE
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.PUBLIC
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PUBLIC
|
||||
}
|
||||
|
||||
abstract class InternalOrPackage protected constructor(internal: Boolean) : EffectiveVisibility(
|
||||
@@ -78,11 +78,11 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
}
|
||||
|
||||
object Internal : InternalOrPackage(true) {
|
||||
override fun toVisibility(): Visibility = Visibilities.INTERNAL
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.INTERNAL
|
||||
}
|
||||
|
||||
object PackagePrivate : InternalOrPackage(false) {
|
||||
override fun toVisibility(): Visibility = Visibilities.PRIVATE
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
class Protected(
|
||||
@@ -123,7 +123,7 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
is InternalOrPackage -> InternalProtected(containerTypeConstructor, typeContext)
|
||||
}
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.PROTECTED
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PROTECTED
|
||||
}
|
||||
|
||||
// Lower bound for all protected visibilities
|
||||
@@ -141,7 +141,7 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
is InternalOrPackage, is InternalProtected -> InternalProtectedBound
|
||||
}
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.PROTECTED
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PROTECTED
|
||||
}
|
||||
|
||||
// Lower bound for internal and protected(C)
|
||||
@@ -179,7 +179,7 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
ProtectedBound -> InternalProtectedBound
|
||||
}
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.PRIVATE
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
// Lower bound for internal and protected lower bound
|
||||
@@ -190,7 +190,7 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
InternalProtectedBound -> Permissiveness.SAME
|
||||
}
|
||||
|
||||
override fun toVisibility(): Visibility = Visibilities.PRIVATE
|
||||
override fun toVisibility(): DescriptorVisibility = DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
enum class Permissiveness {
|
||||
@@ -202,7 +202,7 @@ sealed class EffectiveVisibility(val name: String, val publicApi: Boolean = fals
|
||||
|
||||
abstract fun relation(other: EffectiveVisibility): Permissiveness
|
||||
|
||||
abstract fun toVisibility(): Visibility
|
||||
abstract fun toVisibility(): DescriptorVisibility
|
||||
|
||||
internal open fun lowerBound(other: EffectiveVisibility) = when (relation(other)) {
|
||||
Permissiveness.SAME, Permissiveness.LESS -> this
|
||||
|
||||
@@ -9,25 +9,25 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.isPublishedApi
|
||||
import org.jetbrains.kotlin.types.KotlinType
|
||||
import org.jetbrains.kotlin.types.checker.ClassicTypeCheckerContext
|
||||
|
||||
fun Visibility.effectiveVisibility(
|
||||
fun DescriptorVisibility.effectiveVisibility(
|
||||
descriptor: DeclarationDescriptor,
|
||||
checkPublishedApi: Boolean = false
|
||||
): EffectiveVisibility {
|
||||
return customEffectiveVisibility() ?: normalize().forVisibility(descriptor, checkPublishedApi)
|
||||
}
|
||||
|
||||
private fun Visibility.forVisibility(descriptor: DeclarationDescriptor, checkPublishedApi: Boolean = false): EffectiveVisibility =
|
||||
private fun DescriptorVisibility.forVisibility(descriptor: DeclarationDescriptor, checkPublishedApi: Boolean = false): EffectiveVisibility =
|
||||
when (this) {
|
||||
Visibilities.PRIVATE, Visibilities.PRIVATE_TO_THIS, Visibilities.INVISIBLE_FAKE -> EffectiveVisibility.Private
|
||||
Visibilities.PROTECTED -> EffectiveVisibility.Protected(
|
||||
DescriptorVisibilities.PRIVATE, DescriptorVisibilities.PRIVATE_TO_THIS, DescriptorVisibilities.INVISIBLE_FAKE -> EffectiveVisibility.Private
|
||||
DescriptorVisibilities.PROTECTED -> EffectiveVisibility.Protected(
|
||||
(descriptor.containingDeclaration as? ClassDescriptor)?.defaultType?.constructor,
|
||||
ClassicTypeCheckerContext(errorTypeEqualsToAnything = false)
|
||||
)
|
||||
Visibilities.INTERNAL -> if (!checkPublishedApi ||
|
||||
DescriptorVisibilities.INTERNAL -> if (!checkPublishedApi ||
|
||||
!descriptor.isPublishedApi()
|
||||
) EffectiveVisibility.Internal else EffectiveVisibility.Public
|
||||
Visibilities.PUBLIC -> EffectiveVisibility.Public
|
||||
Visibilities.LOCAL -> EffectiveVisibility.Local
|
||||
DescriptorVisibilities.PUBLIC -> EffectiveVisibility.Public
|
||||
DescriptorVisibilities.LOCAL -> EffectiveVisibility.Local
|
||||
// NB: visibility must be already normalized here, so e.g. no JavaVisibilities are possible at this point
|
||||
else -> throw AssertionError("Visibility $name is not allowed in forVisibility")
|
||||
}
|
||||
@@ -81,7 +81,7 @@ private fun Set<DescriptorWithRelation>.leastPermissive(base: EffectiveVisibilit
|
||||
fun KotlinType.leastPermissiveDescriptor(base: EffectiveVisibility) = dependentDescriptors().leastPermissive(base)
|
||||
|
||||
fun DeclarationDescriptorWithVisibility.effectiveVisibility(
|
||||
visibility: Visibility = this.visibility, checkPublishedApi: Boolean = false
|
||||
visibility: DescriptorVisibility = this.visibility, checkPublishedApi: Boolean = false
|
||||
): EffectiveVisibility =
|
||||
lowerBound(
|
||||
visibility.effectiveVisibility(this, checkPublishedApi),
|
||||
|
||||
@@ -54,7 +54,7 @@ public interface FunctionDescriptor extends CallableMemberDescriptor {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
FunctionDescriptor copy(DeclarationDescriptor newOwner, Modality modality, Visibility visibility, Kind kind, boolean copyOverrides);
|
||||
FunctionDescriptor copy(DeclarationDescriptor newOwner, Modality modality, DescriptorVisibility visibility, Kind kind, boolean copyOverrides);
|
||||
|
||||
boolean isOperator();
|
||||
|
||||
@@ -83,7 +83,7 @@ public interface FunctionDescriptor extends CallableMemberDescriptor {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
CopyBuilder<D> setVisibility(@NotNull Visibility visibility);
|
||||
CopyBuilder<D> setVisibility(@NotNull DescriptorVisibility visibility);
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
|
||||
@@ -24,7 +24,7 @@ public interface MemberDescriptor extends DeclarationDescriptorNonRoot, Declarat
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
Visibility getVisibility();
|
||||
DescriptorVisibility getVisibility();
|
||||
|
||||
boolean isExpect();
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.descriptors
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
|
||||
val CallableMemberDescriptor.isOverridable: Boolean
|
||||
get() = visibility != Visibilities.PRIVATE
|
||||
get() = visibility != DescriptorVisibilities.PRIVATE
|
||||
&& modality != Modality.FINAL
|
||||
&& (containingDeclaration as? ClassDescriptor)?.isFinalClass != true
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ class NotFoundClasses(private val storageManager: StorageManager, private val mo
|
||||
|
||||
override fun getKind() = ClassKind.CLASS
|
||||
override fun getModality() = Modality.FINAL
|
||||
override fun getVisibility() = Visibilities.PUBLIC
|
||||
override fun getVisibility() = DescriptorVisibilities.PUBLIC
|
||||
override fun getTypeConstructor() = typeConstructor
|
||||
override fun getDeclaredTypeParameters() = declaredTypeParameters
|
||||
override fun isInner() = isInner
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ public interface PropertyAccessorDescriptor extends VariableAccessorDescriptor {
|
||||
PropertyAccessorDescriptor copy(
|
||||
DeclarationDescriptor newOwner,
|
||||
Modality modality,
|
||||
Visibility visibility,
|
||||
DescriptorVisibility visibility,
|
||||
Kind kind,
|
||||
boolean copyOverrides
|
||||
);
|
||||
|
||||
@@ -17,9 +17,6 @@
|
||||
package org.jetbrains.kotlin.descriptors;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.kotlin.name.Name;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Simple functions are the ones with 'fun' keyword and function literals
|
||||
@@ -27,7 +24,7 @@ import java.util.List;
|
||||
public interface SimpleFunctionDescriptor extends FunctionDescriptor {
|
||||
@NotNull
|
||||
@Override
|
||||
SimpleFunctionDescriptor copy(DeclarationDescriptor newOwner, Modality modality, Visibility visibility, Kind kind, boolean copyOverrides);
|
||||
SimpleFunctionDescriptor copy(DeclarationDescriptor newOwner, Modality modality, DescriptorVisibility visibility, Kind kind, boolean copyOverrides);
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
|
||||
+2
-2
@@ -120,8 +120,8 @@ public abstract class AbstractReceiverParameterDescriptor extends DeclarationDes
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
return Visibilities.LOCAL;
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return DescriptorVisibilities.LOCAL;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
+1
-2
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.descriptorUtil.builtIns
|
||||
import org.jetbrains.kotlin.resolve.descriptorUtil.classId
|
||||
import org.jetbrains.kotlin.resolve.scopes.MemberScope
|
||||
import org.jetbrains.kotlin.storage.StorageManager
|
||||
import org.jetbrains.kotlin.types.*
|
||||
@@ -33,7 +32,7 @@ abstract class AbstractTypeAliasDescriptor(
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
sourceElement: SourceElement,
|
||||
private val visibilityImpl: Visibility
|
||||
private val visibilityImpl: DescriptorVisibility
|
||||
) : DeclarationDescriptorNonRootImpl(containingDeclaration, annotations, name, sourceElement),
|
||||
TypeAliasDescriptor {
|
||||
|
||||
|
||||
+3
-3
@@ -67,7 +67,7 @@ public class ClassConstructorDescriptorImpl extends FunctionDescriptorImpl imple
|
||||
|
||||
public ClassConstructorDescriptorImpl initialize(
|
||||
@NotNull List<ValueParameterDescriptor> unsubstitutedValueParameters,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
@NotNull List<TypeParameterDescriptor> typeParameterDescriptors
|
||||
) {
|
||||
super.initialize(
|
||||
@@ -80,7 +80,7 @@ public class ClassConstructorDescriptorImpl extends FunctionDescriptorImpl imple
|
||||
|
||||
public ClassConstructorDescriptorImpl initialize(
|
||||
@NotNull List<ValueParameterDescriptor> unsubstitutedValueParameters,
|
||||
@NotNull Visibility visibility
|
||||
@NotNull DescriptorVisibility visibility
|
||||
) {
|
||||
initialize(unsubstitutedValueParameters, visibility, getContainingDeclaration().getDeclaredTypeParameters());
|
||||
return this;
|
||||
@@ -175,7 +175,7 @@ public class ClassConstructorDescriptorImpl extends FunctionDescriptorImpl imple
|
||||
public ClassConstructorDescriptor copy(
|
||||
DeclarationDescriptor newOwner,
|
||||
Modality modality,
|
||||
Visibility visibility,
|
||||
DescriptorVisibility visibility,
|
||||
Kind kind,
|
||||
boolean copyOverrides
|
||||
) {
|
||||
|
||||
@@ -11,7 +11,6 @@ import org.jetbrains.kotlin.descriptors.*;
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations;
|
||||
import org.jetbrains.kotlin.name.Name;
|
||||
import org.jetbrains.kotlin.resolve.scopes.MemberScope;
|
||||
import org.jetbrains.kotlin.storage.LockBasedStorageManager;
|
||||
import org.jetbrains.kotlin.storage.StorageManager;
|
||||
import org.jetbrains.kotlin.types.ClassTypeConstructorImpl;
|
||||
import org.jetbrains.kotlin.types.KotlinType;
|
||||
@@ -130,8 +129,8 @@ public class ClassDescriptorImpl extends ClassDescriptorBase {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
return Visibilities.PUBLIC;
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return DescriptorVisibilities.PUBLIC;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+2
-2
@@ -119,8 +119,8 @@ public class EnumEntrySyntheticClassDescriptor extends ClassDescriptorBase {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
return Visibilities.PUBLIC;
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return DescriptorVisibilities.PUBLIC;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+9
-8
@@ -26,7 +26,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
private ReceiverParameterDescriptor extensionReceiverParameter;
|
||||
private ReceiverParameterDescriptor dispatchReceiverParameter;
|
||||
private Modality modality;
|
||||
private Visibility visibility = Visibilities.UNKNOWN;
|
||||
private DescriptorVisibility visibility = DescriptorVisibilities.UNKNOWN;
|
||||
private boolean isOperator = false;
|
||||
private boolean isInfix = false;
|
||||
private boolean isExternal = false;
|
||||
@@ -72,7 +72,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
@NotNull List<ValueParameterDescriptor> unsubstitutedValueParameters,
|
||||
@Nullable KotlinType unsubstitutedReturnType,
|
||||
@Nullable Modality modality,
|
||||
@NotNull Visibility visibility
|
||||
@NotNull DescriptorVisibility visibility
|
||||
) {
|
||||
this.typeParameters = CollectionsKt.toList(typeParameters);
|
||||
this.unsubstitutedValueParameters = CollectionsKt.toList(unsubstitutedValueParameters);
|
||||
@@ -101,7 +101,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
return this;
|
||||
}
|
||||
|
||||
public void setVisibility(@NotNull Visibility visibility) {
|
||||
public void setVisibility(@NotNull DescriptorVisibility visibility) {
|
||||
this.visibility = visibility;
|
||||
}
|
||||
|
||||
@@ -204,7 +204,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return visibility;
|
||||
}
|
||||
|
||||
@@ -356,7 +356,8 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
protected @NotNull TypeSubstitution substitution;
|
||||
protected @NotNull DeclarationDescriptor newOwner;
|
||||
protected @NotNull Modality newModality;
|
||||
protected @NotNull Visibility newVisibility;
|
||||
protected @NotNull
|
||||
DescriptorVisibility newVisibility;
|
||||
protected @Nullable FunctionDescriptor original = null;
|
||||
protected @NotNull Kind kind;
|
||||
protected @NotNull List<ValueParameterDescriptor> newValueParameterDescriptors;
|
||||
@@ -380,7 +381,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
@NotNull TypeSubstitution substitution,
|
||||
@NotNull DeclarationDescriptor newOwner,
|
||||
@NotNull Modality newModality,
|
||||
@NotNull Visibility newVisibility,
|
||||
@NotNull DescriptorVisibility newVisibility,
|
||||
@NotNull Kind kind,
|
||||
@NotNull List<ValueParameterDescriptor> newValueParameterDescriptors,
|
||||
@Nullable ReceiverParameterDescriptor newExtensionReceiverParameter,
|
||||
@@ -414,7 +415,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public CopyConfiguration setVisibility(@NotNull Visibility visibility) {
|
||||
public CopyConfiguration setVisibility(@NotNull DescriptorVisibility visibility) {
|
||||
this.newVisibility = visibility;
|
||||
return this;
|
||||
}
|
||||
@@ -746,7 +747,7 @@ public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRoo
|
||||
public FunctionDescriptor copy(
|
||||
DeclarationDescriptor newOwner,
|
||||
Modality modality,
|
||||
Visibility visibility,
|
||||
DescriptorVisibility visibility,
|
||||
Kind kind,
|
||||
boolean copyOverrides
|
||||
) {
|
||||
|
||||
+1
-1
@@ -224,7 +224,7 @@ public class LazySubstitutingClassDescriptor extends ModuleAwareClassDescriptor
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return original.getVisibility();
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -22,7 +22,7 @@ public class MutableClassDescriptor extends ClassDescriptorBase {
|
||||
private final boolean isInner;
|
||||
|
||||
private Modality modality;
|
||||
private Visibility visibility;
|
||||
private DescriptorVisibility visibility;
|
||||
private TypeConstructor typeConstructor;
|
||||
private List<TypeParameterDescriptor> typeParameters;
|
||||
private final Collection<KotlinType> supertypes = new ArrayList<KotlinType>();
|
||||
@@ -74,13 +74,13 @@ public class MutableClassDescriptor extends ClassDescriptorBase {
|
||||
return kind;
|
||||
}
|
||||
|
||||
public void setVisibility(@NotNull Visibility visibility) {
|
||||
public void setVisibility(@NotNull DescriptorVisibility visibility) {
|
||||
this.visibility = visibility;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return visibility;
|
||||
}
|
||||
|
||||
|
||||
+5
-5
@@ -35,13 +35,13 @@ public abstract class PropertyAccessorDescriptorImpl extends DeclarationDescript
|
||||
private final PropertyDescriptor correspondingProperty;
|
||||
private final boolean isInline;
|
||||
private final Kind kind;
|
||||
private Visibility visibility;
|
||||
private DescriptorVisibility visibility;
|
||||
@Nullable
|
||||
private FunctionDescriptor initialSignatureDescriptor = null;
|
||||
|
||||
public PropertyAccessorDescriptorImpl(
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
@NotNull PropertyDescriptor correspondingProperty,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Name name,
|
||||
@@ -146,11 +146,11 @@ public abstract class PropertyAccessorDescriptorImpl extends DeclarationDescript
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return visibility;
|
||||
}
|
||||
|
||||
public void setVisibility(Visibility visibility) {
|
||||
public void setVisibility(DescriptorVisibility visibility) {
|
||||
this.visibility = visibility;
|
||||
}
|
||||
|
||||
@@ -189,7 +189,7 @@ public abstract class PropertyAccessorDescriptorImpl extends DeclarationDescript
|
||||
public PropertyAccessorDescriptor copy(
|
||||
DeclarationDescriptor newOwner,
|
||||
Modality modality,
|
||||
Visibility visibility,
|
||||
DescriptorVisibility visibility,
|
||||
Kind kind,
|
||||
boolean copyOverrides
|
||||
) {
|
||||
|
||||
+12
-12
@@ -36,7 +36,7 @@ import static org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt.getB
|
||||
@SuppressWarnings("deprecation")
|
||||
public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImpl implements PropertyDescriptor {
|
||||
private final Modality modality;
|
||||
private Visibility visibility;
|
||||
private DescriptorVisibility visibility;
|
||||
private Collection<? extends PropertyDescriptor> overriddenProperties = null;
|
||||
private final PropertyDescriptor original;
|
||||
private final Kind kind;
|
||||
@@ -61,7 +61,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
@Nullable PropertyDescriptor original,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
boolean isVar,
|
||||
@NotNull Name name,
|
||||
@NotNull Kind kind,
|
||||
@@ -91,7 +91,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
@NotNull DeclarationDescriptor containingDeclaration,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
boolean isVar,
|
||||
@NotNull Name name,
|
||||
@NotNull Kind kind,
|
||||
@@ -145,7 +145,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
this.setterProjectedOut = setterProjectedOut;
|
||||
}
|
||||
|
||||
public void setVisibility(@NotNull Visibility visibility) {
|
||||
public void setVisibility(@NotNull DescriptorVisibility visibility) {
|
||||
this.visibility = visibility;
|
||||
}
|
||||
|
||||
@@ -186,7 +186,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Visibility getVisibility() {
|
||||
public DescriptorVisibility getVisibility() {
|
||||
return visibility;
|
||||
}
|
||||
|
||||
@@ -255,7 +255,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
public class CopyConfiguration implements PropertyDescriptor.CopyBuilder<PropertyDescriptor> {
|
||||
private DeclarationDescriptor owner = getContainingDeclaration();
|
||||
private Modality modality = getModality();
|
||||
private Visibility visibility = getVisibility();
|
||||
private DescriptorVisibility visibility = getVisibility();
|
||||
private PropertyDescriptor original = null;
|
||||
private boolean preserveSourceElement = false;
|
||||
private Kind kind = getKind();
|
||||
@@ -303,7 +303,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public CopyConfiguration setVisibility(@NotNull Visibility visibility) {
|
||||
public CopyConfiguration setVisibility(@NotNull DescriptorVisibility visibility) {
|
||||
this.visibility = visibility;
|
||||
return this;
|
||||
}
|
||||
@@ -492,9 +492,9 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
return substitutedDescriptor;
|
||||
}
|
||||
|
||||
private static Visibility normalizeVisibility(Visibility prev, Kind kind) {
|
||||
if (kind == Kind.FAKE_OVERRIDE && Visibilities.isPrivate(prev.normalize())) {
|
||||
return Visibilities.INVISIBLE_FAKE;
|
||||
private static DescriptorVisibility normalizeVisibility(DescriptorVisibility prev, Kind kind) {
|
||||
if (kind == Kind.FAKE_OVERRIDE && DescriptorVisibilities.isPrivate(prev.normalize())) {
|
||||
return DescriptorVisibilities.INVISIBLE_FAKE;
|
||||
}
|
||||
return prev;
|
||||
}
|
||||
@@ -512,7 +512,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
protected PropertyDescriptorImpl createSubstitutedCopy(
|
||||
@NotNull DeclarationDescriptor newOwner,
|
||||
@NotNull Modality newModality,
|
||||
@NotNull Visibility newVisibility,
|
||||
@NotNull DescriptorVisibility newVisibility,
|
||||
@Nullable PropertyDescriptor original,
|
||||
@NotNull Kind kind,
|
||||
@NotNull Name newName,
|
||||
@@ -577,7 +577,7 @@ public class PropertyDescriptorImpl extends VariableDescriptorWithInitializerImp
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public PropertyDescriptor copy(DeclarationDescriptor newOwner, Modality modality, Visibility visibility, Kind kind, boolean copyOverrides) {
|
||||
public PropertyDescriptor copy(DeclarationDescriptor newOwner, Modality modality, DescriptorVisibility visibility, Kind kind, boolean copyOverrides) {
|
||||
//noinspection ConstantConditions
|
||||
return newCopyBuilder()
|
||||
.setOwner(newOwner)
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ public class PropertyGetterDescriptorImpl extends PropertyAccessorDescriptorImpl
|
||||
@NotNull PropertyDescriptor correspondingProperty,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
boolean isDefault,
|
||||
boolean isExternal,
|
||||
boolean isInline,
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ public class PropertySetterDescriptorImpl extends PropertyAccessorDescriptorImpl
|
||||
@NotNull PropertyDescriptor correspondingProperty,
|
||||
@NotNull Annotations annotations,
|
||||
@NotNull Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
boolean isDefault,
|
||||
boolean isExternal,
|
||||
boolean isInline,
|
||||
|
||||
+3
-3
@@ -59,7 +59,7 @@ public class SimpleFunctionDescriptorImpl extends FunctionDescriptorImpl impleme
|
||||
@NotNull List<ValueParameterDescriptor> unsubstitutedValueParameters,
|
||||
@Nullable KotlinType unsubstitutedReturnType,
|
||||
@Nullable Modality modality,
|
||||
@NotNull Visibility visibility
|
||||
@NotNull DescriptorVisibility visibility
|
||||
) {
|
||||
return initialize(extensionReceiverParameter, dispatchReceiverParameter, typeParameters, unsubstitutedValueParameters,
|
||||
unsubstitutedReturnType, modality, visibility, null);
|
||||
@@ -73,7 +73,7 @@ public class SimpleFunctionDescriptorImpl extends FunctionDescriptorImpl impleme
|
||||
@NotNull List<ValueParameterDescriptor> unsubstitutedValueParameters,
|
||||
@Nullable KotlinType unsubstitutedReturnType,
|
||||
@Nullable Modality modality,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
@Nullable Map<? extends UserDataKey<?>, ?> userData
|
||||
) {
|
||||
super.initialize(extensionReceiverParameter, dispatchReceiverParameter, typeParameters, unsubstitutedValueParameters,
|
||||
@@ -117,7 +117,7 @@ public class SimpleFunctionDescriptorImpl extends FunctionDescriptorImpl impleme
|
||||
public SimpleFunctionDescriptor copy(
|
||||
DeclarationDescriptor newOwner,
|
||||
Modality modality,
|
||||
Visibility visibility,
|
||||
DescriptorVisibility visibility,
|
||||
Kind kind,
|
||||
boolean copyOverrides
|
||||
) {
|
||||
|
||||
+10
-10
@@ -39,11 +39,11 @@ interface TypeAliasConstructorDescriptor : ConstructorDescriptor, DescriptorDeri
|
||||
val withDispatchReceiver: TypeAliasConstructorDescriptor?
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor,
|
||||
modality: Modality,
|
||||
visibility: Visibility,
|
||||
kind: Kind,
|
||||
copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor,
|
||||
modality: Modality,
|
||||
visibility: DescriptorVisibility,
|
||||
kind: Kind,
|
||||
copyOverrides: Boolean
|
||||
): TypeAliasConstructorDescriptor
|
||||
}
|
||||
|
||||
@@ -128,11 +128,11 @@ class TypeAliasConstructorDescriptorImpl private constructor(
|
||||
}
|
||||
|
||||
override fun copy(
|
||||
newOwner: DeclarationDescriptor,
|
||||
modality: Modality,
|
||||
visibility: Visibility,
|
||||
kind: Kind,
|
||||
copyOverrides: Boolean
|
||||
newOwner: DeclarationDescriptor,
|
||||
modality: Modality,
|
||||
visibility: DescriptorVisibility,
|
||||
kind: Kind,
|
||||
copyOverrides: Boolean
|
||||
): TypeAliasConstructorDescriptor =
|
||||
newCopyBuilder()
|
||||
.setOwner(newOwner)
|
||||
|
||||
+1
-1
@@ -120,7 +120,7 @@ open class ValueParameterDescriptorImpl(
|
||||
)
|
||||
}
|
||||
|
||||
override fun getVisibility() = Visibilities.LOCAL
|
||||
override fun getVisibility() = DescriptorVisibilities.LOCAL
|
||||
|
||||
override fun getOverriddenDescriptors(): Collection<ValueParameterDescriptor> {
|
||||
return containingDeclaration.overriddenDescriptors.map {
|
||||
|
||||
@@ -480,14 +480,14 @@ internal class DescriptorRendererImpl(
|
||||
}
|
||||
}
|
||||
|
||||
private fun renderVisibility(visibility: Visibility, builder: StringBuilder): Boolean {
|
||||
private fun renderVisibility(visibility: DescriptorVisibility, builder: StringBuilder): Boolean {
|
||||
@Suppress("NAME_SHADOWING")
|
||||
var visibility = visibility
|
||||
if (DescriptorRendererModifier.VISIBILITY !in modifiers) return false
|
||||
if (normalizedVisibilities) {
|
||||
visibility = visibility.normalize()
|
||||
}
|
||||
if (!renderDefaultVisibility && visibility == Visibilities.DEFAULT_VISIBILITY) return false
|
||||
if (!renderDefaultVisibility && visibility == DescriptorVisibilities.DEFAULT_VISIBILITY) return false
|
||||
builder.append(renderKeyword(visibility.internalDisplayName)).append(" ")
|
||||
return true
|
||||
}
|
||||
@@ -506,7 +506,7 @@ internal class DescriptorRendererImpl(
|
||||
if (this.overriddenDescriptors.isNotEmpty()) {
|
||||
if (containingClassDescriptor.modality != Modality.FINAL) return Modality.OPEN
|
||||
}
|
||||
return if (containingClassDescriptor.kind == ClassKind.INTERFACE && this.visibility != Visibilities.PRIVATE) {
|
||||
return if (containingClassDescriptor.kind == ClassKind.INTERFACE && this.visibility != DescriptorVisibilities.PRIVATE) {
|
||||
if (this.modality == Modality.ABSTRACT) Modality.ABSTRACT else Modality.OPEN
|
||||
} else
|
||||
Modality.FINAL
|
||||
|
||||
@@ -78,7 +78,7 @@ public class DescriptorFactory {
|
||||
boolean isDefault,
|
||||
boolean isExternal,
|
||||
boolean isInline,
|
||||
@NotNull Visibility visibility,
|
||||
@NotNull DescriptorVisibility visibility,
|
||||
@NotNull SourceElement sourceElement
|
||||
) {
|
||||
PropertySetterDescriptorImpl setterDescriptor = new PropertySetterDescriptorImpl(
|
||||
@@ -141,7 +141,7 @@ public class DescriptorFactory {
|
||||
return values.initialize(null, null, Collections.<TypeParameterDescriptor>emptyList(),
|
||||
Collections.<ValueParameterDescriptor>emptyList(),
|
||||
getBuiltIns(enumClass).getArrayType(Variance.INVARIANT, enumClass.getDefaultType()),
|
||||
Modality.FINAL, Visibilities.PUBLIC);
|
||||
Modality.FINAL, DescriptorVisibilities.PUBLIC);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -159,7 +159,7 @@ public class DescriptorFactory {
|
||||
);
|
||||
return valueOf.initialize(null, null, Collections.<TypeParameterDescriptor>emptyList(),
|
||||
Collections.singletonList(parameterDescriptor), enumClass.getDefaultType(),
|
||||
Modality.FINAL, Visibilities.PUBLIC);
|
||||
Modality.FINAL, DescriptorVisibilities.PUBLIC);
|
||||
}
|
||||
|
||||
public static boolean isEnumValuesMethod(@NotNull FunctionDescriptor descriptor) {
|
||||
|
||||
@@ -65,7 +65,7 @@ public class DescriptorUtils {
|
||||
|
||||
public static boolean isDescriptorWithLocalVisibility(DeclarationDescriptor current) {
|
||||
return current instanceof DeclarationDescriptorWithVisibility &&
|
||||
((DeclarationDescriptorWithVisibility) current).getVisibility() == Visibilities.LOCAL;
|
||||
((DeclarationDescriptorWithVisibility) current).getVisibility() == DescriptorVisibilities.LOCAL;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -380,16 +380,16 @@ public class DescriptorUtils {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static Visibility getDefaultConstructorVisibility(@NotNull ClassDescriptor classDescriptor) {
|
||||
public static DescriptorVisibility getDefaultConstructorVisibility(@NotNull ClassDescriptor classDescriptor) {
|
||||
ClassKind classKind = classDescriptor.getKind();
|
||||
if (classKind == ClassKind.ENUM_CLASS || classKind.isSingleton() || isSealedClass(classDescriptor)) {
|
||||
return Visibilities.PRIVATE;
|
||||
return DescriptorVisibilities.PRIVATE;
|
||||
}
|
||||
if (isAnonymousObject(classDescriptor)) {
|
||||
return Visibilities.DEFAULT_VISIBILITY;
|
||||
return DescriptorVisibilities.DEFAULT_VISIBILITY;
|
||||
}
|
||||
assert classKind == ClassKind.CLASS || classKind == ClassKind.INTERFACE || classKind == ClassKind.ANNOTATION_CLASS;
|
||||
return Visibilities.PUBLIC;
|
||||
return DescriptorVisibilities.PUBLIC;
|
||||
}
|
||||
|
||||
// TODO: should be internal
|
||||
|
||||
@@ -135,7 +135,7 @@ val DeclarationDescriptorWithVisibility.isEffectivelyPrivateApi: Boolean
|
||||
val DeclarationDescriptor.isInsidePrivateClass: Boolean
|
||||
get() {
|
||||
val parent = containingDeclaration as? ClassDescriptor
|
||||
return parent != null && Visibilities.isPrivate(parent.visibility)
|
||||
return parent != null && DescriptorVisibilities.isPrivate(parent.visibility)
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -489,8 +489,8 @@ public class OverridingUtil {
|
||||
}
|
||||
|
||||
public static boolean isVisibleForOverride(@NotNull MemberDescriptor overriding, @NotNull MemberDescriptor fromSuper) {
|
||||
return !Visibilities.isPrivate(fromSuper.getVisibility()) &&
|
||||
Visibilities.isVisibleIgnoringReceiver(fromSuper, overriding);
|
||||
return !DescriptorVisibilities.isPrivate(fromSuper.getVisibility()) &&
|
||||
DescriptorVisibilities.isVisibleIgnoringReceiver(fromSuper, overriding);
|
||||
}
|
||||
|
||||
private Collection<CallableMemberDescriptor> extractAndBindOverridesForMember(
|
||||
@@ -601,7 +601,7 @@ public class OverridingUtil {
|
||||
@NotNull DeclarationDescriptorWithVisibility a,
|
||||
@NotNull DeclarationDescriptorWithVisibility b
|
||||
) {
|
||||
Integer result = Visibilities.compare(a.getVisibility(), b.getVisibility());
|
||||
Integer result = DescriptorVisibilities.compare(a.getVisibility(), b.getVisibility());
|
||||
return result == null || result >= 0;
|
||||
}
|
||||
|
||||
@@ -691,7 +691,7 @@ public class OverridingUtil {
|
||||
Collection<CallableMemberDescriptor> effectiveOverridden = allInvisible ? overridables : visibleOverridables;
|
||||
|
||||
Modality modality = determineModalityForFakeOverride(effectiveOverridden, current);
|
||||
Visibility visibility = allInvisible ? Visibilities.INVISIBLE_FAKE : Visibilities.INHERITED;
|
||||
DescriptorVisibility visibility = allInvisible ? DescriptorVisibilities.INVISIBLE_FAKE : DescriptorVisibilities.INHERITED;
|
||||
|
||||
// FIXME doesn't work as expected for flexible types: should create a refined signature.
|
||||
// Current algorithm produces bad results in presence of annotated Java signatures such as:
|
||||
@@ -788,8 +788,8 @@ public class OverridingUtil {
|
||||
@Override
|
||||
public Boolean invoke(CallableMemberDescriptor descriptor) {
|
||||
//nested class could capture private member, so check for private visibility added
|
||||
return !Visibilities.isPrivate(descriptor.getVisibility()) &&
|
||||
Visibilities.isVisibleIgnoringReceiver(descriptor, current);
|
||||
return !DescriptorVisibilities.isPrivate(descriptor.getVisibility()) &&
|
||||
DescriptorVisibilities.isVisibleIgnoringReceiver(descriptor, current);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -872,22 +872,22 @@ public class OverridingUtil {
|
||||
@Nullable Function1<CallableMemberDescriptor, Unit> cannotInferVisibility
|
||||
) {
|
||||
for (CallableMemberDescriptor descriptor : memberDescriptor.getOverriddenDescriptors()) {
|
||||
if (descriptor.getVisibility() == Visibilities.INHERITED) {
|
||||
if (descriptor.getVisibility() == DescriptorVisibilities.INHERITED) {
|
||||
resolveUnknownVisibilityForMember(descriptor, cannotInferVisibility);
|
||||
}
|
||||
}
|
||||
|
||||
if (memberDescriptor.getVisibility() != Visibilities.INHERITED) {
|
||||
if (memberDescriptor.getVisibility() != DescriptorVisibilities.INHERITED) {
|
||||
return;
|
||||
}
|
||||
|
||||
Visibility maxVisibility = computeVisibilityToInherit(memberDescriptor);
|
||||
Visibility visibilityToInherit;
|
||||
DescriptorVisibility maxVisibility = computeVisibilityToInherit(memberDescriptor);
|
||||
DescriptorVisibility visibilityToInherit;
|
||||
if (maxVisibility == null) {
|
||||
if (cannotInferVisibility != null) {
|
||||
cannotInferVisibility.invoke(memberDescriptor);
|
||||
}
|
||||
visibilityToInherit = Visibilities.PUBLIC;
|
||||
visibilityToInherit = DescriptorVisibilities.PUBLIC;
|
||||
}
|
||||
else {
|
||||
visibilityToInherit = maxVisibility;
|
||||
@@ -914,9 +914,9 @@ public class OverridingUtil {
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private static Visibility computeVisibilityToInherit(@NotNull CallableMemberDescriptor memberDescriptor) {
|
||||
private static DescriptorVisibility computeVisibilityToInherit(@NotNull CallableMemberDescriptor memberDescriptor) {
|
||||
Collection<? extends CallableMemberDescriptor> overriddenDescriptors = memberDescriptor.getOverriddenDescriptors();
|
||||
Visibility maxVisibility = findMaxVisibility(overriddenDescriptors);
|
||||
DescriptorVisibility maxVisibility = findMaxVisibility(overriddenDescriptors);
|
||||
if (maxVisibility == null) {
|
||||
return null;
|
||||
}
|
||||
@@ -933,19 +933,19 @@ public class OverridingUtil {
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static Visibility findMaxVisibility(@NotNull Collection<? extends CallableMemberDescriptor> descriptors) {
|
||||
public static DescriptorVisibility findMaxVisibility(@NotNull Collection<? extends CallableMemberDescriptor> descriptors) {
|
||||
if (descriptors.isEmpty()) {
|
||||
return Visibilities.DEFAULT_VISIBILITY;
|
||||
return DescriptorVisibilities.DEFAULT_VISIBILITY;
|
||||
}
|
||||
Visibility maxVisibility = null;
|
||||
DescriptorVisibility maxVisibility = null;
|
||||
for (CallableMemberDescriptor descriptor : descriptors) {
|
||||
Visibility visibility = descriptor.getVisibility();
|
||||
assert visibility != Visibilities.INHERITED : "Visibility should have been computed for " + descriptor;
|
||||
DescriptorVisibility visibility = descriptor.getVisibility();
|
||||
assert visibility != DescriptorVisibilities.INHERITED : "Visibility should have been computed for " + descriptor;
|
||||
if (maxVisibility == null) {
|
||||
maxVisibility = visibility;
|
||||
continue;
|
||||
}
|
||||
Integer compareResult = Visibilities.compare(visibility, maxVisibility);
|
||||
Integer compareResult = DescriptorVisibilities.compare(visibility, maxVisibility);
|
||||
if (compareResult == null) {
|
||||
maxVisibility = null;
|
||||
}
|
||||
@@ -957,7 +957,7 @@ public class OverridingUtil {
|
||||
return null;
|
||||
}
|
||||
for (CallableMemberDescriptor descriptor : descriptors) {
|
||||
Integer compareResult = Visibilities.compare(maxVisibility, descriptor.getVisibility());
|
||||
Integer compareResult = DescriptorVisibilities.compare(maxVisibility, descriptor.getVisibility());
|
||||
if (compareResult == null || compareResult < 0) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.resolve
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
|
||||
fun findMemberWithMaxVisibility(descriptors: Collection<CallableMemberDescriptor>): CallableMemberDescriptor {
|
||||
assert(descriptors.isNotEmpty())
|
||||
@@ -29,7 +29,7 @@ fun findMemberWithMaxVisibility(descriptors: Collection<CallableMemberDescriptor
|
||||
continue
|
||||
}
|
||||
|
||||
val result = Visibilities.compare(descriptor.visibility, candidate.visibility)
|
||||
val result = DescriptorVisibilities.compare(descriptor.visibility, candidate.visibility)
|
||||
if (result != null && result < 0) {
|
||||
descriptor = candidate
|
||||
}
|
||||
|
||||
@@ -349,7 +349,7 @@ public class ErrorUtils {
|
||||
ClassConstructorDescriptorImpl
|
||||
errorConstructor = ClassConstructorDescriptorImpl.create(this, Annotations.Companion.getEMPTY(), true, SourceElement.NO_SOURCE);
|
||||
errorConstructor.initialize(Collections.<ValueParameterDescriptor>emptyList(),
|
||||
Visibilities.INTERNAL);
|
||||
DescriptorVisibilities.INTERNAL);
|
||||
MemberScope memberScope = createErrorScope(getName().asString());
|
||||
errorConstructor.setReturnType(
|
||||
new ErrorType(
|
||||
@@ -417,7 +417,7 @@ public class ErrorUtils {
|
||||
ERROR_CLASS,
|
||||
Annotations.Companion.getEMPTY(),
|
||||
Modality.OPEN,
|
||||
Visibilities.PUBLIC,
|
||||
DescriptorVisibilities.PUBLIC,
|
||||
true,
|
||||
Name.special("<ERROR PROPERTY>"),
|
||||
CallableMemberDescriptor.Kind.DECLARATION,
|
||||
@@ -439,7 +439,7 @@ public class ErrorUtils {
|
||||
Collections.<ValueParameterDescriptor>emptyList(), // TODO
|
||||
createErrorType("<ERROR FUNCTION RETURN TYPE>"),
|
||||
Modality.OPEN,
|
||||
Visibilities.PUBLIC
|
||||
DescriptorVisibilities.PUBLIC
|
||||
);
|
||||
return function;
|
||||
}
|
||||
|
||||
+2
-2
@@ -44,7 +44,7 @@ public class ErrorSimpleFunctionDescriptorImpl extends SimpleFunctionDescriptorI
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public SimpleFunctionDescriptor copy(DeclarationDescriptor newOwner, Modality modality, Visibility visibility, Kind kind, boolean copyOverrides) {
|
||||
public SimpleFunctionDescriptor copy(DeclarationDescriptor newOwner, Modality modality, DescriptorVisibility visibility, Kind kind, boolean copyOverrides) {
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -66,7 +66,7 @@ public class ErrorSimpleFunctionDescriptorImpl extends SimpleFunctionDescriptorI
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public CopyBuilder<SimpleFunctionDescriptor> setVisibility(@NotNull Visibility visibility) {
|
||||
public CopyBuilder<SimpleFunctionDescriptor> setVisibility(@NotNull DescriptorVisibility visibility) {
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
+9
-9
@@ -172,15 +172,15 @@ class MemberDeserializer(private val c: DeserializationContext) {
|
||||
}
|
||||
|
||||
private fun DeserializedSimpleFunctionDescriptor.initializeWithCoroutinesExperimentalityStatus(
|
||||
extensionReceiverParameter: ReceiverParameterDescriptor?,
|
||||
dispatchReceiverParameter: ReceiverParameterDescriptor?,
|
||||
typeParameters: List<TypeParameterDescriptor>,
|
||||
unsubstitutedValueParameters: List<ValueParameterDescriptor>,
|
||||
unsubstitutedReturnType: KotlinType?,
|
||||
modality: Modality?,
|
||||
visibility: Visibility,
|
||||
userDataMap: Map<out CallableDescriptor.UserDataKey<*>, *>,
|
||||
isSuspend: Boolean
|
||||
extensionReceiverParameter: ReceiverParameterDescriptor?,
|
||||
dispatchReceiverParameter: ReceiverParameterDescriptor?,
|
||||
typeParameters: List<TypeParameterDescriptor>,
|
||||
unsubstitutedValueParameters: List<ValueParameterDescriptor>,
|
||||
unsubstitutedReturnType: KotlinType?,
|
||||
modality: Modality?,
|
||||
visibility: DescriptorVisibility,
|
||||
userDataMap: Map<out CallableDescriptor.UserDataKey<*>, *>,
|
||||
isSuspend: Boolean
|
||||
) {
|
||||
initialize(
|
||||
extensionReceiverParameter,
|
||||
|
||||
+14
-14
@@ -53,22 +53,22 @@ object ProtoEnumFlags {
|
||||
}
|
||||
|
||||
fun visibility(visibility: ProtoBuf.Visibility?) = when (visibility) {
|
||||
ProtoBuf.Visibility.INTERNAL -> Visibilities.INTERNAL
|
||||
ProtoBuf.Visibility.PRIVATE -> Visibilities.PRIVATE
|
||||
ProtoBuf.Visibility.PRIVATE_TO_THIS -> Visibilities.PRIVATE_TO_THIS
|
||||
ProtoBuf.Visibility.PROTECTED -> Visibilities.PROTECTED
|
||||
ProtoBuf.Visibility.PUBLIC -> Visibilities.PUBLIC
|
||||
ProtoBuf.Visibility.LOCAL -> Visibilities.LOCAL
|
||||
else -> Visibilities.PRIVATE
|
||||
ProtoBuf.Visibility.INTERNAL -> DescriptorVisibilities.INTERNAL
|
||||
ProtoBuf.Visibility.PRIVATE -> DescriptorVisibilities.PRIVATE
|
||||
ProtoBuf.Visibility.PRIVATE_TO_THIS -> DescriptorVisibilities.PRIVATE_TO_THIS
|
||||
ProtoBuf.Visibility.PROTECTED -> DescriptorVisibilities.PROTECTED
|
||||
ProtoBuf.Visibility.PUBLIC -> DescriptorVisibilities.PUBLIC
|
||||
ProtoBuf.Visibility.LOCAL -> DescriptorVisibilities.LOCAL
|
||||
else -> DescriptorVisibilities.PRIVATE
|
||||
}
|
||||
|
||||
fun visibility(visibility: Visibility): ProtoBuf.Visibility = when (visibility) {
|
||||
Visibilities.INTERNAL -> ProtoBuf.Visibility.INTERNAL
|
||||
Visibilities.PUBLIC -> ProtoBuf.Visibility.PUBLIC
|
||||
Visibilities.PRIVATE -> ProtoBuf.Visibility.PRIVATE
|
||||
Visibilities.PRIVATE_TO_THIS -> ProtoBuf.Visibility.PRIVATE_TO_THIS
|
||||
Visibilities.PROTECTED -> ProtoBuf.Visibility.PROTECTED
|
||||
Visibilities.LOCAL -> ProtoBuf.Visibility.LOCAL
|
||||
fun visibility(visibility: DescriptorVisibility): ProtoBuf.Visibility = when (visibility) {
|
||||
DescriptorVisibilities.INTERNAL -> ProtoBuf.Visibility.INTERNAL
|
||||
DescriptorVisibilities.PUBLIC -> ProtoBuf.Visibility.PUBLIC
|
||||
DescriptorVisibilities.PRIVATE -> ProtoBuf.Visibility.PRIVATE
|
||||
DescriptorVisibilities.PRIVATE_TO_THIS -> ProtoBuf.Visibility.PRIVATE_TO_THIS
|
||||
DescriptorVisibilities.PROTECTED -> ProtoBuf.Visibility.PROTECTED
|
||||
DescriptorVisibilities.LOCAL -> ProtoBuf.Visibility.LOCAL
|
||||
else -> throw IllegalArgumentException("Unknown visibility: $visibility")
|
||||
}
|
||||
|
||||
|
||||
+44
-45
@@ -12,7 +12,6 @@ import org.jetbrains.kotlin.metadata.ProtoBuf
|
||||
import org.jetbrains.kotlin.metadata.deserialization.*
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.protobuf.MessageLite
|
||||
import org.jetbrains.kotlin.serialization.deserialization.IncompatibleVersionErrorData
|
||||
import org.jetbrains.kotlin.storage.StorageManager
|
||||
import org.jetbrains.kotlin.types.*
|
||||
|
||||
@@ -69,15 +68,15 @@ class DeserializedSimpleFunctionDescriptor(
|
||||
private set
|
||||
|
||||
fun initialize(
|
||||
extensionReceiverParameter: ReceiverParameterDescriptor?,
|
||||
dispatchReceiverParameter: ReceiverParameterDescriptor?,
|
||||
typeParameters: List<TypeParameterDescriptor>,
|
||||
unsubstitutedValueParameters: List<ValueParameterDescriptor>,
|
||||
unsubstitutedReturnType: KotlinType?,
|
||||
modality: Modality?,
|
||||
visibility: Visibility,
|
||||
userDataMap: Map<out CallableDescriptor.UserDataKey<*>, *>,
|
||||
isExperimentalCoroutineInReleaseEnvironment: DeserializedMemberDescriptor.CoroutinesCompatibilityMode
|
||||
extensionReceiverParameter: ReceiverParameterDescriptor?,
|
||||
dispatchReceiverParameter: ReceiverParameterDescriptor?,
|
||||
typeParameters: List<TypeParameterDescriptor>,
|
||||
unsubstitutedValueParameters: List<ValueParameterDescriptor>,
|
||||
unsubstitutedReturnType: KotlinType?,
|
||||
modality: Modality?,
|
||||
visibility: DescriptorVisibility,
|
||||
userDataMap: Map<out CallableDescriptor.UserDataKey<*>, *>,
|
||||
isExperimentalCoroutineInReleaseEnvironment: DeserializedMemberDescriptor.CoroutinesCompatibilityMode
|
||||
): SimpleFunctionDescriptorImpl {
|
||||
return super.initialize(
|
||||
extensionReceiverParameter,
|
||||
@@ -112,24 +111,24 @@ class DeserializedSimpleFunctionDescriptor(
|
||||
}
|
||||
|
||||
class DeserializedPropertyDescriptor(
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
original: PropertyDescriptor?,
|
||||
annotations: Annotations,
|
||||
modality: Modality,
|
||||
visibility: Visibility,
|
||||
isVar: Boolean,
|
||||
name: Name,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
isLateInit: Boolean,
|
||||
isConst: Boolean,
|
||||
isExternal: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExpect: Boolean,
|
||||
override val proto: ProtoBuf.Property,
|
||||
override val nameResolver: NameResolver,
|
||||
override val typeTable: TypeTable,
|
||||
override val versionRequirementTable: VersionRequirementTable,
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
original: PropertyDescriptor?,
|
||||
annotations: Annotations,
|
||||
modality: Modality,
|
||||
visibility: DescriptorVisibility,
|
||||
isVar: Boolean,
|
||||
name: Name,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
isLateInit: Boolean,
|
||||
isConst: Boolean,
|
||||
isExternal: Boolean,
|
||||
isDelegated: Boolean,
|
||||
isExpect: Boolean,
|
||||
override val proto: ProtoBuf.Property,
|
||||
override val nameResolver: NameResolver,
|
||||
override val typeTable: TypeTable,
|
||||
override val versionRequirementTable: VersionRequirementTable,
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
) : DeserializedCallableMemberDescriptor, PropertyDescriptorImpl(
|
||||
containingDeclaration, original, annotations, modality, visibility, isVar, name, kind, SourceElement.NO_SOURCE,
|
||||
isLateInit, isConst, isExpect, false, isExternal, isDelegated
|
||||
@@ -149,13 +148,13 @@ class DeserializedPropertyDescriptor(
|
||||
}
|
||||
|
||||
override fun createSubstitutedCopy(
|
||||
newOwner: DeclarationDescriptor,
|
||||
newModality: Modality,
|
||||
newVisibility: Visibility,
|
||||
original: PropertyDescriptor?,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
newName: Name,
|
||||
source: SourceElement
|
||||
newOwner: DeclarationDescriptor,
|
||||
newModality: Modality,
|
||||
newVisibility: DescriptorVisibility,
|
||||
original: PropertyDescriptor?,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
newName: Name,
|
||||
source: SourceElement
|
||||
): PropertyDescriptorImpl {
|
||||
return DeserializedPropertyDescriptor(
|
||||
newOwner, original, annotations, newModality, newVisibility, isVar, newName, kind, isLateInit, isConst, isExternal,
|
||||
@@ -211,16 +210,16 @@ class DeserializedClassConstructorDescriptor(
|
||||
}
|
||||
|
||||
class DeserializedTypeAliasDescriptor(
|
||||
override val storageManager: StorageManager,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
override val proto: ProtoBuf.TypeAlias,
|
||||
override val nameResolver: NameResolver,
|
||||
override val typeTable: TypeTable,
|
||||
override val versionRequirementTable: VersionRequirementTable,
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
override val storageManager: StorageManager,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
override val proto: ProtoBuf.TypeAlias,
|
||||
override val nameResolver: NameResolver,
|
||||
override val typeTable: TypeTable,
|
||||
override val versionRequirementTable: VersionRequirementTable,
|
||||
override val containerSource: DeserializedContainerSource?
|
||||
) : AbstractTypeAliasDescriptor(containingDeclaration, annotations, name, SourceElement.NO_SOURCE, visibility),
|
||||
DeserializedMemberDescriptor {
|
||||
override lateinit var constructors: Collection<TypeAliasConstructorDescriptor> private set
|
||||
|
||||
@@ -56,7 +56,7 @@ internal abstract class KDeclarationContainerImpl : ClassBasedDeclarationContain
|
||||
}
|
||||
return scope.getContributedDescriptors().mapNotNull { descriptor ->
|
||||
if (descriptor is CallableMemberDescriptor &&
|
||||
descriptor.visibility != Visibilities.INVISIBLE_FAKE &&
|
||||
descriptor.visibility != DescriptorVisibilities.INVISIBLE_FAKE &&
|
||||
belonginess.accept(descriptor)
|
||||
) descriptor.accept(visitor, Unit) else null
|
||||
}.toList()
|
||||
@@ -101,7 +101,7 @@ internal abstract class KDeclarationContainerImpl : ClassBasedDeclarationContain
|
||||
val mostVisibleProperties = properties
|
||||
.groupBy { it.visibility }
|
||||
.toSortedMap(Comparator { first, second ->
|
||||
Visibilities.compare(first, second) ?: 0
|
||||
DescriptorVisibilities.compare(first, second) ?: 0
|
||||
}).values.last()
|
||||
if (mostVisibleProperties.size == 1) {
|
||||
return mostVisibleProperties.first()
|
||||
|
||||
@@ -229,7 +229,7 @@ private fun KPropertyImpl.Accessor<*, *>.computeCallerForAccessor(isGetter: Bool
|
||||
when {
|
||||
accessor == null -> {
|
||||
if (property.descriptor.isUnderlyingPropertyOfInlineClass() &&
|
||||
property.descriptor.visibility == Visibilities.INTERNAL
|
||||
property.descriptor.visibility == DescriptorVisibilities.INTERNAL
|
||||
) {
|
||||
val unboxMethod = property.descriptor.containingDeclaration.toInlineClass()?.getUnboxMethod(property.descriptor)
|
||||
?: throw KotlinReflectionInternalError("Underlying property of inline class $property should have a field")
|
||||
|
||||
@@ -115,13 +115,13 @@ internal sealed class JvmPropertySignature {
|
||||
|
||||
private fun getManglingSuffix(): String {
|
||||
val containingDeclaration = descriptor.containingDeclaration
|
||||
if (descriptor.visibility == Visibilities.INTERNAL && containingDeclaration is DeserializedClassDescriptor) {
|
||||
if (descriptor.visibility == DescriptorVisibilities.INTERNAL && containingDeclaration is DeserializedClassDescriptor) {
|
||||
val classProto = containingDeclaration.classProto
|
||||
val moduleName = classProto.getExtensionOrNull(JvmProtoBuf.classModuleName)?.let(nameResolver::getString)
|
||||
?: JvmProtoBufUtil.DEFAULT_MODULE_NAME
|
||||
return "$" + NameUtils.sanitizeAsJavaIdentifier(moduleName)
|
||||
}
|
||||
if (descriptor.visibility == Visibilities.PRIVATE && containingDeclaration is PackageFragmentDescriptor) {
|
||||
if (descriptor.visibility == DescriptorVisibilities.PRIVATE && containingDeclaration is PackageFragmentDescriptor) {
|
||||
val packagePartSource = (descriptor as DeserializedPropertyDescriptor).containerSource
|
||||
if (packagePartSource is JvmPackagePartSource && packagePartSource.facadeClassName != null) {
|
||||
return "$" + packagePartSource.simpleName.asString()
|
||||
|
||||
@@ -101,12 +101,12 @@ private fun loadClass(classLoader: ClassLoader, packageName: String, className:
|
||||
return classLoader.tryLoadClass(fqName)
|
||||
}
|
||||
|
||||
internal fun Visibility.toKVisibility(): KVisibility? =
|
||||
internal fun DescriptorVisibility.toKVisibility(): KVisibility? =
|
||||
when (this) {
|
||||
Visibilities.PUBLIC -> KVisibility.PUBLIC
|
||||
Visibilities.PROTECTED -> KVisibility.PROTECTED
|
||||
Visibilities.INTERNAL -> KVisibility.INTERNAL
|
||||
Visibilities.PRIVATE, Visibilities.PRIVATE_TO_THIS -> KVisibility.PRIVATE
|
||||
DescriptorVisibilities.PUBLIC -> KVisibility.PUBLIC
|
||||
DescriptorVisibilities.PROTECTED -> KVisibility.PROTECTED
|
||||
DescriptorVisibilities.INTERNAL -> KVisibility.INTERNAL
|
||||
DescriptorVisibilities.PRIVATE, DescriptorVisibilities.PRIVATE_TO_THIS -> KVisibility.PRIVATE
|
||||
else -> null
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user