Microsoft je najavio Rust/WinRT projekt
Microsoft je najavio Rust/WinRT projekt koji pruža prirodan i idiomatski način za Rust programere da pozivaju Windows API-je. Rust/WinRT vam omogućuje da pozovete bilo koji WinRT API prošli, sadašnji, i budućnosti koristeći kod generiran u hodu izravno iz metapodataka koji opisuju API i izravno u vaš Rust paket gdje ih možete pozvati kao da su samo još jedan Rust modul.
Windows Runtime temelji se na API-jima Component Object Model (COM) ispod poklopca i dizajniran je da mu se pristupa putem jezičnih projekcija kao što su C++/WinRT i Rust/WinRT. Te jezične projekcije uzimaju metapodatke koji opisuju različite API-je i pružaju prirodne veze za ciljni programski jezik. To omogućuje programerima da lakše izgrade aplikacije i komponente za Windows koristeći svoj željeni jezik. Zatim možete koristiti te Windows API-je za izradu aplikacija za stolna računala, pohranjivanja aplikacija, komponente, NT usluge ili upravljačkog programa uređaja.
Ovdje je dolje jednostavan primjer Rusta koji poziva Windows API.
koristiti windows:: data:: xml:: dom::*; neka doc = XmlDocument:: new()?; doc.load_xml("Pozdrav svijete")?; neka root = doc.document_element()?; tvrditi!(root.node_name()? == "html"); tvrditi!(root.inner_text()? == "zdravo svijete");
Za smisleniji primjer, možete pogledati sljedeću Minesweeper igru implementiranu pomoću Rust/WinRT: https://github.com/robmikh/minesweeper-rs
Microsoft je napomenuo da je ovo vrlo rani javni pregled, pa će u budućnosti doći više značajki i popravaka. Početna stranica projekta je na GitHubu:
https://github.com/microsoft/winrt-rs