blob: 6125f9689c410625f245c8a5acf042872a9885b6 [file] [log] [blame]
Tiem Songe1dd5122019-07-03 14:16:39 -07001package org.jetbrains.dokka.javadoc
2
3import com.sun.javadoc.SourcePosition
4import org.jetbrains.dokka.DocumentationNode
5import org.jetbrains.dokka.NodeKind
6import java.io.File
7
8class SourcePositionAdapter(val docNode: DocumentationNode) : SourcePosition {
9
10 private val sourcePositionParts: List<String> by lazy {
11 docNode.details(NodeKind.SourcePosition).firstOrNull()?.name?.split(":") ?: emptyList()
12 }
13
14 override fun file(): File? = if (sourcePositionParts.isEmpty()) null else File(sourcePositionParts[0])
15
16 override fun line(): Int = sourcePositionParts.getOrNull(1)?.toInt() ?: -1
17
18 override fun column(): Int = sourcePositionParts.getOrNull(2)?.toInt() ?: -1
19}