Rust programlama dili 1.35 sürümü

gerçekleşti sistem programlama dili sürümü Pas 1.35Mozilla projesi tarafından geliştirildi. Dil, bellek güvenliğine odaklanır, otomatik bellek yönetimi sağlar ve çöp toplayıcı veya çalışma zamanı kullanmadan yüksek görev paralelliği elde etmek için bir araç sağlar.

Rust'un otomatik bellek yönetimi, geliştiriciyi işaretçi manipülasyonundan kurtarır ve boş bellek erişimleri, boş işaretçi referansları, arabellek taşmaları ve benzeri gibi düşük seviyeli bellek manipülasyonundan kaynaklanan sorunlara karşı koruma sağlar. Kütüphanelerin dağıtılması, montajın sağlanması ve bağımlılıkların projeye göre yönetilmesi için bir paket yöneticisi geliştirilmektedir. Kargo, program için gereken kütüphanelere tek tıklamayla ulaşmanızı sağlar. Kitaplıkları barındırmak için bir depo desteklenir sandıklar.io.

Ana yenilikler:

  • Типажи (trait) FnOnce, FnMut и Fn реализованы для размещаемых в куче boxed-типов Box‹dyn FnOnce›, Box‹dyn FnMut› и Box‹dyn Fn›;
  • Katma fırsat приведения замыканий к небезопасным указателям на функции (unsafe fn);
  • Реализована возможность вызова макроса «dbg!» без аргументов для отображения в stderr имени файла и номера строки без инспектирования переменной, что удобно для отладки срабатывания условных выражений;
  • В типы для чисел с плавающей запятой f32 и f64 добавлен метод «kopya işareti» для копирования знака из одного числа в другое;
  • В типы Range* добавлен метод «içeren«, позволяющий проверить попадание указанного значения в диапазон;
  • Eklenen yöntem Ref:Cell:map_split, позволяющие отразить и разделить заимствованное значение RefCell для разных компонентов заимствованных данных;
  • Eklenen yöntem RefCell::replace_with для замены текущего значения RefCell и возвращения старого значения в качестве результата;
  • Eklenen yöntem ptr::hash для хэширования указателя или ссылки по адресу, а не адресуемому значению;
  • Eklenen yöntem Option::copied для копирования содержимого опций Option‹&T› или Option‹&mut T›;
  • Stabilize edilmiş yöntemler de dahil olmak üzere API'lerin yeni bir kısmı stabil kategorisine aktarıldı
    f32::copysign,
    f64::copysign,
    RefCell::replace_with,
    RefCell::map_split,
    ptr::hash,
    Range::contains,
    RangeFrom::contains,
    RangeTo::contains,
    RangeInclusive::contains,
    RangeToInclusive::contains и
    Option::copied;

  • В clippy (linter) добавлена проверка drop_bounds, срабатывающая при добавлении привязки «T: Drop» в функцию;
  • В компилятор добавлена поддержка новой целевой платформы
    wasm32-unknown-wasi (интерфейс ÖYLE MİYDİM WebAssembly'ı tarayıcının dışında kullanmak için);

  • Инструментарий Rust адаптирован для дистрибутивов на основе стандартной Си-библиотеки Musl.

Kaynak: opennet.ru

Yorum ekle