Boost logo

Boost-Commit :

From: nesotto_at_[hidden]
Date: 2008-07-16 16:05:44


Author: nesotto
Date: 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
New Revision: 47486
URL: http://svn.boost.org/trac/boost/changeset/47486

Log:
doc update
Text files modified:
   trunk/libs/ptr_container/doc/guidelines.html | 2
   trunk/libs/ptr_container/doc/guidelines.rst | 2
   trunk/libs/ptr_container/doc/headers.html | 7 ++++-
   trunk/libs/ptr_container/doc/headers.rst | 2 +
   trunk/libs/ptr_container/doc/ptr_container.html | 37 +++++++++++++++++++++++++++----
   trunk/libs/ptr_container/doc/ptr_container.rst | 47 ++++++++++++++++++++++++++++++++++-----
   6 files changed, 82 insertions(+), 15 deletions(-)

Modified: trunk/libs/ptr_container/doc/guidelines.html
==============================================================================
--- trunk/libs/ptr_container/doc/guidelines.html (original)
+++ trunk/libs/ptr_container/doc/guidelines.html 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
@@ -304,7 +304,7 @@
 </div>
 <div class="section">
 <h1><a class="toc-backref" href="#id8" id="choosing-the-right-container" name="choosing-the-right-container">Choosing the right container</a></h1>
-<p>The recommended usage pattern of the container classes are the same as the
+<p>The recommended usage pattern of the container classes is the same as
 for normal standard containers.</p>
 <p><tt class="docutils literal"><span class="pre">ptr_vector</span></tt>, <tt class="docutils literal"><span class="pre">ptr_list</span></tt> and <tt class="docutils literal"><span class="pre">ptr_deque</span></tt> offer the programmer different
 complexity tradeoffs and should be used accordingly. <tt class="docutils literal"><span class="pre">ptr_vector</span></tt> is the

Modified: trunk/libs/ptr_container/doc/guidelines.rst
==============================================================================
--- trunk/libs/ptr_container/doc/guidelines.rst (original)
+++ trunk/libs/ptr_container/doc/guidelines.rst 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
@@ -13,7 +13,7 @@
 Choosing the right container
 ----------------------------
 
-The recommended usage pattern of the container classes are the same as the
+The recommended usage pattern of the container classes is the same as
 for normal standard containers.
 
 ``ptr_vector``, ``ptr_list`` and ``ptr_deque`` offer the programmer different

Modified: trunk/libs/ptr_container/doc/headers.html
==============================================================================
--- trunk/libs/ptr_container/doc/headers.html (original)
+++ trunk/libs/ptr_container/doc/headers.html 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
@@ -292,8 +292,8 @@
 <h2 class="subtitle" id="library-headers">Library headers</h2>
 <table border="1" class="docutils">
 <colgroup>
-<col width="34%" />
-<col width="66%" />
+<col width="29%" />
+<col width="71%" />
 </colgroup>
 <tbody valign="top">
 <tr><td><strong>Header</strong></td>
@@ -323,6 +323,9 @@
 <td>classes <a class="reference" href="ptr_map.html">ptr_map</a> and <a class="reference" href="ptr_multimap.html">ptr_multimap</a>
 (and <tt class="docutils literal"><span class="pre">std::map</span></tt> and <tt class="docutils literal"><span class="pre">std::multimap</span></tt>)</td>
 </tr>
+<tr><td><tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_inserter.hpp&gt;</span></tt></td>
+<td>functions <a class="reference" href="ptr_inserter.html">ptr_back_inserter</a>, <a class="reference" href="ptr_inserter.html">ptr_front_inserter</a> and <a class="reference" href="ptr_inserter.html">ptr_inserter</a></td>
+</tr>
 <tr><td><tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_container.hpp&gt;</span></tt></td>
 <td>all classes</td>
 </tr>

