[Commonizer] Simplify creation of SerializedMetadataLibraryProvider
This commit is contained in:
+7
@@ -6,6 +6,7 @@
|
|||||||
package org.jetbrains.kotlin.descriptors.commonizer.metadata.utils
|
package org.jetbrains.kotlin.descriptors.commonizer.metadata.utils
|
||||||
|
|
||||||
import kotlinx.metadata.klib.KlibModuleMetadata
|
import kotlinx.metadata.klib.KlibModuleMetadata
|
||||||
|
import org.jetbrains.kotlin.library.SerializedMetadata
|
||||||
|
|
||||||
private typealias FragmentPartContents = ByteArray
|
private typealias FragmentPartContents = ByteArray
|
||||||
private typealias ListOfFragmentParts = List<FragmentPartContents>
|
private typealias ListOfFragmentParts = List<FragmentPartContents>
|
||||||
@@ -38,6 +39,12 @@ class SerializedMetadataLibraryProvider(
|
|||||||
}.toMap()
|
}.toMap()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
constructor(serializedMetadata: SerializedMetadata) : this(
|
||||||
|
serializedMetadata.module,
|
||||||
|
serializedMetadata.fragments,
|
||||||
|
serializedMetadata.fragmentNames
|
||||||
|
)
|
||||||
|
|
||||||
override fun packageMetadataParts(fqName: String): Set<String> {
|
override fun packageMetadataParts(fqName: String): Set<String> {
|
||||||
return fragmentMap.getValue(fqName).keys
|
return fragmentMap.getValue(fqName).keys
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -23,8 +23,8 @@ fun assertIsDirectory(file: File) {
|
|||||||
|
|
||||||
@ExperimentalContracts
|
@ExperimentalContracts
|
||||||
fun assertModulesAreEqual(reference: SerializedMetadata, generated: SerializedMetadata, target: CommonizerTarget) {
|
fun assertModulesAreEqual(reference: SerializedMetadata, generated: SerializedMetadata, target: CommonizerTarget) {
|
||||||
val referenceModule = with(reference) { KlibModuleMetadata.read(SerializedMetadataLibraryProvider(module, fragments, fragmentNames)) }
|
val referenceModule = KlibModuleMetadata.read(SerializedMetadataLibraryProvider(reference))
|
||||||
val generatedModule = with(generated) { KlibModuleMetadata.read(SerializedMetadataLibraryProvider(module, fragments, fragmentNames)) }
|
val generatedModule = KlibModuleMetadata.read(SerializedMetadataLibraryProvider(generated))
|
||||||
|
|
||||||
when (val result = MetadataDeclarationsComparator.compare(referenceModule, generatedModule)) {
|
when (val result = MetadataDeclarationsComparator.compare(referenceModule, generatedModule)) {
|
||||||
is Result.Success -> Unit
|
is Result.Success -> Unit
|
||||||
|
|||||||
Reference in New Issue
Block a user