diff options
author | Dmitry Jemerov <yole@jetbrains.com> | 2015-12-03 16:22:11 +0100 |
---|---|---|
committer | Dmitry Jemerov <yole@jetbrains.com> | 2015-12-03 16:22:49 +0100 |
commit | 39631054c58df5841ea268b7002b820ec55f6e0a (patch) | |
tree | cefedd8411c859243bd181568e16fcdd372a38c8 /src/Model/DocumentationReference.kt | |
parent | 797cb4732c53bf1e3b2091add8cf731fc436607f (diff) | |
download | dokka-39631054c58df5841ea268b7002b820ec55f6e0a.tar.gz dokka-39631054c58df5841ea268b7002b820ec55f6e0a.tar.bz2 dokka-39631054c58df5841ea268b7002b820ec55f6e0a.zip |
restructure Dokka build to use Gradle for everything except for the Maven plugin
Diffstat (limited to 'src/Model/DocumentationReference.kt')
-rw-r--r-- | src/Model/DocumentationReference.kt | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/Model/DocumentationReference.kt b/src/Model/DocumentationReference.kt deleted file mode 100644 index 898c92d7..00000000 --- a/src/Model/DocumentationReference.kt +++ /dev/null @@ -1,61 +0,0 @@ -package org.jetbrains.dokka - -import com.google.inject.Singleton - -public data class DocumentationReference(val from: DocumentationNode, val to: DocumentationNode, val kind: DocumentationReference.Kind) { - public enum class Kind { - Owner, - Member, - InheritedMember, - Detail, - Link, - HiddenLink, - Extension, - Inheritor, - Superclass, - Override, - Annotation, - Deprecation, - TopLevelPage - } -} - -class PendingDocumentationReference(val lazyNodeFrom: () -> DocumentationNode?, - val lazyNodeTo: () -> DocumentationNode?, - val kind: DocumentationReference.Kind) { - fun resolve() { - val fromNode = lazyNodeFrom() - val toNode = lazyNodeTo() - if (fromNode != null && toNode != null) { - fromNode.addReferenceTo(toNode, kind) - } - } -} - -@Singleton -class NodeReferenceGraph() { - private val nodeMap = hashMapOf<String, DocumentationNode>() - val references = arrayListOf<PendingDocumentationReference>() - - fun register(signature: String, node: DocumentationNode) { - nodeMap.put(signature, node) - } - - fun link(fromNode: DocumentationNode, toSignature: String, kind: DocumentationReference.Kind) { - references.add(PendingDocumentationReference({ -> fromNode}, { -> nodeMap[toSignature]}, kind)) - } - - fun link(fromSignature: String, toNode: DocumentationNode, kind: DocumentationReference.Kind) { - references.add(PendingDocumentationReference({ -> nodeMap[fromSignature]}, { -> toNode}, kind)) - } - - fun link(fromSignature: String, toSignature: String, kind: DocumentationReference.Kind) { - references.add(PendingDocumentationReference({ -> nodeMap[fromSignature]}, { -> nodeMap[toSignature]}, kind)) - } - - fun lookup(signature: String): DocumentationNode? = nodeMap[signature] - - fun resolveReferences() { - references.forEach { it.resolve() } - } -} |