Как применить аннотацию к получателю делегированной собственности в Котлине? - PullRequest
0 голосов
/ 08 мая 2019

При использовании Kotlin я хотел добавить определяемую пакетом константу в качестве префикса для свойства сериализованного класса. Джексон брат, поэтому я написал это:

var prop: String = ""
    @JsonGetter(value = "prop")
    get() = PREFIX + field

Это работало нормально, поэтому я решил заменить его делегированным свойством для краткости:

@get:JsonGetter(value = "prop") var prop: String by PrefixedProperty()

...

class PrefixedProperty(var field: String = "") {
    operator fun getValue(blah blah) = PREFIX + field
    ...
}

И БУМ - моя собственность исчезла.

Кажется, аннотация не была применена к делегированному получателю prop. Можно ли даже заархивировать желаемое поведение?

...