Modified: trunk/libs/ptr_container/doc/headers.rst
==============================================================================
--- trunk/libs/ptr_container/doc/headers.rst (original)
+++ trunk/libs/ptr_container/doc/headers.rst 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
@@ -28,6 +28,8 @@
 ``<boost/ptr_container/ptr_map.hpp>`` classes `ptr_map <ptr_map.html>`_ and `ptr_multimap <ptr_multimap.html>`_
                                                            (and ``std::map`` and ``std::multimap``)
 
+``<boost/ptr_container/ptr_inserter.hpp>`` functions `ptr_back_inserter <ptr_inserter.html>`_, `ptr_front_inserter <ptr_inserter.html>`_ and `ptr_inserter <ptr_inserter.html>`_
+
 ``<boost/ptr_container/ptr_container.hpp>`` all classes
 
 ``<boost/ptr_container/ptr_sequence_adapter.hpp>`` class `ptr_sequence_adapter <ptr_sequence_adapter.html>`_

Modified: trunk/libs/ptr_container/doc/ptr_container.html
==============================================================================
--- trunk/libs/ptr_container/doc/ptr_container.html (original)
+++ trunk/libs/ptr_container/doc/ptr_container.html 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
@@ -325,6 +325,7 @@
 <li><a class="reference" href="faq.html">FAQ</a></li>
 <li><a class="reference" href="#upgrading-from-boost-v-1-33">Upgrading from Boost v. 1.33.*</a></li>
 <li><a class="reference" href="#upgrading-from-boost-v-1-34">Upgrading from Boost v. 1.34.*</a></li>
+<li><a class="reference" href="#upgrading-from-boost-v-1-35">Upgrading from Boost v. 1.35.*</a></li>
 <li><a class="reference" href="#future-developments">Future Developments</a></li>
 <li><a class="reference" href="#acknowledgements">Acknowledgements</a></li>
 <li><a class="reference" href="#references">References</a></li>
@@ -401,7 +402,7 @@
 </ol>
 <!-- -->
 <ol class="arabic simple" start="8">
-<li>Built-in support for deep-copy semantics via the <a class="reference" href="reference.html#the-cloneable-concept">the Cloneable concept</a></li>
+<li>Built-in support for deep-copy semantics via the <a class="reference" href="reference.html#the-clonable-concept">the Clonable concept</a></li>
 </ol>
 <p>The disadvantages are</p>
 <ol class="arabic simple">
@@ -455,7 +456,7 @@
 </div>
 <div class="section">
 <h1><a id="upgrading-from-boost-v-1-34" name="upgrading-from-boost-v-1-34">Upgrading from Boost v. <tt class="docutils literal"><span class="pre">1.34.*</span></tt></a></h1>
-<p>Serialization have now been made optional thanks to Sebastian Ramacher.
+<p>Serialization has now been made optional thanks to Sebastian Ramacher.
 You simply include <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/serialize.hpp&gt;</span></tt> or perhaps
 just one of the more specialized headers.</p>
 <p>All containers are now copy-constructible and assignable. So you can e.g. now
@@ -472,7 +473,7 @@
 const VoidPtrContainer&amp; base() const;
 </pre>
 <p>These allow direct access to the wrapped container which is
-somtimes needed when you want to provide extra functionality.</p>
+sometimes needed when you want to provide extra functionality.</p>
 <p>A few new functions have been added to sequences:</p>
 <pre class="literal-block">
 void resize( size_type size );
@@ -483,18 +484,44 @@
 void transfer( iterator before, T** from, size_type size, bool delete_from = true );
 T** c_array();
 </pre>
-<p>Finally you can now also &quot;copy&quot; and &quot;assign&quot; an <tt class="docutils literal"><span class="pre">auto_type</span></tt> ptr by calling <tt class="docutils literal"><span class="pre">move()</span></tt>:</p>
+<p>Finally, you can now also &quot;copy&quot; and &quot;assign&quot; an <tt class="docutils literal"><span class="pre">auto_type</span></tt> ptr by calling <tt class="docutils literal"><span class="pre">move()</span></tt>:</p>
 <pre class="literal-block">
 boost::ptr_vector&lt;T&gt;::auto_type move_ptr = ...;
 return boost::ptr_container::move( move_ptr );
 </pre>
 </div>
 <div class="section">
