Я пытаюсь сгенерировать код для объявления класса с аннотацией @TypeParceler. Я могу создать ParameterizedTypeName с:
val myParcelerClass = ClassName("com.example", "MyParceler")
val genericTypeParcelerClass = ClassName("kotlinx.android.parcel", "TypeParceler")
val parameterizedTypeParcelerClass = genericTypeParcelerClass.plusParameter(MyType::class.asClassName()).plusParameter(myParcelerClass)
Я хотел бы добавить аннотацию с parameterizedTypeParcelerClass
, используя TypeSpe c .Builder.addAnnotation (), но нет переопределения с TypeName. Например:
val myTargetClass = ClassName("com.example", "MyTarget")
val classBuilder = TypeSpec.classBuilder(myTargetClass)
.addAnnotation(parameterizedTypeParcelerClass)
Класс аннотации TypeParceler недоступен для кода KotlinPoet, поскольку библиотека расширения Android здесь не включена. Есть ли способ сделать это, что мне не хватает?