如何在Kotlin PSI中获取类的完全限定域名?

3

我有一个 Kotlin 数据类:

package a.b.c

data class Example(
    …
)

我正在使用detekt进行分析,它可以访问Kotlin PSI
我正在尝试获取我的类的FQDN:
println(klass.nameAsName?.identifier)

在 Kotlin PSI 中,klass 的类型为 KtClass。但是该代码仅打印出类的简短名称,如 Example,而我想获取 a.b.c.Example

如何在 Kotlin PSI 中获取类的完全限定域名?

1个回答

1

KtClass 实现了 KtNamedDeclaration 接口,该接口提供了 fqName 方法。

FqName getFqName();

这将给你想要的东西。所以:

klass.fqName.asString()


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接