Метод unwrap_err
Метод unwrap_err извлекает значение ошибки
из типа Result. Он возвращает значение
Err, если результат содержит ошибку, и
вызывает панику, если результат содержит Ok.
Параметров метод не принимает.
Синтаксис
result.unwrap_err()
Пример
Давайте извлечем значение ошибки из результата,
который содержит Err:
fn main()
{
let res: Result<i32, &str> = Err("abcde");
let err = res.unwrap_err();
println!("{}", err);
}
Результат выполнения кода:
"abcde"
Пример
Давайте попробуем извлечь ошибку из результата,
который содержит Ok. Это приведет к панике:
fn main()
{
let res: Result<i32, &str> = Ok(12345);
let err = res.unwrap_err();
println!("{}", err);
}
Результат выполнения кода:
thread 'main' panicked at 'called `Result::unwrap_err()` on an `Ok` value: 12345'
Смотрите также
-
метод
unwrap,
который извлекает значение из Ok, паникуя при Err -
метод
expect,
который извлекает значение из Ok с пользовательским сообщением паники -
метод
unwrap_or,
который извлекает значение из Ok или возвращает значение по умолчанию -
метод
unwrap_or_default,
который извлекает значение из Ok или возвращает значение по умолчанию типа