diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrBindableSymbol.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrBindableSymbol.kt index c5bf20854ec..23fcb956733 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrBindableSymbol.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/symbols/Fir2IrBindableSymbol.kt @@ -48,9 +48,6 @@ abstract class Fir2IrBindableSymbol, B : IrSymbolOwner, if (delegate === other) return true return false } - - override val isPublicApi: Boolean - get() = delegate.isPublicApi } class IrDelegatingClassSymbolImpl(delegate: IrClassSymbol) : diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/IrSymbol.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/IrSymbol.kt index f809f4d3b6f..39e1f5de9b1 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/IrSymbol.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/IrSymbol.kt @@ -36,10 +36,11 @@ interface IrSymbol { val isBound: Boolean val signature: IdSignature? - - val isPublicApi: Boolean } +val IrSymbol.isPublicApi: Boolean + get() = signature != null + interface IrBindableSymbol : IrSymbol { override val owner: B diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/DescriptorlessExternalPackageFragmentSymbol.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/DescriptorlessExternalPackageFragmentSymbol.kt index 6fb7ae52609..1467239cce1 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/DescriptorlessExternalPackageFragmentSymbol.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/DescriptorlessExternalPackageFragmentSymbol.kt @@ -30,7 +30,4 @@ class DescriptorlessExternalPackageFragmentSymbol : IrExternalPackageFragmentSym override fun bind(owner: IrExternalPackageFragment) { _owner = owner } - - override val isPublicApi: Boolean - get() = TODO("Not yet implemented") } diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPrivateSymbolBase.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPrivateSymbolBase.kt index 70d3b5c22cc..46c47a11e84 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPrivateSymbolBase.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPrivateSymbolBase.kt @@ -33,7 +33,7 @@ abstract class IrSymbolBase( } } -abstract class IrBindableSymbolBase(descriptor: D?, override val signature: IdSignature?) : +abstract class IrBindableSymbolBase(descriptor: D?) : IrBindableSymbol, IrSymbolBase(descriptor) { init { @@ -65,75 +65,75 @@ abstract class IrBindableSymbolBase(descriptor, signature), +class IrFileSymbolImpl(descriptor: PackageFragmentDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrFileSymbol -class IrExternalPackageFragmentSymbolImpl(descriptor: PackageFragmentDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrExternalPackageFragmentSymbolImpl(descriptor: PackageFragmentDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrExternalPackageFragmentSymbol @OptIn(ObsoleteDescriptorBasedAPI::class) -class IrAnonymousInitializerSymbolImpl(descriptor: ClassDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrAnonymousInitializerSymbolImpl(descriptor: ClassDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrAnonymousInitializerSymbol { - constructor(irClassSymbol: IrClassSymbol, signature: IdSignature? = null) : this(irClassSymbol.descriptor, signature) + constructor(irClassSymbol: IrClassSymbol) : this(irClassSymbol.descriptor) } -class IrClassSymbolImpl(descriptor: ClassDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrClassSymbolImpl(descriptor: ClassDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrClassSymbol -class IrEnumEntrySymbolImpl(descriptor: ClassDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrEnumEntrySymbolImpl(descriptor: ClassDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrEnumEntrySymbol -class IrFieldSymbolImpl(descriptor: PropertyDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrFieldSymbolImpl(descriptor: PropertyDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrFieldSymbol -class IrTypeParameterSymbolImpl(descriptor: TypeParameterDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrTypeParameterSymbolImpl(descriptor: TypeParameterDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrTypeParameterSymbol -class IrValueParameterSymbolImpl(descriptor: ParameterDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrValueParameterSymbolImpl(descriptor: ParameterDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrValueParameterSymbol -class IrVariableSymbolImpl(descriptor: VariableDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrVariableSymbolImpl(descriptor: VariableDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrVariableSymbol -class IrSimpleFunctionSymbolImpl(descriptor: FunctionDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrSimpleFunctionSymbolImpl(descriptor: FunctionDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrSimpleFunctionSymbol -class IrConstructorSymbolImpl(descriptor: ClassConstructorDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrConstructorSymbolImpl(descriptor: ClassConstructorDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrConstructorSymbol -class IrReturnableBlockSymbolImpl(descriptor: FunctionDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrReturnableBlockSymbolImpl(descriptor: FunctionDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrReturnableBlockSymbol -class IrPropertySymbolImpl(descriptor: PropertyDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrPropertySymbolImpl(descriptor: PropertyDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrPropertySymbol -class IrLocalDelegatedPropertySymbolImpl(descriptor: VariableDescriptorWithAccessors? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrLocalDelegatedPropertySymbolImpl(descriptor: VariableDescriptorWithAccessors? = null) : + IrBindableSymbolBase(descriptor), IrLocalDelegatedPropertySymbol -class IrTypeAliasSymbolImpl(descriptor: TypeAliasDescriptor? = null, signature: IdSignature? = null) : - IrBindableSymbolBase(descriptor, signature), +class IrTypeAliasSymbolImpl(descriptor: TypeAliasDescriptor? = null) : + IrBindableSymbolBase(descriptor), IrTypeAliasSymbol -class IrScriptSymbolImpl(descriptor: ScriptDescriptor? = null, signature: IdSignature? = null) : - IrScriptSymbol, IrBindableSymbolBase(descriptor, signature) +class IrScriptSymbolImpl(descriptor: ScriptDescriptor? = null) : + IrScriptSymbol, IrBindableSymbolBase(descriptor) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt index 3270e2cdfd3..7aaac24dd44 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/symbols/impl/IrPublicSymbolBase.kt @@ -61,9 +61,6 @@ abstract class IrBindablePublicSymbolBase