diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/DeclarationProviderFactoryService.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/DeclarationProviderFactoryService.kt index 0189ba26ab6..c81982b93cb 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/DeclarationProviderFactoryService.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/DeclarationProviderFactoryService.kt @@ -18,12 +18,12 @@ package org.jetbrains.kotlin.resolve.lazy.declarations import com.intellij.openapi.components.ServiceManager import com.intellij.openapi.project.Project +import com.intellij.openapi.vfs.VirtualFile import com.intellij.psi.search.DelegatingGlobalSearchScope import com.intellij.psi.search.GlobalSearchScope import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.storage.StorageManager -import com.intellij.openapi.vfs.VirtualFile -import java.util.HashSet +import java.util.* abstract class DeclarationProviderFactoryService { @@ -60,5 +60,7 @@ abstract class DeclarationProviderFactoryService { private val originals = syntheticFiles.mapNotNullTo(HashSet()) { it.originalFile.virtualFile } override fun contains(file: VirtualFile) = super.contains(file) && file !in originals + + override fun toString() = "SyntheticFilesFilteringScope($myBaseScope)" } } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IdeaModuleInfos.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IdeaModuleInfos.kt index e3fb8d90645..3999af97ca9 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IdeaModuleInfos.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IdeaModuleInfos.kt @@ -187,6 +187,8 @@ private class ModuleProductionSourceScope(module: Module) : ModuleSourceScope(mo override fun hashCode(): Int = 31 * module.hashCode() override fun contains(file: VirtualFile) = moduleFileIndex.isInSourceContent(file) && !moduleFileIndex.isInTestSourceContent(file) + + override fun toString() = "ModuleProductionSourceScope($module)" } private class ModuleTestSourceScope(module: Module) : ModuleSourceScope(module) { @@ -200,6 +202,8 @@ private class ModuleTestSourceScope(module: Module) : ModuleSourceScope(module) override fun hashCode(): Int = 37 * module.hashCode() override fun contains(file: VirtualFile) = moduleFileIndex.isInTestSourceContent(file) + + override fun toString() = "ModuleTestSourceScope($module)" } open class LibraryInfo(val project: Project, val library: Library) : IdeaModuleInfo { @@ -287,6 +291,8 @@ private class LibraryWithoutSourceScope(project: Project, private val library: L override fun equals(other: Any?) = other is LibraryWithoutSourceScope && library == other.library override fun hashCode() = library.hashCode() + + override fun toString() = "LibraryWithoutSourceScope($library)" } //TODO: (module refactoring) android sdk has modified scope @@ -296,6 +302,8 @@ private class SdkScope(project: Project, private val sdk: Sdk) : override fun equals(other: Any?) = other is SdkScope && sdk == other.sdk override fun hashCode() = sdk.hashCode() + + override fun toString() = "SdkScope($sdk)" } internal fun IdeaModuleInfo.isLibraryClasses() = this is SdkInfo || this is LibraryInfo diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/stubindex/KotlinSourceFilterScope.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/stubindex/KotlinSourceFilterScope.kt index c648aec0284..4ed7bb72226 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/stubindex/KotlinSourceFilterScope.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/stubindex/KotlinSourceFilterScope.kt @@ -48,6 +48,11 @@ class KotlinSourceFilterScope private constructor( ) } + override fun toString(): String { + return "KotlinSourceFilterScope(delegate=$myBaseScope src=$includeProjectSourceFiles libSrc=$includeLibrarySourceFiles " + + "cls=$includeClassFiles script=$includeScriptDependencies)" + } + companion object { @JvmStatic fun sourcesAndLibraries(delegate: GlobalSearchScope, project: Project) = create(delegate, true, true, true, true, project)