aboutsummaryrefslogtreecommitdiff
path: root/src/Generation
diff options
context:
space:
mode:
authorIlya Ryzhenkov <orangy@jetbrains.com>2014-07-11 21:43:38 +0400
committerIlya Ryzhenkov <orangy@jetbrains.com>2014-07-11 21:43:38 +0400
commita8e59d7af41ca05b68e2d916552cecbbacbf3e92 (patch)
tree34c95981c8d08fa28706ad1c8d2ccef91e2776ad /src/Generation
parent197a6e486d16d2e3689e900b45c65ef8d598f3b7 (diff)
downloaddokka-a8e59d7af41ca05b68e2d916552cecbbacbf3e92.tar.gz
dokka-a8e59d7af41ca05b68e2d916552cecbbacbf3e92.tar.bz2
dokka-a8e59d7af41ca05b68e2d916552cecbbacbf3e92.zip
Add tests for comment extraction, support one-line and mutliple joined doc-comments.
Start primitive ConsoleGenerator to dump model.
Diffstat (limited to 'src/Generation')
-rw-r--r--src/Generation/ConsoleGenerator.kt27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/Generation/ConsoleGenerator.kt b/src/Generation/ConsoleGenerator.kt
new file mode 100644
index 00000000..e46cac31
--- /dev/null
+++ b/src/Generation/ConsoleGenerator.kt
@@ -0,0 +1,27 @@
+package org.jetbrains.dokka
+
+public class ConsoleGenerator() {
+ val IndentStep = " "
+
+ public fun generate(node: DocumentationNode, indent: String = "") {
+ generateHeader(node, indent)
+ generateDetails(node, indent)
+ generateMembers(node, indent)
+ }
+
+ public fun generateHeader(node: DocumentationNode, indent: String = "") {
+ println("$indent${node.kind}: ${node.name}")
+ println("$indent\"${node.doc.replace("\n", "\n$indent")}\"")
+ println()
+ }
+
+ public fun generateDetails(node: DocumentationNode, indent: String = "") {
+ for (child in node.details)
+ generate(child, indent + IndentStep)
+ }
+
+ public fun generateMembers(node: DocumentationNode, indent: String = "") {
+ for (child in node.members)
+ generate(child, indent + IndentStep)
+ }
+} \ No newline at end of file