Size: a a a

Kotlin Community

2019 October 30

CL

Constantine Linnick in Kotlin Community
всё, понял про что ты
источник

VP

Vladimir Petrakovich in Kotlin Community
Constantine Linnick
Запилите уже в enum метод tryParse который будет null возвращать по аналогии с enumValueOf. Ну надоело уже каждый раз одно и то же реализовывать. А через extension не получается обобщенно написать
источник

CL

Constantine Linnick in Kotlin Community
я пытался заэкстендить класс, а в итоге не может доступиться до типов в companion object
источник

QH

Quantum Harmonizer in Kotlin Community
🤷‍♂️ а хз как выразить тип компаниона любого энама
источник

VP

Vladimir Petrakovich in Kotlin Community
Его может и не быть, можно не пытаться
источник

QH

Quantum Harmonizer in Kotlin Community
Vladimir Petrakovich
Его может и не быть, можно не пытаться
не, он есть, т. к. всегда есть values() и valueOf()
источник

CL

Constantine Linnick in Kotlin Community
ну вон по ссылке выше аттачат метод к классу
источник

QH

Quantum Harmonizer in Kotlin Community
но enumValues<E> и enumValueOf<E> сделано просто top-level, так что и нам остаётся то же самое
источник

CL

Constantine Linnick in Kotlin Community
приходится вызывать как MyEnum::class.java.myMethod(...)
источник

CL

Constantine Linnick in Kotlin Community
выглядит тоже так себе
источник

VP

Vladimir Petrakovich in Kotlin Community
Quantum Harmonizer
не, он есть, т. к. всегда есть values() и valueOf()
Это магия интеропа
источник

QH

Quantum Harmonizer in Kotlin Community
Constantine Linnick
приходится вызывать как MyEnum::class.java.myMethod(...)
шшшто это?
источник

VP

Vladimir Petrakovich in Kotlin Community
Vladimir Petrakovich
Это магия интеропа
Что, кстати, фигово
источник

CL

Constantine Linnick in Kotlin Community
источник

VP

Vladimir Petrakovich in Kotlin Community
Зочем?
источник

CL

Constantine Linnick in Kotlin Community
что именно зочем?
источник

QH

Quantum Harmonizer in Kotlin Community
Vladimir Petrakovich
Это магия интеропа
а, точно, тут ещё https://youtrack.jetbrains.com/issue/KT-11968
источник

VP

Vladimir Petrakovich in Kotlin Community
Constantine Linnick
что именно зочем?
Такие костыли, чтобы навесить именно экстеншен на класс enum
источник

CL

Constantine Linnick in Kotlin Community
срочно ставьте лойсы
источник

AO

Alexey Otts in Kotlin Community
Constantine Linnick
срочно ставьте лойсы
Лучше ставить лойсы, чтобы можно было типы расширять
источник