5 releases
0.1.6 | May 4, 2021 |
---|---|
0.1.5 | Apr 28, 2021 |
0.1.4 | Apr 28, 2021 |
0.1.2 | Oct 16, 2020 |
0.1.0 | Oct 15, 2020 |
#9 in #marshal
85 downloads per month
Used in 5 crates
(via cffi)
47KB
1K
SLoC
cffi
Use the #[cffi::marshal(...)]
proc macro to make unsafe C functions into much safer functions,
both for exporting interfaces and consuming functions from C libraries.
Usage
See the documentation for the various marshallers available.
Where is this used?
- pahkat - a multi-platform package management framework
- divvunspell - a multi-platform highly efficient memory-mapping spell checking library
Background and philosophy
We enforce the usage of stdint.h
types on the C side to simplify the implementation on the Rust side.
Interesting reads:
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~4.5–6MB
~114K SLoC