aboutsummaryrefslogtreecommitdiff
path: root/core/src/main/kotlin
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/kotlin')
-rw-r--r--core/src/main/kotlin/Analysis/AnalysisEnvironment.kt592
-rw-r--r--core/src/main/kotlin/Analysis/CoreKotlinCacheService.kt42
-rw-r--r--core/src/main/kotlin/Analysis/CoreProjectFileIndex.kt569
-rw-r--r--core/src/main/kotlin/Analysis/JavaResolveExtension.kt128
-rw-r--r--core/src/main/kotlin/CoreExtensions.kt29
-rw-r--r--core/src/main/kotlin/DokkaBootstrap.kt11
-rw-r--r--core/src/main/kotlin/DokkaBootstrapImpl.kt90
-rw-r--r--core/src/main/kotlin/DokkaException.kt3
-rw-r--r--core/src/main/kotlin/DokkaGenerator.kt164
-rw-r--r--core/src/main/kotlin/DokkaMultimoduleBootstrapImpl.kt29
-rw-r--r--core/src/main/kotlin/DokkaVersion.kt10
-rw-r--r--core/src/main/kotlin/Formats/AnalysisComponents.kt45
-rw-r--r--core/src/main/kotlin/Formats/FormatDescriptor.kt43
-rw-r--r--core/src/main/kotlin/Formats/FormatService.kt32
-rw-r--r--core/src/main/kotlin/Formats/GFMFormatService.kt61
-rw-r--r--core/src/main/kotlin/Formats/HtmlFormatService.kt166
-rw-r--r--core/src/main/kotlin/Formats/HtmlTemplateService.kt38
-rw-r--r--core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlPackageListService.kt117
-rw-r--r--core/src/main/kotlin/Formats/JavaLayoutHtmlFormat.kt91
-rw-r--r--core/src/main/kotlin/Formats/JekyllFormatService.kt44
-rw-r--r--core/src/main/kotlin/Formats/KotlinWebsiteHtmlFormatService.kt264
-rw-r--r--core/src/main/kotlin/Formats/MarkdownFormatService.kt250
-rw-r--r--core/src/main/kotlin/Formats/OutlineService.kt29
-rw-r--r--core/src/main/kotlin/Formats/PackageListService.kt66
-rw-r--r--core/src/main/kotlin/Formats/StandardFormats.kt55
-rw-r--r--core/src/main/kotlin/Formats/StructuredFormatService.kt1014
-rw-r--r--core/src/main/kotlin/Formats/YamlOutlineService.kt26
-rw-r--r--core/src/main/kotlin/Generation/DocumentationMerger.kt235
-rw-r--r--core/src/main/kotlin/Generation/DokkaGenerator.kt223
-rw-r--r--core/src/main/kotlin/Generation/FileGenerator.kt108
-rw-r--r--core/src/main/kotlin/Generation/Generator.kt29
-rw-r--r--core/src/main/kotlin/Java/JavaPsiDocumentationBuilder.kt361
-rw-r--r--core/src/main/kotlin/Java/JavadocParser.kt401
-rw-r--r--core/src/main/kotlin/Kotlin/ContentBuilder.kt188
-rw-r--r--core/src/main/kotlin/Kotlin/DeclarationLinkResolver.kt73
-rw-r--r--core/src/main/kotlin/Kotlin/DescriptorDocumentationParser.kt177
-rw-r--r--core/src/main/kotlin/Kotlin/DocumentationBuilder.kt1166
-rw-r--r--core/src/main/kotlin/Kotlin/ExternalDocumentationLinkResolver.kt305
-rw-r--r--core/src/main/kotlin/Kotlin/KotlinAsJavaDocumentationBuilder.kt68
-rw-r--r--core/src/main/kotlin/Kotlin/KotlinAsJavaElementSignatureProvider.kt25
-rw-r--r--core/src/main/kotlin/Kotlin/KotlinElementSignatureProvider.kt33
-rw-r--r--core/src/main/kotlin/Kotlin/KotlinLanguageService.kt473
-rw-r--r--core/src/main/kotlin/Languages/CommonLanguageService.kt84
-rw-r--r--core/src/main/kotlin/Languages/JavaLanguageService.kt171
-rw-r--r--core/src/main/kotlin/Languages/LanguageService.kt41
-rw-r--r--core/src/main/kotlin/Languages/NewJavaLanguageService.kt197
-rw-r--r--core/src/main/kotlin/Locations/Location.kt76
-rw-r--r--core/src/main/kotlin/Markdown/MarkdownProcessor.kt53
-rw-r--r--core/src/main/kotlin/Model/Content.kt290
-rw-r--r--core/src/main/kotlin/Model/DocumentationNode.kt276
-rw-r--r--core/src/main/kotlin/Model/DocumentationReference.kt126
-rw-r--r--core/src/main/kotlin/Model/ElementSignatureProvider.kt9
-rw-r--r--core/src/main/kotlin/Model/PackageDocs.kt136
-rw-r--r--core/src/main/kotlin/Model/SourceLinks.kt78
-rw-r--r--core/src/main/kotlin/Samples/DefaultSampleProcessingService.kt103
-rw-r--r--core/src/main/kotlin/Samples/KotlinWebsiteSampleProcessingService.kt197
-rw-r--r--core/src/main/kotlin/Samples/SampleProcessingService.kt9
-rw-r--r--core/src/main/kotlin/Utilities/DokkaLogging.kt27
-rw-r--r--core/src/main/kotlin/Utilities/DokkaModules.kt85
-rw-r--r--core/src/main/kotlin/Utilities/Links.kt18
-rw-r--r--core/src/main/kotlin/Utilities/Path.kt5
-rw-r--r--core/src/main/kotlin/configuration.kt149
-rw-r--r--core/src/main/kotlin/defaultConfiguration.kt83
-rw-r--r--core/src/main/kotlin/javadoc/docbase.kt539
-rw-r--r--core/src/main/kotlin/javadoc/dokka-adapters.kt42
-rw-r--r--core/src/main/kotlin/javadoc/reporter.kt34
-rw-r--r--core/src/main/kotlin/javadoc/source-position.kt19
-rw-r--r--core/src/main/kotlin/javadoc/tags.kt228
-rw-r--r--core/src/main/kotlin/links/DRI.kt105
-rw-r--r--core/src/main/kotlin/model/Documentable.kt398
-rw-r--r--core/src/main/kotlin/model/WithChildren.kt64
-rw-r--r--core/src/main/kotlin/model/additionalExtras.kt75
-rw-r--r--core/src/main/kotlin/model/classKinds.kt20
-rw-r--r--core/src/main/kotlin/model/defaultValues.kt13
-rw-r--r--core/src/main/kotlin/model/doc/DocTag.kt96
-rw-r--r--core/src/main/kotlin/model/doc/DocumentationNode.kt5
-rw-r--r--core/src/main/kotlin/model/doc/TagWrapper.kt39
-rw-r--r--core/src/main/kotlin/model/documentableProperties.kt27
-rw-r--r--core/src/main/kotlin/model/documentableUtils.kt22
-rw-r--r--core/src/main/kotlin/model/extraModifiers.kt62
-rw-r--r--core/src/main/kotlin/model/properties/PropertyContainer.kt60
-rw-r--r--core/src/main/kotlin/model/properties/properties.kt22
-rw-r--r--core/src/main/kotlin/pages/ContentNodes.kt266
-rw-r--r--core/src/main/kotlin/pages/PageNodes.kt181
-rw-r--r--core/src/main/kotlin/pages/RendererSpecificPage.kt40
-rw-r--r--core/src/main/kotlin/pages/contentNodeProperties.kt12
-rw-r--r--core/src/main/kotlin/pages/utils.kt31
-rw-r--r--core/src/main/kotlin/plugability/DefaultExtensions.kt0
-rw-r--r--core/src/main/kotlin/plugability/DokkaContext.kt223
-rw-r--r--core/src/main/kotlin/plugability/DokkaPlugin.kt82
-rw-r--r--core/src/main/kotlin/plugability/LazyEvaluated.kt16
-rw-r--r--core/src/main/kotlin/plugability/extensions.kt87
-rw-r--r--core/src/main/kotlin/renderers/Renderer.kt7
-rw-r--r--core/src/main/kotlin/transformers/documentation/DocumentableMerger.kt8
-rw-r--r--core/src/main/kotlin/transformers/documentation/DocumentableToPageTranslator.kt9
-rw-r--r--core/src/main/kotlin/transformers/documentation/DocumentableTransformer.kt8
-rw-r--r--core/src/main/kotlin/transformers/documentation/PreMergeDocumentableTransformer.kt8
-rw-r--r--core/src/main/kotlin/transformers/pages/PageCreator.kt8
-rw-r--r--core/src/main/kotlin/transformers/pages/PageTransformer.kt7
-rw-r--r--core/src/main/kotlin/transformers/pages/PageTransformerBuilders.kt22
-rw-r--r--core/src/main/kotlin/transformers/sources/SourceToDocumentableTranslator.kt9
-rw-r--r--core/src/main/kotlin/utilities/DokkaLogging.kt38
-rw-r--r--core/src/main/kotlin/utilities/Html.kt (renamed from core/src/main/kotlin/Utilities/Html.kt)7
-rw-r--r--core/src/main/kotlin/utilities/ServiceLocator.kt (renamed from core/src/main/kotlin/Utilities/ServiceLocator.kt)2
-rw-r--r--core/src/main/kotlin/utilities/Uri.kt (renamed from core/src/main/kotlin/Utilities/Uri.kt)2
-rw-r--r--core/src/main/kotlin/utilities/cast.kt5
-rw-r--r--core/src/main/kotlin/utilities/nodeDebug.kt50
107 files changed, 2670 insertions, 10414 deletions
diff --git a/core/src/main/kotlin/Analysis/AnalysisEnvironment.kt b/core/src/main/kotlin/Analysis/AnalysisEnvironment.kt
deleted file mode 100644
index f5705c89..00000000
--- a/core/src/main/kotlin/Analysis/AnalysisEnvironment.kt
+++ /dev/null
@@ -1,592 +0,0 @@
-package org.jetbrains.dokka
-
-import com.google.common.collect.ImmutableMap
-import com.intellij.core.CoreApplicationEnvironment
-import com.intellij.core.CoreModuleManager
-import com.intellij.mock.MockApplication
-import com.intellij.mock.MockComponentManager
-import com.intellij.openapi.Disposable
-import com.intellij.openapi.application.ApplicationManager
-import com.intellij.openapi.extensions.Extensions
-import com.intellij.openapi.module.Module
-import com.intellij.openapi.module.ModuleManager
-import com.intellij.openapi.project.Project
-import com.intellij.openapi.roots.OrderEnumerationHandler
-import com.intellij.openapi.roots.ProjectFileIndex
-import com.intellij.openapi.roots.ProjectRootManager
-import com.intellij.openapi.util.Disposer
-import com.intellij.openapi.vfs.StandardFileSystems
-import com.intellij.psi.PsiElement
-import com.intellij.psi.search.GlobalSearchScope
-import org.jetbrains.kotlin.analyzer.*
-import org.jetbrains.kotlin.analyzer.common.CommonAnalysisParameters
-import org.jetbrains.kotlin.analyzer.common.CommonPlatformAnalyzerServices
-import org.jetbrains.kotlin.analyzer.common.CommonResolverForModuleFactory
-import org.jetbrains.kotlin.builtins.DefaultBuiltIns
-import org.jetbrains.kotlin.builtins.KotlinBuiltIns
-import org.jetbrains.kotlin.builtins.jvm.JvmBuiltIns
-import org.jetbrains.kotlin.caches.resolve.KotlinCacheService
-import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
-import org.jetbrains.kotlin.cli.common.config.ContentRoot
-import org.jetbrains.kotlin.cli.common.config.KotlinSourceRoot
-import org.jetbrains.kotlin.cli.common.config.addKotlinSourceRoot
-import org.jetbrains.kotlin.cli.common.messages.MessageCollector
-import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
-import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackagePartProvider
-import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
-import org.jetbrains.kotlin.cli.jvm.compiler.TopDownAnalyzerFacadeForJVM
-import org.jetbrains.kotlin.cli.jvm.config.*
-import org.jetbrains.kotlin.cli.jvm.index.JavaRoot
-import org.jetbrains.kotlin.config.*
-import org.jetbrains.kotlin.container.getService
-import org.jetbrains.kotlin.container.tryGetService
-import org.jetbrains.kotlin.context.ProjectContext
-import org.jetbrains.kotlin.context.withModule
-import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
-import org.jetbrains.kotlin.descriptors.ModuleDescriptor
-import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl
-import org.jetbrains.kotlin.ide.konan.NativeLibraryInfo
-import org.jetbrains.kotlin.ide.konan.analyzer.NativeResolverForModuleFactory
-import org.jetbrains.kotlin.ide.konan.decompiler.KotlinNativeLoadingMetadataCache
-import org.jetbrains.kotlin.idea.resolve.ResolutionFacade
-import org.jetbrains.kotlin.js.config.JSConfigurationKeys
-import org.jetbrains.kotlin.js.resolve.JsPlatformAnalyzerServices
-import org.jetbrains.kotlin.js.resolve.JsResolverForModuleFactory
-import org.jetbrains.kotlin.library.impl.createKotlinLibrary
-import org.jetbrains.kotlin.load.java.structure.impl.JavaClassImpl
-import org.jetbrains.kotlin.name.Name
-import org.jetbrains.kotlin.platform.CommonPlatforms
-import org.jetbrains.kotlin.platform.TargetPlatform
-import org.jetbrains.kotlin.platform.js.JsPlatforms
-import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
-import org.jetbrains.kotlin.platform.jvm.JvmPlatforms.unspecifiedJvmPlatform
-import org.jetbrains.kotlin.platform.konan.KonanPlatforms
-import org.jetbrains.kotlin.psi.*
-import org.jetbrains.kotlin.resolve.BindingContext
-import org.jetbrains.kotlin.resolve.BindingTrace
-import org.jetbrains.kotlin.resolve.CompilerEnvironment
-import org.jetbrains.kotlin.resolve.PlatformDependentAnalyzerServices
-import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics
-import org.jetbrains.kotlin.resolve.jvm.JvmPlatformParameters
-import org.jetbrains.kotlin.resolve.jvm.JvmResolverForModuleFactory
-import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatformAnalyzerServices
-import org.jetbrains.kotlin.resolve.konan.platform.NativePlatformAnalyzerServices
-import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode
-import org.jetbrains.kotlin.resolve.lazy.ResolveSession
-import org.jetbrains.kotlin.types.KotlinType
-import org.jetbrains.kotlin.util.slicedMap.ReadOnlySlice
-import org.jetbrains.kotlin.util.slicedMap.WritableSlice
-import java.io.File
-
-const val JAR_SEPARATOR = "!/"
-const val KLIB_EXTENSION = "klib"
-
-/**
- * Kotlin as a service entry point
- *
- * Configures environment, analyses files and provides facilities to perform code processing without emitting bytecode
- *
- * $messageCollector: required by compiler infrastructure and will receive all compiler messages
- * $body: optional and can be used to configure environment without creating local variable
- */
-class AnalysisEnvironment(val messageCollector: MessageCollector, val analysisPlatform: Platform) : Disposable {
- val configuration = CompilerConfiguration()
-
- init {
- configuration.put(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, messageCollector)
- }
-
- fun createCoreEnvironment(): KotlinCoreEnvironment {
- System.setProperty("idea.io.use.fallback", "true")
-
- val configFiles = when (analysisPlatform) {
- Platform.jvm, Platform.common -> EnvironmentConfigFiles.JVM_CONFIG_FILES
- Platform.native -> EnvironmentConfigFiles.NATIVE_CONFIG_FILES
- Platform.js -> EnvironmentConfigFiles.JS_CONFIG_FILES
- }
-
- val environment = KotlinCoreEnvironment.createForProduction(this, configuration, configFiles)
- val projectComponentManager = environment.project as MockComponentManager
-
- val projectFileIndex = CoreProjectFileIndex(
- environment.project,
- environment.configuration.getList(CLIConfigurationKeys.CONTENT_ROOTS)
- )
-
- val moduleManager = object : CoreModuleManager(environment.project, this) {
- override fun getModules(): Array<out Module> = arrayOf(projectFileIndex.module)
- }
-
- CoreApplicationEnvironment.registerComponentInstance(
- projectComponentManager.picoContainer,
- ModuleManager::class.java, moduleManager
- )
-
- Extensions.registerAreaClass("IDEA_MODULE", null)
- CoreApplicationEnvironment.registerExtensionPoint(
- Extensions.getRootArea(),
- OrderEnumerationHandler.EP_NAME, OrderEnumerationHandler.Factory::class.java
- )
-
- projectComponentManager.registerService(
- ProjectFileIndex::class.java,
- projectFileIndex
- )
-
- projectComponentManager.registerService(
- ProjectRootManager::class.java,
- CoreProjectRootMa