-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document type for the Clang parser #84
Conversation
Which is? |
Nested anonymous types: #85 |
Now I see where you're coming from. As I don't squash PRs could you update your PR with better commit titles? Thanks! |
0725ad2
to
e2c21f7
Compare
done |
@@ -66,4 +68,11 @@ struct CopyPtr { | |||
const T &operator*() const { return *this->ptr; } | |||
}; | |||
|
|||
// compatibility for C++11 | |||
template< typename T, typename... Args > | |||
std::unique_ptr<T> make_unique(Args&&... args) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the future I don't think we'll want to support C++11 compilers. When I started this I think I had C++14-ish in mind, I think it's safe nowadays to move on to C++17. This will also enable us to use std::variant
and std::optional
in certain places.
Thanks! 👍 |
This refactor brings the equivalent of Crystal's
Bindgen::Parser::Document
to the Clang parser.Alone it doesn't do anything new, but passing the whole document around allows each registered AST handler to insert multiple parser values (there will be a use case for this).