Harshen shirye-shiryen tsatsa 1.54

An buga yaren shirye-shiryen tsarin Rust 1.54, wanda aikin Mozilla ya kafa, amma yanzu an haɓaka shi a ƙarƙashin inuwar ƙungiyar mai zaman kanta mai zaman kanta ta Rust Foundation. Harshen yana mai da hankali kan amincin ƙwaƙwalwar ajiya, yana ba da sarrafa ƙwaƙwalwar ajiya ta atomatik, kuma yana ba da hanyoyin samun daidaiton ɗawainiya mai girma ba tare da amfani da mai tara shara ko lokacin aiki ba (an rage lokacin aiki zuwa farawa na asali da kiyaye daidaitaccen ɗakin karatu).

Gudanar da ƙwaƙwalwar ajiya ta atomatik na Rust yana kawar da kurakurai yayin sarrafa masu nuni kuma yana ba da kariya daga matsalolin da suka taso daga ƙananan ƙananan ƙwaƙwalwar ajiya, kamar shiga yankin ƙwaƙwalwar ajiya bayan an 'yantar da shi, ɓangarorin null pointer, buffer overruns, da dai sauransu. Don rarraba ɗakunan karatu, tabbatar da taro da sarrafa abubuwan dogaro, aikin yana haɓaka manajan fakitin Cargo. Ana tallafawa ma'ajiyar crates.io don ɗaukar ɗakunan karatu.

Manyan sabbin abubuwa:

  • Ƙara ikon yin amfani da macros masu kama da aiki a cikin halayen (macro na tsari da macros waɗanda aka ƙirƙira ta amfani da "macro_rules!" macro). Irin waɗannan macros suna bambanta daga ayyuka ta alamar "!" bayan sunan (macro!(...)) da musanya rubutun tushen macro maimakon ƙirƙirar kiran aiki. Kiran macros a cikin halaye na iya zama da amfani don haɗa abun ciki daga wasu fayiloli a cikin tattara bayanai. Misali, don saka abubuwan da ke cikin fayil ɗin README da sakamakon aiwatar da rubutun, zaku iya saka: #![doc = include_str!("README.md")] #[hanyar = concat!(env!("OUT_DIR)] "), "/generated.rs")] mod generated;
  • Ayyukan haɗakarwa (Intrinsics) na dandalin wasm32 an daidaita su, suna barin amfani da umarnin SIMD a cikin Gidan Yanar Gizo. Yawancin ayyuka, irin su v128_bitselect, ana samun su a yanayin "lafiya", amma wasu ayyuka waɗanda ke aiki tare da masu nuni (misali, v128_load) sun kasance "marasa lafiya".
  • Tsohuwar amfani da tari na haɓaka ya dawo, yana ba ku damar sake gina ɓangarorin da aka canza kawai na lambar, wanda zai iya rage lokacin da ake ɗauka don gina aikin yayin sake tattarawa bayan yin ƙananan canje-canje. An kashe haɓakar haɓakawa a cikin sakin 1.52.1 saboda ɓoyayyun kwari da suka bayyana bayan ƙara ƙarin bincike don loda bayanai daga ma'aunin diski.
  • An canza wani sabon yanki na APIs zuwa tsayayyen nau'in, gami da daidaitawa mai zuwa:
      BTreeMap :: cikin_keys
    • BTreeMap:: zuwa_daraja
    • HashMap :: cikin_keys
    • HashMap :: cikin_daraja
    • baka :: wasm32
    • VecDeque :: binary_search
    • VecDeque :: binary_search_by
    • VecDeque :: binary_search_by_key
    • VecDeque :: partition_point
  • An ƙara zaɓuka zuwa itacen kaya: "- datsa " don cire kunshin daga jadawali na dogara, "-zurfin" don nuna kawai abubuwan da aka ba da matakin gida a cikin bishiyar dogaro, "- gefuna ba-proc- macro” don ɓoye abubuwan dogaro na macro.

source: budenet.ru

Add a comment