-
Notifications
You must be signed in to change notification settings - Fork 162
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
Macro free dependency handling. #892
Conversation
fa31058
to
a6157a6
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #892 +/- ##
=======================================
Coverage 85.96% 85.96%
=======================================
Files 89 89
Lines 5870 5870
=======================================
Hits 5046 5046
Misses 824 824 ☔ View full report in Codecov by Sentry. |
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.
Glanced at this quickly, I like it a lot :)
The bulk of the refactoring can already be merged, see #898. |
7c03c1c
to
180ed8c
Compare
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.
Nice improvment
In a prior commit the sources were restructured such that each optional dependency is contained in separate files. This commit removes the macros that controlled which dependencies are included. To include the optional dependency Boost use: #include <highfive/highfive.hpp> #include <highfive/boost.hpp> the order doesn't matter.
180ed8c
to
1ef161e
Compare
Sketch of how we could reorganize our headers to allow each code to pick their dependencies simply by choosing which headers they include. This is similar to how pybind11 handles their convertors between Python types and say STL containers.