[Native] Drop KonanFileMetadataSource class
Replaced it with more common `DescriptorMetadataSource.File`
This commit is contained in:
+3
-2
@@ -24,6 +24,7 @@ import org.jetbrains.kotlin.descriptors.PropertyDescriptor
|
||||
import org.jetbrains.kotlin.ir.IrBuiltIns
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.builders.TranslationPluginContext
|
||||
import org.jetbrains.kotlin.ir.declarations.DescriptorMetadataSource
|
||||
import org.jetbrains.kotlin.ir.linkage.IrDeserializer
|
||||
import org.jetbrains.kotlin.ir.linkage.partial.partialLinkageConfig
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSymbol
|
||||
@@ -248,9 +249,9 @@ internal fun PsiToIrContext.psiToIr(
|
||||
(modules.values + mainModule).single { it.descriptor == this.stdlibModule }
|
||||
}
|
||||
|
||||
mainModule.files.forEach { it.metadata = KonanFileMetadataSource(mainModule) }
|
||||
mainModule.files.forEach { it.metadata = DescriptorMetadataSource.File(listOf(mainModule.descriptor)) }
|
||||
modules.values.forEach { module ->
|
||||
module.files.forEach { it.metadata = KonanFileMetadataSource(module) }
|
||||
module.files.forEach { it.metadata = DescriptorMetadataSource.File(listOf(module.descriptor)) }
|
||||
}
|
||||
|
||||
return if (isProducingLibrary) {
|
||||
|
||||
+4
-4
@@ -11,7 +11,6 @@ import org.jetbrains.kotlin.backend.konan.descriptors.allOverriddenFunctions
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.isFromInteropLibrary
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.isInteropLibrary
|
||||
import org.jetbrains.kotlin.backend.konan.llvm.KonanMetadata
|
||||
import org.jetbrains.kotlin.backend.konan.serialization.KonanFileMetadataSource
|
||||
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
||||
import org.jetbrains.kotlin.ir.IrBuiltIns
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
@@ -99,13 +98,14 @@ private fun IrClass.getOverridingOf(function: IrFunction) = (function as? IrSimp
|
||||
}
|
||||
|
||||
val ModuleDescriptor.konanLibrary get() = (this.klibModuleOrigin as? DeserializedKlibModuleOrigin)?.library
|
||||
val IrModuleFragment.konanLibrary get() = descriptor.konanLibrary
|
||||
|
||||
@OptIn(ObsoleteDescriptorBasedAPI::class)
|
||||
val IrPackageFragment.konanLibrary : KotlinLibrary?
|
||||
val IrPackageFragment.konanLibrary: KotlinLibrary?
|
||||
get() {
|
||||
if (this is IrFile) {
|
||||
(metadata as? KonanFileMetadataSource)?.module?.konanLibrary?.let { return it }
|
||||
val fileMetadata = metadata as? DescriptorMetadataSource.File
|
||||
val moduleDescriptor = fileMetadata?.descriptors?.singleOrNull() as? ModuleDescriptor
|
||||
moduleDescriptor?.konanLibrary?.let { return it }
|
||||
}
|
||||
return this.packageFragmentDescriptor.containingDeclaration.konanLibrary
|
||||
}
|
||||
|
||||
-5
@@ -1162,8 +1162,3 @@ internal class KonanIrLinker(
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class KonanFileMetadataSource(val module: IrModuleFragment) : MetadataSource.File {
|
||||
override val name: Name? = null
|
||||
override var serializedIr: ByteArray? = null
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user