Какой самый каноничный способ возврата и обработки нескольких типов ошибок

из одной функции?

13 ответов

21 просмотр

1. anyhow 2. enum 3. продолжать?

Ilya- Автор вопроса
Денис Котляров
1. anyhow 2. enum 3. продолжать?

Мне кажется немного странным использование библиотек для такой популярной задачи

Ilya
Мне кажется немного странным использование библиот...

задача действительно популярная, но и видеть anyhow в ее решении тоже очень популярно)

Ilya- Автор вопроса
Денис Котляров
задача действительно популярная, но и видеть anyho...

Разработчики языка даже предположить такого не могли?)

Ilya
Мне кажется немного странным использование библиот...

Если задача популярная, то самый каноничный способ можно увидеть на so

Обычный Result с enum в Err, полагаю.

thiserror еще можно использовать

ну и вот тут почитай https://doc.rust-lang.org/rust-by-example/error/multiple_error_types.html там несколько вариантов от самого простого до объявления enum с типами ошибок только потом тебе задолбет так каждый раз писать и ты начнёт использовать anyhow, thiserror и прочие крейты)

Алиса Кассель-Королёва
anyhow не лучший путь

Альтернативы есть, если я хочу добавлять контекст к ошибкам?

Алиса Кассель-Королёва
как правило лучше использовать что-то вроде thiser...

А если мне ошибки только выводит нужно? Что именно пошло не так не важно

Похожие вопросы

Обсуждают сегодня

Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
Ребята, всем привет. Подскажите, пожалуйста, можно ли как-то через бота понять, что этого бота добавили в группу\канал и выдали ему права администратора?
Artem Stormageddon
9
Привет всем! Почему этот код не срабатывает при добавлении или удалении пользователя из чата? bot.on('chat_member', async (ctx) => { console.log(ctx); }) bot.launch({allo...
Alexander
7
Всем привет. Не понимаю, в чём тут шутка юмора. Убирается только разрешение на send_messages. А send_media_messages остаётся. Как сделать, чтобы оба убирались? await b...
Alexander
2
Есть тут кто занимается разработкой серваков майна? Или знакомые
meow *
3
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Есть ли лимиты на кол-во вебхук по домену? Стоит в данный момент 900+ ботов и бывает бот перестает отвечать (не приходят вебхуки) 🐒 Помогает только перезапуск
ᅠ [ Кому не ответил, дублируйте ]
11
а что делать если тебя убивают на картах?
Yarik yarik kyda ti lezesh
43
Товарищи, здравствуйте Подскажите, пожалуйста, может кто-нибудь сталкивался с такой задачей Через вебапку можно сканировать qr-код, а есть ли возможность считывать nfc?
Artem Stormageddon
8
Карта сайта