دورة تعلم رست (Rust) جدول المحتويات

التعامل مع الخيار/النتيجة بطرية ملتوية (Ugly Option/Result Handling)

يمكن أن يكون العمل بخيار/نتيجة (Option/Result) أمرًا مملاً عندما تحاول كتابة بعض التعليمات البرمجية السريعة. كل من خيار (Option) و نتيجة (Result) يملكان تابعة تدعى فك (unwrap). يمكن أن يكون ذلك مفيدًا للحصول على قيمة بطريقة سريعة وملتوية. فك ( unwrap ) سوف:

  1. تحصل على القيمة داخل الخيار/النتيجة (Option/Result).
  2. وإذا كانت المعدودة (enum) من نوع لاشيء/خطأ (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!"),
}

كن رستاسيًا (rustacean) جيدًا واستخدم مُطابقة (match) بشكل صحيح متى تستطيع!