Refactoring: move createResolverForModule() into ResolverForProjectImpl

This commit is contained in:
Dmitry Jemerov
2017-07-26 15:23:51 +02:00
parent fcc067435e
commit aafe7e6f1b
5 changed files with 53 additions and 40 deletions
@@ -43,13 +43,13 @@ class JvmPlatformParameters(
) : PlatformAnalysisParameters
object JvmAnalyzerFacade : AnalyzerFacade<JvmPlatformParameters>() {
object JvmAnalyzerFacade : AnalyzerFacade() {
override fun <M : ModuleInfo> createResolverForModule(
moduleInfo: M,
moduleDescriptor: ModuleDescriptorImpl,
moduleContext: ModuleContext,
moduleContent: ModuleContent,
platformParameters: JvmPlatformParameters,
platformParameters: PlatformAnalysisParameters,
targetEnvironment: TargetEnvironment,
resolverForProject: ResolverForProject<M>,
languageSettingsProvider: LanguageSettingsProvider,
@@ -64,7 +64,7 @@ object JvmAnalyzerFacade : AnalyzerFacade<JvmPlatformParameters>() {
)
val moduleClassResolver = ModuleClassResolverImpl { javaClass ->
val referencedClassModule = platformParameters.moduleByJavaClass(javaClass)
val referencedClassModule = (platformParameters as JvmPlatformParameters).moduleByJavaClass(javaClass)
// We don't have full control over idea resolve api so we allow for a situation which should not happen in Kotlin.
// For example, type in a java library can reference a class declared in a source root (is valid but rare case)
// Providing a fallback strategy in this case can hide future problems, so we should at least log to be able to diagnose those