Make test source module a friend of production source module

This commit is contained in:
Pavel V. Talanov
2014-09-10 21:45:06 +04:00
parent f3a9bed14a
commit 88b262faf1
10 changed files with 292 additions and 13 deletions
@@ -77,6 +77,7 @@ public trait PlatformAnalysisParameters
public trait ModuleInfo {
public val name: Name
public fun dependencies(): List<ModuleInfo>
public fun friends(): Collection<ModuleInfo> = listOf()
public fun dependencyOnBuiltins(): DependencyOnBuiltins = DependenciesOnBuiltins.LAST
//TODO: (module refactoring) provide dependency on builtins after runtime in IDEA
@@ -137,12 +138,24 @@ public trait AnalyzerFacade<out A : ResolverForModule, in P : PlatformAnalysisPa
module.dependencyOnBuiltins().adjustDependencies(builtinsModule, dependenciesDescriptors)
dependenciesDescriptors.forEach { currentModule.addDependencyOnModule(it) }
}
resolverForProject.descriptorByModule.values().forEach { it.seal() }
}
setupModuleDependencies()
fun addFriends() {
modules.forEach {
module ->
val descriptor = resolverForProject.descriptorForModule(module)
module.friends().forEach {
descriptor.addFriend(resolverForProject.descriptorForModule(it as M))
}
}
}
addFriends()
resolverForProject.descriptorByModule.values().forEach { it.seal() }
fun initializeResolverForProject() {
modules.forEach {
module ->