Как получить TypeName с правильным значением NULL - PullRequest
2 голосов
/ 25 мая 2020

Я пытаюсь вызвать this.asType (). AsTypeName (). IsNullable isNullable - работает некорректно.

Я нашел решение, но оно выглядит не очень хорошо:

fun Element.getTypeNameWithRealNullable(): TypeName {
    val annotation = this.getAnnotationMirror(Nullable::class)
    return annotation?.let {
        this.asType().asTypeName().copy(nullable = true)
    } ?: this.asType().asTypeName().copy(nullable = false)
}

fun <T : Annotation> Element.getAnnotationMirror(type: KClass<T>): AnnotationMirror? {
    return this.getAnnotation(type.java.name)
}

Есть ли у kotlinpoet лучший способ получить правильный isNullable?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...