AA: use package part info (if available) when searching for PSI from binary module
This commit is contained in:
committed by
Nikolay Krasko
parent
d0a8eb5c54
commit
b173b1fe24
+3
@@ -9,10 +9,13 @@ import com.intellij.core.CoreApplicationEnvironment
|
||||
import com.intellij.mock.MockProject
|
||||
import com.intellij.openapi.application.Application
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreProjectEnvironment
|
||||
import org.jetbrains.kotlin.load.kotlin.PackagePartProvider
|
||||
|
||||
public class StandaloneAnalysisAPISession internal constructor(
|
||||
kotlinCoreProjectEnvironment: KotlinCoreProjectEnvironment,
|
||||
public val createPackagePartProvider: (GlobalSearchScope) -> PackagePartProvider,
|
||||
) {
|
||||
// TODO: better to limit exposure? Current usages are: addExtension, jarFileSystem
|
||||
public val coreApplicationEnvironment: CoreApplicationEnvironment = kotlinCoreProjectEnvironment.environment
|
||||
|
||||
+5
-2
@@ -195,16 +195,19 @@ public class StandaloneAnalysisAPISessionBuilder(
|
||||
val project = kotlinCoreProjectEnvironment.project
|
||||
val ktFiles = allSourceFiles.filterIsInstance<KtFile>()
|
||||
val libraryRoots = StandaloneProjectFactory.getAllBinaryRoots(modules, kotlinCoreProjectEnvironment)
|
||||
registerProjectServices(
|
||||
ktFiles,
|
||||
val createPackagePartProvider =
|
||||
StandaloneProjectFactory.createPackagePartsProvider(
|
||||
project,
|
||||
libraryRoots,
|
||||
)
|
||||
registerProjectServices(
|
||||
ktFiles,
|
||||
createPackagePartProvider,
|
||||
)
|
||||
|
||||
return StandaloneAnalysisAPISession(
|
||||
kotlinCoreProjectEnvironment,
|
||||
createPackagePartProvider,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user