Size: a a a

Kotlin Community

2020 February 22

E

EvGem in Kotlin Community
Я хочу преобразовать flow в ConflatedChannel. Пробовал так, но не робит. Видимо чего то непонимаю.
источник

BP

Bogdan Panchenko in Kotlin Community
Dmitriy Volkovskiy
Не забывайте про интероп с джавой. Я могу захотеть вызвать этот метод в джаве, и буду удивлен, если имя будет другим. Не надо никакой магии
Если мне нужен интероп я ее явно укажу
источник

AN

Alexander Nozik in Kotlin Community
Bogdan Panchenko
Если мне нужен интероп я ее явно укажу
Так делается в JS и там есть проблемы с манглингом
источник

AO

Alexey Otts in Kotlin Community
Dmitriy Volkovskiy
Не забывайте про интероп с джавой. Я могу захотеть вызвать этот метод в джаве, и буду удивлен, если имя будет другим. Не надо никакой магии
Ну на этот случай можно будет руками обозвать иначе. В общем случае оно будет нужно из котлина
источник

DV

Dmitriy Volkovskiy in Kotlin Community
Alexey Otts
Ну на этот случай можно будет руками обозвать иначе. В общем случае оно будет нужно из котлина
Допустим к таким функциям будут добавлять цифру 2. И вы захотите функцию с цифрой 2. Вам компилятор будет ругаться, что функция уже есть. Вам нужна такая магия?
источник

AO

Alexey Otts in Kotlin Community
ну так то можно и похитрее это делать
источник

AO

Alexey Otts in Kotlin Community
В скалке вон дописывается куча всякой дичи с $ в разных случаях и всё ок
источник

QH

Quantum Harmonizer in Kotlin Community
Alexey Otts
ну так то можно и похитрее это делать
можно просто посмотреть, как испортили имена функций, принимающих/возвращающих inline-классы
источник

QH

Quantum Harmonizer in Kotlin Community
(из джавы они неюзабельны)
источник

BP

Bogdan Panchenko in Kotlin Community
Dmitriy Volkovskiy
Допустим к таким функциям будут добавлять цифру 2. И вы захотите функцию с цифрой 2. Вам компилятор будет ругаться, что функция уже есть. Вам нужна такая магия?
Взгляните в байткод и увидите как порой котлининазывает функции
источник

VP

Vladimir Petrakovich in Kotlin Community
Зачем на ровном месте ломать интероп? 🤷‍♂
Да и стектрейсы будут менее читабельными.
источник

AN

Alexander Nozik in Kotlin Community
Смотрите, какую я фигню навертел: https://github.com/altavir/dataforge-control/blob/master/dataforge-control-core/src/jvmMain/kotlin/hep/dataforge/control/demo/VirtualDevice.kt

При помощи делегат провайдеров генерятся проперти девайсов, при этом из билдера прокидываются типы и даже на уровне типов проверяется, что может быть var, а что не может. Единственное, что вот тут: https://github.com/altavir/dataforge-control/blob/69074fef9e30a76c99acfaf6174da418916eb85d/dataforge-control-core/src/commonMain/kotlin/hep/dataforge/control/base/DeviceBase.kt#L85 ломается вывод типов, а то можно было бы даже мутабельные и немутабельные проперти одной функцией обозвать.
источник
2020 February 23

BP

Bogdan Panchenko in Kotlin Community
Vladimir Petrakovich
Зачем на ровном месте ломать интероп? 🤷‍♂
Да и стектрейсы будут менее читабельными.
Какой интероп 🤷‍♂ я же для котлина пишу. В котлине, для нормального  интеропа с джавой, нужно много анноташек вешать
источник

BP

Bogdan Panchenko in Kotlin Community
Alexander Nozik
Смотрите, какую я фигню навертел: https://github.com/altavir/dataforge-control/blob/master/dataforge-control-core/src/jvmMain/kotlin/hep/dataforge/control/demo/VirtualDevice.kt

При помощи делегат провайдеров генерятся проперти девайсов, при этом из билдера прокидываются типы и даже на уровне типов проверяется, что может быть var, а что не может. Единственное, что вот тут: https://github.com/altavir/dataforge-control/blob/69074fef9e30a76c99acfaf6174da418916eb85d/dataforge-control-core/src/commonMain/kotlin/hep/dataforge/control/base/DeviceBase.kt#L85 ломается вывод типов, а то можно было бы даже мутабельные и немутабельные проперти одной функцией обозвать.
Интересно конечно выглядит, но немногоь смысл не понимаю, для чего это
источник

АО

Алексей Овсянников in Kotlin Community
Bogdan Panchenko
Какой интероп 🤷‍♂ я же для котлина пишу. В котлине, для нормального  интеропа с джавой, нужно много анноташек вешать
ЧегоО.о
источник

АО

Алексей Овсянников in Kotlin Community
Или вы про интероп с джавой?
источник

BP

Bogdan Panchenko in Kotlin Community
А про ещё какой интероп можно говорить ?
источник

АО

Алексей Овсянников in Kotlin Community
Хм, ну да
источник

АО

Алексей Овсянников in Kotlin Community
А зачем писать на джаве, если есть котлин?
источник

AO

Alexey Otts in Kotlin Community
Ну вот можно было бы придумать ключ компилятора, который говорит, мне не нужен интероп с жавой. Твари что хошь
источник