aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Ogorodnik <Simon.Ogorodnik@jetbrains.com>2018-09-20 19:51:58 +0300
committerSimon Ogorodnik <Simon.Ogorodnik@jetbrains.com>2018-09-20 19:51:58 +0300
commitd80b38a15c1a43c687957403c77b35deba05bd9e (patch)
treead6fba350f37214dc04228681b8fd24762a42b3e
parent6a2eae521d49a9b996d5326ed2339b0d8f94b60f (diff)
downloaddokka-d80b38a15c1a43c687957403c77b35deba05bd9e.tar.gz
dokka-d80b38a15c1a43c687957403c77b35deba05bd9e.tar.bz2
dokka-d80b38a15c1a43c687957403c77b35deba05bd9e.zip
Quick hack to make native work
-rw-r--r--core/src/main/kotlin/Analysis/DokkaAnalyzerFacades.kt26
1 files changed, 15 insertions, 11 deletions
diff --git a/core/src/main/kotlin/Analysis/DokkaAnalyzerFacades.kt b/core/src/main/kotlin/Analysis/DokkaAnalyzerFacades.kt
index 442940fd..082d3968 100644
--- a/core/src/main/kotlin/Analysis/DokkaAnalyzerFacades.kt
+++ b/core/src/main/kotlin/Analysis/DokkaAnalyzerFacades.kt
@@ -12,10 +12,12 @@ import org.jetbrains.kotlin.context.ModuleContext
import org.jetbrains.kotlin.descriptors.impl.CompositePackageFragmentProvider
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl
import org.jetbrains.kotlin.frontend.di.configureModule
-import org.jetbrains.kotlin.ide.konan.createPackageFragmentProviderForLibraryModule
-import org.jetbrains.kotlin.idea.caches.project.LibraryInfo
+import org.jetbrains.kotlin.ide.konan.KOTLIN_NATIVE_CURRENT_ABI_VERSION
+import org.jetbrains.kotlin.ide.konan.createPackageFragmentProvider
import org.jetbrains.kotlin.incremental.components.LookupTracker
import org.jetbrains.kotlin.js.resolve.JsPlatform
+import org.jetbrains.kotlin.konan.file.File
+import org.jetbrains.kotlin.konan.library.createKonanLibrary
import org.jetbrains.kotlin.resolve.*
import org.jetbrains.kotlin.resolve.konan.platform.KonanPlatform
import org.jetbrains.kotlin.resolve.lazy.ResolveSession
@@ -143,17 +145,19 @@ object DokkaNativeAnalyzerFacade : ResolverForModuleFactory() {
val moduleInfo = moduleContent.moduleInfo
- if (moduleInfo is LibraryInfo) {
- val libPackageFragmentProviders = moduleInfo.createPackageFragmentProviderForLibraryModule(
- moduleContext.storageManager,
- languageVersionSettings,
- moduleDescriptor
- )
- fragmentProviders.addAll(libPackageFragmentProviders)
- //TODO: Forward declarations?
+ if (moduleInfo is LibraryModuleInfo) {
+ moduleInfo.getLibraryRoots()
+ .map { createKonanLibrary(File(it), KOTLIN_NATIVE_CURRENT_ABI_VERSION) }
+ .mapTo(fragmentProviders) {
+ it.createPackageFragmentProvider(
+ moduleContext.storageManager,
+ languageVersionSettings,
+ moduleDescriptor
+ )
+ }
+
}
return ResolverForModule(CompositePackageFragmentProvider(fragmentProviders), container)
}
}
-