Puo ea Rust programming 1.46 tokollo

e hatisitsoeng ho lokolla 1.46 ea puo ea lenaneo la tsamaiso mafome, e thehiloeng ke morero oa Mozilla. Puo e shebana le polokeho ea mohopolo, e fana ka taolo ea memori ea othomathike, hape e fana ka lisebelisoa tsa ho fihlela ts'ebetso e phahameng ea ts'ebetso ntle le ho sebelisa pokello ea lithōle le nako ea nako.

Taolo ea memori ea othomathike ea Rust e felisa liphoso ha e tsamaisa lintlha le ho sireletsa khahlanong le mathata a bakoang ke ho qhekella ha memori ea boemo bo tlase, joalo ka ho fihlella sebaka sa memori kamora hore e lokolloe, li-null pointer dereferences, buffer overruns, jj. Motsamaisi oa liphutheloana o ntse a ntlafatsoa ho aba lilaebrari, ho netefatsa ho bokelloa le ho laola litšepe ka morero. thepa, ho u lumella ho fumana lilaebrari tse hlokahalang bakeng sa lenaneo ka ho tobetsa hanngoe feela. Sebaka sa polokelo se tšehetsoa ho amohela lilaebrari crates.io.

ka sehloohong boiqapelo:

  • Bokhoni ba mesebetsi e hlalosoang ho sebelisoa poleloana "const fn" e atolositsoe, e ka bitsoang eseng feela e le mesebetsi e tloaelehileng, empa hape e sebelisoa maemong afe kapa afe ho fapana le li-constants. Mesebetsi ena e baloa ka nako ea ho bokella, eseng ka nako ea ho sebetsa, kahoo e tlas'a lithibelo tse itseng, tse kang bokhoni ba ho bala feela ho tloha ho li-constants.

    Tokollo e ncha e tlosa thibelo ea ho sebelisa Boolean operators (“&&” le “||”) mesebetsing e joalo, 'me e lumella tšebeliso ea "haeba", "haeba e lumella", "match" constructs,
    "ha", "ha a ntse a let" le "loop", hape e fana ka bokhoni ba ho fetolela lilae (sekotoana, lihlopha tse matla) ho sebelisa poleloana "&[T]". Tšebeliso ea likarolo tsena mesebetsing ea "const fn" e u lumella ho tsamaisa ts'ebetso e matla ea lisebelisoa ho ea sethaleng sa ho bokella. Ka mohlala, ts'ebetsong ea "const-sha1" e etsa hore ho khonehe ho bala li-hashes tsa SHA-1 ka nako ea ho bokella, e leng se lebisang ho potlakisa ho tlama ha WinRT bakeng sa Rust ka makhetlo a ka bang 40.

  • Ho etsa hore melaetsa ea liphoso e be le tsebo e ngata, tšehetso ea "#[track_caller]" e tsitsitsoe, e leng molemo bakeng sa mesebetsi e kang ho phutholla, e ka bakang tšabo haeba mefuta e sa sebelisoe hantle. Tšobotsi e boletsoeng e tla sebelisoa ke motho ea tšohileng ho hatisa sebaka sa moletsi molaetsa oa phoso.
  • Sebopeho sa "const", se khethollang monyetla oa ho se sebelisa maemong afe kapa afe sebakeng sa li-constants, se sebelisoa ho std:: mem:: mokhoa oa ho lebala.
  • Karolo e ncha ea API e isitsoe sehlopheng se tsitsitseng, ho kenyelletsa le Khetho e tsitsitseng::zip le vec::Drain::as_slice.
  • Ho mookameli oa sephutheloana Cargo eketsoe tšehetso bakeng sa mefuta e mecha ea tikoloho e behiloeng ha ho etsoa sephutheloana: CARGO_BIN_NAME (lebitso la faele e phethiloeng e hlahisitsoeng), CARGO_CRATE_NAME (lebitso la sephutheloana), CARGO_PKG_LICENSE (laesense e boletsoeng ho manifest), CARGO_PKG_LICENSE_FILE (tsela ea faele ea laesense).

Source: opennet.ru

Eketsa ka tlhaloso