Use script compiler options to calculate target platform in IDE

#KT-25822 fixed
This commit is contained in:
Ilya Chernikov
2018-07-31 13:39:44 +02:00
parent 0cf6b26494
commit f2395bac2f
4 changed files with 32 additions and 17 deletions
@@ -188,7 +188,7 @@ class ResolverForProjectImpl<M : ModuleInfo>(
val languageVersionSettings =
moduleLanguageSettingsProvider.getLanguageVersionSettings(module, projectContext.project, isReleaseCoroutines)
val targetPlatformVersion = moduleLanguageSettingsProvider.getTargetPlatform(module)
val targetPlatformVersion = moduleLanguageSettingsProvider.getTargetPlatform(module, projectContext.project)
resolverForModuleFactory.createResolverForModule(
descriptor as ModuleDescriptorImpl,
@@ -433,7 +433,7 @@ interface LanguageSettingsProvider {
project: Project
) = getLanguageVersionSettings(moduleInfo, project, null)
fun getTargetPlatform(moduleInfo: ModuleInfo): TargetPlatformVersion
fun getTargetPlatform(moduleInfo: ModuleInfo, project: Project): TargetPlatformVersion
object Default : LanguageSettingsProvider {
override fun getLanguageVersionSettings(
@@ -442,7 +442,7 @@ interface LanguageSettingsProvider {
isReleaseCoroutines: Boolean?
) = LanguageVersionSettingsImpl.DEFAULT
override fun getTargetPlatform(moduleInfo: ModuleInfo): TargetPlatformVersion = TargetPlatformVersion.NoVersion
override fun getTargetPlatform(moduleInfo: ModuleInfo, project: Project): TargetPlatformVersion = TargetPlatformVersion.NoVersion
}
}
@@ -93,7 +93,10 @@ object CommonAnalyzerFacade : ResolverForModuleFactory() {
isReleaseCoroutines: Boolean?
) = multiplatformLanguageSettings
override fun getTargetPlatform(moduleInfo: ModuleInfo) = TargetPlatformVersion.NoVersion
override fun getTargetPlatform(
moduleInfo: ModuleInfo,
project: Project
) = TargetPlatformVersion.NoVersion
},
resolverForModuleFactoryByPlatform = { CommonAnalyzerFacade },
platformParameters = { _ -> CommonAnalysisParameters(metadataPartProviderFactory) }