172 похожих чатов

Допустим, у меня есть поле струкрутры last_error: Option<Box<dyn

std::error::Error>>. Теперь я хочу создать абсолютно НОВУЮ ошибку, но с точно таким же error message, stacktrace и т.п. как и у ошибки, хранящейся в поле error. Причём саму ошибку в error мувить никуда нельзя. Как это можно cделать? сс @n0dwis @Vatneek @iccsf

4 ответов

10 просмотров

Никак. Если нужно использовать эту ошибку в разных местах, то максимум можно сделать Option<Rc<dyn ...>> или Option<Arc<dyn ...>>

Dmitry-Rusakov Автор вопроса
red75prime
Никак. Если нужно использовать эту ошибку в разных...

А разве нельзя как-то вытащить сообщение об обшибке и тп, а потом просто вызвать конструктор std::Error с этими параметрами?

Dmitry Rusakov
А разве нельзя как-то вытащить сообщение об обшибк...

Бэктрейс не получится склонировать и цепочку source() тоже не получится. Оставить только сообщение об ошибке и засунуть его в std::io::Error, например, конечно можно

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

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

Даже если так - ты в этом месте рассчитывал пполучить новые данные, зачем тебе старые?
Vga
18
с какой версии дельфи (приблизительно) в функции возвращающей (а есть слово покороче?) строку стало не нужно инитить резалт пустой строкой? function foo: string; begin // Res...
Karagy
16
Дебил? Я ищу друга
Bitard 228
27
я, кстати, считаю что это плохая идея, перегружать нулевой регистр всякой фигнёй. Это просто запомнить, но это плохо для кода. ЛУчше бы было другие регистры использовать ну ...
Arioch The
11
У меня это всегда вопрос вызывало.. Нафига писать код так, чтобы потом ошибки вылавливать?
Nik
44
лично мне из опыта вспоминается два основных источника результата в фукнкциях, возвращающих строку Первое - полностью новые данные. что мешает создать для них новую строку и в...
Vga
5
думаю, что надёжность тут перевесила а кроме того, подумай ещё ГДЕ размещать счетчик вот мы с тобой две функции, я тебя вызвал ты мне вернул строку ГДЕ ты должен разместить ...
Arioch The
7
опять пепяками меряетесь? пока нормально на js не попишете - у вас нет права голоса
Vitaly
14
Всем привет. Я что-то туплю. В эликсире есть config/runtime.exs чтобы грузить настройки времени выполнения. А в эрланге? Помню пару лет тому была дискуссия насчёт кошерности ...
Д. П.
5
Приветствую. А не подскажете какие ограничения есть на использования api метода setMyName ? Несколько раз сменил имя бота и получил бан на 2 месяца на смену имени.
Slick Slack
8
Карта сайта