autocxx
autocxx copied to clipboard
Tool for safe ergonomic Rust/C++ interop driven from existing C++ headers
## Expected Behavior Refuse to allow freeing C++ objects with inaccessible destructors. Constructible C++ classes with non-public destructors are uncommon in my experience, but the ones that do exist are...
## Expected Behavior Either ignore them or generate usable wrappers. I don't see a problem with ref-qualified methods, but rvalue-ref-qualified ones should probably be ignored because there's no good Rust...
https://twitter.com/yoshuawuyts/status/1484655627246911490 and document appropriately
## Expected Behavior They should be handled the same as implicitly defaulted constructors (aka no user-defined ones). This means they may be deleted or present, depending on the members and...
## Expected Behavior If members of types without default constructors have default initializers, they should not prevent treating a class as though it has a default constructor, when the default...
## Expected Behavior Acknowledge the existence of base classes with no member variables. They may have member functions and/or special member functions. ## Actual Behavior bindgen fails to create the...
## Expected Behavior Emit bindings that work. dtolnay/cxx#1006 says that inserting a typedef results in `cxx::bridge` handling it already. dtolnay/cxx#850 talks about making it easier. dtolnay/cxx#537 and dtolnay/cxx#885 have some...
bindgen doesn't pass on _quite_ all the information we need in order to be able to generate autocxx bindings. Options in the future might be to fork bindgen, ask _very_...
It's my intention that we can support Rust compile-time feature enablement based on C++ macros. Where users are using our `build.rs` support in https://github.com/google/autocxx/tree/main/gen/build this should really be pretty trivial...
Simpler but the debug output is incomprehensibly huge. We need to wrap all `syn` things in a newtype wrapper which outputs more concise debug output.