-
Notifications
You must be signed in to change notification settings - Fork 417
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
New header convention #2572
base: devel
Are you sure you want to change the base?
New header convention #2572
Conversation
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.
👋 Hi,
This is a reminder message to assign an extra build label to this Pull Request if needed.
By default, this PR will be build with minimal build options (URDF support and Python bindings)
The possible extra labels are:
- build_collision (build Pinocchio with coal support)
- build_casadi (build Pinocchio with CasADi support)
- build_autodiff (build Pinocchio with CppAD support)
- build_codegen (build Pinocchio with CppADCodeGen support)
- build_extra (build Pinocchio with extra algorithms)
- build_mpfr (build Pinocchio with Boost.Multiprecision support)
- build_sdf (build Pinocchio with SDF parser)
- build_accelerate (build Pinocchio with APPLE Accelerate framework support)
- build_all (build Pinocchio with ALL the options stated above)
Thanks.
The Pinocchio development team.
Here's some feedback about the proposal.
|
Sure this example is simple. What I want to show is not the forward declaration issue, more the include cycle.
If you allow some includes, how do you prevent include cycle ?
I rename it into
|
@ManifoldFR I have changed I will change the convention.md and the migration script later. |
dev: First working version of the refactor script dev: Raise a nice error when we can't find guards in refactor_headers.py Apply new convention to refactor_headers.py dev: Apply new commit convention
6528383
to
4c68d20
Compare
This PR is a POC about include convention.
Right now, there is no include convention. This lead to some issues:
Since Pinocchio is header only, we can't use the include what you use convention since it will create a lot of cycle.
In this PR we propose to change the include convention as the following:
xxx.hpp
xxx-def.hxx
xxx.hxx
xxx-inst.hxx
With the following rules:
This should prevent cyclic include and with some .clangd trick LSP processing will be improved.
All is described in development/convention.md.
Constraints