Size: a a a

Programming Offtop

2021 May 15

KD

Konstantin Dovnar in Programming Offtop
Беда в том, что тогда придётся либо делать общие методы, либо всегда перескакивать с одного, на другое.

И будет по сути два класса делающих одно и тоже, но один с определённым условием.

Тьфу.

[Хотя котлин у нас любитель всех этих run\also\etc., так что...]
источник

KD

Konstantin Dovnar in Programming Offtop
Это о чём речь?
источник

VP

Vladimir Petrakovich in Programming Offtop
О важных деталях реализации
источник

AM

Andrew Mikhaylov in Programming Offtop
Тут логичнее тыкнуть пальцем не в run / also, а в map / fold :)
источник

VP

Vladimir Petrakovich in Programming Offtop
Посмотри API у Result. Там и так куча специфичных вещей. Пускай они там и сидят.
источник

KD

Konstantin Dovnar in Programming Offtop
Так, а в чём проблема все эти специфичные вещи оставить?
То что укладываться на Either перенести на него, а то что специфично для Result оставить ему.
Экстеншены и пр. ведь можно писать под элиасы?
источник

KD

Konstantin Dovnar in Programming Offtop
Я ещё хотел выделить filterNotNullOrNullButNullMaybeNull, но не помню что там и как.
источник

VP

Vladimir Petrakovich in Programming Offtop
Можно, да.
В KEEP в общем-то писали, что единственная причина почему Result<T> - это не Either<Throwable, T> в том, что Result - недостаточная причина тащить в stdlib Either.
источник

KD

Konstantin Dovnar in Programming Offtop
*facepalm.jpg*
источник

VP

Vladimir Petrakovich in Programming Offtop
Запасаемся попкорном короче)
источник

AM

Andrew Mikhaylov in Programming Offtop
Глянул на апишку, из специфичного вижу только getOrThrow и, возможно, mapCatching / recover / recoverCatching (эти три по идее могли бы быть экстеншнами на более специфическом типе)
источник

(

( in Programming Offtop
У резалта важная деталь имплементации это то, что он инлайн
источник

(

( in Programming Offtop
Если что
источник

AN

Alexander Nozik in Programming Offtop
Подумал немного. Result - вредная штука потому что это как раз то, что я ругал выше - заворачивание данных в ошибку. Всякие takeLeft мне, пожалуй тоже не нравятся, потому что не видно какого типа left
источник

(

( in Programming Offtop
А в чем разница?
источник

(

( in Programming Offtop
А ошибки-то как пропагировать?
источник

(

( in Programming Offtop
Силед классами/интерфейсами?
источник

AN

Alexander Nozik in Programming Offtop
по второму разу начнем? Обрабатываем на месте и рассовываем по силедам или прокидываем ка исключение и обрабатыаем там, где вызвали
источник

(

( in Programming Offtop
Тогда я вовзращаюсь к одному из своих вопросов - на каждый эндпоинт отдельный силед класс/интерфейс заводить?
источник

AN

Alexander Nozik in Programming Offtop
Потому что если добавить про стдлиб, то утверждение полностью корректно
источник