11 releases
0.1.9-deprecated | Apr 14, 2021 |
---|---|
0.1.8 | Nov 9, 2020 |
0.1.8-deprecated | Mar 20, 2021 |
0.1.7 | Aug 14, 2020 |
0.1.1 | Jun 27, 2020 |
#34 in #dart
26 downloads per month
51KB
1K
SLoC
Dart Bindgen
A tool for generating Dart FFI bindings to C Header file.
⚠️ This crate is deprecated and 🚧 unmaintained 🚧 for now, please prefer ffigen from the dart team.
Goals
- be able to generate a single
ffi.dart
file that should contain all the C header bindings. - Current Supported C Features
- Functions
- Function Pointer (aka Callbacks)
- Simple Structs (NOTE: Nested structs is not supported yet, open a PR?)
- C Enums
Non-Goals
Writing a High-Level Abstractions and idiomatic Dart Code for the FFI bindgens, we will leave that as a homework for the user :).
Install
Make sure you have installed the dependencies:
- LLVM and clang
on macOS:
brew install llvm
on Windows:
Download a prebuild from here
on Linux:
you know what to do ;)
and then you could install the CLI from github releases or you could also use cargo to build it from source:
$ cargo install --force dart-bindgen --features cli
Safety
This crate uses #![deny(unsafe_code)]
to ensure everything is implemented in
100% Safe Rust.
Contributing
Want to join us? Check out our "Contributing" guide and take a look at some of these issues:
License
Licensed under Apache v2.0 license.Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.
Dependencies
~0.7–8.5MB
~71K SLoC