Faster startup avoiding unnecessary class loading in HelloWorld.java

This commit is contained in:
Alexander Podkhalyuzin
2019-05-29 14:43:43 +02:00
committed by Vladimir Dolzhenko
parent c853ae49a2
commit 4babde5b46
6 changed files with 53 additions and 28 deletions
@@ -23,9 +23,12 @@ import com.intellij.psi.search.GlobalSearchScope
import org.jetbrains.kotlin.idea.caches.project.ScriptDependenciesInfo
import org.jetbrains.kotlin.idea.caches.project.ScriptDependenciesSourceInfo
import org.jetbrains.kotlin.idea.caches.project.getModuleInfoByVirtualFile
import org.jetbrains.kotlin.idea.core.script.ScriptDependenciesManager
class ScriptDependenciesResolveScopeProvider : ResolveScopeProvider() {
override fun getResolveScope(file: VirtualFile, project: Project): GlobalSearchScope? {
if (ScriptDependenciesManager.getInstance(project).getAllScriptsDependenciesClassFiles().isEmpty()) return null
val moduleInfo = getModuleInfoByVirtualFile(project, file) ?: return null
val scriptDependenciesModuleInfo = (moduleInfo as? ScriptDependenciesInfo)
?: (moduleInfo as? ScriptDependenciesSourceInfo)?.binariesModuleInfo