-
Notifications
You must be signed in to change notification settings - Fork 155
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This is a major change to the function of autocxx. Previously, it ran bindgen, edited the output, appended cxx instructions, and packaged the results in a hierarchy of mods for the user. With this change, we NO LONGER edit the bindgen output. That's passed onto the user as-is. We simply augment it with cxx wrappers. This has pros and cons. Pros: * It makes the function of autocxx conceptually easier to understand. * We're more likely to be able to accommodate upstream bindgen changes without falling over. Similarly, as bindgen improves, we should automatically pass those improvements onto autocxx users. * With subsequent cleanups, it should reduce the complexity of autocxx. Cons: * We're more sensitive to bugs within bindgen. Four tests have been disabled because of bindgen bugs (which have been reported upstream). * We are unable to hide some of the original bindgen methods attached to types; users should not normally call them. This is a compatibility break in two known respects: * A wider selection of bindgen issues may be passed on, so this might break autocxx for some users. * For C++ functions that were Rust keywords (e.g. "async", "move") previously it was necessary to give their name with a _ in the `generate!()` directive, e.g. `generate!("async_")`. This is no longer the case (which is an improvement but nevertheless a compatibility break). This code needs quite a bit of cleanup. Fixes #1450.
- Loading branch information
Showing
21 changed files
with
365 additions
and
480 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.