Crate bindgen

source ·
Expand description

Generate Rust bindings for C and C++ libraries.

Provide a C/C++ header file, receive Rust FFI code to call into C/C++ functions and use types defined in the header.

See the Builder struct for usage.

See the Users Guide for additional documentation.


A public API for more fine-grained customization of bindgen behavior.


Simple macro that forwards to assert! when using testing_only_extra_assertions.
Simple macro that forwards to assert_eq! when using testing_only_extra_assertions.


Generated Rust bindings.
Configure and generate Rust bindings for a C/C++ header.
A ParseCallbacks implementation that will act on file includes by echoing a rerun-if-changed line
Extracted Clang version data
A type used to indicate which kind of items we have to generate.


A valid rust ABI.
Enum for how aliases should be translated.
Error type for rust-bindgen.
A helper type that represents different enum variations.
Enum for the default type of macro constants.
Enum for how non-Copy unions should be translated.
Represents the version of the Rust language to target.


Default prefix for the anon fields.
Latest stable release of Rust


Strings of allowed RustTarget values


Construct a new Builder.
Get the major and the minor semver numbers of Clang’s version