#bindings #api #obj-c #generated-bindings

rustkit

针对ObjC API的快速且便捷的Rust绑定

1个不稳定版本

使用旧的Rust 2015

0.0.1 2018年8月24日

#116 in #generated-bindings

Apache-2.0/MIT

21KB
490 代码行数(不含注释)

RustKit

针对ObjC API的快速且便捷的Rust绑定

RustKit目前正在开发中。如果您想贡献或对生成的绑定提供反馈,请尝试使用它。

先决条件

需要Clang 8.0(当前为trunk)以及补丁。构建Clang并设置环境变量LIBCLANG_PATH,使其指向包含libclang.dylib的目录,该目录应位于您的clang/llvm构建目录的lib目录中。

示例

extern crate rustkit;

use rustkit::NSObject;

fn main() {
    let obj = NSObject::new();
    
    let desc = NSObject::description();
    let desc = desc.unwrap();
    let desclen = desc.length();
    let ruststr: String =
        (0..desclen).map(|i|
                         std::char::from_u32(desc.characterAtIndex_(i) as u32).
                         unwrap()).collect();
    println!("NSObject::description(): {}", ruststr);
}

依赖项

~74–520KB
~11K SLoC