# IOKit Rust Bindings The `IOKit-sys` package provides declarations and linkage for the `IOKit` C library on OS X. Following the `*-sys` package conventions, the `IOKit-sys` package does not define higher-level abstractions over the native library. ## Usage Add `IOKit-sys` as a dependency in `Cargo.toml`: ```toml [dependencies] IOKit-sys = "0.1" ``` Import the `IOKit_sys` crate and use the functions as they're defined in the native `IOKit` library provided by Apple. ```rust extern crate IOKit_sys as io; ``` ## Contributing You may find that you need some functionality that is missing from `IOKit-sys`. If that's the case, please open an issue on Github or send a pull request with the added functionality. If you plan to submit a pull request, please note the structure of the code. There is one file for each header file in the IOKit framework. For example, `src/io_return.rs` contains the definitions from `IOKit/IOReturn.h`. The definitions in each file are more or less in the same order that they appear in the matching header file. Each file is then re-exported in the crate root, e.g., `pub use io_return::*`. ### Contributors * [dcuddeback](https://github.com/dcuddeback) * [dhylands](https://github.com/dhylands) * [forticulous](https://github.com/forticulous) * [ndusart](https://github.com/ndusart) ## License Copyright © 2015 David Cuddeback Distributed under the [MIT License](LICENSE).