我试图在类中生成一个对象定义。这是一个蒸馏版本:
class SomeClass {
// need to figure out how to generate this
companion object {
// and this
object Constants {
val SOME_CONSTANT = "CONSTANT VALUE"
}
}
}
您可以使用object
创建TypeSpec.objecBuilder
,然后将其嵌套在带有addType
的类中,例如:
val constants = TypeSpec.objectBuilder("Constants")
.addProperty(PropertySpec.builder("SOME_CONSTANT", String::class)
.mutable(false)
.initializer("CONSTANT VALUE")
.build())
.build()
val someClass = TypeSpec.classBuilder("SomeClass")
.addType(constants)
.build()