[IR] IrModuleDeserializerKind API cleanup
Related to #KT-50591
This commit is contained in:
+1
-1
@@ -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) {
|
||||
|
||||
+2
-2
@@ -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()
|
||||
|
||||
+4
-4
@@ -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
|
||||
}
|
||||
|
||||
+1
-1
@@ -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 {
|
||||
|
||||
+4
-4
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user