Extract skipPreReleaseCheck out of DeserializationConfiguration.skipMetadataVersionCheck

This commit is contained in:
Alexander Udalov
2017-10-12 18:08:06 +02:00
parent 8a0dcca957
commit 3665255a2b
4 changed files with 9 additions and 4 deletions
@@ -22,10 +22,12 @@ import org.jetbrains.kotlin.config.LanguageVersionSettings
import org.jetbrains.kotlin.serialization.deserialization.DeserializationConfiguration
class CompilerDeserializationConfiguration(languageVersionSettings: LanguageVersionSettings) : DeserializationConfiguration {
override val typeAliasesAllowed = languageVersionSettings.supportsFeature(LanguageFeature.TypeAliases)
override val skipMetadataVersionCheck = languageVersionSettings.getFlag(AnalysisFlag.skipMetadataVersionCheck)
override val skipPreReleaseCheck = skipMetadataVersionCheck
override val typeAliasesAllowed = languageVersionSettings.supportsFeature(LanguageFeature.TypeAliases)
override val isJvmPackageNameSupported = languageVersionSettings.supportsFeature(LanguageFeature.JvmPackageName)
override val returnsEffectAllowed: Boolean = languageVersionSettings.supportsFeature(LanguageFeature.ReturnsEffect)
@@ -76,7 +76,7 @@ class DeserializedDescriptorResolver {
}
private val KotlinJvmBinaryClass.isPreReleaseInvisible: Boolean
get() = !skipMetadataVersionCheck &&
get() = !components.configuration.skipPreReleaseCheck &&
!KotlinCompilerVersion.isPreRelease() &&
(classHeader.isPreRelease || classHeader.metadataVersion == KOTLIN_1_1_EAP_METADATA_VERSION)
@@ -20,6 +20,9 @@ interface DeserializationConfiguration {
val skipMetadataVersionCheck: Boolean
get() = false
val skipPreReleaseCheck: Boolean
get() = false
val typeAliasesAllowed: Boolean
get() = true
@@ -80,7 +80,7 @@ class KotlinJavascriptPackageFragment(
get() = null
override val isPreReleaseInvisible: Boolean =
!configuration.skipMetadataVersionCheck && (header.flags and 1) != 0 && !KotlinCompilerVersion.isPreRelease()
!configuration.skipPreReleaseCheck && (header.flags and 1) != 0 && !KotlinCompilerVersion.isPreRelease()
override val presentableString: String
get() = "Package '$fqName'"