aboutsummaryrefslogtreecommitdiff
path: root/devel/rust-cbindgen/pkg-descr
blob: 8ece5c757c0c7ee987937a46484fad0dd5fcac00 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
cbindgen generates C bindings from Rust code. Unlike rusty-cheddar it
supports generics, C++ enum class and template specialization as well
as multiple modules and crates. It's primarily developed for WebRender
but has been designed to support any project.

Features:
* Builds bindings for a crate, its mods, its dependent crates, and their mods
* Only the necessary types for exposed functions are given bindings
* Can specify annotations for controlling some aspects of binding
* Support for generic structs and unions
* Support for exporting constants and statics
* Customizable formatting, can be used in C or C++ projects
* Support for generating #ifdef's for #[cfg] attributes
* Support for #[repr(sized)] tagged enum's

WWW: https://github.com/eqrion/cbindgen