| .. | ||
| benches | ||
| examples | ||
| src | ||
| tests | ||
| .cargo-checksum.json | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CHANGELOG.md | ||
| CHANGELOG_FOUNDATION.md | ||
| README.md | ||
objc2
Objective-C interface and bindings to the Foundation framework in Rust.
Most of the core libraries and frameworks that are in use on Apple systems are
written in Objective-C; this crate enables you to interract with those, and
provides ready-made bindings for the Foundation framework in particular.
Example
use objc2::{class, msg_send, msg_send_id};
use objc2::ffi::NSUInteger;
use objc2::rc::{Id, Owned};
use objc2::runtime::Object;
let cls = class!(NSObject);
let obj: Id<Object, Owned> = unsafe { msg_send_id![cls, new] };
let hash: NSUInteger = unsafe { msg_send![&obj, hash] };
println!("NSObject hash: {}", hash);
See the docs for a more thorough overview, or jump right into the examples.
This crate is part of the objc2 project,
see that for related crates.