[klib] Inline the makeSerializedKlibMetadata function
It's used in only one place, and it doesn't really make the code easier to read.
This commit is contained in:
committed by
Space Team
parent
93a1ceae75
commit
abc53b2ee3
-16
@@ -11,7 +11,6 @@ import org.jetbrains.kotlin.descriptors.CallableDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ClassifierDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
||||
import org.jetbrains.kotlin.library.SerializedMetadata
|
||||
import org.jetbrains.kotlin.library.metadata.KlibMetadataVersion
|
||||
import org.jetbrains.kotlin.metadata.ProtoBuf
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
@@ -70,18 +69,3 @@ class KlibMetadataIncrementalSerializer(
|
||||
override val TOP_LEVEL_DECLARATION_COUNT_PER_FILE = null
|
||||
override val TOP_LEVEL_CLASS_DECLARATION_COUNT_PER_FILE = null
|
||||
}
|
||||
|
||||
fun makeSerializedKlibMetadata(
|
||||
fragments: Map<String, List<ByteArray>>,
|
||||
header: ByteArray
|
||||
): SerializedMetadata {
|
||||
val fragmentNames = mutableListOf<String>()
|
||||
val fragmentParts = mutableListOf<List<ByteArray>>()
|
||||
|
||||
for ((fqName, fragment) in fragments.entries.sortedBy { it.key }) {
|
||||
fragmentNames += fqName
|
||||
fragmentParts += fragment
|
||||
}
|
||||
|
||||
return SerializedMetadata(header, fragmentParts, fragmentNames)
|
||||
}
|
||||
+12
-9
@@ -10,7 +10,6 @@ import org.jetbrains.kotlin.KtIoFileSourceFile
|
||||
import org.jetbrains.kotlin.KtPsiSourceFile
|
||||
import org.jetbrains.kotlin.KtSourceFile
|
||||
import org.jetbrains.kotlin.KtVirtualFileSourceFile
|
||||
import org.jetbrains.kotlin.backend.common.serialization.metadata.makeSerializedKlibMetadata
|
||||
import org.jetbrains.kotlin.backend.common.serialization.metadata.serializeKlibHeader
|
||||
import org.jetbrains.kotlin.config.CommonConfigurationKeys
|
||||
import org.jetbrains.kotlin.config.CompilerConfiguration
|
||||
@@ -181,14 +180,18 @@ fun <Dependency : KotlinLibrary> serializeModuleIntoKlib(
|
||||
|
||||
processKlibHeader(header)
|
||||
|
||||
val serializedMetadata = makeSerializedKlibMetadata(
|
||||
fragments = compiledKotlinFiles
|
||||
.groupBy { it.fqName }
|
||||
.map { (fqn, data) ->
|
||||
fqn to data.sortedBy { it.path }.map { it.metadata }
|
||||
}
|
||||
.toMap(),
|
||||
header = header,
|
||||
val (fragmentNames, fragmentParts) = compiledKotlinFiles
|
||||
.groupBy { it.fqName }
|
||||
.map { (fqn, data) ->
|
||||
fqn to data.sortedBy { it.path }.map { it.metadata }
|
||||
}
|
||||
.sortedBy { it.first }
|
||||
.unzip()
|
||||
|
||||
val serializedMetadata = SerializedMetadata(
|
||||
module = header,
|
||||
fragments = fragmentParts,
|
||||
fragmentNames = fragmentNames
|
||||
)
|
||||
|
||||
return SerializerOutput(
|
||||
|
||||
Reference in New Issue
Block a user