From 167155388d297ac06f540d5d8b0f49224afaf952 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Mon, 30 Jan 2017 16:05:46 +0300 Subject: [PATCH] Rename JsBinaryVersion -> JsMetadataVersion For consistency with JvmMetadataVersion --- .../jetbrains/kotlin/cli/AbstractCliTest.java | 4 ++-- .../utils/KotlinJavascriptMetadataUtils.kt | 20 +++++++++---------- .../js/KotlinJavaScriptMetaFileDecompiler.kt | 10 +++++----- .../kotlin/idea/vfilefinder/fileIndexes.kt | 4 ++-- .../KotlinJavaScriptAbiVersionIndex.kt | 10 +++++----- .../idea/versions/KotlinRuntimeLibraryUtil.kt | 6 +++--- .../jetbrains/kotlin/js/config/JsConfig.java | 4 ++-- .../js/config/LibrarySourcesConfig.java | 4 ++-- .../js/KotlinJavascriptSerializationUtil.kt | 4 ++-- 9 files changed, 33 insertions(+), 33 deletions(-) diff --git a/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java b/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java index c6e169eebf1..a71ca19b071 100644 --- a/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java +++ b/compiler/tests/org/jetbrains/kotlin/cli/AbstractCliTest.java @@ -36,7 +36,7 @@ import org.jetbrains.kotlin.test.InTextDirectivesUtils; import org.jetbrains.kotlin.test.KotlinTestUtils; import org.jetbrains.kotlin.test.TestCaseWithTmpdir; import org.jetbrains.kotlin.utils.ExceptionUtilsKt; -import org.jetbrains.kotlin.utils.JsBinaryVersion; +import org.jetbrains.kotlin.utils.JsMetadataVersion; import org.jetbrains.kotlin.utils.PathUtil; import org.jetbrains.kotlin.utils.StringsKt; import org.junit.Assert; @@ -159,7 +159,7 @@ public abstract class AbstractCliTest extends TestCaseWithTmpdir { } protected void doJsTest(@NotNull String fileName) throws Exception { - doTest(fileName, new K2JSCompiler(), JsBinaryVersion.INSTANCE); + doTest(fileName, new K2JSCompiler(), JsMetadataVersion.INSTANCE); } public static String removePerfOutput(String output) { diff --git a/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt b/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt index 2c2653362dd..a1ba3552e74 100644 --- a/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt +++ b/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt @@ -23,25 +23,25 @@ import java.io.InputStream import javax.xml.bind.DatatypeConverter.parseBase64Binary import javax.xml.bind.DatatypeConverter.printBase64Binary -class KotlinJavascriptMetadata(val version: JsBinaryVersion, val moduleName: String, val body: ByteArray) +class KotlinJavascriptMetadata(val version: JsMetadataVersion, val moduleName: String, val body: ByteArray) // TODO: move to JS modules -class JsBinaryVersion(vararg numbers: Int) : BinaryVersion(*numbers) { +class JsMetadataVersion(vararg numbers: Int) : BinaryVersion(*numbers) { override fun isCompatible() = this.isCompatibleTo(INSTANCE) fun toInteger() = (patch shl 16) + (minOf(minor, 255) shl 8) + minOf(major, 255) companion object { @JvmField - val INSTANCE = JsBinaryVersion(0, 8, 0) + val INSTANCE = JsMetadataVersion(1, 0, 0) @JvmField - val INVALID_VERSION = JsBinaryVersion() + val INVALID_VERSION = JsMetadataVersion() - fun fromInteger(version: Int): JsBinaryVersion = - JsBinaryVersion(version and 255, (version shr 8) and 255, version shr 16) + fun fromInteger(version: Int): JsMetadataVersion = + JsMetadataVersion(version and 255, (version shr 8) and 255, version shr 16) - fun readFrom(stream: InputStream): JsBinaryVersion { + fun readFrom(stream: InputStream): JsMetadataVersion { val dataInput = DataInputStream(stream) val size = dataInput.readInt() @@ -49,7 +49,7 @@ class JsBinaryVersion(vararg numbers: Int) : BinaryVersion(*numbers) { // of integers from old .kjsm files (pre-1.1) because they did not have the version in the beginning if (size != INSTANCE.toArray().size) return INVALID_VERSION - return JsBinaryVersion(*(1..size).map { dataInput.readInt() }.toIntArray()) + return JsMetadataVersion(*(1..size).map { dataInput.readInt() }.toIntArray()) } } } @@ -72,7 +72,7 @@ object KotlinJavascriptMetadataUtils { KOTLIN_JAVASCRIPT_METHOD_NAME_PATTERN.matcher(text).find() && METADATA_PATTERN.matcher(text).find() fun formatMetadataAsString(moduleName: String, content: ByteArray): String = - "// Kotlin.$KOTLIN_JAVASCRIPT_METHOD_NAME(${JsBinaryVersion.INSTANCE.toInteger()}, \"$moduleName\", \"${printBase64Binary(content)}\");\n" + "// Kotlin.$KOTLIN_JAVASCRIPT_METHOD_NAME(${JsMetadataVersion.INSTANCE.toInteger()}, \"$moduleName\", \"${printBase64Binary(content)}\");\n" @JvmStatic fun loadMetadata(file: File): List { @@ -95,7 +95,7 @@ object KotlinJavascriptMetadataUtils { val matcher = METADATA_PATTERN.matcher(text) while (matcher.find()) { - val abiVersion = JsBinaryVersion.fromInteger(matcher.group(1).toInt()) + val abiVersion = JsMetadataVersion.fromInteger(matcher.group(1).toInt()) val moduleName = matcher.group(3) val data = matcher.group(5) metadataList.add(KotlinJavascriptMetadata(abiVersion, moduleName, parseBase64Binary(data))) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt index 65c8dd9f906..21b42846432 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt @@ -32,7 +32,7 @@ import org.jetbrains.kotlin.renderer.DescriptorRenderer import org.jetbrains.kotlin.serialization.deserialization.NameResolverImpl import org.jetbrains.kotlin.serialization.js.JsProtoBuf import org.jetbrains.kotlin.serialization.js.JsSerializerProtocol -import org.jetbrains.kotlin.utils.JsBinaryVersion +import org.jetbrains.kotlin.utils.JsMetadataVersion import java.io.ByteArrayInputStream import java.io.IOException @@ -64,10 +64,10 @@ fun buildDecompiledTextFromJsMetadata(kjsmFile: VirtualFile): DecompiledText { when (file) { null -> { - return createIncompatibleAbiVersionDecompiledText(JsBinaryVersion.INSTANCE, JsBinaryVersion.INVALID_VERSION) + return createIncompatibleAbiVersionDecompiledText(JsMetadataVersion.INSTANCE, JsMetadataVersion.INVALID_VERSION) } is KjsmFile.Incompatible -> { - return createIncompatibleAbiVersionDecompiledText(JsBinaryVersion.INSTANCE, file.version) + return createIncompatibleAbiVersionDecompiledText(JsMetadataVersion.INSTANCE, file.version) } is KjsmFile.Compatible -> { val packageFqName = file.packageFqName @@ -85,7 +85,7 @@ fun buildDecompiledTextFromJsMetadata(kjsmFile: VirtualFile): DecompiledText { // TODO: deduplicate code with BuiltInDefinitionFile sealed class KjsmFile { - class Incompatible(val version: JsBinaryVersion) : KjsmFile() + class Incompatible(val version: JsMetadataVersion) : KjsmFile() class Compatible(val header: JsProtoBuf.Header, val proto: JsProtoBuf.Library.Part) : KjsmFile() { val packageFqName = FqName(header.packageFqName) @@ -99,7 +99,7 @@ sealed class KjsmFile { fun read(file: VirtualFile): KjsmFile? { val stream = ByteArrayInputStream(readFileContentsSafely(file) ?: return null) - val version = JsBinaryVersion.readFrom(stream) + val version = JsMetadataVersion.readFrom(stream) if (!version.isCompatible()) { return Incompatible(version) } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/vfilefinder/fileIndexes.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/vfilefinder/fileIndexes.kt index 2135d394e86..52142db1b76 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/vfilefinder/fileIndexes.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/vfilefinder/fileIndexes.kt @@ -30,7 +30,7 @@ import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.serialization.deserialization.MetadataPackageFragment import org.jetbrains.kotlin.serialization.js.JsProtoBuf -import org.jetbrains.kotlin.utils.JsBinaryVersion +import org.jetbrains.kotlin.utils.JsMetadataVersion import java.io.ByteArrayInputStream import java.io.DataInput import java.io.DataOutput @@ -104,7 +104,7 @@ object KotlinJavaScriptMetaFileIndex : KotlinFileIndexBase val stream = ByteArrayInputStream(fileContent.content) - if (JsBinaryVersion.readFrom(stream).isCompatible()) { + if (JsMetadataVersion.readFrom(stream).isCompatible()) { FqName(JsProtoBuf.Header.parseDelimitedFrom(stream).packageFqName) } else null diff --git a/idea/src/org/jetbrains/kotlin/idea/versions/KotlinJavaScriptAbiVersionIndex.kt b/idea/src/org/jetbrains/kotlin/idea/versions/KotlinJavaScriptAbiVersionIndex.kt index 5594b55d8c8..b59476494bf 100644 --- a/idea/src/org/jetbrains/kotlin/idea/versions/KotlinJavaScriptAbiVersionIndex.kt +++ b/idea/src/org/jetbrains/kotlin/idea/versions/KotlinJavaScriptAbiVersionIndex.kt @@ -21,13 +21,13 @@ import com.intellij.util.indexing.DataIndexer import com.intellij.util.indexing.FileBasedIndex import com.intellij.util.indexing.FileContent import org.jetbrains.kotlin.js.JavaScript -import org.jetbrains.kotlin.utils.JsBinaryVersion +import org.jetbrains.kotlin.utils.JsMetadataVersion import org.jetbrains.kotlin.utils.KotlinJavascriptMetadata import org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils import java.util.* -object KotlinJavaScriptAbiVersionIndex : KotlinAbiVersionIndexBase( - KotlinJavaScriptAbiVersionIndex::class.java, ::JsBinaryVersion +object KotlinJavaScriptAbiVersionIndex : KotlinAbiVersionIndexBase( + KotlinJavaScriptAbiVersionIndex::class.java, ::JsMetadataVersion ) { override fun getIndexer() = INDEXER @@ -38,7 +38,7 @@ object KotlinJavaScriptAbiVersionIndex : KotlinAbiVersionIndexBase - val result = HashMap() + val result = HashMap() tryBlock(inputData) { val text = VfsUtilCore.loadText(inputData.file) @@ -47,7 +47,7 @@ object KotlinJavaScriptAbiVersionIndex : KotlinAbiVersionIndexBase> { - return getLibraryRootsWithAbiIncompatibleVersion(module, JsBinaryVersion.INSTANCE, KotlinJavaScriptAbiVersionIndex) +fun getLibraryRootsWithAbiIncompatibleForKotlinJs(module: Module): Collection> { + return getLibraryRootsWithAbiIncompatibleVersion(module, JsMetadataVersion.INSTANCE, KotlinJavaScriptAbiVersionIndex) } fun updateLibraries(project: Project, libraries: Collection) { diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java b/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java index e8beea23203..76687e93045 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java @@ -37,7 +37,7 @@ import org.jetbrains.kotlin.serialization.js.JsModuleDescriptor; import org.jetbrains.kotlin.serialization.js.KotlinJavascriptSerializationUtil; import org.jetbrains.kotlin.serialization.js.ModuleKind; import org.jetbrains.kotlin.storage.LockBasedStorageManager; -import org.jetbrains.kotlin.utils.JsBinaryVersion; +import org.jetbrains.kotlin.utils.JsMetadataVersion; import org.jetbrains.kotlin.utils.KotlinJavascriptMetadata; import java.util.ArrayList; @@ -129,7 +129,7 @@ public abstract class JsConfig { private JsModuleDescriptor createModuleDescriptor(KotlinJavascriptMetadata metadata) { assert metadata.getVersion().isCompatible() : - "Expected JS metadata version " + JsBinaryVersion.INSTANCE + ", but actual metadata version is " + metadata.getVersion(); + "Expected JS metadata version " + JsMetadataVersion.INSTANCE + ", but actual metadata version is " + metadata.getVersion(); ModuleDescriptorImpl moduleDescriptor = new ModuleDescriptorImpl( Name.special("<" + metadata.getModuleName() + ">"), storageManager, JsPlatform.INSTANCE.getBuiltIns() diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java b/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java index 6d2603f88d0..fa219c557ab 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/config/LibrarySourcesConfig.java @@ -32,7 +32,7 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.config.CompilerConfiguration; import org.jetbrains.kotlin.idea.KotlinFileType; import org.jetbrains.kotlin.psi.KtFile; -import org.jetbrains.kotlin.utils.JsBinaryVersion; +import org.jetbrains.kotlin.utils.JsMetadataVersion; import org.jetbrains.kotlin.utils.KotlinJavascriptMetadata; import org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils; import org.jetbrains.kotlin.utils.LibraryUtils; @@ -148,7 +148,7 @@ public class LibrarySourcesConfig extends JsConfig { if (!metadata.getVersion().isCompatible()) { report.invoke("File '" + path + "' was compiled with an incompatible version of Kotlin. " + "The binary version of its metadata is " + metadata.getVersion() + - ", expected version is " + JsBinaryVersion.INSTANCE); + ", expected version is " + JsMetadataVersion.INSTANCE); return true; } } diff --git a/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptSerializationUtil.kt b/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptSerializationUtil.kt index e9351c6b55e..6fbe98cca06 100644 --- a/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptSerializationUtil.kt +++ b/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptSerializationUtil.kt @@ -26,7 +26,7 @@ import org.jetbrains.kotlin.serialization.AnnotationSerializer import org.jetbrains.kotlin.serialization.DescriptorSerializer import org.jetbrains.kotlin.serialization.deserialization.DeserializationConfiguration import org.jetbrains.kotlin.storage.StorageManager -import org.jetbrains.kotlin.utils.JsBinaryVersion +import org.jetbrains.kotlin.utils.JsMetadataVersion import org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils import java.io.ByteArrayInputStream import java.io.ByteArrayOutputStream @@ -162,7 +162,7 @@ object KotlinJavascriptSerializationUtil { val stream = ByteArrayOutputStream() with(DataOutputStream(stream)) { - val version = JsBinaryVersion.INSTANCE.toArray() + val version = JsMetadataVersion.INSTANCE.toArray() writeInt(version.size) version.forEach(this::writeInt) }