Size: a a a

2020 April 07

IG

Ilya Gulya in Kotlin JVM
и мне пришлось написать холдер с lateinit полем который всё делегирует внутрь реализации
источник

BP

Bogdan Panchenko in Kotlin JVM
Ilya Gulya
Я хочу избавиться от AHolder 🙂
От самого класса ?
источник

IG

Ilya Gulya in Kotlin JVM
Да
источник

BP

Bogdan Panchenko in Kotlin JVM
а какую реализацию подставить ?
источник

IG

Ilya Gulya in Kotlin JVM
Видимо так не получится. Нашёл KEEP в котором это предлагается. https://github.com/Kotlin/KEEP/issues/155
источник

IG

Ilya Gulya in Kotlin JVM
Bogdan Panchenko
а какую реализацию подставить ?
Ту, которую щас в холдер пихаю
источник

BP

Bogdan Panchenko in Kotlin JVM
class B(a: A) : A by a
источник

IG

Ilya Gulya in Kotlin JVM
Bogdan Panchenko
class B(a: A) : A by a
У меня нету реализации на момент создания класса B
источник

IG

Ilya Gulya in Kotlin JVM
Она появляется потом
источник

IG

Ilya Gulya in Kotlin JVM
то есть в идеале что-то подобное:
class B: A by a {
 lateinit var a: A
}
источник

IG

Ilya Gulya in Kotlin JVM
но так оно не работает 😅
источник

BP

Bogdan Panchenko in Kotlin JVM
тогда это ошибка проектирования
источник

BP

Bogdan Panchenko in Kotlin JVM
а вас DI ?
источник

IG

Ilya Gulya in Kotlin JVM
У меня Android :D
источник

IG

Ilya Gulya in Kotlin JVM
Нету ошибки проектирования)
источник

IG

Ilya Gulya in Kotlin JVM
За меня система создаёт реализацию
источник

BP

Bogdan Panchenko in Kotlin JVM
ну может тогда этот вопрос в @kotlin_mobile
источник

IG

Ilya Gulya in Kotlin JVM
Ну, вопрос по Core Kotlin, я затем и не писал про специфику платформенную.
источник

BP

Bogdan Panchenko in Kotlin JVM
Ilya Gulya
У меня Android :D
"Kotlin on JVM — Server-side"
источник

IG

Ilya Gulya in Kotlin JVM
ну ок, спасибо, видимо не выйдет
источник