|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r56558 - trunk/libs/unordered/doc
From: daniel_james_at_[hidden]
Date: 2009-10-03 12:40:54
Author: danieljames
Date: 2009-10-03 12:40:53 EDT (Sat, 03 Oct 2009)
New Revision: 56558
URL: http://svn.boost.org/trac/boost/changeset/56558
Log:
Update reference docs to latest version of draft standard and fill in
some missing details.
Text files modified:
trunk/libs/unordered/doc/ref.xml | 244 ++++++++++++++++++++++++++++++++++++++-
1 files changed, 236 insertions(+), 8 deletions(-)
Modified: trunk/libs/unordered/doc/ref.xml
==============================================================================
--- trunk/libs/unordered/doc/ref.xml (original)
+++ trunk/libs/unordered/doc/ref.xml 2009-10-03 12:40:53 EDT (Sat, 03 Oct 2009)
@@ -23,8 +23,10 @@
An unordered associative container that stores unique values.
</simpara></purpose>
<description>
- <para>For the normative reference see chapter 23 of
- <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2691.pdf">the working draft of the C++ standard [n2691].</ulink></para>
+ <para>Based on chapter 23 of
+ <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2960.pdf">the working draft of the C++ standard [n2960]</ulink>.
+ But without the updated rules for allocators.
+ </para>
<para><emphasis role="bold">Template Parameters</emphasis>
<informaltable>
<tgroup cols="2">
@@ -180,6 +182,26 @@
<description>
<para>The copy constructor. Copies the contained elements, hash function, predicate, maximum load factor and allocator.</para>
</description>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </constructor>
+ <constructor>
+ <parameter>
+ <paramtype>unordered_set &&</paramtype>
+ </parameter>
+ <description>
+ <para>The move constructor.</para>
+ </description>
+ <notes>
+ <para>This is emulated on compilers without rvalue references.</para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</constructor>
<constructor specifiers="explicit">
<parameter name="a">
@@ -201,6 +223,9 @@
</description>
</constructor>
<destructor>
+ <notes>
+ <para>The destructor is applied to every element, and all memory is deallocated</para>
+ </notes>
</destructor>
<method name="operator=">
<parameter>
@@ -210,6 +235,38 @@
<description>
<para>The assignment operator. Copies the contained elements, hash function, predicate and maximum load factor but not the allocator.</para>
</description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_set)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </method>
+ <method name="operator=">
+ <parameter>
+ <paramtype>unordered_set &&</paramtype>
+ </parameter>
+ <type>unordered_set&</type>
+ <description>
+ <para>The move assignment operator.</para>
+ </description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_set)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</method>
<method name="get_allocator" cv="const">
<type>allocator_type</type>
@@ -761,8 +818,10 @@
An unordered associative container that stores values. The same key can be stored multiple times.
</simpara></purpose>
<description>
- <para>For the normative reference see chapter 23 of
- <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2691.pdf">the working draft of the C++ standard [n2691].</ulink></para>
+ <para>Based on chapter 23 of
+ <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2960.pdf">the working draft of the C++ standard [n2960]</ulink>.
+ But without the updated rules for allocators.
+ </para>
<para><emphasis role="bold">Template Parameters</emphasis>
<informaltable>
<tgroup cols="2">
@@ -918,6 +977,26 @@
<description>
<para>The copy constructor. Copies the contained elements, hash function, predicate, maximum load factor and allocator.</para>
</description>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </constructor>
+ <constructor>
+ <parameter>
+ <paramtype>unordered_multiset &&</paramtype>
+ </parameter>
+ <description>
+ <para>The move constructor.</para>
+ </description>
+ <notes>
+ <para>This is emulated on compilers without rvalue references.</para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</constructor>
<constructor specifiers="explicit">
<parameter name="a">
@@ -939,6 +1018,9 @@
</description>
</constructor>
<destructor>
+ <notes>
+ <para>The destructor is applied to every element, and all memory is deallocated</para>
+ </notes>
</destructor>
<method name="operator=">
<parameter>
@@ -948,6 +1030,38 @@
<description>
<para>The assignment operator. Copies the contained elements, hash function, predicate and maximum load factor but not the allocator.</para>
</description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_multiset)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </method>
+ <method name="operator=">
+ <parameter>
+ <paramtype>unordered_multiset &&</paramtype>
+ </parameter>
+ <type>unordered_multiset&</type>
+ <description>
+ <para>The move assignment operator.</para>
+ </description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_multiset)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</method>
<method name="get_allocator" cv="const">
<type>allocator_type</type>
@@ -1503,8 +1617,10 @@
An unordered associative container that associates unique keys with another value.
</simpara></purpose>
<description>
- <para>For the normative reference see chapter 23 of
- <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2691.pdf">the working draft of the C++ standard [n2691].</ulink></para>
+ <para>Based on chapter 23 of
+ <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2960.pdf">the working draft of the C++ standard [n2960]</ulink>.
+ But without the updated rules for allocators.
+ </para>
<para><emphasis role="bold">Template Parameters</emphasis>
<informaltable>
<tgroup cols="2">
@@ -1666,6 +1782,26 @@
<description>
<para>The copy constructor. Copies the contained elements, hash function, predicate, maximum load factor and allocator.</para>
</description>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </constructor>
+ <constructor>
+ <parameter>
+ <paramtype>unordered_map &&</paramtype>
+ </parameter>
+ <description>
+ <para>The move constructor.</para>
+ </description>
+ <notes>
+ <para>This is emulated on compilers without rvalue references.</para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</constructor>
<constructor specifiers="explicit">
<parameter name="a">
@@ -1687,6 +1823,9 @@
</description>
</constructor>
<destructor>
+ <notes>
+ <para>The destructor is applied to every element, and all memory is deallocated</para>
+ </notes>
</destructor>
<method name="operator=">
<parameter>
@@ -1696,6 +1835,38 @@
<description>
<para>The assignment operator. Copies the contained elements, hash function, predicate and maximum load factor but not the allocator.</para>
</description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_map)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </method>
+ <method name="operator=">
+ <parameter>
+ <paramtype>unordered_map &&</paramtype>
+ </parameter>
+ <type>unordered_map&</type>
+ <description>
+ <para>The move assignment operator.</para>
+ </description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_map)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</method>
<method name="get_allocator" cv="const">
<type>allocator_type</type>
@@ -2290,8 +2461,10 @@
An unordered associative container that associates keys with another value. The same key can be stored multiple times.
</simpara></purpose>
<description>
- <para>For the normative reference see chapter 23 of
- <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2691.pdf">the working draft of the C++ standard [n2691].</ulink></para>
+ <para>Based on chapter 23 of
+ <ulink url="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2960.pdf">the working draft of the C++ standard [n2960]</ulink>.
+ But without the updated rules for allocators.
+ </para>
<para><emphasis role="bold">Template Parameters</emphasis>
<informaltable>
<tgroup cols="2">
@@ -2453,6 +2626,26 @@
<description>
<para>The copy constructor. Copies the contained elements, hash function, predicate, maximum load factor and allocator.</para>
</description>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </constructor>
+ <constructor>
+ <parameter>
+ <paramtype>unordered_multimap &&</paramtype>
+ </parameter>
+ <description>
+ <para>The move constructor.</para>
+ </description>
+ <notes>
+ <para>This is emulated on compilers without rvalue references.</para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</constructor>
<constructor specifiers="explicit">
<parameter name="a">
@@ -2474,6 +2667,9 @@
</description>
</constructor>
<destructor>
+ <notes>
+ <para>The destructor is applied to every element, and all memory is deallocated</para>
+ </notes>
</destructor>
<method name="operator=">
<parameter>
@@ -2483,6 +2679,38 @@
<description>
<para>The assignment operator. Copies the contained elements, hash function, predicate and maximum load factor but not the allocator.</para>
</description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_multimap)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para><code>value_type</code> is copy constructible</para>
+ </requires>
+ </method>
+ <method name="operator=">
+ <parameter>
+ <paramtype>unordered_multimap &&</paramtype>
+ </parameter>
+ <type>unordered_multimap&</type>
+ <description>
+ <para>The move assignment operator.</para>
+ </description>
+ <notes>
+ <para>
+ On compilers without rvalue references, there is a single assignment
+ operator with the signature <code>operator=(unordered_multimap)</code>
+ in order to emulate move semantics.
+ </para>
+ </notes>
+ <requires>
+ <para>
+ <code>value_type</code> is move constructible.
+ (TODO: This is not actually required in this implementation).
+ </para>
+ </requires>
</method>
<method name="get_allocator" cv="const">
<type>allocator_type</type>
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