whakaputaina te tuku reo hootaka punaha Rust 1.42, i hangaia e te kaupapa Mozilla. Ka arotahi te reo ki te haumaru mahara, ka whakarato i te whakahaere mahara aunoa, ka whakarato taputapu mo te whakatutuki i te whakarara mahi teitei me te kore e whakamahi i te kaikohi paru me te waahi.
Ma te whakahaere mahara aunoa a Rust ka wetekina te kaiwhakawhanake mai i te raweke i te atatohu me te whakamarumaru i nga raru ka puta mai i te raweke mahara taumata-iti, penei i te uru mahara kore-muri, te kore tohu tohu kore, te paopao, me era atu. Kei te whakawhanakehia he kaiwhakahaere mokihi hei tohatoha whare pukapuka, hei whakarite i te huihuinga me te whakahaere i nga whakawhirinakitanga a te kaupapa. utanga, ka taea e koe te tiki i nga whare pukapuka e hiahiatia ana mo te kaupapa i te paato kotahi. Ka tautokohia he putunga hei manaaki i nga whare pukapuka crates.io.
Kua tapirihia tautoko mo nga tauira mo te whakarite i nga waahanga o nga poro (nga huinga hihiri, poro). I mua, i whakaaetia nga taapiri tika, engari inaianei ka taea te whakamahi i nga hanga kua tohua ".." ki te kapi i nga toenga o te huinga. Hei tauira:
fn foo(kupu: &[&str]) {
kupu ōrite {
// ka taki i nga huānga timatanga o te huinga me te wareware
nga huānga e whai ana i a raatau
["Kia ora", "Ao", "!", ..] => println!("Kia ora te Ao!"),
// ka taki i nga mea tuatahi e rua "Foo" me "Bar", a ko te toenga kaore he mea nui
["Foo", "Bar", ..] => println!("Baz"),
// warewarehia nga mea katoa, engari ko te waahanga whakamutunga ko "!".
[.., “!”] => println!(“!!!”),
// i te wahanga timatanga ka whakauruhia e matou nga mea katoa engari ko te waahanga whakamutunga, me "z"
[timata @ .., "z"] => println!("timata ki: {:?}", timata),
// i roto i te waahanga mutunga ka hoatu e matou nga mea katoa haunga te huānga tuatahi, me "a".
["a", mutu @ ..] => println!("ka mutu ki: {:?}", mutunga),
okioki => println!("{:?}", okioki),
}
}
Kua taapirihia he tonotono hou "match!", ka tango i tetahi korero me tetahi tauira hei whakaurunga, ka whakahoki "pono" mena ka rite te tauira ki te korero. Ka taea e te tauira te whakamahi i nga mahi "|". me "mehemea".
kia foo = 'f';
assert!(matches!(foo, 'A'..='Z' | 'a'..='z'));
kia pae = Some(4);
assert!(match!(bar, Some(x) if x > 2));
I roto i nga panui ohorere ka whakaatuhia ina he te whakamahi
momo Kōwhiringa me te Hua, inaianei ka whakaatu i nga nama raina me te hono ki te waehere i raru ai te waea, kaua ki nga hononga ki te waehere e whakatinana ana i te piiraa i roto i te libcore. Hei tauira, ka pa te huringa ki nga waea ki te wetewete me te tatari mo te Kōwhiringa::Karekau, ka pakaru ranei i te wa e whakamahi ana i te unwrap_err, expect, expect_err, me nga tikanga rite ki te momo Hua.
Ka tukuna e te kaiwhakahaere kete Uta te whakakapi aunoa i te "proc_macro crate" ki te poraka "waho" mo nga kete me nga tonotono tikanga. Ma tenei huringa ka taea te whakamahi i te tohutohu "whakamahi" ki nga tonotono tikanga me te kore e tohu "external crate proc_macro;" i roto i te waehere. Hei tauira, mena ka whakamahia e te papatono te raina "whakamahia proc_macro::TokenStream;", ka mahi tonu te waehere mena ka tangohia te "external crate proc_macro;" i reira.
Kua whakawhānuihia nga kaha o te whare pukapuka paerewa. In iter::Putea tāpirihia Tuku me te Tukutahi tautoko mo nga uara T.
Waea Pin::{map_unchecked, map_unchecked_mut} tuku mai i te whakahoki mai i tetahi uara momo mo te whakatinanatanga "Rahi".
In io::Pehu whakatinana PartialEq and Eq. Ko te huanga "const" ka whakatau i te kaha ki te whakamahi i roto i tetahi horopaki hei utu mo nga taumau, tono mo te Tahora:: tikanga hou.
Kua whakawhitia he wahanga hou o te API ki te waahanga pumau, tae atu ki te CondVar::wait_while, CondVar::wait_timeout_while,
DebugMap::key, DebugMap::value,
Whakataka ā-ringa::tango,
ptr::slice_from_raw_parts_mut and ptr::slice_from_raw_parts.
Kua whakakorehia te Hapa::whakaahua tikanga.
He tautoko taumata tuarua mo nga papaapapa armv7a-none-eabi me riscv64gc-unknown-linux-gnu. He tautoko mo te whare pukapuka paerewa mo te riscv64gc-unknown-linux-gnu platform kua whakaratohia.
Apple 32-bit tüäpapa whakahekehia tae noa ki te taumata tuatoru o te tautoko, e tohu ana i te tautoko taketake, engari kaore he whakamatautau aunoa me te whakaputanga o nga hanga mana. Ko te whakaheke i te tautoko na te kore a Apple e tautoko i nga papaaho 32-bit.