diff options
author | Dmitry Jemerov <yole@jetbrains.com> | 2015-02-16 12:32:41 +0100 |
---|---|---|
committer | Dmitry Jemerov <yole@jetbrains.com> | 2015-02-16 12:32:48 +0100 |
commit | 4a458963ff15d113d7833cebba55065a910b135c (patch) | |
tree | 71276d0a626d9520f1a092999af402540819a273 /src/Java/JavaDocumentationBuilder.kt | |
parent | 77effb4fa1e9263c30ef3594934e91d51df6bae3 (diff) | |
download | dokka-4a458963ff15d113d7833cebba55065a910b135c.tar.gz dokka-4a458963ff15d113d7833cebba55065a910b135c.tar.bz2 dokka-4a458963ff15d113d7833cebba55065a910b135c.zip |
handle vararg types
Diffstat (limited to 'src/Java/JavaDocumentationBuilder.kt')
-rw-r--r-- | src/Java/JavaDocumentationBuilder.kt | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Java/JavaDocumentationBuilder.kt b/src/Java/JavaDocumentationBuilder.kt index c76c4c33..9d8c85a9 100644 --- a/src/Java/JavaDocumentationBuilder.kt +++ b/src/Java/JavaDocumentationBuilder.kt @@ -17,6 +17,7 @@ import com.intellij.psi.PsiArrayType import com.intellij.psi.PsiTypeParameter import com.intellij.psi.javadoc.PsiDocTag import com.intellij.psi.javadoc.PsiDocTagValue +import com.intellij.psi.PsiEllipsisType public class JavaDocumentationBuilder() { fun appendFile(file: PsiJavaFile, module: DocumentationModule) { @@ -107,6 +108,9 @@ public class JavaDocumentationBuilder() { fun PsiParameter.build(): DocumentationNode { val node = DocumentationNode(this, Kind.Parameter) node.appendType(getType()) + if (getType() is PsiEllipsisType) { + node.append(DocumentationNode("vararg", Content.Empty, Kind.Annotation), DocumentationReference.Kind.Annotation) + } return node } @@ -150,6 +154,7 @@ public class JavaDocumentationBuilder() { PsiType.VOID -> "Unit" is PsiPrimitiveType -> psiType.getCanonicalText().capitalize() is PsiClassType -> psiType.getClassName() + is PsiEllipsisType -> mapTypeName(psiType.getComponentType()) is PsiArrayType -> "Array<${mapTypeName(psiType.getComponentType())}>" else -> psiType.getCanonicalText() } |