aboutsummaryrefslogtreecommitdiff
path: root/src/Kotlin
diff options
context:
space:
mode:
authorDmitry Jemerov <yole@jetbrains.com>2015-11-04 17:47:45 +0100
committerDmitry Jemerov <yole@jetbrains.com>2015-11-04 17:47:45 +0100
commit66cb1d596053d631006bd754c5d0942d9508466a (patch)
tree5e7f06d3a52dab3d1cd63c705fdfe7f0f86f5d50 /src/Kotlin
parent852b4c439b54d9244bbebe421952defa632ad985 (diff)
downloaddokka-66cb1d596053d631006bd754c5d0942d9508466a.tar.gz
dokka-66cb1d596053d631006bd754c5d0942d9508466a.tar.bz2
dokka-66cb1d596053d631006bd754c5d0942d9508466a.zip
hide private and internal members from javadoc
Diffstat (limited to 'src/Kotlin')
-rw-r--r--src/Kotlin/KotlinAsJavaDocumentationBuilder.kt11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/Kotlin/KotlinAsJavaDocumentationBuilder.kt b/src/Kotlin/KotlinAsJavaDocumentationBuilder.kt
index 3d3f0b00..b5dc47a3 100644
--- a/src/Kotlin/KotlinAsJavaDocumentationBuilder.kt
+++ b/src/Kotlin/KotlinAsJavaDocumentationBuilder.kt
@@ -2,11 +2,14 @@ package org.jetbrains.dokka
import com.google.inject.Inject
import com.intellij.psi.JavaPsiFacade
+import com.intellij.psi.PsiClass
import com.intellij.psi.PsiNamedElement
import org.jetbrains.dokka.Kotlin.DescriptorDocumentationParser
import org.jetbrains.kotlin.asJava.KotlinLightElement
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
+import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.name.FqName
+import org.jetbrains.kotlin.psi.KtDeclaration
import org.jetbrains.kotlin.psi.KtParameter
import org.jetbrains.kotlin.psi.KtPropertyAccessor
@@ -28,10 +31,16 @@ class KotlinAsJavaDocumentationBuilder
documentationBuilder.refGraph,
kotlinAsJavaDocumentationParser)
- psiPackage.classes.filter { it is KotlinLightElement<*, *> }.forEach {
+ psiPackage.classes.filter { it is KotlinLightElement<*, *> }.filter { it.isVisibleInDocumentation() }.forEach {
javaDocumentationBuilder.appendClasses(packageNode, arrayOf(it))
}
}
+
+ fun PsiClass.isVisibleInDocumentation() : Boolean {
+ val origin: KtDeclaration? = (this as KotlinLightElement<*, *>).getOrigin()
+ return origin?.hasModifier(KtTokens.INTERNAL_KEYWORD) != true &&
+ origin?.hasModifier(KtTokens.PRIVATE_KEYWORD) != true
+ }
}
class KotlinAsJavaDocumentationParser