【发布时间】:2022-11-23 16:38:29
【问题描述】:
我正在使用 KOTLIN Poet 生成一些代码。我坚持为参数化类型添加星形投影。在 KOTLIN Poet 文档中找不到任何关于添加星形投影的信息。
有没有办法在 KOTLIN Poet.
【问题讨论】:
标签: kotlin kotlinpoet
我正在使用 KOTLIN Poet 生成一些代码。我坚持为参数化类型添加星形投影。在 KOTLIN Poet 文档中找不到任何关于添加星形投影的信息。
有没有办法在 KOTLIN Poet.
【问题讨论】:
标签: kotlin kotlinpoet
要将 TypeName 作为星投影,请使用:
ClassName("", "StarClass").parameterizedBy(STAR)
在一个小例子中:
val starClass = ClassName("", "StarClass").parameterizedBy(STAR)
val exampleFile = FileSpec.builder("", "StackOverflow")
.addFunction(
FunSpec.builder("starFunction")
.addParameter("starClazz", starClass)
.addStatement("println(starClazz.toString())", starClass)
.build()
)
.build()
exampleFile.writeTo(System.out)
输出:
public fun starFunction(starClazz: StarClass<*>): Unit {
println(starClazz.toString())
}
【讨论】: