FIR IDE: remove unused FirIdeModuleLibraryDependenciesSymbolProvider
This commit is contained in:
-45
@@ -1,45 +0,0 @@
|
||||
/*
|
||||
* 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.idea.fir.low.level.api
|
||||
|
||||
import org.jetbrains.kotlin.fir.dependenciesWithoutSelf
|
||||
import org.jetbrains.kotlin.fir.java.FirLibrarySession
|
||||
import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirDependenciesSymbolProviderImpl
|
||||
import org.jetbrains.kotlin.idea.caches.project.IdeaModuleInfo
|
||||
import org.jetbrains.kotlin.idea.caches.project.isLibraryClasses
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.IDEPackagePartProvider
|
||||
import org.jetbrains.kotlin.idea.fir.low.level.api.annotations.NotThreadSafe
|
||||
|
||||
|
||||
@NotThreadSafe
|
||||
//todo make thread safe
|
||||
internal class FirIdeModuleLibraryDependenciesSymbolProvider(
|
||||
session: FirIdeJavaModuleBasedSession
|
||||
) : FirDependenciesSymbolProviderImpl(session) {
|
||||
override val dependencyProviders: List<FirSymbolProvider> by lazy {
|
||||
val moduleInfo = session.moduleInfo
|
||||
val sessionProvider = session.sessionProvider ?: error("No session provider found")
|
||||
val project = sessionProvider.project
|
||||
|
||||
val dependencies = moduleInfo.dependenciesWithoutSelf()
|
||||
.filterIsInstance<IdeaModuleInfo>()
|
||||
.mapNotNull { dependencyInfo ->
|
||||
val dependencySession = if (dependencyInfo.isLibraryClasses()) {
|
||||
val dependencyScope = dependencyInfo.contentScope()
|
||||
FirLibrarySession.create(
|
||||
dependencyInfo, sessionProvider as FirProjectSessionProvider,
|
||||
dependencyScope, project, IDEPackagePartProvider(dependencyScope)
|
||||
)
|
||||
} else null
|
||||
dependencySession?.firSymbolProvider
|
||||
}.toList()
|
||||
dependencies
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user