Руст 1.35 Издание за програмски јазик

се одржа издавање на системски програмски јазик Рѓа 1.35, развиен од проектот Mozilla. Јазикот се фокусира на безбедноста на меморијата, обезбедува автоматско управување со меморијата и обезбедува средство за постигнување висок паралелизам на задачите без користење на собирач на ѓубре или време на работа.

Автоматското управување со меморијата на Rust го ослободува развивачот од манипулација со покажувачот и заштитува од проблеми кои произлегуваат од манипулација со меморијата на ниско ниво, како што се по-слободен пристап до меморијата, дереференции на нула покажувач, пречекорувања на баферот и слично. Се развива менаџер на пакети за дистрибуција на библиотеки, обезбедување на склопување и управување со зависностите од проектот. на товар, овозможувајќи ви да ги добиете библиотеките потребни за програмата со еден клик. Складиштето е поддржано за домаќини на библиотеки каси.io.

Главните иновации:

  • Карактеристики FnOnce, FnMut и Fn имплементирани за куп-распределени типови на кутии Box‹dyn FnOnce›, Box‹dyn FnMut› и Box‹dyn Fn›;
  • Додадено можност лиење затворачи на небезбедни функциски покажувачи (небезбедни fn);
  • Спроведена е способност да се нарекува макро „dbg!“ без аргументи за прикажување на името на датотеката и бројот на линијата во stderr без проверка на променливата, што е погодно за дебагирање на операцијата на условните изрази;
  • Додаден метод " на типовите подвижна запирка f32 и f64копирање» да копира знак од еден број на друг;
  • Додаден метод "содржи“, што ви овозможува да проверите дали наведената вредност е во опсегот;
  • Додаден метод Ref:Cell:map_split, овозможувајќи ви да ја рефлектирате и одделите позајмената вредност на RefCell за различни компоненти на позајмените податоци;
  • Додаден метод RefCell::replace_with да ја замени тековната вредност на RefCell и да ја врати старата вредност како резултат;
  • Додаден метод ptr::хаш да се хаши покажувачот или референцата по адреса наместо адресираната вредност;
  • Додаден метод Опција::копирано да ја копирате содржината на опциите Option‹&T› или Option‹&mut T›;
  • Нов дел од API е префрлен во стабилна категорија, вклучувајќи методи кои се стабилизирани
    f32::copysign,
    f64::copysign,
    RefCell::replace_with,
    RefCell::map_split,
    ptr::хаш,
    Опсег::содржи,
    Опсег од::содржи,
    Опсег До::содржи,
    RangeInclusive::содржи,
    RangeToInclusive::содржи и
    Опција::копирано;

  • Додадено drop_bounds проверка на clippy (линтер), што се активира кога се додава врзување „T: Drop“ на функцијата;
  • Компајлерот додаде поддршка за нова целна платформа
    wasm32-unknown-wasi (интерфејс ВАСИ да користите WebAssembly надвор од прелистувачот);

  • Комплетот со алатки Rust е прилагоден за дистрибуции врз основа на стандардната библиотека C Musl.

Извор: opennet.ru

Додадете коментар