rust-bindgen
rust-bindgen copied to clipboard
Automatically generates Rust FFI bindings to C (and some C++) libraries.
I've been using this callback to rename anonymous fields: ```rust #[derive(Debug)] struct BindgenCallbacks { item_replacements: HashMap, field_name_replacements: HashMap
Right now `bindgen-tests` will run with the system's `clang` version by default. Even though this can be overridden using environment variables, installing different `clang` versions can be cumbersome but not...
There's a need for an API for manipulating generated items according to some open issues here. For a library I'm working on, I run an extra step which generates some...
The API generated for objective-c categories is inconvenient and requires implementation knowledge
Bindgen code from objective-c categories results in traits like `CLASS_CATEGORY` to be generated. This is not intuitive for a few reasons: * I didn't even realize that bindgen supported categories....
[Objective-c categories are a way of extending](https://www.tutorialspoint.com/objective_c/objective_c_categories.htm) a given objective-c class. It almost feels like categories are used to organize various sections of their codebase. As a result, there are...
### Input C/C++ Header ```C++ extern void add(int a, int b); ``` now i got: ```rust extern "C" { pub fn add(a: i32, b:i32); } ``` i also want: ```rust...
I would like to pipe the output of the c preprocessor directly in to bindgen for a Makefile of mine. Could bindgen take standard input by specifying a file as...
Suppose a user has the env var `BINDGEN_EXTRA_CLANG_ARGS_` set. They now want to add `-v` to clang, so they'll set `BINDGEN_EXTRA_CLANG_ARGS=-v`, thinking it'll work, but it wont. I wonder if...
### Input C/C++ Header ```c++ struct TABLE { TABLE() = default; TABLE_SHARE *s; handler *file; TABLE *next, *prev; // ... it's a very long class, I can provide more information...
The current release platform only supports Mac and Linux, please support Windows. ``` targets = ["x86_64-unknown-linux-gnu", "aarch64-apple-darwin", "x86_64-apple-darwin"] ```