Minor, add BuiltInsBinaryVersion.readFrom(InputStream)
This commit is contained in:
committed by
Alexander Udalov
parent
c81d76414f
commit
cb490dbe4f
@@ -17,6 +17,8 @@
|
|||||||
package org.jetbrains.kotlin.builtins
|
package org.jetbrains.kotlin.builtins
|
||||||
|
|
||||||
import org.jetbrains.kotlin.serialization.deserialization.BinaryVersion
|
import org.jetbrains.kotlin.serialization.deserialization.BinaryVersion
|
||||||
|
import java.io.DataInputStream
|
||||||
|
import java.io.InputStream
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The version of the format in which the .kotlin_builtins file is stored. This version also includes the version
|
* The version of the format in which the .kotlin_builtins file is stored. This version also includes the version
|
||||||
@@ -28,5 +30,10 @@ class BuiltInsBinaryVersion(vararg numbers: Int) : BinaryVersion(*numbers) {
|
|||||||
companion object {
|
companion object {
|
||||||
@JvmField
|
@JvmField
|
||||||
val INSTANCE = BuiltInsBinaryVersion(1, 0, 0)
|
val INSTANCE = BuiltInsBinaryVersion(1, 0, 0)
|
||||||
|
|
||||||
|
fun readFrom(stream: InputStream): BuiltInsBinaryVersion {
|
||||||
|
val dataInput = DataInputStream(stream)
|
||||||
|
return BuiltInsBinaryVersion(*(1..dataInput.readInt()).map { dataInput.readInt() }.toIntArray())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,6 @@ import org.jetbrains.kotlin.serialization.deserialization.DeserializedPackageFra
|
|||||||
import org.jetbrains.kotlin.serialization.deserialization.NameResolverImpl
|
import org.jetbrains.kotlin.serialization.deserialization.NameResolverImpl
|
||||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPackageMemberScope
|
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedPackageMemberScope
|
||||||
import org.jetbrains.kotlin.storage.StorageManager
|
import org.jetbrains.kotlin.storage.StorageManager
|
||||||
import java.io.DataInputStream
|
|
||||||
import java.io.InputStream
|
import java.io.InputStream
|
||||||
|
|
||||||
class BuiltinsPackageFragment(
|
class BuiltinsPackageFragment(
|
||||||
@@ -34,8 +33,7 @@ class BuiltinsPackageFragment(
|
|||||||
) : DeserializedPackageFragment(fqName, storageManager, module, BuiltInsSerializedResourcePaths, loadResource) {
|
) : DeserializedPackageFragment(fqName, storageManager, module, BuiltInsSerializedResourcePaths, loadResource) {
|
||||||
private val builtinsMessage = run {
|
private val builtinsMessage = run {
|
||||||
val stream = loadResourceSure(BuiltInsSerializedResourcePaths.getBuiltInsFilePath(fqName))
|
val stream = loadResourceSure(BuiltInsSerializedResourcePaths.getBuiltInsFilePath(fqName))
|
||||||
val dataInput = DataInputStream(stream)
|
val version = BuiltInsBinaryVersion.readFrom(stream)
|
||||||
val version = BuiltInsBinaryVersion(*(1..dataInput.readInt()).map { dataInput.readInt() }.toIntArray())
|
|
||||||
|
|
||||||
if (!version.isCompatible()) {
|
if (!version.isCompatible()) {
|
||||||
// TODO: report a proper diagnostic
|
// TODO: report a proper diagnostic
|
||||||
|
|||||||
Reference in New Issue
Block a user