+<h1><a id="upgrading-from-boost-v-1-35" name="upgrading-from-boost-v-1-35">Upgrading from Boost v. <tt class="docutils literal"><span class="pre">1.35.*</span></tt></a></h1>
+<p>The library has been fairly stable, but a few new containers have been supported:</p>
+<ul class="simple">
+<li><tt class="docutils literal"><span class="pre">boost::ptr_unordered_set&lt;T&gt;</span></tt> in <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_unordered_set.hpp&gt;</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">boost::ptr_unordered_map&lt;Key,T&gt;</span></tt> in <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_unordered_map.hpp&gt;</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">boost::ptr_circular_buffer&lt;T&gt;</span></tt> in <tt class="docutils literal"><span class="pre">&lt;boost/ptr_container/ptr_circular_buffer.hpp&gt;</span></tt></li>
+</ul>
+<p>There are no docs for these classes yet, but they are almost identical to
+<tt class="docutils literal"><span class="pre">boost::ptr_set&lt;T&gt;</span></tt>, <tt class="docutils literal"><span class="pre">boost::ptr_map&lt;Key,T&gt;</span></tt> and <tt class="docutils literal"><span class="pre">boost::ptr_array&lt;T,N&gt;</span></tt>, respectively.
+The underlying containers stem from the two boost libraries</p>
+<ul class="simple">
+<li><a class="reference" href="../../unordered/index.html">Boost.Unordered</a></li>
+<li><a class="reference" href="../../circular_buffer/index.html">Boost.Circular Buffer</a></li>
+</ul>
+<p>Furthermore, <a class="reference" href="ptr_inserter.html">insert iterators</a> have been added.</p>
+</div>
+<div class="section">
 <h1><a id="future-developments" name="future-developments">Future Developments</a></h1>
 <p>There are indications that the <tt class="docutils literal"><span class="pre">void*</span></tt> implementation has a slight
 performance overhead compared to a <tt class="docutils literal"><span class="pre">T*</span></tt> based implementation. Furthermore, a
 <tt class="docutils literal"><span class="pre">T*</span></tt> based implementation is so much easier to use type-safely
 with algorithms. Therefore I anticipate to move to a <tt class="docutils literal"><span class="pre">T*</span></tt> based implementation.</p>
+<p>Furthermore, the clone allocator might be allowed to have state.
+This design requires some thought, so if you have good ideas and use-cases'
+for this, please don't hesitate to contact me.</p>
+<p>Also, support for Boost.Interprocess is on the todo list.</p>
+<p>There has been a few request for <tt class="docutils literal"><span class="pre">boost::ptr_multi_index_container&lt;T,...&gt;</span></tt>.
+I investigated how difficult it would be, and it did turn out to be difficult, albeit
+not impossible. But I don't have the resources to implement this beast
+for years to come, so if someone really needs this container, I suggest that they
+talk with me in private about how it can be done.</p>
 </div>
 <div class="section">
 <h1><a id="acknowledgements" name="acknowledgements">Acknowledgements</a></h1>
@@ -515,7 +542,7 @@
 <li>Pavel Chikulaev for comments and bug-fixes</li>
 <li>Andreas Hommel for fixing the nasty Metrowerks bug</li>
 <li>Charles Brockman for his many comments on the documentation</li>
-<li>Sebastian Ramacher for implementing the optinal serialization support</li>
+<li>Sebastian Ramacher for implementing the optional serialization support</li>
 </ul>
 </div>
 <div class="section">

Modified: trunk/libs/ptr_container/doc/ptr_container.rst
==============================================================================
--- trunk/libs/ptr_container/doc/ptr_container.rst (original)
+++ trunk/libs/ptr_container/doc/ptr_container.rst 2008-07-16 16:05:43 EDT (Wed, 16 Jul 2008)
@@ -37,6 +37,7 @@
 * FAQ_
 * `Upgrading from Boost v. 1.33.*`_
 * `Upgrading from Boost v. 1.34.*`_
