Cleanup header includes #309
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Make inclusion of
boost/bind/bind.hppconditional in some cases, when the code actually conditionally usesboost::bind. Reduces compile-time overhead and fixes boost/thread/detail/thread.hpp #includes boost/bind.hpp unconditionally but uses it conditionally #307.Remove some unnecessary uses of
boost::ref. This allows to avoid includingboost/core/ref.hppin a few places, and avoids the associated template instantiation overhead in others.Replace deprecated header includes with the more recent alternatives. For example:
boost/detail/lightweight_test.hpp->boost/core/lightweight_test.hpp,boost/ref.hpp->boost/core/ref.hpp.Replace some blanket includes with the more fine-grained ones. For example,
boost/utility.hpp,boost/atomic.hpp. This reduces compile time overhead.Add some missing includes, for example,
boost/core/ref.hppandboost/type_traits/is_same.hpp.Replace uses of
std::is_samewithboost::is_same(with the corresponding included header) since the standard type_traits header presence and validity is not tested by the code. Usingboost::is_samemakes the code more portable.