Rust 1.43 Ukukhishwa Kolimi Lokuhlela

eshicilelwe ukukhululwa kolimi lokuhlela uhlelo Ukugqwala 1.43, eyasungulwa iphrojekthi ye-Mozilla. Ulimi lugxile ekuphepheni kwenkumbulo, luhlinzeka ngokuphathwa kwenkumbulo okuzenzakalelayo, futhi luhlinzeka ngamathuluzi okuthola ukufana kwemisebenzi ephezulu ngaphandle kokusebenzisa umqoqi kadoti kanye isikhathi sokuqalisa.

Ukuphathwa kwenkumbulo okuzenzakalelayo kwe-Rust kukhulula umthuthukisi ekukhohlisweni kwezikhombisi futhi kuvikele ezinkingeni ezivela ekukhohlisweni kwenkumbulo yezinga eliphansi, njengokufinyelela kwememori yangemuva kwamahhala, izinkomba ezingenalutho, ukugcwala kwebhafa, nokunye okunjalo. Umphathi wephakheji uyathuthukiswa ukuze asabalalise imitapo yolwazi, aqinisekise ukuhlanganisa nokuphatha ukuncika ngephrojekthi. cargo, okukuvumela ukuthi uthole amalabhulali adingekayo ohlelweni ngokuchofoza okukodwa. Indawo yokugcina isekelwa ukuze isingathe amalabhulali amakhreyithi.io.

main emisha:

  • Amamakhro ahlinzeka ngekhono lokusebenzisa izingcezu zezinto ukuze ziguqule zibe ikhodi yezimpawu (uphawu), ukuqaliswa (impl) noma amabhulokhi angaphandle. Ngokwesibonelo:

    imithetho_enkulu! mac_trait {
    ($i:into) => {
    isici T {$i }
    }
    }
    mac_trait! {
    i-fn foo() {}
    }

    Kuzoholela esizukulwaneni:

    isici T {
    i-fn foo() {}
    }

  • Ukutholwa kohlobo oluthuthukisiwe lwama-primitives, amareferensi nemisebenzi kanambambili.
    Isibonelo, ikhodi elandelayo, edale iphutha ngaphambilini, manje isizokwazi ukuhlanganisa (i-Rust manje inquma kahle ukuthi u-0.0 kanye no-0.0 kufanele kube uhlobo lwe-f32):

    vumela n: f32 = 0.0 + &0.0;

  • Okuhlukile kwemvelo okusha CARGO_BIN_EXE_{igama} kwengezwe ku-Cargo, emiswa lapho kwakhiwa izivivinyo zokuhlanganisa futhi ikuvumela ukuthi unqume indlela egcwele yefayela elisebenzisekayo elichazwe esigabeni esithi β€œ[[bin]]” sephakheji.
  • Uma izitatimende zivunyelwe ukusebenzisa izibaluli ezinjengokuthi "#[cfg()]".
  • Umtapo wolwazi unikeza ikhono lokusebenzisa okungaguquki okuhlotshaniswayo ngokuqondile nezinhlobo eziphelele neziyingxenye, ngaphandle kokungenisa imojuli. Isibonelo, ungabhala ngokushesha u-u32::MAX noma u-f32::NAN ngaphandle kokucacisa kuqala β€œsebenzisa std::u32” kanye β€œsebenzisa std::f32”.
  • Kwengezwe imojuli entsha okuyisisekelo, ethekelisa kabusha izinhlobo ze-Rust primitive, isibonelo uma udinga ukubhala i-macro futhi uqiniseke ukuthi izinhlobo azifihliwe.
  • Ingxenye entsha yama-API idluliselwe esigabeni esizinzile, okuhlanganisa nokuzinza

    Kanye::se_kuqediwe,
    f32::LOG10_2,
    f32::LOG2_10,
    f64::LOG10_2,
    f64::LOG2_10 kanye
    iter::kanye_nge.

Source: opennet.ru

Engeza amazwana