+* `Upgrading from Boost v. 1.35.*`_
 * `Future Developments`_
 * Acknowledgements_
 * References_
@@ -134,9 +135,9 @@
 
 ..
 
-8. Built-in support for deep-copy semantics via the `the Cloneable concept`__
+8. Built-in support for deep-copy semantics via the `the Clonable concept`__
 
-.. __: reference.html#the-cloneable-concept
+.. __: reference.html#the-clonable-concept
 
 The disadvantages are
 
@@ -191,7 +192,7 @@
  Upgrading from Boost v. ``1.34.*``
 ====================================
 
-Serialization have now been made optional thanks to Sebastian Ramacher.
+Serialization has now been made optional thanks to Sebastian Ramacher.
 You simply include ``<boost/ptr_container/serialize.hpp>`` or perhaps
 just one of the more specialized headers.
 
@@ -210,7 +211,7 @@
     const VoidPtrContainer& base() const;
 
 These allow direct access to the wrapped container which is
-somtimes needed when you want to provide extra functionality.
+sometimes needed when you want to provide extra functionality.
     
 A few new functions have been added to sequences::
 
@@ -222,11 +223,33 @@
     void transfer( iterator before, T** from, size_type size, bool delete_from = true );
     T** c_array();
 
-Finally you can now also "copy" and "assign" an ``auto_type`` ptr by calling ``move()``::
+Finally, you can now also "copy" and "assign" an ``auto_type`` ptr by calling ``move()``::
 
     boost::ptr_vector<T>::auto_type move_ptr = ...;
     return boost::ptr_container::move( move_ptr );
 
+====================================
+ Upgrading from Boost v. ``1.35.*``
+====================================
+
+The library has been fairly stable, but a few new containers have been supported:
+
+- ``boost::ptr_unordered_set<T>`` in ``<boost/ptr_container/ptr_unordered_set.hpp>``
+
+- ``boost::ptr_unordered_map<Key,T>`` in ``<boost/ptr_container/ptr_unordered_map.hpp>``
+
+- ``boost::ptr_circular_buffer<T>`` in ``<boost/ptr_container/ptr_circular_buffer.hpp>``
+
+There are no docs for these classes yet, but they are almost identical to
+``boost::ptr_set<T>``, ``boost::ptr_map<Key,T>`` and ``boost::ptr_array<T,N>``, respectively.
+The underlying containers stem from the two boost libraries
+
+- `Boost.Unordered <../../unordered/index.html>`_
+
+- `Boost.Circular Buffer <../../circular_buffer/index.html>`_
+
+Furthermore, `insert iterators <ptr_inserter.html>`_ have been added.
+
 =====================
  Future Developments
 =====================
@@ -236,6 +259,18 @@
 ``T*`` based implementation is so much easier to use type-safely
 with algorithms. Therefore I anticipate to move to a ``T*`` based implementation.
 
+Furthermore, the clone allocator might be allowed to have state.
+This design requires some thought, so if you have good ideas and use-cases'
+for this, please don't hesitate to contact me.
+
+Also, support for Boost.Interprocess is on the todo list.
+
+There has been a few request for ``boost::ptr_multi_index_container<T,...>``.
+I investigated how difficult it would be, and it did turn out to be difficult, albeit
+not impossible. But I don't have the resources to implement this beast
+for years to come, so if someone really needs this container, I suggest that they
+talk with me in private about how it can be done.
+
 ================
 Acknowledgements
 ================
@@ -257,7 +292,7 @@
 - Pavel Chikulaev for comments and bug-fixes
 - Andreas Hommel for fixing the nasty Metrowerks bug
 - Charles Brockman for his many comments on the documentation
-- Sebastian Ramacher for implementing the optinal serialization support
+- Sebastian Ramacher for implementing the optional serialization support
 
 ==========
 References


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk