Rename Visibility to DescriptorVisibility
This commit is contained in:
+17
-17
@@ -23,23 +23,23 @@ import org.jetbrains.kotlin.types.TypeConstructor
|
||||
import org.jetbrains.kotlin.types.checker.KotlinTypeRefiner
|
||||
|
||||
class CommonizedClassDescriptor(
|
||||
targetComponents: TargetDeclarationsBuilderComponents,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
override val annotations: Annotations,
|
||||
name: Name,
|
||||
private val kind: ClassKind,
|
||||
private val modality: Modality,
|
||||
private val visibility: Visibility,
|
||||
private val isCompanion: Boolean,
|
||||
private val isData: Boolean,
|
||||
private val isInline: Boolean,
|
||||
private val isInner: Boolean,
|
||||
isExternal: Boolean,
|
||||
private val isExpect: Boolean,
|
||||
private val isActual: Boolean,
|
||||
cirDeclaredTypeParameters: List<CirTypeParameter>,
|
||||
companionObjectName: Name?,
|
||||
cirSupertypes: Collection<CirType>
|
||||
targetComponents: TargetDeclarationsBuilderComponents,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
override val annotations: Annotations,
|
||||
name: Name,
|
||||
private val kind: ClassKind,
|
||||
private val modality: Modality,
|
||||
private val visibility: DescriptorVisibility,
|
||||
private val isCompanion: Boolean,
|
||||
private val isData: Boolean,
|
||||
private val isInline: Boolean,
|
||||
private val isInner: Boolean,
|
||||
isExternal: Boolean,
|
||||
private val isExpect: Boolean,
|
||||
private val isActual: Boolean,
|
||||
cirDeclaredTypeParameters: List<CirTypeParameter>,
|
||||
companionObjectName: Name?,
|
||||
cirSupertypes: Collection<CirType>
|
||||
) : ClassDescriptorBase(targetComponents.storageManager, containingDeclaration, name, SourceElement.NO_SOURCE, isExternal) {
|
||||
private lateinit var _unsubstitutedMemberScope: CommonizedMemberScope
|
||||
private lateinit var constructors: Collection<ClassConstructorDescriptor>
|
||||
|
||||
+6
-6
@@ -17,12 +17,12 @@ import org.jetbrains.kotlin.types.Variance
|
||||
import org.jetbrains.kotlin.types.asSimpleType
|
||||
|
||||
class CommonizedTypeAliasDescriptor(
|
||||
override val storageManager: StorageManager,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
visibility: Visibility,
|
||||
private val isActual: Boolean
|
||||
override val storageManager: StorageManager,
|
||||
containingDeclaration: DeclarationDescriptor,
|
||||
annotations: Annotations,
|
||||
name: Name,
|
||||
visibility: DescriptorVisibility,
|
||||
private val isActual: Boolean
|
||||
) : AbstractTypeAliasDescriptor(containingDeclaration, annotations, name, SourceElement.NO_SOURCE, visibility) {
|
||||
|
||||
private lateinit var underlyingTypeImpl: NotNullLazyValue<SimpleType>
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ interface CirHasFqName {
|
||||
}
|
||||
|
||||
interface CirHasVisibility {
|
||||
val visibility: Visibility
|
||||
val visibility: DescriptorVisibility
|
||||
}
|
||||
|
||||
interface CirHasModality {
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
|
||||
interface CirFunctionOrProperty :
|
||||
CirDeclaration,
|
||||
@@ -27,7 +27,7 @@ interface CirFunctionOrProperty :
|
||||
modality != Modality.ABSTRACT && containingClassDetails?.kind == ClassKind.INTERFACE
|
||||
|
||||
fun isVirtual(): Boolean =
|
||||
visibility != Visibilities.PRIVATE
|
||||
visibility != DescriptorVisibilities.PRIVATE
|
||||
&& modality != Modality.FINAL
|
||||
&& !(containingClassDetails?.modality == Modality.FINAL && containingClassDetails?.kind != ClassKind.ENUM_CLASS)
|
||||
}
|
||||
|
||||
+9
-9
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.factory
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.impl.CirClassConstructorImpl
|
||||
|
||||
@@ -28,14 +28,14 @@ object CirClassConstructorFactory {
|
||||
|
||||
@Suppress("NOTHING_TO_INLINE")
|
||||
inline fun create(
|
||||
annotations: List<CirAnnotation>,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: Visibility,
|
||||
containingClassDetails: CirContainingClassDetails,
|
||||
valueParameters: List<CirValueParameter>,
|
||||
hasStableParameterNames: Boolean,
|
||||
isPrimary: Boolean,
|
||||
kind: CallableMemberDescriptor.Kind
|
||||
annotations: List<CirAnnotation>,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: DescriptorVisibility,
|
||||
containingClassDetails: CirContainingClassDetails,
|
||||
valueParameters: List<CirValueParameter>,
|
||||
hasStableParameterNames: Boolean,
|
||||
isPrimary: Boolean,
|
||||
kind: CallableMemberDescriptor.Kind
|
||||
): CirClassConstructor {
|
||||
return CirClassConstructorImpl(
|
||||
annotations = annotations,
|
||||
|
||||
+14
-14
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.factory
|
||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirClass
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirType
|
||||
@@ -36,19 +36,19 @@ object CirClassFactory {
|
||||
|
||||
@Suppress("NOTHING_TO_INLINE")
|
||||
inline fun create(
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
kind: ClassKind,
|
||||
companion: Name?,
|
||||
isCompanion: Boolean,
|
||||
isData: Boolean,
|
||||
isInline: Boolean,
|
||||
isInner: Boolean,
|
||||
isExternal: Boolean,
|
||||
supertypes: MutableCollection<CirType>
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
kind: ClassKind,
|
||||
companion: Name?,
|
||||
isCompanion: Boolean,
|
||||
isData: Boolean,
|
||||
isInline: Boolean,
|
||||
isInner: Boolean,
|
||||
isExternal: Boolean,
|
||||
supertypes: MutableCollection<CirType>
|
||||
): CirClass {
|
||||
return CirClassImpl(
|
||||
annotations = annotations,
|
||||
|
||||
+12
-12
@@ -29,18 +29,18 @@ object CirFunctionFactory {
|
||||
|
||||
@Suppress("NOTHING_TO_INLINE")
|
||||
inline fun create(
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
containingClassDetails: CirContainingClassDetails?,
|
||||
valueParameters: List<CirValueParameter>,
|
||||
hasStableParameterNames: Boolean,
|
||||
extensionReceiver: CirExtensionReceiver?,
|
||||
returnType: CirType,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
modifiers: CirFunctionModifiers
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
containingClassDetails: CirContainingClassDetails?,
|
||||
valueParameters: List<CirValueParameter>,
|
||||
hasStableParameterNames: Boolean,
|
||||
extensionReceiver: CirExtensionReceiver?,
|
||||
returnType: CirType,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
modifiers: CirFunctionModifiers
|
||||
): CirFunction {
|
||||
return CirFunctionImpl(
|
||||
annotations = annotations,
|
||||
|
||||
+20
-20
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.factory
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.impl.CirPropertyImpl
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.checkConstantSupportedInCommonization
|
||||
@@ -52,25 +52,25 @@ object CirPropertyFactory {
|
||||
|
||||
@Suppress("NOTHING_TO_INLINE")
|
||||
inline fun create(
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: Visibility,
|
||||
modality: Modality,
|
||||
containingClassDetails: CirContainingClassDetails?,
|
||||
isExternal: Boolean,
|
||||
extensionReceiver: CirExtensionReceiver?,
|
||||
returnType: CirType,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
isVar: Boolean,
|
||||
isLateInit: Boolean,
|
||||
isConst: Boolean,
|
||||
isDelegate: Boolean,
|
||||
getter: CirPropertyGetter?,
|
||||
setter: CirPropertySetter?,
|
||||
backingFieldAnnotations: List<CirAnnotation>?,
|
||||
delegateFieldAnnotations: List<CirAnnotation>?,
|
||||
compileTimeInitializer: ConstantValue<*>?
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: DescriptorVisibility,
|
||||
modality: Modality,
|
||||
containingClassDetails: CirContainingClassDetails?,
|
||||
isExternal: Boolean,
|
||||
extensionReceiver: CirExtensionReceiver?,
|
||||
returnType: CirType,
|
||||
kind: CallableMemberDescriptor.Kind,
|
||||
isVar: Boolean,
|
||||
isLateInit: Boolean,
|
||||
isConst: Boolean,
|
||||
isDelegate: Boolean,
|
||||
getter: CirPropertyGetter?,
|
||||
setter: CirPropertySetter?,
|
||||
backingFieldAnnotations: List<CirAnnotation>?,
|
||||
delegateFieldAnnotations: List<CirAnnotation>?,
|
||||
compileTimeInitializer: ConstantValue<*>?
|
||||
): CirProperty {
|
||||
return CirPropertyImpl(
|
||||
annotations = annotations,
|
||||
|
||||
+10
-10
@@ -6,8 +6,8 @@
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.cir.factory
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.PropertySetterDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirPropertySetter
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.impl.CirPropertySetterImpl
|
||||
@@ -26,12 +26,12 @@ object CirPropertySetterFactory {
|
||||
)
|
||||
|
||||
fun create(
|
||||
annotations: List<CirAnnotation>,
|
||||
parameterAnnotations: List<CirAnnotation>,
|
||||
visibility: Visibility,
|
||||
isDefault: Boolean,
|
||||
isExternal: Boolean,
|
||||
isInline: Boolean
|
||||
annotations: List<CirAnnotation>,
|
||||
parameterAnnotations: List<CirAnnotation>,
|
||||
visibility: DescriptorVisibility,
|
||||
isDefault: Boolean,
|
||||
isExternal: Boolean,
|
||||
isInline: Boolean
|
||||
): CirPropertySetter {
|
||||
return interner.intern(
|
||||
CirPropertySetterImpl(
|
||||
@@ -46,11 +46,11 @@ object CirPropertySetterFactory {
|
||||
}
|
||||
|
||||
@Suppress("NOTHING_TO_INLINE")
|
||||
inline fun createDefaultNoAnnotations(visibility: Visibility): CirPropertySetter = create(
|
||||
inline fun createDefaultNoAnnotations(visibility: DescriptorVisibility): CirPropertySetter = create(
|
||||
annotations = emptyList(),
|
||||
parameterAnnotations = emptyList(),
|
||||
visibility = visibility,
|
||||
isDefault = visibility == Visibilities.PUBLIC,
|
||||
isDefault = visibility == DescriptorVisibilities.PUBLIC,
|
||||
isExternal = false,
|
||||
isInline = false
|
||||
)
|
||||
|
||||
+7
-7
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.cir.factory
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.TypeAliasDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirSimpleType
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirTypeAlias
|
||||
@@ -27,12 +27,12 @@ object CirTypeAliasFactory {
|
||||
|
||||
@Suppress("NOTHING_TO_INLINE")
|
||||
inline fun create(
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: Visibility,
|
||||
underlyingType: CirSimpleType,
|
||||
expandedType: CirSimpleType
|
||||
annotations: List<CirAnnotation>,
|
||||
name: Name,
|
||||
typeParameters: List<CirTypeParameter>,
|
||||
visibility: DescriptorVisibility,
|
||||
underlyingType: CirSimpleType,
|
||||
expandedType: CirSimpleType
|
||||
): CirTypeAlias {
|
||||
return CirTypeAliasImpl(
|
||||
annotations = annotations,
|
||||
|
||||
+7
-7
@@ -7,8 +7,8 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.factory
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.ClassifierDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassifierDescriptorWithTypeParameters
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.impl.CirSimpleTypeImpl
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.Interner
|
||||
@@ -32,7 +32,7 @@ object CirTypeFactory {
|
||||
|
||||
return create(
|
||||
classifierId = CirClassifierIdFactory.create(classifierDescriptor),
|
||||
visibility = (classifierDescriptor as? ClassifierDescriptorWithTypeParameters)?.visibility ?: Visibilities.UNKNOWN,
|
||||
visibility = (classifierDescriptor as? ClassifierDescriptorWithTypeParameters)?.visibility ?: DescriptorVisibilities.UNKNOWN,
|
||||
arguments = source.arguments.map { projection ->
|
||||
CirTypeProjection(
|
||||
projectionKind = projection.projectionKind,
|
||||
@@ -45,10 +45,10 @@ object CirTypeFactory {
|
||||
}
|
||||
|
||||
fun create(
|
||||
classifierId: CirClassifierId,
|
||||
visibility: Visibility,
|
||||
arguments: List<CirTypeProjection>,
|
||||
isMarkedNullable: Boolean
|
||||
classifierId: CirClassifierId,
|
||||
visibility: DescriptorVisibility,
|
||||
arguments: List<CirTypeProjection>,
|
||||
isMarkedNullable: Boolean
|
||||
): CirSimpleType {
|
||||
return interner.intern(
|
||||
CirSimpleTypeImpl(
|
||||
|
||||
+9
-9
@@ -6,16 +6,16 @@
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
|
||||
data class CirClassConstructorImpl(
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: Visibility,
|
||||
override val containingClassDetails: CirContainingClassDetails,
|
||||
override var valueParameters: List<CirValueParameter>,
|
||||
override var hasStableParameterNames: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val kind: CallableMemberDescriptor.Kind
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: DescriptorVisibility,
|
||||
override val containingClassDetails: CirContainingClassDetails,
|
||||
override var valueParameters: List<CirValueParameter>,
|
||||
override var hasStableParameterNames: Boolean,
|
||||
override val isPrimary: Boolean,
|
||||
override val kind: CallableMemberDescriptor.Kind
|
||||
) : CirClassConstructor
|
||||
|
||||
+14
-14
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirClass
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirType
|
||||
@@ -15,17 +15,17 @@ import org.jetbrains.kotlin.descriptors.commonizer.cir.CirTypeParameter
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
data class CirClassImpl(
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
override val kind: ClassKind,
|
||||
override var companion: Name?,
|
||||
override val isCompanion: Boolean,
|
||||
override val isData: Boolean,
|
||||
override val isInline: Boolean,
|
||||
override val isInner: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val supertypes: MutableCollection<CirType>
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
override val kind: ClassKind,
|
||||
override var companion: Name?,
|
||||
override val isCompanion: Boolean,
|
||||
override val isData: Boolean,
|
||||
override val isInline: Boolean,
|
||||
override val isInner: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val supertypes: MutableCollection<CirType>
|
||||
) : CirClass
|
||||
|
||||
+13
-13
@@ -7,21 +7,21 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
data class CirFunctionImpl(
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
override val containingClassDetails: CirContainingClassDetails?,
|
||||
override var valueParameters: List<CirValueParameter>,
|
||||
override var hasStableParameterNames: Boolean,
|
||||
override val extensionReceiver: CirExtensionReceiver?,
|
||||
override val returnType: CirType,
|
||||
override val kind: CallableMemberDescriptor.Kind,
|
||||
override val modifiers: CirFunctionModifiers
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
override val containingClassDetails: CirContainingClassDetails?,
|
||||
override var valueParameters: List<CirValueParameter>,
|
||||
override var hasStableParameterNames: Boolean,
|
||||
override val extensionReceiver: CirExtensionReceiver?,
|
||||
override val returnType: CirType,
|
||||
override val kind: CallableMemberDescriptor.Kind,
|
||||
override val modifiers: CirFunctionModifiers
|
||||
) : CirFunction
|
||||
|
||||
+20
-20
@@ -7,31 +7,31 @@ package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.resolve.constants.ConstantValue
|
||||
|
||||
data class CirPropertyImpl(
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: Visibility,
|
||||
override val modality: Modality,
|
||||
override val containingClassDetails: CirContainingClassDetails?,
|
||||
override val isExternal: Boolean,
|
||||
override val extensionReceiver: CirExtensionReceiver?,
|
||||
override val returnType: CirType,
|
||||
override val kind: CallableMemberDescriptor.Kind,
|
||||
override val isVar: Boolean,
|
||||
override val isLateInit: Boolean,
|
||||
override var isConst: Boolean,
|
||||
override val isDelegate: Boolean,
|
||||
override val getter: CirPropertyGetter?,
|
||||
override val setter: CirPropertySetter?,
|
||||
override val backingFieldAnnotations: List<CirAnnotation>?,
|
||||
override val delegateFieldAnnotations: List<CirAnnotation>?,
|
||||
override val compileTimeInitializer: ConstantValue<*>?
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: DescriptorVisibility,
|
||||
override val modality: Modality,
|
||||
override val containingClassDetails: CirContainingClassDetails?,
|
||||
override val isExternal: Boolean,
|
||||
override val extensionReceiver: CirExtensionReceiver?,
|
||||
override val returnType: CirType,
|
||||
override val kind: CallableMemberDescriptor.Kind,
|
||||
override val isVar: Boolean,
|
||||
override val isLateInit: Boolean,
|
||||
override var isConst: Boolean,
|
||||
override val isDelegate: Boolean,
|
||||
override val getter: CirPropertyGetter?,
|
||||
override val setter: CirPropertySetter?,
|
||||
override val backingFieldAnnotations: List<CirAnnotation>?,
|
||||
override val delegateFieldAnnotations: List<CirAnnotation>?,
|
||||
override val compileTimeInitializer: ConstantValue<*>?
|
||||
) : CirProperty {
|
||||
// const property in "common" fragment is already lifted up
|
||||
override val isLiftedUp get() = isConst
|
||||
|
||||
+7
-7
@@ -5,15 +5,15 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirPropertySetter
|
||||
|
||||
data class CirPropertySetterImpl(
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val parameterAnnotations: List<CirAnnotation>,
|
||||
override val visibility: Visibility,
|
||||
override val isDefault: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isInline: Boolean
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val parameterAnnotations: List<CirAnnotation>,
|
||||
override val visibility: DescriptorVisibility,
|
||||
override val isDefault: Boolean,
|
||||
override val isExternal: Boolean,
|
||||
override val isInline: Boolean
|
||||
) : CirPropertySetter
|
||||
|
||||
+5
-5
@@ -5,16 +5,16 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.*
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.appendHashCode
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.hashCode
|
||||
|
||||
data class CirSimpleTypeImpl(
|
||||
override val classifierId: CirClassifierId,
|
||||
override val visibility: Visibility, // visibility of the classifier descriptor
|
||||
override val arguments: List<CirTypeProjection>,
|
||||
override val isMarkedNullable: Boolean
|
||||
override val classifierId: CirClassifierId,
|
||||
override val visibility: DescriptorVisibility, // visibility of the classifier descriptor
|
||||
override val arguments: List<CirTypeProjection>,
|
||||
override val isMarkedNullable: Boolean
|
||||
) : CirSimpleType() {
|
||||
// See also org.jetbrains.kotlin.types.KotlinType.cachedHashCode
|
||||
private var cachedHashCode = 0
|
||||
|
||||
+7
-7
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.cir.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirSimpleType
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirTypeAlias
|
||||
@@ -13,12 +13,12 @@ import org.jetbrains.kotlin.descriptors.commonizer.cir.CirTypeParameter
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
data class CirTypeAliasImpl(
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: Visibility,
|
||||
override val underlyingType: CirSimpleType,
|
||||
override val expandedType: CirSimpleType // only for commonization algorithm; does not participate in building resulting declarations
|
||||
override val annotations: List<CirAnnotation>,
|
||||
override val name: Name,
|
||||
override val typeParameters: List<CirTypeParameter>,
|
||||
override val visibility: DescriptorVisibility,
|
||||
override val underlyingType: CirSimpleType,
|
||||
override val expandedType: CirSimpleType // only for commonization algorithm; does not participate in building resulting declarations
|
||||
) : CirTypeAlias {
|
||||
// any TA in "common" fragment is already lifted up
|
||||
override val isLiftedUp get() = true
|
||||
|
||||
+2
-2
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.core
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirAnnotation
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirClassifierId
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.factory.CirAnnotationFactory
|
||||
@@ -162,7 +162,7 @@ private class DeprecatedAnnotationCommonizer : Commonizer<CirAnnotation, CirAnno
|
||||
|
||||
private fun buildAnnotationType(classId: ClassId) = CirTypeFactory.create(
|
||||
classifierId = CirClassifierIdFactory.createForClass(classId),
|
||||
visibility = Visibilities.PUBLIC,
|
||||
visibility = DescriptorVisibilities.PUBLIC,
|
||||
arguments = emptyList(),
|
||||
isMarkedNullable = false
|
||||
)
|
||||
|
||||
+2
-2
@@ -5,12 +5,12 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.core
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirHasVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirPropertySetter
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.factory.CirPropertySetterFactory
|
||||
|
||||
class PropertySetterCommonizer : AbstractNullableCommonizer<CirPropertySetter, CirPropertySetter, CirHasVisibility, Visibility>(
|
||||
class PropertySetterCommonizer : AbstractNullableCommonizer<CirPropertySetter, CirPropertySetter, CirHasVisibility, DescriptorVisibility>(
|
||||
wrappedCommonizerFactory = { VisibilityCommonizer.equalizing() },
|
||||
extractor = { it },
|
||||
builder = CirPropertySetterFactory::createDefaultNoAnnotations
|
||||
|
||||
+18
-18
@@ -5,40 +5,40 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.core
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirFunctionOrProperty
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirHasVisibility
|
||||
|
||||
abstract class VisibilityCommonizer : Commonizer<CirHasVisibility, Visibility> {
|
||||
abstract class VisibilityCommonizer : Commonizer<CirHasVisibility, DescriptorVisibility> {
|
||||
|
||||
companion object {
|
||||
fun lowering(): VisibilityCommonizer = LoweringVisibilityCommonizer()
|
||||
fun equalizing(): VisibilityCommonizer = EqualizingVisibilityCommonizer()
|
||||
}
|
||||
|
||||
private var temp: Visibility? = null
|
||||
private var temp: DescriptorVisibility? = null
|
||||
|
||||
override val result: Visibility
|
||||
get() = checkState(temp, temp == Visibilities.UNKNOWN)
|
||||
override val result: DescriptorVisibility
|
||||
get() = checkState(temp, temp == DescriptorVisibilities.UNKNOWN)
|
||||
|
||||
override fun commonizeWith(next: CirHasVisibility): Boolean {
|
||||
if (temp == Visibilities.UNKNOWN)
|
||||
if (temp == DescriptorVisibilities.UNKNOWN)
|
||||
return false
|
||||
|
||||
val nextVisibility = next.visibility
|
||||
if (Visibilities.isPrivate(nextVisibility) || !canBeCommonized(next)) {
|
||||
temp = Visibilities.UNKNOWN
|
||||
if (DescriptorVisibilities.isPrivate(nextVisibility) || !canBeCommonized(next)) {
|
||||
temp = DescriptorVisibilities.UNKNOWN
|
||||
return false
|
||||
}
|
||||
|
||||
temp = temp?.let { temp -> getNext(temp, nextVisibility) } ?: nextVisibility
|
||||
|
||||
return temp != Visibilities.UNKNOWN
|
||||
return temp != DescriptorVisibilities.UNKNOWN
|
||||
}
|
||||
|
||||
protected abstract fun canBeCommonized(next: CirHasVisibility): Boolean
|
||||
protected abstract fun getNext(current: Visibility, next: Visibility): Visibility
|
||||
protected abstract fun getNext(current: DescriptorVisibility, next: DescriptorVisibility): DescriptorVisibility
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -56,26 +56,26 @@ private class LoweringVisibilityCommonizer : VisibilityCommonizer() {
|
||||
return !atLeastOneVirtualCallableMet || !atLeastTwoVisibilitiesMet
|
||||
}
|
||||
|
||||
override fun getNext(current: Visibility, next: Visibility): Visibility {
|
||||
val comparisonResult: Int = Visibilities.compare(current, next)
|
||||
?: return Visibilities.UNKNOWN // two visibilities that can't be compared against each one, ex: protected vs internal
|
||||
override fun getNext(current: DescriptorVisibility, next: DescriptorVisibility): DescriptorVisibility {
|
||||
val comparisonResult: Int = DescriptorVisibilities.compare(current, next)
|
||||
?: return DescriptorVisibilities.UNKNOWN // two visibilities that can't be compared against each one, ex: protected vs internal
|
||||
|
||||
if (!atLeastTwoVisibilitiesMet)
|
||||
atLeastTwoVisibilitiesMet = comparisonResult != 0
|
||||
|
||||
if (atLeastOneVirtualCallableMet && atLeastTwoVisibilitiesMet)
|
||||
return Visibilities.UNKNOWN
|
||||
return DescriptorVisibilities.UNKNOWN
|
||||
|
||||
return if (comparisonResult <= 0) current else next
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Make sure that visibilities of all member descriptors are equal and are not private according to [Visibilities.isPrivate].
|
||||
* Make sure that visibilities of all member descriptors are equal and are not private according to [DescriptorVisibilities.isPrivate].
|
||||
*/
|
||||
private class EqualizingVisibilityCommonizer : VisibilityCommonizer() {
|
||||
override fun canBeCommonized(next: CirHasVisibility) = true
|
||||
|
||||
override fun getNext(current: Visibility, next: Visibility) =
|
||||
if (Visibilities.compare(current, next) == 0) current else Visibilities.UNKNOWN
|
||||
override fun getNext(current: DescriptorVisibility, next: DescriptorVisibility) =
|
||||
if (DescriptorVisibilities.compare(current, next) == 0) current else DescriptorVisibilities.UNKNOWN
|
||||
}
|
||||
|
||||
+5
-5
@@ -5,12 +5,12 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.core
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities.*
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities.*
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirHasVisibility
|
||||
import org.junit.Test
|
||||
|
||||
class EqualizingVisibilityCommonizerTest : AbstractCommonizerTest<CirHasVisibility, Visibility>() {
|
||||
class EqualizingVisibilityCommonizerTest : AbstractCommonizerTest<CirHasVisibility, DescriptorVisibility>() {
|
||||
|
||||
@Test
|
||||
fun publicOnly() = doTestSuccess(
|
||||
@@ -63,6 +63,6 @@ class EqualizingVisibilityCommonizerTest : AbstractCommonizerTest<CirHasVisibili
|
||||
override fun createCommonizer() = VisibilityCommonizer.equalizing()
|
||||
}
|
||||
|
||||
private fun Visibility.toMock() = object : CirHasVisibility {
|
||||
override val visibility: Visibility = this@toMock
|
||||
private fun DescriptorVisibility.toMock() = object : CirHasVisibility {
|
||||
override val visibility: DescriptorVisibility = this@toMock
|
||||
}
|
||||
|
||||
+4
-4
@@ -7,8 +7,8 @@ package org.jetbrains.kotlin.descriptors.commonizer.core
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities.*
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities.*
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirFunctionOrProperty
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirHasVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.factory.CirContainingClassDetailsFactory
|
||||
@@ -17,7 +17,7 @@ import org.junit.Test
|
||||
|
||||
abstract class LoweringVisibilityCommonizerTest(
|
||||
private val areMembersVirtual: Boolean
|
||||
) : AbstractCommonizerTest<CirHasVisibility, Visibility>() {
|
||||
) : AbstractCommonizerTest<CirHasVisibility, DescriptorVisibility>() {
|
||||
|
||||
@Test
|
||||
fun publicOnly() = doTestSuccess(
|
||||
@@ -44,7 +44,7 @@ abstract class LoweringVisibilityCommonizerTest(
|
||||
|
||||
final override fun createCommonizer() = VisibilityCommonizer.lowering()
|
||||
|
||||
protected fun Visibility.toMock() = object : CirFunctionOrProperty {
|
||||
protected fun DescriptorVisibility.toMock() = object : CirFunctionOrProperty {
|
||||
override val annotations get() = unsupported()
|
||||
override val name get() = unsupported()
|
||||
override val typeParameters get() = unsupported()
|
||||
|
||||
+4
-4
@@ -5,8 +5,8 @@
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.core
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities.*
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities.*
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.CirPropertySetter
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.cir.factory.CirPropertySetterFactory
|
||||
import org.junit.Test
|
||||
@@ -87,13 +87,13 @@ class PropertySetterCommonizerTest : AbstractCommonizerTest<CirPropertySetter?,
|
||||
PUBLIC, LOCAL
|
||||
)
|
||||
|
||||
private fun doTestSuccess(expected: Visibility?, vararg variants: Visibility?) =
|
||||
private fun doTestSuccess(expected: DescriptorVisibility?, vararg variants: DescriptorVisibility?) =
|
||||
super.doTestSuccess(
|
||||
expected = expected?.let { CirPropertySetterFactory.createDefaultNoAnnotations(expected) },
|
||||
*variants.map { it?.let(CirPropertySetterFactory::createDefaultNoAnnotations) }.toTypedArray()
|
||||
)
|
||||
|
||||
private fun doTestFailure(vararg variants: Visibility?) =
|
||||
private fun doTestFailure(vararg variants: DescriptorVisibility?) =
|
||||
super.doTestFailure(
|
||||
*variants.map { it?.let(CirPropertySetterFactory::createDefaultNoAnnotations) }.toTypedArray(),
|
||||
shouldFailOnFirstVariant = false
|
||||
|
||||
@@ -57,7 +57,7 @@ internal fun mockClassType(
|
||||
name = classFqName.shortName(),
|
||||
kind = ClassKind.CLASS,
|
||||
modality = Modality.FINAL,
|
||||
visibility = Visibilities.PUBLIC,
|
||||
visibility = DescriptorVisibilities.PUBLIC,
|
||||
isCompanion = false,
|
||||
isData = false,
|
||||
isInline = false,
|
||||
@@ -91,7 +91,7 @@ internal fun mockTAType(
|
||||
containingDeclaration = createPackageFragmentForClassifier(typeAliasFqName),
|
||||
annotations = Annotations.EMPTY,
|
||||
name = typeAliasFqName.shortName(),
|
||||
visibility = Visibilities.PUBLIC,
|
||||
visibility = DescriptorVisibilities.PUBLIC,
|
||||
isActual = false
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user