[IR] IrModuleDeserializerKind API cleanup

Related to #KT-50591
This commit is contained in:
Dmitriy Dolovov
2022-01-11 22:24:04 +03:00
parent 54cca88279
commit 99300bd885
8 changed files with 17 additions and 17 deletions
@@ -152,7 +152,7 @@ abstract class BasicIrModuleDeserializer(
return fileDeserializer.symbolDeserializer.signatureDeserializer
}
override val origin get() = IrModuleOrigin.DESERIALIZED
override val kind get() = IrModuleDeserializerKind.DESERIALIZED
}
private class ModuleDeserializationState(val linker: KotlinIrLinker, val moduleDeserializer: BasicIrModuleDeserializer) {
@@ -162,8 +162,8 @@ class CurrentModuleWithICDeserializer(
get() = delegate.moduleFragment
override val moduleDependencies: Collection<IrModuleDeserializer>
get() = delegate.moduleDependencies
override val origin: IrModuleOrigin
get() = delegate.origin
override val kind: IrModuleDeserializerKind
get() = delegate.kind
override fun fileDeserializers(): Collection<IrFileDeserializer> {
return delegate.fileDeserializers()
@@ -51,7 +51,7 @@ class CompatibilityMode(val abiVersion: KotlinAbiVersion) {
}
}
enum class IrModuleOrigin {
enum class IrModuleDeserializerKind {
CURRENT, DESERIALIZED, SYNTHETIC
}
@@ -94,7 +94,7 @@ abstract class IrModuleDeserializer(private val _moduleDescriptor: ModuleDescrip
open val strategyResolver: (String) -> DeserializationStrategy = { DeserializationStrategy.ONLY_DECLARATION_HEADERS }
abstract val origin: IrModuleOrigin
abstract val kind: IrModuleDeserializerKind
open fun fileDeserializers(): Collection<IrFileDeserializer> = error("Unsupported")
@@ -231,7 +231,7 @@ class IrModuleDeserializerWithBuiltIns(
override val moduleFragment: IrModuleFragment get() = delegate.moduleFragment
override val moduleDependencies: Collection<IrModuleDeserializer> get() = delegate.moduleDependencies
override val origin get() = delegate.origin
override val kind get() = delegate.kind
override fun fileDeserializers(): Collection<IrFileDeserializer> {
return delegate.fileDeserializers()
@@ -258,5 +258,5 @@ open class CurrentModuleDeserializer(
override fun declareIrSymbol(symbol: IrSymbol) {}
override val origin get() = IrModuleOrigin.CURRENT
override val kind get() = IrModuleDeserializerKind.CURRENT
}
@@ -75,7 +75,7 @@ abstract class KotlinIrLinker(
override val moduleFragment: IrModuleFragment
get() = TODO("Not yet implemented")
override val moduleDependencies: Collection<IrModuleDeserializer> get() = emptyList()
override val origin: IrModuleOrigin
override val kind: IrModuleDeserializerKind
get() = TODO("Not yet implemented")
}
} else {
@@ -6,7 +6,7 @@
package org.jetbrains.kotlin.backend.common.serialization.linkerissues
import org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer
import org.jetbrains.kotlin.backend.common.serialization.IrModuleOrigin
import org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializerKind
import org.jetbrains.kotlin.konan.file.File
import org.jetbrains.kotlin.library.KotlinLibrary
import org.jetbrains.kotlin.library.uniqueName
@@ -59,7 +59,7 @@ open class UserVisibleIrModulesSupport(externalDependenciesLoader: ExternalDepen
fun getUserVisibleModuleId(deserializer: IrModuleDeserializer): ResolvedDependencyId {
val nameFromMetadataModuleHeader: String = deserializer.moduleFragment.name.asStringStripSpecialMarkers()
val nameFromKlibManifest: String? = deserializer.kotlinLibrary?.uniqueName
val nameFromKlibManifest: String? = deserializer.asDeserializedKotlinLibrary?.uniqueName
return ResolvedDependencyId(listOfNotNull(nameFromMetadataModuleHeader, nameFromKlibManifest))
}
@@ -199,8 +199,8 @@ open class UserVisibleIrModulesSupport(externalDependenciesLoader: ExternalDepen
}
}
protected val IrModuleDeserializer.kotlinLibrary: KotlinLibrary?
get() = if (origin == IrModuleOrigin.DESERIALIZED) klib as? KotlinLibrary else null
protected val IrModuleDeserializer.asDeserializedKotlinLibrary: KotlinLibrary?
get() = if (kind == IrModuleDeserializerKind.DESERIALIZED) klib as? KotlinLibrary else null
val moduleIdComparator: Comparator<ResolvedDependencyId> = Comparator { a, b ->
when {
@@ -163,6 +163,6 @@ class JvmIrLinker(
override val moduleFragment: IrModuleFragment = IrModuleFragmentImpl(moduleDescriptor, builtIns, emptyList())
override val moduleDependencies: Collection<IrModuleDeserializer> = dependencies
override val origin get() = IrModuleOrigin.SYNTHETIC
override val kind get() = IrModuleDeserializerKind.SYNTHETIC
}
}
@@ -611,7 +611,7 @@ internal class KonanIrLinker(
override val moduleFragment: IrModuleFragment = KonanIrModuleFragmentImpl(moduleDescriptor, builtIns)
override val moduleDependencies: Collection<IrModuleDeserializer> = listOfNotNull(forwardDeclarationDeserializer)
override val origin get() = IrModuleOrigin.DESERIALIZED
override val kind get() = IrModuleDeserializerKind.DESERIALIZED
}
inner class KonanCachedLibraryModuleDeserializer(
@@ -845,7 +845,7 @@ internal class KonanIrLinker(
}
}
override val origin get() = IrModuleOrigin.DESERIALIZED
override val kind get() = IrModuleDeserializerKind.DESERIALIZED
}
private inner class KonanForwardDeclarationModuleDeserializer(moduleDescriptor: ModuleDescriptor) : IrModuleDeserializer(moduleDescriptor, KotlinAbiVersion.CURRENT) {
@@ -897,7 +897,7 @@ internal class KonanIrLinker(
override val moduleFragment: IrModuleFragment = KonanIrModuleFragmentImpl(moduleDescriptor, builtIns)
override val moduleDependencies: Collection<IrModuleDeserializer> = emptyList()
override val origin get() = IrModuleOrigin.SYNTHETIC
override val kind get() = IrModuleDeserializerKind.SYNTHETIC
}
private val String.isForwardDeclarationModuleName: Boolean get() = this == "<forward declarations>"
@@ -35,7 +35,7 @@ class KonanUserVisibleIrModulesSupport(
// Transform deserializers to [ModuleWithUninitializedDependencies]s.
val modules: Map<ResolvedDependencyId, ModuleWithUninitializedDependencies> = deserializers.mapNotNull { deserializer ->
val library: KotlinLibrary = deserializer.kotlinLibrary ?: return@mapNotNull null
val library: KotlinLibrary = deserializer.asDeserializedKotlinLibrary ?: return@mapNotNull null
val moduleId = getUserVisibleModuleId(deserializer)
if (moduleId in excludedModuleIds) return@mapNotNull null