Size: a a a

Kotlin Community

2020 September 08

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Понимаю. У меня лично претензии больше к тому, что она ругается на методы, которые не могут быть блокирующими. Я совершенно не понимаю, по каким критериям это определяется, ибо там нет ни одного признака.
Там есть конкретный список и блокируемость пропагируется
источник

AN

Alexander Nozik in Kotlin Community
Насколько я понимаю
источник

VP

Vladimir Petrakovich in Kotlin Community
Alexander Nozik
Там есть конкретный список и блокируемость пропагируется
О как. То есть она анализирует джавовый код?
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
О как. То есть она анализирует джавовый код?
По-моему да. Примерно таким же образом вывод нулябельности работает
источник

VP

Vladimir Petrakovich in Kotlin Community
Тогда становится понятнее. Но работает это настолько же плохо, как торчащий из ByteArrayInputStream проверяемый IOException.
источник

BP

Bogdan Panchenko in Kotlin Community
Iaroslav Orlov
проблема в том, что withContext(Dispatchers.IO) { try { x() }} не вырубает эту инспекцию
Ну вот тогда ее нужно игнорировать
источник

BP

Bogdan Panchenko in Kotlin Community
Она реально кривовато работает
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Тогда становится понятнее. Но работает это настолько же плохо, как торчащий из ByteArrayInputStream проверяемый IOException.
Ну это есть проблема. Единственный способ этого избежать - это тот или иной способ раскраски кода без явных аннотаций и кейвордов. Как я понял, над этим работают, но пока решений нет.
источник

AN

Alexander Nozik in Kotlin Community
Я думаю, что если кто-то захочет поконтрибьютить в этот ресерч, команда Романа Елизарова, будет рада. Но там надо в компилятор лезть.
источник

AM

Andrew Mikhaylov in Kotlin Community
trashkalmar
То, что приоритетнее в вашей компании. Синтаксис с = имеет неочевидный сайд-эффект: функция начинает возвращать значение, если результат тела — не Unit. Это в теории может сломать ссылки на методы, не совпадающие по сигнатуре
Начиная с 1.4, методрефы ломаться не будут. Там как раз завезли возможность в качестве функционального типа, возвращающего юнит, передавать методрефы с любым возвращаемым типом.
источник

t

trashkalmar in Kotlin Community
Andrew Mikhaylov
Начиная с 1.4, методрефы ломаться не будут. Там как раз завезли возможность в качестве функционального типа, возвращающего юнит, передавать методрефы с любым возвращаемым типом.
Вот это отличные новости. Ещё бы ссылки на suspend функции заработали
источник

AM

Andrew Mikhaylov in Kotlin Community
trashkalmar
Вот это отличные новости. Ещё бы ссылки на suspend функции заработали
Тоже :)
источник

AM

Andrew Mikhaylov in Kotlin Community
По крайней мере, если чейнджлогам верить. Я пока так и не смигрировал.
источник

t

trashkalmar in Kotlin Community
Я чейнджлоги тоже видел. Обрадовался, попробовал и обломился. Пока не работают
источник

AM

Andrew Mikhaylov in Kotlin Community
Ну на ютреке много всякого, пофикшенного к 1.4.20, надеюсь, там всё хорошо будет :)
источник

t

trashkalmar in Kotlin Community
ждём
источник

BP

Bogdan Panchenko in Kotlin Community
trashkalmar
Вот это отличные новости. Ещё бы ссылки на suspend функции заработали
Ну у меня работать
источник

BP

Bogdan Panchenko in Kotlin Community
Но функции должна именно саспенд лямбду принимать
источник

AM

Andrew Mikhaylov in Kotlin Community
Bogdan Panchenko
Но функции должна именно саспенд лямбду принимать
То есть для инлайнов это не фурычит? Которые умеют и так, и так
источник

с#

саша сок #KotlinGang... in Kotlin Community
Pavel Erokhin
Не подскажите, знатоки, чем приоритетнее?
если нужен Unit, то я всегда explictly указываю его (про сайд эффект), а проблема через = может быть, если длинное выражение какое-то, но не использовать декораторо-подобный синтаксис по мне глупо

в этом примере ещё ок, там действительно вкусовщина, и то, и то выглядит хорошо

но вот писать

fun function() {
   scope {

   }
}

вместо

fun function() = scope {

}

странно, потому что это выглядит красиво и убирает индент
источник