diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt index abfd6338c6c..6134036a721 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt @@ -26,7 +26,6 @@ import org.jetbrains.kotlin.fir.psi import org.jetbrains.kotlin.fir.resolve.ScopeSession import org.jetbrains.kotlin.fir.signaturer.FirBasedSignatureComposer import org.jetbrains.kotlin.fir.signaturer.FirMangler -import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI import org.jetbrains.kotlin.ir.PsiIrFileEntry import org.jetbrains.kotlin.ir.declarations.* import org.jetbrains.kotlin.ir.declarations.impl.IrFileImpl @@ -34,7 +33,6 @@ import org.jetbrains.kotlin.ir.declarations.impl.IrModuleFragmentImpl import org.jetbrains.kotlin.ir.interpreter.IrInterpreter import org.jetbrains.kotlin.ir.interpreter.checker.EvaluationMode import org.jetbrains.kotlin.ir.interpreter.checker.IrConstTransformer -import org.jetbrains.kotlin.ir.symbols.* import org.jetbrains.kotlin.ir.util.* import org.jetbrains.kotlin.ir.visitors.acceptVoid import org.jetbrains.kotlin.psi.KtFile diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt index 739192b6b50..c14789f16ca 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt @@ -427,8 +427,6 @@ open class SymbolTable( IrAnonymousInitializerSymbolImpl(descriptor) ) - fun listExistedScripts() = scriptSymbolTable.descriptorToSymbol.map { it.value } - @ObsoleteDescriptorBasedAPI fun declareScript( descriptor: ScriptDescriptor, @@ -443,18 +441,6 @@ open class SymbolTable( ) } - fun declareScript( - sig: IdSignature, - symbolFactory: () -> IrScriptSymbol, - classFactory: (IrScriptSymbol) -> IrScript - ): IrScript { - return scriptSymbolTable.declare( - sig, - symbolFactory, - classFactory - ) - } - @ObsoleteDescriptorBasedAPI override fun referenceScript(descriptor: ScriptDescriptor): IrScriptSymbol = scriptSymbolTable.referenced(descriptor) { IrScriptSymbolImpl(descriptor) } @@ -494,7 +480,9 @@ open class SymbolTable( fun declareClassIfNotExists(descriptor: ClassDescriptor, classFactory: (IrClassSymbol) -> IrClass): IrClass = classSymbolTable.declareIfNotExists(descriptor, { signature -> createClassSymbol(descriptor, signature) }, classFactory) + // Note: used in native @ObsoleteDescriptorBasedAPI + @Suppress("unused") fun declareClassFromLinker(descriptor: ClassDescriptor, sig: IdSignature, factory: (IrClassSymbol) -> IrClass): IrClass { return classSymbolTable.run { if (sig.isPubliclyVisible) { @@ -526,9 +514,6 @@ open class SymbolTable( ) = classSymbolTable.referenced(sig) { declareClass(sig, symbolFactory, classFactory).symbol } - fun referenceClassIfAny(sig: IdSignature): IrClassSymbol? = - classSymbolTable.get(sig) - override fun referenceClass(sig: IdSignature, reg: Boolean): IrClassSymbol = classSymbolTable.run { if (sig.isPubliclyVisible) referenced(sig, reg) { IrClassPublicSymbolImpl(sig) } @@ -587,7 +572,9 @@ open class SymbolTable( fun referenceConstructorIfAny(sig: IdSignature): IrConstructorSymbol? = constructorSymbolTable.get(sig) + // Note: used in native @ObsoleteDescriptorBasedAPI + @Suppress("unused") fun declareConstructorFromLinker( descriptor: ClassConstructorDescriptor, sig: IdSignature, @@ -636,7 +623,9 @@ open class SymbolTable( fun declareEnumEntryIfNotExists(descriptor: ClassDescriptor, factory: (IrEnumEntrySymbol) -> IrEnumEntry): IrEnumEntry = enumEntrySymbolTable.declareIfNotExists(descriptor, { signature -> createEnumEntrySymbol(descriptor, signature) }, factory) + // Note: used in native @ObsoleteDescriptorBasedAPI + @Suppress("unused") fun declareEnumEntryFromLinker( descriptor: ClassDescriptor, sig: IdSignature, @@ -715,14 +704,6 @@ open class SymbolTable( ) } - @ObsoleteDescriptorBasedAPI - fun declareFieldFromLinker(descriptor: PropertyDescriptor, sig: IdSignature, factory: (IrFieldSymbol) -> IrField): IrField { - return fieldSymbolTable.run { - require(sig.isLocal || sig.isPubliclyVisible) - declare(descriptor, { if (sig.isPubliclyVisible) IrFieldPublicSymbolImpl(sig, descriptor) else IrFieldSymbolImpl() }, factory) - } - } - fun declareFieldWithSignature(sig: IdSignature, symbol: IrFieldSymbol) { fieldSymbolTable.set(sig, symbol) } @@ -797,7 +778,9 @@ open class SymbolTable( fun declarePropertyIfNotExists(descriptor: PropertyDescriptor, propertyFactory: (IrPropertySymbol) -> IrProperty): IrProperty = propertySymbolTable.declareIfNotExists(descriptor, { signature -> createPropertySymbol(descriptor, signature) }, propertyFactory) + // Note: used in native @ObsoleteDescriptorBasedAPI + @Suppress("unused") fun declarePropertyFromLinker(descriptor: PropertyDescriptor, sig: IdSignature, factory: (IrPropertySymbol) -> IrProperty): IrProperty { return propertySymbolTable.run { if (sig.isPubliclyVisible) { @@ -894,7 +877,9 @@ open class SymbolTable( descriptor, { signature -> createSimpleFunctionSymbol(descriptor, signature) }, functionFactory ) + // Note: used in native @ObsoleteDescriptorBasedAPI + @Suppress("unused") fun declareSimpleFunctionFromLinker( descriptor: FunctionDescriptor?, sig: IdSignature, @@ -993,21 +978,6 @@ open class SymbolTable( return typeParameterFactory(symbolFactory(sig)) } - @ObsoleteDescriptorBasedAPI - fun declareScopedTypeParameterFromLinker( - descriptor: TypeParameterDescriptor, - sig: IdSignature, - typeParameterFactory: (IrTypeParameterSymbol) -> IrTypeParameter - ): IrTypeParameter { - return scopedTypeParameterSymbolTable.declare( - descriptor, - { - if (sig.isPubliclyVisible) IrTypeParameterPublicSymbolImpl(sig, descriptor) - else IrTypeParameterSymbolImpl(descriptor) - }, typeParameterFactory - ) - } - val unboundTypeParameters: Set get() = globalTypeParameterSymbolTable.unboundSymbols @ObsoleteDescriptorBasedAPI @@ -1185,13 +1155,6 @@ inline fun SymbolTable.withScope(owner: IrDeclaration, block: SymbolTable.() return result } -inline fun ReferenceSymbolTable.withReferenceScope(owner: IrSymbol, block: ReferenceSymbolTable.() -> T): T { - enterScope(owner) - val result = block() - leaveScope(owner) - return result -} - inline fun ReferenceSymbolTable.withReferenceScope(owner: IrDeclaration, block: ReferenceSymbolTable.() -> T): T { enterScope(owner) val result = block()