Size: a a a

Kotlin Community

2019 December 11

OY

Oleg Yukhnevich in Kotlin Community
так везде и делают, и тот же suspend один из них

В общем, не вижу смысла дальше продолжать этот оффтоп
просто сделай свой язык и сделай его правильно
источник

BP

Bogdan Panchenko in Kotlin Community
В jb ,так и делают но на ветке master, вот это меня и пугает. Джава лум развивается и не тормозит развитие основного языка
источник

BP

Bogdan Panchenko in Kotlin Community
Oleg Yukhnevich
но, в Kotlin как раз делают такой компилятор, нет?
и как я уже приводил - сериализация, компоуз и эрроу - плагины

что-то сложно понимать, чего ты хочешь
Компиляторный плагины идут в бой вторым эшелоном*, не вводится фича сначала плагином обкатывается людми которые не против потестить, собирают фитбек, а дальше самое сложное, придумать куда и как разместить фичу: оставить в виде плагина, разделить на либу и плагин, внести в компилятор, внести часть в компилятор а часть в плагин etc. Поле для маневров получается, а пока развитие Котлин а выгляд как "тестирование на проде". /offtop. Если хотите ответить лучше пишите в личку или @pofftop
источник
2019 December 12

(

( in Kotlin Community
Хочу написать экстеншен на енуме, чтобы было примерно так:
fun MyEnum.names(): List<String> {
 return values().map { it.name }
}

Как-нибудь можно это сделать? И желательно ещё, чтобы вообще на всех енумах
источник

KZ

Konstantin Zolotov in Kotlin Community
(
Хочу написать экстеншен на енуме, чтобы было примерно так:
fun MyEnum.names(): List<String> {
 return values().map { it.name }
}

Как-нибудь можно это сделать? И желательно ещё, чтобы вообще на всех енумах
fun Enum<T>.names() = ...
источник

BV

Boris Vanin in Kotlin Community
(
Хочу написать экстеншен на енуме, чтобы было примерно так:
fun MyEnum.names(): List<String> {
 return values().map { it.name }
}

Как-нибудь можно это сделать? И желательно ещё, чтобы вообще на всех енумах
Неа, это у компаньона же надо делать
источник

(

( in Kotlin Community
Konstantin Zolotov
fun Enum<T>.names() = ...
nope
источник

(

( in Kotlin Community
Boris Vanin
Неа, это у компаньона же надо делать
анекдот в том, что даже на конкретном енуме такого не напишешь, у него не видно компаньон
источник

AS

Andrei Shikov in Kotlin Community
в стд либе есть enumValues<T>(), но экстешн вряд ли получится
источник

(

( in Kotlin Community
Andrei Shikov
в стд либе есть enumValues<T>(), но экстешн вряд ли получится
Оо, ща пильну
источник

(

( in Kotlin Community
не экстеншен конечно, но в целом сойдёт
inline fun <reified E : Enum<E>> enumNames(): List<String> {
       return enumValues<E>().map { it.name }
   }
источник

(

( in Kotlin Community
мне вот кстати резко стало интересно, почему енумы в котлине такие подрезанные
источник

QH

Quantum Harmonizer in Kotlin Community
(
мне вот кстати резко стало интересно, почему енумы в котлине такие подрезанные
в смысле?!
источник

QH

Quantum Harmonizer in Kotlin Community
ровно такие же, как и в джаве, с генерацией values()
источник

(

( in Kotlin Community
Quantum Harmonizer
в смысле?!
экстеншены мои где на енумах?
источник

BV

Boris Vanin in Kotlin Community
(
экстеншены мои где на енумах?
Для энумов работает так же как и для любого класса
источник

QH

Quantum Harmonizer in Kotlin Community
(
экстеншены мои где на енумах?
интересно, есть какой-нибудь пропоузал на генерацию всем энамам похожих компанионов?..
источник

(

( in Kotlin Community
Boris Vanin
Для энумов работает так же как и для любого класса
нет, я про экстеншены как я выше хотел
источник

BV

Boris Vanin in Kotlin Community
(
нет, я про экстеншены как я выше хотел
Это тогда нужны компаньоны всем классам
источник

(

( in Kotlin Community
Boris Vanin
Это тогда нужны компаньоны всем классам
да
источник