aboutsummaryrefslogtreecommitdiff
path: root/src/Languages/LanguageService.kt
blob: 191f12c419ee4531cfd3437993e0ec74226acf64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package org.jetbrains.dokka

/**
 * Provides facility for rendering [DocumentationNode] as a language-dependent declaration
 */
trait LanguageService {
    /**
     * Renders a [node](DocumentationNode) as a class, function, property or other signature in a target language.
     * $node: A [DocumentationNode] to render
     * $returns: [ContentNode] which is a root for a rich content tree suitable for formatting with [FormatService]
     */
    fun render(node: DocumentationNode): ContentNode

    /**
     * Renders [node] as a named representation in the target language
     *
     * $node: A [DocumentationNode] to render
     * $returns: [String] which is a string representation of the node's name
     */
    fun renderName(node: DocumentationNode) : String
}