New week, new Rust! What are you folks up to?
I've got a GUI crate (GitHub - audulus/rui: Experimental Rust UI library) which I'm getting working on iOS (GitHub - audulus/rui-ios: Demo of rui embedded on iOS). It's going pretty smoothly thanks to the excellent work in wgpu (https://wgpu.rs) and swift-bridge (GitHub - chinedufn/swift-bridge: swift-bridge facilitates Rust and Swift interop.).
I’ve been writing a crate to use from build scripts to add a Windows application manifest to your Rust programs, even when cross-compiling, without copying and pasting XML and RC snippets from the web or installing extra tools: crates.io/crates/embed-manifest. I think it’s ready for anybody to use now.
Without a manifest, every Rust program runs in Windows Vista compatibility mode, with additional limitations and occasionally surprising features, especially if your program is named “update”.
I’ve been working on a crate called samsara, which accepts a definition of a finite state machine with payloads on transitions and defines various types (both owned and borrowed) that define paths from one of its states to another (controlled by type parameters, so the starting and ending states are fixed at compile time). Primary use case is to store segments of words in a (spoken) language in a structured manner (for instance, you can store a segment of a word that starts after an onset and ends on a syllable boundary, then match at the end for the coda).
I’d like to know what you think of it.
I have been working on the multiconst crate to destructure expressions into multiple constants. Recently released the first version with full tuple and array destructuring support. I'm now working on supporting structs.