diff options
author | Błażej Kardyś <bkardys@virtuslab.com> | 2019-02-05 16:05:15 +0100 |
---|---|---|
committer | Simon Ogorodnik <Simon.Ogorodnik@jetbrains.com> | 2019-02-25 19:45:58 +0300 |
commit | a2104d1e24a452cbfd2a76c204fc58475aa70057 (patch) | |
tree | 414a18a39cfd2436de962e594076a7e0f282581e /core/src | |
parent | 5b451ab6abf60e15c8044daebc90c3a46c21c4fb (diff) | |
download | dokka-a2104d1e24a452cbfd2a76c204fc58475aa70057.tar.gz dokka-a2104d1e24a452cbfd2a76c204fc58475aa70057.tar.bz2 dokka-a2104d1e24a452cbfd2a76c204fc58475aa70057.zip |
Fix @deprecated visibility in JavaDoc (#420)
#343 Fixed
Diffstat (limited to 'core/src')
-rw-r--r-- | core/src/main/kotlin/Java/JavadocParser.kt | 7 | ||||
-rw-r--r-- | core/src/test/kotlin/javadoc/JavadocTest.kt | 10 |
2 files changed, 14 insertions, 3 deletions
diff --git a/core/src/main/kotlin/Java/JavadocParser.kt b/core/src/main/kotlin/Java/JavadocParser.kt index d6e46c50..39a4568a 100644 --- a/core/src/main/kotlin/Java/JavadocParser.kt +++ b/core/src/main/kotlin/Java/JavadocParser.kt @@ -83,7 +83,7 @@ class JavadocParser( "see" -> result.convertSeeTag(tag) "deprecated" -> { deprecatedContent = Content().apply { - appendAll(convertJavadocElements(tag.contentElements(), element)) + appendAll(convertJavadocElements(tag.contentElementsOrFirstChild(), element)) } } in tagsToInherit -> {} @@ -122,9 +122,10 @@ class JavadocParser( recursiveSearch(arrayOf(this)) return output.mapValues { it.value.values } } + private fun PsiDocTag.contentElementsOrFirstChild(): Collection<PsiElement> = contentElements() + .takeIf { it.isNotEmpty() } ?: children.take(1) - - private fun PsiDocTag.contentElements(): Iterable<PsiElement> { + private fun PsiDocTag.contentElements(): Collection<PsiElement> { val tagValueElements = children .dropWhile { it.node?.elementType == JavaDocTokenType.DOC_TAG_NAME } .dropWhile { it is PsiWhiteSpace } diff --git a/core/src/test/kotlin/javadoc/JavadocTest.kt b/core/src/test/kotlin/javadoc/JavadocTest.kt index 9ca668d8..7f1b44da 100644 --- a/core/src/test/kotlin/javadoc/JavadocTest.kt +++ b/core/src/test/kotlin/javadoc/JavadocTest.kt @@ -233,6 +233,16 @@ class JavadocTest { } } + @Test fun shouldHaveAllFunctionMarkedAsDeprecated() { + verifyJavadoc("testdata/javadoc/deprecated.java") { doc -> + val classDoc = doc.classNamed("bar.Banana")!! + + classDoc.methods().forEach { + assertNotNull((it as? DocumentationNodeAdapter)?.node?.deprecation) + } + } + } + private fun verifyJavadoc(name: String, withJdk: Boolean = false, withKotlinRuntime: Boolean = false, |