rust-block
core-foundation-rs
rust-block | core-foundation-rs | |
---|---|---|
2 | 3 | |
47 | 915 | |
- | 2.8% | |
0.0 | 7.9 | |
3 months ago | 6 days ago | |
Rust | Rust | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust-block
- macOS Apps in Rust
-
Baby's first Rust with extra steps (XPC, launchd, and FFI)!
let block = ConcreteBlock::new(move |key: *const c_char, value: xpc_object_t| { unsafe { xpc_retain(value) }; let str_key = unsafe { CStr::from_ptr(key).to_string_lossy().to_string() }; let xpc_object: XPCObject = value.into(); map_refcell .borrow_mut() .insert(str_key, xpc_object.into()); true }); // https://github.com/SSheldon/rust-block#creating-blocks let block = block.copy(); let ok = unsafe { xpc_dictionary_apply(object.as_ptr(), &*block as *const _ as *mut _) };
core-foundation-rs
-
macOS Apps in Rust
Rust has RAII so you can have retain on 'clone' operations and release on drops, just like the native Rc/Arc types do.
This is, incidentally, how the servo bindings to core-foundation work (I prefer those bindings where there is overlap).
Servo bindings: https://github.com/servo/core-foundation-rs
Other crates of interest on this topic:
-
Rust for Windows
For Mac fans, the closest you'll have to this in OS-X is core-foundation-rs[1], by the servo team.
[1] https://github.com/servo/core-foundation-rs
-
Rust GUI: Introduction, a.k.a. the state of Rust GUI libraries (As of January 2021)
Core-Foundation
What are some alternatives?
rust-objc - Objective-C Runtime bindings and wrapper for Rust.
winapi-rs - Rust bindings to Windows API
chkservice - Systemd units manager with ncurses, terminal interface
rust-zmq - Rust zeromq bindings.
k9s - 🐶 Kubernetes CLI To Manage Your Clusters In Style!
win32ada - Ada API to the Windows library
rust-bindgen - Automatically generates Rust FFI bindings to C (and some C++) libraries.
MSRC-Security-Research - Security Research from the Microsoft Security Response Center (MSRC)
Cursive - A Text User Interface library for the Rust programming language
samples-rs
tokio - A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
conrod - An easy-to-use, 2D GUI library written entirely in Rust.