From 05e6c4e0a294890f1e862de1b99493a7847dd47a Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Tue, 29 May 2018 17:29:52 +0200 Subject: [PATCH] Minor: move utils to more appropriate place --- .../idea/caches/project/IdeaModuleInfos.kt | 23 ----------------- .../idea/caches/project/multiplatformUtil.kt | 25 ++++++++++++++++++- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt index e7e3087db15..2db50ff0fae 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt @@ -5,10 +5,7 @@ package org.jetbrains.kotlin.idea.caches.project -import com.intellij.facet.FacetManager -import com.intellij.facet.FacetTypeRegistry import com.intellij.openapi.diagnostic.Logger -import com.intellij.openapi.externalSystem.service.project.IdeModelsProviderImpl import com.intellij.openapi.module.Module import com.intellij.openapi.module.impl.scopes.LibraryScopeBase import com.intellij.openapi.project.Project @@ -34,8 +31,6 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.idea.configuration.BuildSystemType import org.jetbrains.kotlin.idea.configuration.getBuildSystemType import org.jetbrains.kotlin.idea.core.isInTestSourceContentKotlinAware -import org.jetbrains.kotlin.idea.facet.KotlinFacetType -import org.jetbrains.kotlin.idea.facet.KotlinFacetType.Companion.ID import org.jetbrains.kotlin.idea.framework.getLibraryPlatform import org.jetbrains.kotlin.idea.project.KotlinModuleModificationTracker import org.jetbrains.kotlin.idea.project.TargetPlatformDetector @@ -121,24 +116,6 @@ private fun ideaModelDependencies( return result.filterNot { it is LibraryInfo && it.platform != platform } } -fun Module.findImplementedModuleNames(): List { - val facet = FacetManager.getInstance(this).findFacet( - KotlinFacetType.TYPE_ID, - FacetTypeRegistry.getInstance().findFacetType(ID)!!.defaultFacetName - ) - return facet?.configuration?.settings?.implementedModuleNames ?: emptyList() -} - -fun Module.findImplementedModules() = this.cached>( - CachedValueProvider { - val modelsProvider = IdeModelsProviderImpl(project) - CachedValueProvider.Result( - findImplementedModuleNames().mapNotNull { modelsProvider.findIdeModule(it) }, - ProjectRootModificationTracker.getInstance(project) - ) - } -) - interface ModuleSourceInfo : IdeaModuleInfo, TrackableModuleInfo { val module: Module diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt index b33f80e796f..6f0c5167d5a 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt @@ -5,6 +5,9 @@ package org.jetbrains.kotlin.idea.caches.project +import com.intellij.facet.FacetManager +import com.intellij.facet.FacetTypeRegistry +import com.intellij.openapi.externalSystem.service.project.IdeModelsProviderImpl import com.intellij.openapi.module.Module import com.intellij.openapi.module.ModuleManager import com.intellij.openapi.roots.ProjectRootModificationTracker @@ -12,6 +15,8 @@ import com.intellij.psi.util.CachedValueProvider import org.jetbrains.kotlin.analyzer.ModuleInfo import org.jetbrains.kotlin.caches.resolve.KotlinCacheService import org.jetbrains.kotlin.descriptors.ModuleDescriptor +import org.jetbrains.kotlin.idea.facet.KotlinFacetType +import org.jetbrains.kotlin.idea.facet.KotlinFacetType.Companion.ID fun Module.findImplementingModules() = ModuleManager.getInstance(project).modules.filter { name in it.findImplementedModuleNames() } @@ -66,4 +71,22 @@ val ModuleDescriptor.implementedDescriptors: List KotlinCacheService.getInstance(moduleSourceInfo.module.project) .getResolutionFacadeByModuleInfo(it, it.platform)?.moduleDescriptor } - } \ No newline at end of file + } + +fun Module.findImplementedModuleNames(): List { + val facet = FacetManager.getInstance(this).findFacet( + KotlinFacetType.TYPE_ID, + FacetTypeRegistry.getInstance().findFacetType(ID)!!.defaultFacetName + ) + return facet?.configuration?.settings?.implementedModuleNames ?: emptyList() +} + +fun Module.findImplementedModules() = this.cached>( + CachedValueProvider { + val modelsProvider = IdeModelsProviderImpl(project) + CachedValueProvider.Result( + findImplementedModuleNames().mapNotNull { modelsProvider.findIdeModule(it) }, + ProjectRootModificationTracker.getInstance(project) + ) + } +) -- GitLab