BasicIrModuleDeserializer: Drop 'shouldSaveDeserializationState' property
This property always has `true` value.
^KT-65837
diff --git a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/BasicIrModuleDeserializer.kt b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/BasicIrModuleDeserializer.kt
index 9bd4d0e..9da38b5 100644
--- a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/BasicIrModuleDeserializer.kt
+++ b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/BasicIrModuleDeserializer.kt
@@ -29,15 +29,13 @@
override val strategyResolver: (String) -> DeserializationStrategy,
libraryAbiVersion: KotlinAbiVersion,
private val containsErrorCode: Boolean = false,
- private val shouldSaveDeserializationState: Boolean = true,
) : IrModuleDeserializer(moduleDescriptor, libraryAbiVersion) {
private val fileToDeserializerMap = mutableMapOf<IrFile, IrFileDeserializer>()
private val moduleDeserializationState = ModuleDeserializationState()
- protected var fileDeserializationStates: List<FileDeserializationState> = emptyList()
- get() = if (!shouldSaveDeserializationState) error("File deserialization state are not cached inside the instance because `shouldSaveDeserializationState` was set as `false`") else field
+ protected lateinit var fileDeserializationStates: List<FileDeserializationState>
protected val moduleReversedFileIndex = hashMapOf<IdSignature, FileDeserializationState>()
@@ -54,21 +52,18 @@
override fun init(delegate: IrModuleDeserializer) {
val fileCount = klib.fileCount()
- val fileDeserializationStates = mutableListOf<FileDeserializationState>()
+ fileDeserializationStates = buildList {
+ for (i in 0 until fileCount) {
+ val fileStream = klib.file(i).codedInputStream
+ val fileProto = ProtoFile.parseFrom(fileStream, ExtensionRegistryLite.newInstance())
+ val fileReader = IrLibraryFileFromBytes(IrKlibBytesSource(klib, i))
+ val file = fileReader.createFile(moduleFragment, fileProto)
- for (i in 0 until fileCount) {
- val fileStream = klib.file(i).codedInputStream
- val fileProto = ProtoFile.parseFrom(fileStream, ExtensionRegistryLite.newInstance())
- val fileReader = IrLibraryFileFromBytes(IrKlibBytesSource(klib, i))
- val file = fileReader.createFile(moduleFragment, fileProto)
+ this += deserializeIrFile(fileProto, file, fileReader, i, delegate, containsErrorCode)
- fileDeserializationStates.add(deserializeIrFile(fileProto, file, fileReader, i, delegate, containsErrorCode))
- if (!strategyResolver(file.fileEntry.name).onDemand)
- moduleFragment.files.add(file)
- }
-
- if (shouldSaveDeserializationState) {
- this.fileDeserializationStates = fileDeserializationStates
+ if (!strategyResolver(file.fileEntry.name).onDemand)
+ moduleFragment.files.add(file)
+ }
}
}
diff --git a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsIrLinker.kt b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsIrLinker.kt
index 7ecb360..8ffd452 100644
--- a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsIrLinker.kt
+++ b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsIrLinker.kt
@@ -74,7 +74,7 @@
private val deserializedFilesInKlibOrder = mutableMapOf<IrModuleFragment, List<IrFile>>()
private inner class JsModuleDeserializer(moduleDescriptor: ModuleDescriptor, klib: IrLibrary, strategyResolver: (String) -> DeserializationStrategy, libraryAbiVersion: KotlinAbiVersion, allowErrorCode: Boolean) :
- BasicIrModuleDeserializer(this, moduleDescriptor, klib, strategyResolver, libraryAbiVersion, allowErrorCode, true) {
+ BasicIrModuleDeserializer(this, moduleDescriptor, klib, strategyResolver, libraryAbiVersion, allowErrorCode) {
override fun init(delegate: IrModuleDeserializer) {
super.init(delegate)