Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

if ve while İçinde let Zincirleri

Özet

  • if ve while koşul işlenenlerinde let ifadelerinin zincirlenmesine izin verilir.

Ayrıntılar

2024 sürümüyle birlikte if ve while koşullarının içinde let ifadelerini zincirlemek mümkün hale geldi. Buradaki zincirleme, && zincirlerini ifade eder. let ifadelerinin yine de üst düzeyde bulunması gerekir; bu yüzden if (let Some(selam) = foo || let Some(selam) = bar) geçerli değildir.

2024’ten önce let, doğrudan if ya da while sözcüğünden sonra gelmek zorundaydı; yani yalnızca if let ya da while let özel biçimleri vardı. Şimdi ise if ve while, bir ya da daha fazla let ifadesinden oluşan zincirlere izin verir; bunlar bool türündeki ifadelerle de karışık olabilir.

#![allow(unused)]
fn main() {
fn ilk_ikiyi_topla(sayilar: &[u8]) -> Option<u8> {
    let mut yineleyici = sayilar.iter();
    if let Some(ilk) = yineleyici.next()
        && let Some(ikinci) = yineleyici.next()
    {
        ilk.checked_add(*ikinci)
    } else {
        None
    }
}
}

Bu özellik, 2024 sürümüne ait [if let yeniden kapsamlandırması] değişikliğini gerektirdiği için sürüm kapısına bağlıdır.

Taşıma

Bu özellik, geçerli Rust programları kümesini gerçekten genişlettiği için 2024 sürümüne geçerken ayrıca bir taşıma gerektirmez.