vov*_*ost 7 intellij-plugin kotlin
我正在Kotlin为Java和Kotlin文件编写一个Intellij插件.以下代码适用于Java文件:
val node: ASTNode
....
val referencedFieldElement = node.psi.reference!!.resolve()
Run Code Online (Sandbox Code Playgroud)
但它不适用于Kotlin文件,因为没有resolve()方法调用,node.psi.reference返回null.
你如何解决Kotlin参考?
我也有一个PsiElementKotlin参考.我怎样才能解决它的价值?
这是一些代码:
class KotlinFoldingBuilder : FoldingBuilderEx() {
override fun buildFoldRegions(root: PsiElement, document: Document, quick: Boolean): Array<FoldingDescriptor> {
....
}
override fun getPlaceholderText(node: ASTNode): String? {
val referencedFieldElement = node.psi.reference!!.resolve()
return referencedFieldElement
}
override fun isCollapsedByDefault(node: ASTNode): Boolean {
return true
}
}
Run Code Online (Sandbox Code Playgroud)
node.psi.reference!!.resolve()适用于Java文件,但对于Kotlin文件,则node.psi.reference返回null.
| 归档时间: |
|
| 查看次数: |
270 次 |
| 最近记录: |