У меня есть следующее расширение поля
import com.google.gson.annotations.SerializedName
val Enum<*>.serializedName: String get() = javaClass.getField(name).getAnnotation(SerializedName::class.java).value
Теперь, если мое перечисление имеет то же имя поля, что и расширение serializedName
, как я могу получить доступ к полю расширения. Мой текущий подход заключается в приведении к Enum
enum class MyEnum {
FIELD_1,
FIELD_2
;
val serializedName = (this as Enum<*>).serializedName
}