Megjelent a Rust 1.95: új match guardok és stabil API-bővítések

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Rust 1.95 megjelent, és mostantól támogatja az

if let

guardokat a

match

kifejezéseken belül. A funkció a Rust 1.88-ban bevezetett

let

-láncolásra épül, és lehetővé teszi, hogy a match ágakban közvetlenül további feltételes mintavizsgálatokat adjunk meg.

A Rust csapata megjegyzi: az

if let

guardokban illesztett mintákat a fordító jelenleg nem veszi figyelembe a match kimerítettségének (exhaustiveness) ellenőrzésekor, hasonlóan a hagyományos

if

guardokhoz.

Egy másik említésre méltó újdonság a

cfg_select!

makró bevezetése. A Rust release csapata szerint ez lényegében egy fordítási idejű

match

, amely konfigurációs predikátumok alapján választ. Hasonló célt szolgál, mint a széles körben használt

cfg-if

crate, de más szintaxissal. A makróval a fejlesztők közvetlenebb módon választhatnak implementációt vagy értéket a célplatform vagy a build konfiguráció alapján.

Emellett a Rust 1.95 jelentősen bővíti a stabil API-k körét. Az újonnan stabilizált elemek között szerepelnek a

MaybeUninit

és a

Cell

fejlesztései, az atomi frissítési és try-update metódusok, a

core::range

modul, a

Vec::push_mut

és

Vec::insert_mut

, a

VecDeque

beszúrást segítő metódusai, a

LinkedList

push-mutatiós segédfüggvényei, valamint több

Layout

metódus.

A Rust 1.95 egyik fontos változása az egyedi targeteket érinti. Kikerült a stabil támogatás arra, hogy egyedi JSON target specifikációt adjanak át a

Rustc

-nek. A projekt szerint ez nem érinti azokat, akik teljesen stabil toolchain-t használnak, mivel a standard library fordítása egyedi targetekhez eddig is csak nightly funkciókkal volt megoldható.

A fordító és a nyelv alapvető frissítései mellett a release notes további változásokat is kiemel a Rust, a Cargo és a Clippy területén. A Rust 1.95 inkább egy átfogó karbantartási és funkciófrissítés, mintsem egy szűk fókuszú kiadás.

A változások részletes listájáért nézd meg a hivatalos bejelentést.