From c81d76414f4ef3bfb4ab0d4d7a5154f319f0a59b Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Tue, 12 Jan 2016 21:25:42 +0300 Subject: [PATCH] Drop serialization of old binary built-in files (.kotlin_class, .kotlin_package) --- .../builtins/BuiltInsSerializer.kt | 25 +++++-------------- .../kotlin/serialization/builtins/run.kt | 3 +-- libraries/tools/runtime/pom.xml | 2 +- 3 files changed, 8 insertions(+), 22 deletions(-) diff --git a/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/BuiltInsSerializer.kt b/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/BuiltInsSerializer.kt index 7dcf6813d6c..721048710ea 100644 --- a/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/BuiltInsSerializer.kt +++ b/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/BuiltInsSerializer.kt @@ -38,7 +38,6 @@ import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor import org.jetbrains.kotlin.descriptors.PackageViewDescriptor import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.resolve.CompilerEnvironment -import org.jetbrains.kotlin.resolve.descriptorUtil.classId import org.jetbrains.kotlin.resolve.jvm.JvmAnalyzerFacade import org.jetbrains.kotlin.resolve.jvm.JvmPlatformParameters import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter @@ -120,7 +119,7 @@ class BuiltInsSerializer(private val dependOnOldBuiltIns: Boolean) { ) { private val fqName = packageView.fqName private val fragments = packageView.fragments - private val builtinsMessage = BuiltInsProtoBuf.BuiltIns.newBuilder() + private val proto = BuiltInsProtoBuf.BuiltIns.newBuilder() private val extension = BuiltInsSerializerExtension(fragments) fun run() { @@ -132,11 +131,7 @@ class BuiltInsSerializer(private val dependOnOldBuiltIns: Boolean) { private fun serializeClass(classDescriptor: ClassDescriptor) { val classProto = DescriptorSerializer.createTopLevel(extension).classProto(classDescriptor).build() - - val stream = ByteArrayOutputStream() - classProto.writeTo(stream) - write(BuiltInsSerializedResourcePaths.getClassMetadataPath(classDescriptor.classId), stream) - builtinsMessage.addClass(classProto) + proto.addClass(classProto) serializeClasses(classDescriptor.unsubstitutedInnerClassesScope) } @@ -150,21 +145,13 @@ class BuiltInsSerializer(private val dependOnOldBuiltIns: Boolean) { } private fun serializePackageFragments(fragments: List) { - val stream = ByteArrayOutputStream() - val packageProto = DescriptorSerializer.createTopLevel(extension).packageProto(fragments).build() - packageProto.writeTo(stream) - write(BuiltInsSerializedResourcePaths.getPackageFilePath(fqName), stream) - builtinsMessage.setPackage(packageProto) + proto.`package` = DescriptorSerializer.createTopLevel(extension).packageProto(fragments).build() } private fun serializeStringTable() { - val stream = ByteArrayOutputStream() val (strings, qualifiedNames) = extension.stringTable.buildProto() - strings.writeDelimitedTo(stream) - qualifiedNames.writeDelimitedTo(stream) - write(BuiltInsSerializedResourcePaths.getStringTableFilePath(fqName), stream) - builtinsMessage.setStrings(strings) - builtinsMessage.setQualifiedNames(qualifiedNames) + proto.strings = strings + proto.qualifiedNames = qualifiedNames } private fun serializeBuiltInsFile() { @@ -174,7 +161,7 @@ class BuiltInsSerializer(private val dependOnOldBuiltIns: Boolean) { writeInt(version.size) version.forEach { writeInt(it) } } - builtinsMessage.build().writeTo(stream) + proto.build().writeTo(stream) write(BuiltInsSerializedResourcePaths.getBuiltInsFilePath(fqName), stream) } diff --git a/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/run.kt b/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/run.kt index c691b06563c..bac7fb77eb1 100644 --- a/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/run.kt +++ b/compiler/builtins-serializer/src/org/jetbrains/kotlin/serialization/builtins/run.kt @@ -28,8 +28,7 @@ fun main(args: Array) { Usage: ... ()+ Analyzes Kotlin sources found in the given source directories and serializes -found top-level declarations to (files such as *.kotlin_builtins, -as well as old files *.kotlin_string_table, *.kotlin_package, *.kotlin_class)""" +found top-level declarations to (*.kotlin_builtins files)""" ) return } diff --git a/libraries/tools/runtime/pom.xml b/libraries/tools/runtime/pom.xml index da587cd5dda..806ce7df167 100644 --- a/libraries/tools/runtime/pom.xml +++ b/libraries/tools/runtime/pom.xml @@ -22,7 +22,7 @@ ${basedir}/../../../dist/builtins - **/*.kotlin_* + **/*.kotlin_builtins