Насколько я понял у cats.effect.Effect есть инстансы для
Bracket[F, Throwable]
, где F - какой-то эффект. У меня есть
case object Error
И я бы хотел Bracket для этого типа ошибки. У Either есть инстанс для MonadError, но нет для Bracket.
Как быть если нужно использовать Bracket и ошибки делать Throwable не хочется? Вывод через призму?
Тут уже неоднократно обсуждалось, что обработка бизнес-ошибок в котоэффектах создает кучу проблем. Все котоэффект-тайпклассы, начиная с Sync - потомки Bracket[F, Throwable].
Обсуждают сегодня