Rust 1.43 forritunarmálsútgáfa

birt útgáfu forritunarmáls kerfisins Ryð 1.43, stofnað af Mozilla verkefninu. Tungumálið einbeitir sér að minnisöryggi, veitir sjálfvirka minnisstjórnun og veitir verkfæri til að ná fram mikilli samsvörun verkefna án þess að nota sorphirðu og afturkreistingur.

Sjálfvirk minnisstjórnun Rust leysir þróunaraðilann við bendil meðhöndlunar og verndar gegn vandamálum sem stafa af minni meðhöndlun á lágu stigi, eins og eftir-frjáls minni aðgangur, núll bendilinn afvísun, biðminni framúrkeyrsla, og þess háttar. Verið er að þróa pakkastjóra til að dreifa bókasöfnum, tryggja samsetningu og stjórna ósjálfstæði verkefnisins. Hleðsla, sem gerir þér kleift að fá þau bókasöfn sem þarf fyrir forritið með einum smelli. Geymsla er studd til að hýsa bókasöfn crates.io.

Helstu nýjungar:

  • Fjölvi veita möguleika á að nota brot af þáttum til að breyta þeim í kóða fyrir eiginleika (eiginleika), útfærslur (impl) eða ytri blokkir. Til dæmis:

    macro_reglur! mac_trait {
    ($i:item) => {
    eiginleiki T { $i }
    }
    }
    mac_trait! {
    fn foo() {}
    }

    Mun leiða til kynslóðar:

    eiginleiki T {
    fn foo() {}
    }

  • Bætt tegundagreining á frumstæðum, tilvísunum og tvíundaraðgerðum.
    Til dæmis mun eftirfarandi kóði, sem áður olli villu, nú vera fær um að safna saman (Rust ákvarðar núna rétt að 0.0 og &0.0 verða að vera af gerðinni f32):

    láttu n: f32 = 0.0 + &0.0;

  • Nýrri umhverfisbreytu CARGO_BIN_EXE_{name} hefur verið bætt við Cargo, sem er stillt þegar samþættingarprófanir eru byggðar og gerir þér kleift að ákvarða alla leiðina að keyrsluskránni sem er skilgreind í „[[bin]]“ hluta pakkans.
  • Ef staðhæfingar mega nota eiginleika eins og "#[cfg()]".
  • Bókasafnið veitir möguleika á að nota tengda fasta beint fyrir heiltölu- og brotagerðir, án þess að flytja inn einingu. Til dæmis geturðu skrifað u32::MAX eða f32::NAN strax án þess að tilgreina fyrst "use std::u32" og "use std::f32".
  • Ný eining bætt við frumstæð, sem endurútflutningur Rust frumstæðar týpur, til dæmis þegar þú þarft að skrifa macro og ganga úr skugga um að tegundirnar séu ekki faldar.
  • Nýr hluti API hefur verið fluttur í stöðugan flokk, þar á meðal stöðug

    Einu sinni::er_completed,
    f32::LOG10_2,
    f32::LOG2_10,
    f64::LOG10_2,
    f64::LOG2_10 og
    iter::einu sinni_með.

Heimild: opennet.ru

Bæta við athugasemd