e hatisitsoeng tokollo ea puo ea lenaneo la sistimi Mafome 1.38, e thehiloeng ke morero oa Mozilla. Puo e shebana le polokeho ea mohopolo, e fana ka taolo ea memori ea othomathike, mme e fana ka mokhoa oa ho fihlela ts'ebetso e ts'oanang e phahameng ntle le ho sebelisa moqosi oa lithōle kapa nako ea ho sebetsa.
Taolo ea memori ea othomathike ea Rust e lokolla moqapi ho tsoa manolong a pointer le ho sireletsa khahlano le mathata a bakoang ke ho qhekella ha memori ea boemo bo tlase, joalo ka phihlello ea memori e sa lefelloeng, litšupiso tsa null pointer, buffer overruns, joalo-joalo. 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.
E kentse mokhoa oa ho bokella liphaephe (pipeline), moo kaho ea sephutheloana sa crate e itšetlehileng ka eona e qalang hang ha metadata ea ho itšetleha e fumaneha, ntle le ho emela hore pokello ea eona e phethehe. Ha ho etsoa sephutheloana, litšepe ha li hloke ho bokelloa ka botlalo, ho hlalosa feela metadata, e kenyelletsang lethathamo la mefuta, litšepiso le likarolo tse romelloang kantle ho naha. Metadata e fumaneha qalong ea ts'ebetso ea ho bokella, kahoo liphutheloana tse hokahaneng joale li ka bokelloa pejana. Ha ho hahoa liphutheloana tse le 'ngoe, mokhoa o reriloeng ha o ame ts'ebetso, empa haeba mohaho o koahela liphutheloana tse nang le litšepe tsa makala, nako ea ho haha ka kakaretso e ka fokotsoa ka 10-20%;
E netefatsa ho fumana ts'ebeliso e fosahetseng ea mesebetsi std::mem::e sa qala и std::mem::zeroed. Ka mohlala, std::mem::unitialized e loketse bakeng sa ho theha lihlopha ka potlako, empa e khelosa moqapi hobane e bonahala e qalisoa, empa bonneteng boleng bo lula bo sa tsejoe. The mem :: ts'ebetso e sa lebelloang e se e tšoailoe joalo ka ha e lahliloe 'me ho khothaletsoa ho sebelisa mofuta o mahareng. Mohlomong Unit. Ha e le mem ::zeroed, ts'ebetso ena e ka baka mathata ka mefuta e ke keng ea amohela litekanyetso tsa zero.
Ho thusa ho tseba boits'oaro bo sa hlalosoang, tokollo e ncha e eketsa tlhahlobo ea lint ho komporo e lemohang mathata a mang ka mem :: unitialized or mem ::zeroed. Mohlala, joale o fumana phoso ha o leka ho sebelisa mem::e sa tsejoeng kapa mem::zeroed ka mefuta ea &T le Box‹T›, e emelang lintho tse supang tse ke keng tsa amohela boleng ba lefeela;
Tšobotsi ea "#[deprecated]" e atolositsoe ho lumella liphutheloana tsa crate hore li tšoaiwe ha li sa sebetsa le hore li reretsoe ho hlakoloa nakong e tlang. Joalo ka Rust 1.38, tšobotsi ena e ka boela ea sebelisoa bakeng sa macros;
E ekelitse bokhoni ba ho sebelisa tšobotsi ea "#[global_allocator]" ho li-submodule;
Sebopeho se ekelitsoeng std::feela::type_name, e leng se u lumellang hore u fumane lebitso la mofuta, le ka thusang merero ea ho lokisa liphoso. Ka mohlala, nakong ea ts'ebetso ea lenaneo u ka fumana hore na mosebetsi oo o ne o bitsoa mofuta ofe:
fn gen_value‹T: Default>() -› T {
println!("E qala mohlala oa {}", std:: any::type_name::‹T›());
Kamehla:: kamehla ()
}
fn main() {
let _: i32 = gen_value(); # "i32" e tla hatisoa
tlohela _: Khoele = gen_value(); # e tla hatisa "alloc::string::String"
}
Mesebetsi e atolositsoeng ea laeborari e tloaelehileng:
slice::{concat, connect, join} joale e ka nka boleng &[T] ho phaella ho &T;
"*const T" le "*mut T" joale kenya lesupa::Tlosa;
"Arc‹[T]›" le "Rc‹[T]›" joale li sebelisa FromIterator‹T›;
ascii :: EscapeDefault e sebelisa Clone le Display.
Karolo e ncha ea API e fetiselitsoe sehlopheng se tsitsitseng, ho kenyelletsa le mekhoa e tsitsitseng
‹*const T›::cast, ‹*mut T›::cast,
Nako::as_secs_f{32|64},
Nako::div_duration_f{32|64},
Nako::div_f{32|64},
Nako::ho tloha_secs_f{32|64},
Nako::mul_f{32|64},
mesebetsi ea karohano le tse setseng
div_euclid le rem_euclid bakeng sa li-primitives tsohle tse felletseng;
Ts'ehetso e ekelitsoeng bakeng sa ho hlakisa khetho ea "--features" makhetlo a mangata ho thusa likarolo tse fapaneng ho mookameli oa sephutheloana sa thepa;
Moqapi o fana ka karolo ea boraro boemo tšehetso bakeng sa li-platform tse shebiloeng aarch64-uwp-windows-msvc, i686-uwp-windows-gnu, i686-uwp-windows-msvc, x86_64-uwp-windows-gnu, x86_64-uwp-windows-msvc targets, armvx7-tse sa tsejoeng- -gnueabi, armv7-e sa tsejoeng-linux-musleabi, hexagon-e sa tsejoeng-linux-musl le riscv32i-e sa tsejoeng-none-elf. Boemo ba boraro bo kenyelletsa tšehetso ea mantlha, empa ntle le tlhahlobo e ikemetseng le phatlalatso ea meaho ea semmuso.