Тур по Rust Зміст

Брудна обробка Option/Result

Робота з Option/Result може бути достатньо стомлюючою, якщо ви хочете просто нашвидкоруч написати трохи коду. І Option, і Result мають функцію unwrap, яка може бути корисна для швидкого і не акуратного отримання значення. unwrap працює таким чином:

  1. Поверне значення з Option/Result, якщо воно є.
  2. Якщо це значення None чи Err, то метод виконає макрос panic!. Ці дві частини коду еквівалентні:
my_option.unwrap()
match my_option {
    Some(v) => v,
    None => panic!("some error message generated by Rust!"),
}

Відповідно:

my_result.unwrap()
match my_result {
    Ok(v) => v,
    Err(e) => panic!("some error message generated by Rust!"),
}

Будь гарним розробником і правильно використовуй match коли можеш!