shared_container_iterator now uses std::shared_ptr to store the reference
to the container. boost::shared_ptr is still supported and is wrapped
into std::shared_ptr on construction, so there is overhead due to allocation
of std::shared_ptr state. Going forward, std::shared_ptr is expected
to be the primary use case. As a bonus, this eliminates the dependency
on Boost.SmartPtr.
Moved shared_container_iterator.hpp into the iterator directory and left
a forwarding header for backward compatibility.
generator_iterator now uses decltype approach to deduce value and reference
types instead of the legacy result_type typedef, which was required to be
defined by the generator function.
The default constructor of generator_iterator now value initializes its
data members to avoid using uninitialized data.
The new min_category is similar to minimum_category but accepts variable
number of iterator categories on input instead of just two, and also does
not depend on Boost.MPL for lambda placeholders. The existing minimum_category
trait has been reimplemented in terms of min_category and deprecated.
We don't yet emit deprecation warnings as there is still code that uses
the old trait which we first need to update. Eventually, minimum_category
will emit warnings and will be removed.
boost/bind.hpp emits warnings about deprecating global placeholder argument
keywords. C++20 removes std::bind1st/bind2nd, so replaced their usage with
boost::bind.
- Fixed multiple broken links to the documentation. Converted some of the
links to internal references to the QuickBook documentation. Not all
links converted because some of the QuickBook pages are not completely
converted.
- Renamed utilities.qbk to type_traits.qbk and removed the part duplicated
by concept_checking.qbk.
- Renamed traits.qbk to iterator_traits.qbk to better disambiguate with
other type traits documented in type_traits.qbk.
- Converted some of the headings in iterator concepts to sections to be
able to give those sections ids. This allows to reference those sections
from other places in the documentation.
- In order to preserve the more compact pagination of the new sections
(i.e. to have multiple sections on one page, like it was with headings)
set chunk.section.depth=2 in the docs Jamfile.
Reverted: 2e099caceb9..21102938e8ccb
I'm going to reapply some of them soon, but it's easier to revert them
all first, as there are conflicts. Also the number of changes that were
inserted since then, mean that there would be a huge gap between related
changes.
Mostly to use the images and css files under doc/src instead of
doc/html, usually be deleting the settings in order to use the defaults.
Also add 'boost.root' to some builds in order to fix links which rely on
it.
[SVN r63146]