Идоракунии хотираи автоматии Rust таҳиякунандаро аз коркарди нишондиҳандаҳо озод мекунад ва аз мушкилоте, ки дар натиҷаи коркарди хотираи сатҳи паст ба вуҷуд меоянд, ба монанди дастрасии пас аз хотираи хотира, истинодҳои нул нишондодҳо, изофаи буферӣ ва монанди инҳо муҳофизат мекунад. Менеҷери бастаҳо барои паҳн кардани китобхонаҳо, таъмини ҷамъбаст ва идоракунии вобастагӣ аз ҷониби лоиҳа таҳия карда мешавад.
асосӣ
- Макросҳо қобилияти истифодаи порчаҳои элементҳоро барои табдил додани онҳо ба рамзи аломатҳо (хусусиятҳо), татбиқҳо (impl) ё блокҳои беруна таъмин мекунанд. Барои намуна:
macro_reges! mac_trait {
($i: element) => {
хислати T { $i }
}
}
mac_trait! {
fn foo() {}
}ба насл оварда мерасонад:
хислати Т {
fn foo() {}
} - Муайян кардани навъи мукаммали ибтидоӣ, истинодҳо ва амалиёти дуӣ.
Масалан, рамзи зерин, ки қаблан ба хатогӣ сабаб шуда буд, акнун метавонад тартиб диҳад (Руст ҳоло дуруст муайян мекунад, ки 0.0 ва &0.0 бояд навъи f32 бошад):бигзор n: f32 = 0.0 + & 0.0;
- Ба Cargo тағирёбандаи нави муҳити зисти CARGO_BIN_EXE_{name} илова карда шуд, ки ҳангоми сохтани санҷишҳои ҳамгироӣ муқаррар карда мешавад ва ба шумо имкон медиҳад, ки роҳи пурраи файли иҷрошавандаро, ки дар бахши "[[bin]]" -и баста муайян шудааст, муайян кунед.
- Агар ба изҳорот иҷозат дода шавад, ки атрибутҳоро истифода баранд, ба монанди "#[cfg()]".
- Китобхона имкон медиҳад, ки константаҳои алоқамандро мустақиман барои намудҳои бутун ва касрӣ бидуни воридоти модул истифода баранд. Масалан, шумо метавонед фавран u32::MAX ё f32::NAN-ро бидуни муайян кардани "use std::u32" ва "use std::f32" нависед.
- Модули нав илова карда шуд
ибтидоӣ , ки навъҳои ибтидоии Rust-ро дубора содир мекунад, масалан, вақте ки шумо бояд макро нависед ва боварӣ ҳосил кунед, ки навъҳо пинҳон нестанд. - Қисми нави APIҳо ба категорияи устувор, аз ҷумла мӯътадил гузаронида шуд
Як бор ::анҷом шуд,
f32::LOG10_2,
f32::LOG2_10,
f64::LOG10_2,
f64 :: LOG2_10 ва
iter :: як маротиба_бо.
Манбаъ: opennet.ru