From 90ae416b72dd6eb0476240723e3f0e93d909c694 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Sat, 14 Mar 2020 23:48:44 +0100 Subject: [PATCH] Minor, move KotlinTypeRefinerImpl out of 'config' package --- .../kotlin/config/CommonConfigurationKeys.kt | 3 +++ .../org/jetbrains/kotlin/frontend/di/injection.kt | 6 ++++-- .../{config => types}/KotlinTypeRefinerImpl.kt | 12 +++--------- 3 files changed, 10 insertions(+), 11 deletions(-) rename compiler/frontend/src/org/jetbrains/kotlin/{config => types}/KotlinTypeRefinerImpl.kt (92%) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt b/compiler/frontend/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt index 0ec525283b7..a79a4954e88 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt @@ -52,3 +52,6 @@ object CommonConfigurationKeys { var CompilerConfiguration.languageVersionSettings: LanguageVersionSettings get() = get(CommonConfigurationKeys.LANGUAGE_VERSION_SETTINGS, LanguageVersionSettingsImpl.DEFAULT) set(value) = put(CommonConfigurationKeys.LANGUAGE_VERSION_SETTINGS, value) + +val LanguageVersionSettings.isTypeRefinementEnabled: Boolean + get() = getFlag(AnalysisFlags.useTypeRefinement) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/frontend/di/injection.kt b/compiler/frontend/src/org/jetbrains/kotlin/frontend/di/injection.kt index cce536c590c..e5020540a3c 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/frontend/di/injection.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/frontend/di/injection.kt @@ -16,8 +16,8 @@ package org.jetbrains.kotlin.frontend.di -import org.jetbrains.kotlin.platform.TargetPlatform -import org.jetbrains.kotlin.config.* +import org.jetbrains.kotlin.config.LanguageVersionSettings +import org.jetbrains.kotlin.config.isTypeRefinementEnabled import org.jetbrains.kotlin.container.StorageComponentContainer import org.jetbrains.kotlin.container.useImpl import org.jetbrains.kotlin.container.useInstance @@ -26,6 +26,7 @@ import org.jetbrains.kotlin.contracts.ContractDeserializerImpl import org.jetbrains.kotlin.extensions.StorageComponentContainerContributor import org.jetbrains.kotlin.incremental.components.ExpectActualTracker import org.jetbrains.kotlin.incremental.components.LookupTracker +import org.jetbrains.kotlin.platform.TargetPlatform import org.jetbrains.kotlin.platform.TargetPlatformVersion import org.jetbrains.kotlin.platform.isCommon import org.jetbrains.kotlin.resolve.* @@ -36,6 +37,7 @@ import org.jetbrains.kotlin.resolve.checkers.ExpectedActualDeclarationChecker import org.jetbrains.kotlin.resolve.checkers.ExperimentalUsageChecker import org.jetbrains.kotlin.resolve.lazy.* import org.jetbrains.kotlin.resolve.lazy.declarations.DeclarationProviderFactory +import org.jetbrains.kotlin.types.KotlinTypeRefinerImpl import org.jetbrains.kotlin.types.checker.KotlinTypeRefiner import org.jetbrains.kotlin.types.checker.NewKotlinTypeCheckerImpl import org.jetbrains.kotlin.types.expressions.DeclarationScopeProviderForLocalClassifierAnalyzer diff --git a/compiler/frontend/src/org/jetbrains/kotlin/config/KotlinTypeRefinerImpl.kt b/compiler/frontend/src/org/jetbrains/kotlin/types/KotlinTypeRefinerImpl.kt similarity index 92% rename from compiler/frontend/src/org/jetbrains/kotlin/config/KotlinTypeRefinerImpl.kt rename to compiler/frontend/src/org/jetbrains/kotlin/types/KotlinTypeRefinerImpl.kt index 13cc6bb9393..0b34268da17 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/config/KotlinTypeRefinerImpl.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/types/KotlinTypeRefinerImpl.kt @@ -1,9 +1,9 @@ /* - * Copyright 2010-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license - * that can be found in the license/LICENSE.txt file. + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. */ -package org.jetbrains.kotlin.config +package org.jetbrains.kotlin.types import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.name.ClassId @@ -11,13 +11,10 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.classId import org.jetbrains.kotlin.resolve.descriptorUtil.module import org.jetbrains.kotlin.resolve.scopes.MemberScope import org.jetbrains.kotlin.storage.StorageManager -import org.jetbrains.kotlin.types.KotlinType -import org.jetbrains.kotlin.types.TypeConstructor import org.jetbrains.kotlin.types.checker.KotlinTypeRefiner import org.jetbrains.kotlin.types.checker.NewCapturedTypeConstructor import org.jetbrains.kotlin.types.checker.REFINER_CAPABILITY import org.jetbrains.kotlin.types.refinement.TypeRefinement -import org.jetbrains.kotlin.types.replace import org.jetbrains.kotlin.utils.DFS import org.jetbrains.kotlin.utils.addToStdlib.safeAs @@ -139,9 +136,6 @@ class KotlinTypeRefinerImpl( } } -val LanguageVersionSettings.isTypeRefinementEnabled: Boolean - get() = getFlag(AnalysisFlags.useTypeRefinement) - private val TypeConstructor.allDependentTypeConstructors: Collection get() = when (this) { is NewCapturedTypeConstructor -> {