Compare commits

...

19 Commits

Author SHA1 Message Date
c66b89736d Create a branch for inspect fixes.
[SVN r61439]
2010-04-20 21:11:27 +00:00
f6c15771e2 Fixed tab and no-newline-at-end-of-file issues from inspection report
[SVN r61435]
2010-04-20 17:54:16 +00:00
4641e2e69d Boost.Range - removed unnecessary code from the sliced adaptor.
Added a unit test to test the use of a non-member function as a transform functor and composition of strided, sliced and transformed range adaptors.

[SVN r61404]
2010-04-19 11:45:27 +00:00
a1cb3d9795 Boost.Range added the strided adaptor to the boost/range/adaptors.hpp
[SVN r61378]
2010-04-18 19:55:46 +00:00
4830359a93 Boost.Range corrected istream_range implementation. Added the missing istream_range unit test. Removed the untested and undocumented unbounded_range for this release.
[SVN r61345]
2010-04-17 21:02:28 +00:00
cf63ba0dc9 Boost.Range removed redundant overloads, increased compiler support, and made return types consistent.
[SVN r61281]
2010-04-14 22:16:11 +00:00
22fcae4fcb Boost.Range reverted attempted fix for iterator_range::operator[] since this was not a good fix.
[SVN r61269]
2010-04-14 07:41:38 +00:00
47b40f66e1 Boost.Range defect fix for the operator[] of iterator_range. This now reverts to a simpler implementation when the iterator is a pointer.
[SVN r61258]
2010-04-13 20:41:11 +00:00
350a1f8bfc Boost.Range updated the return types of various algorithms to improve consistency. This is to address a specific request made during the formal review of Boost.RangeEx.
[SVN r61211]
2010-04-11 22:05:02 +00:00
cab01e8ba3 Boost.Range remove deprecated html documentation.
[SVN r61148]
2010-04-08 20:56:00 +00:00
067b63da8e Boost.Range improved push_front algorithm unit test. Updated documentation.
[SVN r61145]
2010-04-08 19:09:34 +00:00
52c04e94f9 Boost.Range fix for the range_size metafunction. This showed as a compilation failure on VACPP.
[SVN r61144]
2010-04-08 10:40:14 +00:00
b573b6c9bf Boost.Range modification in an attempt to improve the compatibility of the adjacent_filtered and uniqued adaptors.
[SVN r61142]
2010-04-07 23:40:53 +00:00
a24a69f38e Boost.Range - avoid accidental ADL of begin/end functions.
[SVN r61098]
2010-04-06 10:12:11 +00:00
6e2e1d592b Boost.Range - fixed documentation Jamfile defect and added the algorithm extension iota to the documentation.
[SVN r61072]
2010-04-05 17:36:10 +00:00
704ce0186a Boost.Range fix to the combine function that did not show as a defect on most compilers.
This iteration also makes the code compatible with more compilers.

[SVN r61071]
2010-04-05 14:12:24 +00:00
3a6c6c6bcd Boost.Range fix to the skip_iterator constructor used by adjacent_filter. On the templatised constructor the m_range variable was uninitialized. This may explain some of the failures for adjacent_filtered and uniqued on Intel compilers.
[SVN r61066]
2010-04-05 09:54:34 +00:00
c6c4634aca Revert accidental commit to range.
[SVN r61064]
2010-04-05 08:51:43 +00:00
a420ef96bc Rebuild the integer documentation.
[SVN r61058]
2010-04-05 07:27:25 +00:00
265 changed files with 2931 additions and 7213 deletions

View File

@ -8,20 +8,12 @@
#// For more information, see http://www.boost.org/libs/range/
#//
#use-project boost : $(BOOST_ROOT) ;
project boost/libs/range/doc ;
import boostbook : boostbook ;
#import quickbook ;
using boostbook ;
using quickbook ;
path-constant images_location : html ;
#xml boost_range : boost_range.qbk ;
#boostbook standalone
boostbook quickbook
:
boost_range.qbk
@ -34,11 +26,7 @@ boostbook quickbook
<xsl:param>toc.section.depth=3
<xsl:param>toc.max.depth=3
<xsl:param>generate.section.toc.level=4
# <xsl:param>generate.section.toc.level=4
# <xsl:param>chunk.first.sections=7
# <xsl:param>toc.section.depth=10
<format>pdf:<xsl:param>boost.url.prefix=http://www.boost.org/doc/libs/release/doc/html
<format>pdf:<xsl:param>img.src.path=$(images_location)/
<format>pdf:<xsl:param>boost.url.prefix=http://www.boost.org/doc/libs/release/doc/html
<format>pdf:<xsl:param>img.src.path=$(images_location)/
;

View File

@ -1,769 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Boost.Range Reference </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<table>
<tr>
<td><img src="../../../boost.png" width="100%" border="0"></td>
<td><h1><br>
Boost.Range
</h1>
</td>
</tr>
</table>
<h2>Synopsis and Reference
</h2>
<ul>
<li>
<a href="#overview">Overview</a>
<li>
<a href="#Synopsis">Synopsis</a>
<li>
<a href="#Semantics">Semantics</a>
<li>
<a href="#minimal_interface">Extending the library</a></li>
</ul>
<hr size="1">
<a name="overview"></a>
<h3>Overview</h3>
<p>
Three types of objects are currently supported by the library:
<ul>
<li>
standard-like containers
<li>
<code>std::pair&lt;iterator,iterator&gt;</code>
<li>
built-in arrays
</li>
</ul>
Even though the behavior of the primary templates are exactly such that
standard containers will be supported by default, the requirements are much
lower than the standard container requirements. For example, the utility class <a href="utility_class.html#iter_range">
<code>iterator_range</code></a> implements the <a href="#minimal_interface">minimal
interface</a> required to make the class a <a href="range.html#forward_range">Forward
Range</a>
.
<P></P>
<p>
Please also see <a href="range.html">Range concepts</a> for more details.
</p>
<a name="Synopsis"></a>
<h3>Synopsis</h3>
<p>
<pre>
<span class=keyword>namespace </span><span class=identifier>boost</span>
<span class=special>{
</span><span class=comment>//
// Single Pass Range metafunctions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a href="#range_iterator"><span
class=identifier>range_iterator</span></a><span class=special>;
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a href="#range_value"><span
class=identifier>range_value</span></a><span class=special>;
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a href="#range_reference"><span
class=identifier>range_reference</span></a><span class=special>;
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a href="#range_pointer"><span
class=identifier>range_pointer</span></a><span class=special>;
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a href="#range_category"><span
class=identifier>range_category</span></a><span class=special>;
</span><span class=comment>//
// Forward Range metafunctions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a href="#range_difference"><span
class=identifier>range_difference</span></a><span class=special>;
</span><span class=comment>//
// Bidirectional Range metafunctions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>struct </span><a
href="#range_reverse_iterator"><span
class=identifier>range_reverse_iterator</span></a><span class=special>;
</span><span class=comment>//
// Single Pass Range functions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#begin"><span class=identifier>begin</span></a><span class=special>( </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#begin"><span class=identifier>begin</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#end"><span class=identifier>end</span></a><span class=special>( </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#end"><span class=identifier>end</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>bool
</span><a href="#empty"><span class=identifier>empty</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=comment>//
// Forward Range functions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_difference</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#size"><span class=identifier>distance</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=comment>//
// Bidirectional Range functions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#rbegin"><span class=identifier>rbegin</span></a><span class=special>( </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#rbegin"><span class=identifier>rbegin</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#rend"><span class=identifier>rend</span></a><span class=special>( </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#rend"><span class=identifier>rend</span></a><span class=special>( </span><span class=keyword>const </span><span
class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span>
<span class=comment>//
// Random Access Range functions
//
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_difference</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type
</span><a href="#size"><span class=identifier>size</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);</span>
<span class=comment>//
// Special const Range functions
//
</span>
<span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;</span>
<span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type </span>
<a href="#const_begin"><span class=identifier>const_begin</span></a><span class=special>(</span><span class=keyword> const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span>
<span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;</span>
<span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type </span>
<a href="#const_end"><span class=identifier>const_end</span></a><span class=special>(</span><span class=keyword> const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span>
<span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;</span>
<span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type </span>
<a href="#const_rbegin"><span class=identifier>const_rbegin</span></a><span class=special>(</span><span class=keyword> const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);
</span>
<span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;</span>
<span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type </span>
<a href="#const_rend"><span class=identifier>const_rend</span></a><span class=special>( </span><span class=keyword>const </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>);</span>
<span class=comment>//
// String utilities
//</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=identifier>iterator_range</span><span class=special>&lt;...</span><span class=identifier>see</span> <span class=identifier>below</span><span class=special>...&gt;</span>
<span class=identifier><a href="#as_literal">as_literal</a></span><span class=special>(</span> <span class=identifier>T</span><span class=special>&amp;</span> <span class=identifier>r</span> <span class=special>);</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=identifier>iterator_range</span><span class=special>&lt;...</span><span class=identifier>see</span> <span class=identifier>below</span><span class=special>...&gt;</span>
<span class=identifier><a href="#as_array">as_literal</a></span><span class=special>(</span> <span class=keyword>const</span> <span class=identifier>T</span><span class=special>&amp;</span> <span class=identifier>r</span> <span class=special>);</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=identifier>iterator_range</span><span class=special>&lt;</span> <span class=keyword>typename</span> <span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type</span> <span class=special>&gt;</span>
<span class=identifier><a href="#as_array">as_array</a></span><span class=special>(</span> <span class=identifier>T</span><span class=special>&amp;</span> <span class=identifier>r</span> <span class=special>);</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=identifier>iterator_range</span><span class=special>&lt;</span> <span class=keyword>typename</span> <span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=keyword>const</span> <span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type</span> <span class=special>&gt;</span>
<span class=identifier><a href="#as_literal">as_array</a></span><span class=special>(</span> <span class=keyword>const</span> <span class=identifier>T</span><span class=special>&amp;</span> <span class=identifier>r</span> <span class=special>);</span>
<span class=special>} </span><span class=comment>// namespace 'boost'
</span>
</pre>
<P></P>
<a name="Semantics"></a>
<h3>Semantics</h3>
<h4>notation</h4>
<p>
<table cellpadding="5" border="1">
<tr>
<th>
Type
<th>
Object
<th>
Describes
</tr>
<tr>
<td><code>X</code>
<td><code>x</code>
<td>any type</td>
<tr>
<td><code>T</code>
</td>
<td><code>t</code>
<td>denotes behavior of the primary templates</td>
</tr>
<tr>
<td><code>P</code>
<td><code>p</code>
<td>denotes <code>std::pair&lt;iterator,iterator&gt;</code></td>
<tr>
<td><code>A[sz]</code>
<td><code>a</code>
<td>denotes an array of type <code>A</code> of size <code>sz</code>
</tr>
<tr>
<td><code>Char*</code>
<td><code>s</code>
<td>denotes either <code>char*</code> or <code>wchar_t*</code></td>
</tr>
</table>
</p>
<p>
Please notice in tables below that when four lines appear in a cell, the first
line will describe the primary template, the second line pairs of iterators,
the third line arrays and the last line null-terminated strings.
</p>
<h4>Metafunctions</h4>
<p>
<table border="1" cellpadding="5">
<tr>
<th>
Expression</th>
<th>
Return type</th>
<th>
Complexity</th>
</tr>
<tr >
<td><a name="range_iterator"></a><code>range_iterator&lt;X&gt;::type</code></td>
<td><code>T::iterator</code><br>
<code>P::first_type</code><br>
<code>A*</code><br>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_const_iterator"></a><code>range_iterator&lt;const X&gt;::type</code></td>
<td><code>T::const_iterator</code><br>
<code>P::first_type</code><br>
<code>const A*</code><br>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_value"></a><code>range_value&lt;X&gt;::type</code></td>
<td><code>boost::iterator_value&lt;range_iterator&lt;X&gt;::type&gt;::type</code>
</td>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_reference"></a><code>range_reference&lt;X&gt;::type</code></td>
<td><code>boost::iterator_reference&lt;range_iterator&lt;X&gt;::type&gt;::type</code>
</td>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_pointer"></a><code>range_pointer&lt;X&gt;::type</code></td>
<td><code>boost::iterator_pointer&lt;range_iterator&lt;X&gt;::type&gt;::type</code>
</td>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_category"></a><code>range_category&lt;X&gt;::type</code></td>
<td><code>boost::iterator_category&lt;range_iterator&lt;X&gt;::type&gt;::type</code>
</td>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_difference"></a><code>range_difference&lt;X&gt;::type</code></td>
<td>
<code>boost::iterator_difference&lt;range_iterator&lt;X&gt;::type&gt;::type</code></td>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_reverse_iterator"></a><code>range_reverse_iterator&lt;X&gt;::type</code></td>
<td><code>boost::reverse_iterator&lt;range_iterator&lt;X&gt;::type&gt;</code><br>
<td>compile time</td>
</tr>
<tr>
<td><a name="range_const_reverse_iterator"></a><code>range_reverse_iterator&lt;const X&gt;::type</code></td>
<td><code>boost::reverse_iterator&lt;range_iterator&lt;const X&gt;::type&gt;</code>
<br>
<td>compile time</td>
</tr>
</table>
</p>
<h4>Functions</h4>
<p>
<table border="1" cellpadding="5">
<tr>
<th>
Expression</th>
<th>
Return type</th>
<th>
Returns</th>
<th>
Complexity</th>
</tr>
<tr>
<td><a name="begin"></a><code>begin(x)</code></td>
<td><code>range_iterator&lt;X&gt;::type</code></td>
<td>
<code>p.first</code> if <code>p</code> is of type <code>std::pair&lt;T&gt;<code><br>
<code>a</code> if <code>a</code> is an array <br>
<code>range_begin(x)</code> if that expression would invoke a function found by ADL <br>
<code>t.begin()</code> otherwise
<td>constant time</td>
</tr>
<tr>
<td><a name="end"></a><code>end(x)</code></td>
<td><code>range_iterator&lt;X&gt;::type</code></td>
<td>
<code>p.second</code> if <code>p</code> is of type <code>std::pair&lt;T&gt;<code><br>
<code>a + sz</code> if <code>a</code> is an array of size <code>sz</code>
<br>
<code>range_end(x)</code> if that expression would invoke a function found by ADL <br>
<code>t.end()</code> otherwise
<td>
constant time </td>
</tr>
<tr>
<td><a name="empty"></a><code>empty(x)</code></td>
<td><code>bool</code></td>
<td><code>boost::begin(x) == boost::end(x)</code><br>
<td> constant time <br>
</td>
</tr>
<tr>
<td><a name="distance"></a><code>distance(x)</code></td>
<td><code>range_difference&lt;X&gt;::type</code></td>
<td>
<code>
std::distance(boost::begin(x),boost::end(x))
</code>
</td>
<td>-</td>
</tr>
<tr>
<td><a name="size"></a><code>size(x)</code></td>
<td><code>range_difference&lt;X&gt;::type</code></td>
<td><code> boost::end(x) - boost::begin(x)</code>
<td> constant time </td>
</tr>
<tr>
<td><a name="rbegin"></a><code>rbegin(x)</code></td>
<td><code>range_reverse_iterator&lt;X&gt;::type</code></td>
<td><code>range_reverse_iterator&lt;X&gt;::type( boost::end(x) )</code>
<br>
<td>constant time
</td>
</tr>
<tr>
<td> <a name="rend"></a><code>rend(x)</code></td>
<td><code>range_reverse_iterator&lt;X&gt;::type</code></td>
<td><code>range_reverse_iterator&lt;X&gt;::type( boost::begin(x) )</code>
<td>constant time</td>
</tr>
<tr>
<td><a name="const_begin"></a><code>const_begin(x)</code></td>
<td><code>range_iterator&lt;const X&gt;::type</code></td>
<td><code>range_iterator&lt;const X&gt;::type( boost::begin(x) )</code>
<br>
<td>constant time
</td>
</tr>
<tr>
<td><a name="const_end"></a><code>const_end(x)</code></td>
<td><code>range_iterator&lt;const X&gt;::type</code></td>
<td><code>range_iterator&lt;const X&gt;::type( boost::end(x) )</code>
<td>constant time</td>
</tr>
<tr>
<td><a name="const_rbegin"></a><code>const_rbegin(x)</code></td>
<td><code>range_reverse_iterator&lt;const X&gt;::type</code></td>
<td><code>range_reverse_iterator&lt;const X&gt;::type( boost::rbegin(x) )</code>
<br>
<td>constant time
</td>
</tr>
<tr>
<td><a name="const_rend"></a><code>const_rend(x)</code></td>
<td><code>range_reverse_iterator&lt;const X&gt;::type</code></td>
<td><code>range_reverse_iterator&lt;const X&gt;::type( boost::rend(x) )</code>
<td>constant time</td>
</tr>
<tr>
<td><a name="as_literal"></a><code>as_literal(x)</code></td>
<td><code>iterator_range&lt;U></code> where <code>U</code> is
<code>Char*</code> if <code>x</code> is a pointer to a
string and <code>U</code> is
<code>range_iterator&lt;X>::type</code> otherwise
</td>
<td>
<!-- <code>[a,a+sz-1)</code> if <code>a</code> is an array
of size <code>sz</code><br>-->
<code>[s,s + std::char_traits&lt;X&gt;::length(s))</code> if <code>s</code> is a <code>Char*</code> or an array of <code>Char</code>
<br>
<code>[boost::begin(x),boost::end(x))</code> otherwise
</td>
<td>linear time for pointers to a string or arrays of
<code>Char</code>, constant time otherwise</td>
</tr>
<tr>
<td><a name="as_array"></a><code>as_array(x)</code></td>
<td><code>iterator_range&lt;X></code> </td>
<td>
<code>[boost::begin(x),boost::end(x))</code>
</td>
<td>constant time otherwise</td>
</tr>
</table>
</p>
<p>
The special <code>const_</code>-named functions are useful when you
want to document clearly that your code is read-only.
</p>
<p>
<code>as_literal()</code> can be used <i>internally</i> in string
algorithm librararies such that arrays of characters are
handled correctly.
</p>
<p>
<code>as_array()</code> can be used with string algorithm libraries to make it clear that arrays of characters are handled like an array and not like a string.
</p>
<p>Notice that the above functions should always be called with
qualification (<code>boost::</code>) to prevent <i>unintended</i>
Argument Dependent Lookup (ADL).
</p>
<hr>
<a name="minimal_interface"></a>
<h3>Extending the library</h3>
<ul>
<li><a href="#method1">Method 1: provide member functions and nested types</a></li>
<li><a href="#method2">Method 2: provide free-standing functions and specialize metafunctions</a></li>
</ul>
<!--<b>Warning:</b><i> If possible, then prefer method 1 if you want to be absolutely sure your code is forward compatible.
</i>-->
<a name="method1"></a>
<h4>Method 1: provide member functions and nested types</h4>
<p>
This procedure assumes that you have control over the types that should be made
conformant to a Range concept. If not, see <a href="#method2">method 2</a>.
</p>
<p>
The primary templates in this library are implemented such that standard
containers will work automatically and so will <code>boost::<a href="../../array/index.html">array</a></code>.
Below is given an overview of which member functions and member types a class
must specify to be useable as a certain Range concept.
</p>
<p>
<table cellpadding="5" border="1">
<tr>
<th>
Member function</th>
<th>
Related concept</th>
<tr>
<td><code>begin()</code></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
<tr>
<td><code>end()</code>
</td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
</table>
</p>
<p>
Notice that <code>rbegin()</code> and <code>rend()</code> member functions are
not needed even though the container can support bidirectional iteration.
</p>
<p>
The required member types are:
</p>
<p>
<table cellpadding="5" border="1">
<tr>
<th>
Member type</th>
<th>
Related concept</th>
</tr>
<tr>
<td><code>iterator</code></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
<tr>
<td><code>const_iterator</code></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
</table>
</p>
<p>
Again one should notice that member types <code>reverse_iterator</code> and <code>const_reverse_iterator</code>
are not needed.
</p>
<a name="method2"></a>
<h4>Method 2: provide free-standing functions and specialize metafunctions</h4>
<p>
This procedure assumes that you cannot (or do not wish to) change the types that should be made
conformant to a Range concept. If this is not true, see <a href="#method1">method 1</a>.
</p>
<p>
The primary templates in this library are implemented such that
certain functions are found via argument-dependent-lookup (ADL).
Below is given an overview of which free-standing functions a class
must specify to be useable as a certain Range concept.
Let <code>x</code> be a variable (<code>const</code> or mutable)
of the class in question.
</p>
<p>
<table cellpadding="5" border="1" ID="Table1">
<tr>
<th>
Function</th>
<th>
Related concept</th>
<tr>
<td><code>range_begin(x)</code></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
<tr>
<td><code>range_end(x)</code>
</td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
</table>
</p>
<p><code>range_begin()</code> and <code>range_end()</code> must be
overloaded for both <code>const</code> and mutable reference arguments.
</p>
<p>
You must also specialize two metafunctions for your type <code>X</code>:
</p>
<p>
<table cellpadding="5" border="1" ID="Table2">
<tr>
<th>
Metafunction</th>
<th>
Related concept</th>
<tr>
<td><code>boost::range_mutable_iterator</code></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
<tr>
<td><code>boost::range_const_iterator</code></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
</table>
</p>
<p>
A complete example is given here:
</p>
<blockquote>
<pre>
<span class=preprocessor>#include</span> <span class=special>&lt;</span><span class=identifier>boost</span><span class=special>/</span><span class=identifier>range</span><span class=special>.</span><span class=identifier>hpp</span><span class=special>&gt;</span>
<span class=preprocessor>#include</span> <span class=special>&lt;</span><span class=identifier>iterator</span><span class=special>&gt;</span> <span class=comment>// for std::iterator_traits, std::distance()</span>
<span class=keyword>namespace</span> <span class=identifier>Foo</span>
<span class=special>{</span>
<span class=comment>//
// Our sample UDT. A 'Pair'
// will work as a range when the stored
// elements are iterators.
//</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>struct</span> <span class=identifier>Pair</span>
<span class=special>{</span>
<span class=identifier>T</span> <span class=identifier>first</span><span class=special>,</span> <span class=identifier>last</span><span class=special>;</span>
<span class=special>};</span>
<span class=special>}</span> <span class=comment>// namespace 'Foo'</span>
<span class=keyword>namespace</span> <span class=identifier>boost</span>
<span class=special>{</span>
<span class=comment>//
// Specialize metafunctions. We must include the range.hpp header.
// We must open the 'boost' namespace.
//</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>struct</span> <span class=identifier>range_mutable_iterator</span><span class=special>&lt;</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;</span> <span class=special>&gt;</span>
<span class=special>{</span>
<span class=keyword>typedef</span> <span class=identifier>T</span> <span class=identifier>type</span><span class=special>;</span>
<span class=special>};</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>struct</span> <span class=identifier>range_const_iterator</span><span class=special>&lt;</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;</span> <span class=special>&gt;</span>
<span class=special>{</span>
<span class=comment>//
// Remark: this is defined similar to 'range_mutable_iterator'
// because the 'Pair' type does not distinguish
// between an iterator and a const_iterator.
//</span>
<span class=keyword>typedef</span> <span class=identifier>T</span> <span class=identifier>type</span><span class=special>;</span>
<span class=special>};</span>
<span class=special>}</span> <span class=comment>// namespace 'boost'</span>
<span class=keyword>namespace</span> <span class=identifier>Foo</span>
<span class=special>{</span>
<span class=comment>//
// The required functions. These should be defined in
// the same namespace as 'Pair', in this case
// in namespace 'Foo'.
//</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>inline</span> <span class=identifier>T</span> <span class=identifier>range_begin</span><span class=special>(</span> <span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;&amp;</span> <span class=identifier>x</span> <span class=special>)</span>
<span class=special>{</span>
<span class=keyword>return</span> <span class=identifier>x</span><span class=special>.</span><span class=identifier>first</span><span class=special>;</span>
<span class=special>}</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>inline</span> <span class=identifier>T</span> <span class=identifier>range_begin</span><span class=special>(</span> <span class=keyword>const</span> <span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;&amp;</span> <span class=identifier>x</span> <span class=special>)</span>
<span class=special>{</span>
<span class=keyword>return</span> <span class=identifier>x</span><span class=special>.</span><span class=identifier>first</span><span class=special>;</span>
<span class=special>}</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>inline</span> <span class=identifier>T</span> <span class=identifier>range_end</span><span class=special>(</span> <span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;&amp;</span> <span class=identifier>x</span> <span class=special>)</span>
<span class=special>{</span>
<span class=keyword>return</span> <span class=identifier>x</span><span class=special>.</span><span class=identifier>last</span><span class=special>;</span>
<span class=special>}</span>
<span class=keyword>template</span><span class=special>&lt;</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>&gt;</span>
<span class=keyword>inline</span> <span class=identifier>T</span> <span class=identifier>range_end</span><span class=special>(</span> <span class=keyword>const</span> <span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;&amp;</span> <span class=identifier>x</span> <span class=special>)</span>
<span class=special>{</span>
<span class=keyword>return</span> <span class=identifier>x</span><span class=special>.</span><span class=identifier>last</span><span class=special>;</span>
<span class=special>}</span>
<span class=special>}</span> <span class=comment>// namespace 'Foo'</span>
<span class=preprocessor>#include</span> <span class=special>&lt;</span><span class=identifier>vector</span><span class=special>&gt;</span>
<span class=keyword>int</span> <span class=identifier>main</span><span class=special>()</span>
<span class=special>{</span>
<span class=keyword>typedef</span> <span class=identifier>std</span><span class=special>::</span><span class=identifier>vector</span><span class=special>&lt;</span><span class=keyword>int</span><span class=special>&gt;::</span><span class=identifier>iterator</span> <span class=identifier>iter</span><span class=special>;</span>
<span class=identifier>std</span><span class=special>::</span><span class=identifier>vector</span><span class=special>&lt;</span><span class=keyword>int</span><span class=special>&gt;</span> <span class=identifier>vec</span><span class=special>;</span>
<span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>iter</span><span class=special>&gt;</span> <span class=identifier>pair</span> <span class=special>=</span> <span class=special>{</span> <span class=identifier>vec</span><span class=special>.</span><span class=identifier>begin</span><span class=special>(),</span> <span class=identifier>vec</span><span class=special>.</span><span class=identifier>end</span><span class=special>()</span> <span class=special>};</span>
<span class=keyword>const</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>iter</span><span class=special>&gt;&amp;</span> <span class=identifier>cpair</span> <span class=special>=</span> <span class=identifier>pair</span><span class=special>;</span>
<span class=comment>//
// Notice that we call 'begin' etc with qualification.
//</span>
<span class=identifier>iter</span> <span class=identifier>i</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>begin</span><span class=special>(</span> <span class=identifier>pair</span> <span class=special>);</span>
<span class=identifier>iter</span> <span class=identifier>e</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>end</span><span class=special>(</span> <span class=identifier>pair</span> <span class=special>);</span>
<span class=identifier>i</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>begin</span><span class=special>(</span> <span class=identifier>cpair</span> <span class=special>);</span>
<span class=identifier>e</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>end</span><span class=special>(</span> <span class=identifier>cpair</span> <span class=special>);</span>
<span class=identifier>boost</span><span class=special>::</span><span class=identifier>range_difference</span><span class=special>&lt;</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>iter</span><span class=special>&gt;</span> <span class=special>&gt;::</span><span class=identifier>type</span> <span class=identifier>s</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>size</span><span class=special>(</span> <span class=identifier>pair</span> <span class=special>);</span>
<span class=identifier>s</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>size</span><span class=special>(</span> <span class=identifier>cpair</span> <span class=special>);</span>
<span class=identifier>boost</span><span class=special>::</span><span class=identifier>range_reverse_iterator</span><span class=special>&lt;</span> <span class=identifier>const Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special>&lt;</span><span class=identifier>iter</span><span class=special>&gt;</span> <span class=special>&gt;::</span><span class=identifier>type</span>
<span class=identifier>ri</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>rbegin</span><span class=special>(</span> <span class=identifier>cpair</span> <span class=special>),</span>
<span class=identifier>re</span> <span class=special>=</span> <span class=identifier>boost</span><span class=special>::</span><span class=identifier>rend</span><span class=special>(</span> <span class=identifier>cpair</span> <span class=special>);</span>
<span class=special>}</span>
</pre>
</blockquote>
<hr>
<p>
&copy; <a name="Copyright" id="Copyright">Copyright</a> Thorsten Ottosen 2008.
</p>
<p>
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</body>
</html>

View File

@ -64,17 +64,17 @@
[def __range_adaptors__ [link range.reference.adaptors Range adaptors]]
[def __range_algorithms__ [link range.reference.algorithms Range algorithms]]
[def __single_pass_iterator__ [@../../libs/iterator/doc/new-iter-concepts.html#singls-pass-iterators-lib-single-pass-iterators Single Pass Iterator]]
[def __forward_traversal_iterator__ [@../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators Forward Traversal Iterator]]
[def __bidirectional_traversal_iterator__ [@../../libs/iterator/doc/new-iter-concepts.html#bidirectional-traversal-iterators-lib-bidirectional-traversal-iterators Bidirectional Traversal Iterator]]
[def __random_access_traversal_iterator__ [@../../libs/iterator/doc/new-iter-concepts.html#random-access-traversal-iterators-lib-random-access-traversal-iterators Random Access Traversal Iterator]]
[def __new_style_iterators__ [@../../libs/iterator/doc/new-iter-concepts.html new style iterators]]
[def __iterator_concepts__ [@../../libs/iterator/doc/iterator_concepts.html Iterator concepts]]
[def __single_pass_iterator__ [@boost:/libs/iterator/doc/new-iter-concepts.html#singls-pass-iterators-lib-single-pass-iterators Single Pass Iterator]]
[def __forward_traversal_iterator__ [@boost:/libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators Forward Traversal Iterator]]
[def __bidirectional_traversal_iterator__ [@boost:/libs/iterator/doc/new-iter-concepts.html#bidirectional-traversal-iterators-lib-bidirectional-traversal-iterators Bidirectional Traversal Iterator]]
[def __random_access_traversal_iterator__ [@boost:/libs/iterator/doc/new-iter-concepts.html#random-access-traversal-iterators-lib-random-access-traversal-iterators Random Access Traversal Iterator]]
[def __new_style_iterators__ [@boost:/libs/iterator/doc/new-iter-concepts.html new style iterators]]
[def __iterator_concepts__ [@boost:/libs/iterator/doc/iterator_concepts.html Iterator concepts]]
[def __container__ [@http://www.sgi.com/Technology/STL/Container.html Container]]
[def __metafunctions__ [@../../libs/mpl/doc/refmanual/metafunction.html metafunctions]]
[def __concept_check__ [@../../libs/concept_check/index.html Boost Concept Check library]]
[def __boost_array__ [@../../libs/array/index.html boost::array]]
[def __metafunctions__ [@boost:/libs/mpl/doc/refmanual/metafunction.html metafunctions]]
[def __concept_check__ [@boost:/libs/concept_check/index.html Boost Concept Check library]]
[def __boost_array__ [@boost:/libs/array/index.html boost::array]]
[def __the_forwarding_problem__ [@http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1385.htm The Forwarding Problem]]
[def __sgi_inner_product__ [@http://www.sgi.com/tech/stl/inner_product.html inner_product]]

View File

@ -1,70 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Boost.Range Utilities</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<table border="0" >
<tr>
<td ><img src="../../../boost.png" border="0" /></td>
<td ><h1 align="center">Boost.Range</h1></td>
</tr>
</table>
<a name="counting_range"></a> <h1>Function <code>counting_range</code></h1>
<p>
The intention of the <code>counting_range</code> function is to construct
a new range with iterators that are wrapped in a
<code>counting_iterator</code> (from Boost.Iterator)
</p>
<h3>Synopsis</h3>
<pre><span class="keyword">namespace </span><span class="identifier">boost</span>
<span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt; </span><span class="keyword">class </span><span class="identifier">Incrementable</span><span class="identifier"> </span><span class="special">&gt; <span style="color: #0000ff">inline</span>
</span><span class="keyword"></span><span class="identifier">range&lt; counting_iterator&lt;Incrementable&gt; &gt;
counting_range(Incrementable first, Incrementable last);
<span class="keyword">template</span><span class="special">&lt; </span><span class="keyword">class </span><span class="identifier">SinglePassRange</span><span class="identifier"> </span><span class="special">&gt; </span><span class="keyword">inline
</span><span class="identifier">range&lt; counting_iterator&lt;<span class="keyword">typename</span> range_iterator&lt;SinglePassRange&gt;::type &gt;
counting_range(<span class="keyword">const</span> Range&amp; rng);
</span><span class="keyword">template</span><span class="special">&lt; </span><span class="keyword">class </span><span class="identifier">SinglePassRange</span><span class="identifier"> </span><span class="special">&gt; <span style="color: #0000ff">inline</span></span>
<span class="identifier">range&lt; counting_iterator&lt;<span style="color: #0000ff">typename</span> range_iterator&lt;SinglePassRange&gt;::type &gt;
counting_range(Range&amp; rng);
</span></span><span class="special"></span><span class="special"></span><span class="special"> </span>
<span class="special">} </span><span class="comment">// namespace 'boost'</span>
</pre>
<p>
&copy; <a name="Copyright" id="Copyright">Copyright</a> Neil Groves 2009.
</p>
<p>
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy
at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
</body>
</html>

View File

@ -1,72 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Boost.Range Examples </title>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<table border="0" >
<tr>
<td ><img src="../../../boost.png" border="0" ></td>
<td ><h1 align="center">Boost.Range </h1></td>
</tr>
</table>
<h2 >Examples</h2><a name="Examples" ></a>
<p >
Some examples are given in the accompanying test files:
</p>
<ul >
<li >
<a href="../test/string.cpp" target="_self" ><code >string.cpp</code></a>
shows how to implement a container version of <code >std::find()</code> that
works with <code >char[],wchar_t[],char*,wchar_t*.</code>
</li>
<li >
<a href="../test/algorithm_example.cpp" target="_self" ><code >algorithm_example.cpp</code></a>
shows the replace example from the introduction.
</li>
<li> <a href="../test/iterator_range.cpp">iterator_range.cpp</a>
<li> <a href="../test/sub_range.cpp">sub_range.cpp</a>
<li> <a href="../test/iterator_pair.cpp">iterator_pair.cpp</a>
<li> <a href="../test/reversible_range.cpp">reversible_range.cpp</a>
<li> <a href="../test/std_container.cpp">std_container.cpp</a>
<li> <a href="../test/array.cpp">array.cpp</a>
</ul>
<hr>
<p>
&copy; <a name="Copyright" id="Copyright">Copyright</a> Thorsten Ottosen 2008.
</p>
<p>
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</body>
</html>

View File

@ -1,145 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Boost.Range FAQ </title>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<table border="0" >
<tr>
<td ><img src="../../../boost.png" border="0" ></td>
<td ><h1 align="center">Boost.Range</h1></td>
</tr>
</table>
<p>
<h2 >FAQ</h2> <a name="FAQ" ></a>
<ol >
<li >
<i>Why is there no difference between <code >range_iterator&lt;C&gt;::type</code>
and <code >range_const_iterator&lt;C&gt;::type</code> for <code>std::pair&lt;iterator, iterator&gt;</code></i>.
<p >
In general it is not possible nor desirable to find a corresponding <code >const_iterator</code>.
When it is possible to come up with one, the client might choose to construct a <code >std::pair&lt;const_iterator,const_iterator&gt;</code>
object.
</p>
<p>
Note that an <a href="utility_class.html#iter_range">iterator_range</a>
is somewhat more convenient than a <code>pair</code> and that a <a
href="utility_class.html#sub_range"><code>sub_range</code></a> does
propagate const-ness. </p>
</li>
<li >
<i>Why is there not supplied more types or more functions?</i>
<p >
The library has been kept small because its current interface will
serve most
purposes. If and when a genuine need arises for more functionality, it can be
implemented.
</p>
</li>
<li >
<i>How should I implement generic algorithms for ranges?</i>
<p >
One should always start with a generic algorithm that takes two iterators (or
more) as input. Then use Boost.Range to build handier versions on top of the
iterator based algorithm. Please notice that once the range version of the
algorithm is done, it makes sense <i>not</i> to expose the iterator version in
the public interface.
</p>
</li>
<li>
<i>Why is there no Incrementable Range concept?</i>
<p>
Even though we speak of incrementable iterators, it would not make
much sense for ranges; for example, we cannot determine the size and
emptiness of a range since we cannot even compare
its iterators.
</p>
<p>
Note also that incrementable iterators are derived from output
iterators and so there exist no output range.
</p>
</li>
<!--
<li>
<i>Should I use qualified syntax, for example
<blockquote><pre>
<span class=identifier>boost</span><span class=special>::</span><span class=identifier>begin</span><span class=special>( </span><span class=identifier>r </span><span class=special>); </span>
</pre></blockquote>
instead of
<blockquote>
<pre><span class=keyword>using </span><span class=keyword>namespace </span><span class=identifier>boost</span><span class=special>;</span>
<span class=identifier>begin</span><span class=special>( </span><span class=identifier>r </span><span class=special>)</span></pre></blockquote>
when calling functions in this library? If so, can I still rely on argument
dependent lookup (ADL) to kick in?</i>
<p>
The answer to the first question is that "it's up to you". The
answer to the second question is Yes. Normally qualified syntax
disables ADL, but the functions are implemented in a special
manner that preserves ADL properties. The trick was explained by
Daniel Frey on comp.lang.std.c++ in the thread "Whence Swap" and
it is best explained by some code: <blockquote>
<pre>
<span class=keyword>namespace </span><span class=identifier>boost</span>
<span class=special>{
</span><span class=keyword>namespace </span><span class=identifier>range_detail
</span><span class=special>{
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;:</span><span class=identifier>type </span><span class=identifier>begin</span><span class=special>( </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>)
</span><span class=special>{ </span><span class=comment>/* normal implementation */ </span><span class=special>}
</span><span class=special>}
</span><span class=keyword>template</span><span class=special>&lt; </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>&gt;
</span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special>&lt;</span><span class=identifier>T</span><span class=special>&gt;::</span><span class=identifier>type </span><span class=identifier>begin</span><span class=special>( </span><span class=identifier>T</span><span class=special>&amp; </span><span class=identifier>r </span><span class=special>)
</span><span class=special>{
</span><span class=comment>//
// Create ADL hook
//
</span><span class=keyword>using </span><span class=identifier>range_detail</span><span class=special>::</span><span class=identifier>begin</span><span class=special>;
</span><span class=keyword>return </span><span class=identifier>begin</span><span class=special>( </span><span class=identifier>r </span><span class=special>);
</span><span class=special>}</span>
<span class=special>} </span>
</pre>
</blockquote>
Cool indeed!
</p>
-->
</ol>
<hr>
<p>
&copy; <a name="Copyright" id="Copyright">Copyright</a> Thorsten Ottosen 2008.
</p>
<p>
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy
at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</body>
</html>

View File

@ -1,202 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Boost.Range Headers </title>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<table border="0" >
<tr>
<td ><img src="../../../boost.png" border="0" ></td>
<td ><h1 align="center">Boost.Range</h1></td>
</tr>
</table>
<p>
<h2 >Library headers</h2><a name="Library headers" ></a>
<table cellpadding="5" border="1" >
<tr >
<th >Header</th>
<th >Includes</th>
<th>Related concept </th>
</tr>
<tr >
<td ><code >&lt;boost/range.hpp&gt;</code></td>
<td >everything</td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/metafunctions.hpp&gt;</code></td>
<td >every metafunction</td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/functions.hpp&gt;</code></td>
<td >every function</td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/value_type.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_value" >range_value</a></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a></td>
</tr>
<tr >
<td ><code >&lt;boost/range/iterator.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_iterator"
>range_iterator</a></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/mutable_iterator.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_mutable_iterator"
>range_mutable_iterator</a></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/const_iterator.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_const_iterator"
>range_const_iterator</a></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/difference_type.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_difference"
>range_difference</a></td>
<td><a href="range.html#forward_range">Forward Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/pointer.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_pointer"
>range_pointer</a></td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/category.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_category"
>range_category</a></td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/reverse_iterator.hpp&gt;</code></td>
<td ><a href="boost_range.html#range_reverse_iterator" >range_reverse_iterator</a></td>
<td><a href="range.html#bidirectional_range">Bidirectional Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/begin.hpp&gt;</code></td>
<td >
<a href="boost_range.html#begin" >begin</a> and
<a href="boost_range.html#const_begin" >const_begin</a>
</td>
<td><a href="range.html#single_pass_range">Single Pass Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/end.hpp&gt;</code></td>
<td >
<a href="boost_range.html#end" >end</a> and
<a href="boost_range.html#const_end" >const_end</a>
</td>
<td><a href="range.html#single_pass_range">Single Pass Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/empty.hpp&gt;</code></td>
<td ><a href="boost_range.html#empty" >empty</a></td>
<td><a href="range.html#single_pass_range">Single Pass Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/distance.hpp&gt;</code></td>
<td ><a href="boost_range.html#distance" >distance</a></td>
<td><a href="range.html#forward_range">Forward Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/size.hpp&gt;</code></td>
<td ><a href="boost_range.html#size" >size</a></td>
<td><a href="range.html#random_access_range">Random Access Range</a>
</td>
</tr>
<tr >
<td ><code >&lt;boost/range/rbegin.hpp&gt;</code></td>
<td >
<a href="boost_range.html#rbegin" >rbegin</a> and
<a href="boost_range.html#const_rbegin" >const_rbegin</a>
</td>
<td><a href="range.html#bidirectional_range">Bidirectional Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/rend.hpp&gt;</code></td>
<td >
<a href="boost_range.html#rend" >rend</a> and
<a href="boost_range.html#const_rend" >const_rend</a>
</td>
<td><a href="range.html#bidirectional_range">Bidirectional Range</a> </td>
</tr>
<tr >
<td ><code >&lt;boost/range/as_array.hpp&gt;</code></td>
<td >
<a href="boost_range.html#as_array" >as_array</a>
</td>
<td>-</td>
</tr>
<tr >
<td ><code >&lt;boost/range/as_literal.hpp&gt;</code></td>
<td >
<a href="boost_range.html#as_literal" >as_literal</a>
</td>
<td>-</td>
</tr>
<tr >
<td ><code >&lt;boost/range/iterator_range.hpp&gt;</code></td>
<td ><a href="utility_class.html#iter_range"
>iterator_range</a></td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/sub_range.hpp&gt;</code></td>
<td ><a href="utility_class.html#sub_range" >sub_range</a></td>
<td>- </td>
</tr>
<tr >
<td ><code >&lt;boost/range/concepts.hpp&gt;</code></td>
<td ><a href="range.html#concept_checking" >concept checks</a></td>
<td>- </td>
</tr>
</table>
<br>
</p>
<hr>
<p>
&copy; <a name="Copyright" id="Copyright">Copyright</a> Thorsten Ottosen 2008.
</p>
<p>
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy
at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</body>
</html>

View File

@ -2,7 +2,7 @@
[table
[[Header ] [Includes ] [Related Concept ]]
[[`<boost/range.hpp>` ] [everything ] [- ]]
[[`<boost/range.hpp>` ] [everything from Boost.Range version 1 (Boost versions 1.42 and below). Includes the core range functions and metafunctinos, but excludes Range Adaptors and Range Algorithms. ] [- ]]
[[`<boost/range/metafunctions.hpp>` ] [every metafunction ] [- ]]
[[`<boost/range/functions.hpp>` ] [every function ] [- ]]
[[`<boost/range/value_type.hpp>` ] [__range_value__ ] [__single_pass_range__ ]]

View File

@ -1,90 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Boost.Range History and Acknowledgement </title>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<table border="0" >
<tr>
<td><img src="../../../boost.png" border="0" ></td>
<td><h1 align="center">Boost.Range </h1></td>
</tr>
</table>
<h2 >History and Acknowledgement</h2><a name="History" ></a>
<p >
The library was under way for a long time. Dietmar K<>hl originally intended
to submit an <code >array_traits</code> class template which had most of
the functionality present now, but only for arrays and standard containers.
I believe this was back in 2001 or 2002.
</p>
<p>
Meanwhile work on algorithms for containers in various contexts showed the
need for handling pairs of iterators, and string libraries needed special
treatment of character arrays. In the end it made sense to formalize the
minimal requirements of these similar concepts. And the results are the
Range concepts found in this library. </p>
<p>
The term Range was adopted because of paragraph <code>24.1/7</code> from the
C++ standard: <blockquote>
Most of the library's algorithmic templates that operate on data
structures have interfaces that use ranges. A <i>range</i> is a pair of
iterators that designate the beginning and end of the computation. A
range [i, i) is an empty range; in general, a range [i, j) refers to
the elements in the data structure starting with the one pointed to
by i and up to but not including the one pointed to by j. Range [i,
j) is valid if and only if j is reachable from i. The result of the
application of functions in the library to invalid ranges is
undefined.
</blockquote>
<p>
Special thanks goes to
<ul>
<li> Pavol Droba for help with documentation and implementation
<li> Pavel Vozenilek for help with porting the library
<li> Jonathan Turkanis and John Torjo for help with documentation
<li> Hartmut Kaiser for being review manager
<li> Jonathan Turkanis for porting the lib (as far sa possible) to
vc6 and vc7.
</ul>
</p>
<p>
The concept checks and their documentation was provided by Daniel Walker.
<hr>
<p>
&copy; <a name="Copyright" id="Copyright">Copyright</a> Thorsten Ottosen 2008.
</p>
<p>
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy
at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</body>
</html>

View File

@ -30,7 +30,7 @@
</h3></div></div>
<div><p class="copyright">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves</p></div>
<div><div class="legalnotice" title="Legal Notice">
<a name="id2902944"></a><p>
<a name="id3005003"></a><p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
@ -135,7 +135,7 @@
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"><p><small>Last revised: April 03, 2010 at 08:56:46 GMT</small></p></td>
<td align="left"><p><small>Last revised: April 11, 2010 at 21:49:16 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>

View File

@ -39,6 +39,7 @@ range/reference/algorithms/range_algorithm_mutating_algorithms.html
range/reference/algorithms/range_algorithm_mutating_algorithms/copy.html
range/reference/algorithms/range_algorithm_mutating_algorithms/copy_backward.html
range/reference/algorithms/range_algorithm_mutating_algorithms/fill.html
range/reference/algorithms/range_algorithm_mutating_algorithms/fill_n.html
range/reference/algorithms/range_algorithm_mutating_algorithms/generate.html
range/reference/algorithms/range_algorithm_mutating_algorithms/inplace_merge.html
range/reference/algorithms/range_algorithm_mutating_algorithms/merge.html
@ -84,6 +85,7 @@ range/reference/algorithms/heap_algorithms.html
range/reference/algorithms/heap_algorithms/push_heap.html
range/reference/algorithms/heap_algorithms/pop_heap.html
range/reference/algorithms/heap_algorithms/make_heap.html
range/reference/algorithms/heap_algorithms/sort_heap.html
range/reference/algorithms/permutation_algorithms.html
range/reference/algorithms/permutation_algorithms/next_permutation.html
range/reference/algorithms/permutation_algorithms/prev_permutation.html
@ -91,6 +93,7 @@ range/reference/algorithms/range_algorithm_new_algorithms.html
range/reference/algorithms/range_algorithm_new_algorithms/erase.html
range/reference/algorithms/range_algorithm_new_algorithms/for_each.html
range/reference/algorithms/range_algorithm_new_algorithms/insert.html
range/reference/algorithms/range_algorithm_new_algorithms/iota.html
range/reference/algorithms/range_algorithm_new_algorithms/overwrite.html
range/reference/algorithms/range_algorithm_new_algorithms/push_back.html
range/reference/algorithms/range_algorithm_new_algorithms/push_front.html

View File

@ -27,7 +27,7 @@
<a name="range.concepts.bidirectional_range"></a><a class="link" href="bidirectional_range.html" title="Bidirectional Range">Bidirectional Range</a>
</h3></div></div></div>
<a name="range.concepts.bidirectional_range.notation"></a><h5>
<a name="id2915351"></a>
<a name="id3017410"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.notation">Notation</a>
</h5>
<div class="informaltable"><table class="table">
@ -65,17 +65,17 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.description"></a><h5>
<a name="id2915449"></a>
<a name="id3017508"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.description">Description</a>
</h5>
<p>
This concept provides access to iterators that traverse in both directions
(forward and reverse). The <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> iterator must meet all of the requirements
of <a href="../../../../libs/iterator/doc/new-iter-concepts.html#bidirectional-traversal-iterators-lib-bidirectional-traversal-iterators" target="_top">Bidirectional
of <a href="../../../../../../libs/iterator/doc/new-iter-concepts.html#bidirectional-traversal-iterators-lib-bidirectional-traversal-iterators" target="_top">Bidirectional
Traversal Iterator</a>.
</p>
<a name="range.concepts.bidirectional_range.refinement_of"></a><h5>
<a name="id2915514"></a>
<a name="id3017574"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.refinement_of">Refinement
of</a>
</h5>
@ -83,7 +83,7 @@
<a class="link" href="forward_range.html" title="Forward Range">Forward Range</a>
</p>
<a name="range.concepts.bidirectional_range.associated_types"></a><h5>
<a name="id2915543"></a>
<a name="id3017602"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.associated_types">Associated
types</a>
</h5>
@ -136,7 +136,7 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.valid_expressions"></a><h5>
<a name="id2915709"></a>
<a name="id3017768"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.valid_expressions">Valid
expressions</a>
</h5>
@ -221,7 +221,7 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.complexity_guarantees"></a><h5>
<a name="id2916188"></a>
<a name="id3018247"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.complexity_guarantees">Complexity
guarantees</a>
</h5>
@ -232,7 +232,7 @@
<a class="link" href="forward_range.html" title="Forward Range">Forward Range</a>.
</p>
<a name="range.concepts.bidirectional_range.invariants"></a><h5>
<a name="id2916338"></a>
<a name="id3018398"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.invariants">Invariants</a>
</h5>
<div class="informaltable"><table class="table">
@ -272,7 +272,7 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.see_also"></a><h5>
<a name="id2916600"></a>
<a name="id3018659"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.see_also">See also</a>
</h5>
<p>

View File

@ -29,7 +29,7 @@
<p>
Each of the range concepts has a corresponding concept checking class in
the file <a href="../../../../boost/range/concepts.hpp" target="_top"><code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">concepts</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code></a>.
These classes may be used in conjunction with the <a href="../../../../libs/concept_check/index.html" target="_top">Boost
These classes may be used in conjunction with the <a href="../../../../../../libs/concept_check/index.html" target="_top">Boost
Concept Check library</a> to ensure that the type of a template parameter
is compatible with a range concept. If not, a meaningful compile time error
is generated. Checks are provided for the range concepts related to iterator
@ -79,17 +79,17 @@
</li>
</ul></div>
<a name="range.concepts.concept_checking.see_also"></a><h5>
<a name="id2917610"></a>
<a name="id3019669"></a>
<a class="link" href="concept_checking.html#range.concepts.concept_checking.see_also">See also</a>
</h5>
<p>
<a class="link" href="../style_guide.html" title="Terminology and style guidelines">Range Terminology and style guidelines</a>
</p>
<p>
<a href="../../../../libs/iterator/doc/iterator_concepts.html" target="_top">Iterator concepts</a>
<a href="../../../../../../libs/iterator/doc/iterator_concepts.html" target="_top">Iterator concepts</a>
</p>
<p>
<a href="../../../../libs/concept_check/index.html" target="_top">Boost Concept Check library</a>
<a href="../../../../../../libs/concept_check/index.html" target="_top">Boost Concept Check library</a>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -27,7 +27,7 @@
<a name="range.concepts.forward_range"></a><a class="link" href="forward_range.html" title="Forward Range">Forward Range</a>
</h3></div></div></div>
<a name="range.concepts.forward_range.notation"></a><h5>
<a name="id2914944"></a>
<a name="id3017003"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.notation">Notation</a>
</h5>
<div class="informaltable"><table class="table">
@ -65,22 +65,22 @@
</tbody>
</table></div>
<a name="range.concepts.forward_range.description"></a><h5>
<a name="id2915040"></a>
<a name="id3017099"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.description">Description</a>
</h5>
<p>
A range <code class="computeroutput"><span class="identifier">X</span></code> where <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <a href="../../../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators" target="_top">Forward
A range <code class="computeroutput"><span class="identifier">X</span></code> where <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <a href="../../../../../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators" target="_top">Forward
Traversal Iterator</a>.
</p>
<a name="range.concepts.forward_range.refinement_of"></a><h5>
<a name="id2915112"></a>
<a name="id3017171"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.refinement_of">Refinement of</a>
</h5>
<p>
<a class="link" href="single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
<a name="range.concepts.forward_range.associated_types"></a><h5>
<a name="id2915141"></a>
<a name="id3017200"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.associated_types">Associated
types</a>
</h5>
@ -132,7 +132,7 @@
</tbody>
</table></div>
<a name="range.concepts.forward_range.see_also"></a><h5>
<a name="id2915298"></a>
<a name="id3017357"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.see_also">See also</a>
</h5>
<p>

View File

@ -27,15 +27,15 @@
<a name="range.concepts.random_access_range"></a><a class="link" href="random_access_range.html" title="Random Access Range">Random Access Range</a>
</h3></div></div></div>
<a name="range.concepts.random_access_range.description"></a><h5>
<a name="id2916653"></a>
<a name="id3018712"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.description">Description</a>
</h5>
<p>
A range <code class="computeroutput"><span class="identifier">X</span></code> where <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <a href="../../../../libs/iterator/doc/new-iter-concepts.html#random-access-traversal-iterators-lib-random-access-traversal-iterators" target="_top">Random
A range <code class="computeroutput"><span class="identifier">X</span></code> where <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <a href="../../../../../../libs/iterator/doc/new-iter-concepts.html#random-access-traversal-iterators-lib-random-access-traversal-iterators" target="_top">Random
Access Traversal Iterator</a>.
</p>
<a name="range.concepts.random_access_range.refinement_of"></a><h5>
<a name="id2916725"></a>
<a name="id3018784"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.refinement_of">Refinement
of</a>
</h5>
@ -43,7 +43,7 @@
<a class="link" href="bidirectional_range.html" title="Bidirectional Range">Bidirectional Range</a>
</p>
<a name="range.concepts.random_access_range.valid_expressions"></a><h5>
<a name="id2916753"></a>
<a name="id3018812"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.valid_expressions">Valid
expressions</a>
</h5>
@ -89,7 +89,7 @@
</tr></tbody>
</table></div>
<a name="range.concepts.random_access_range.expression_semantics"></a><h5>
<a name="id2916900"></a>
<a name="id3018959"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.expression_semantics">Expression
semantics</a>
</h5>
@ -139,7 +139,7 @@
</tr></tbody>
</table></div>
<a name="range.concepts.random_access_range.complexity_guarantees"></a><h5>
<a name="id2917126"></a>
<a name="id3019185"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.complexity_guarantees">Complexity
guarantees</a>
</h5>
@ -147,7 +147,7 @@
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">size</span><span class="special">(</span><span class="identifier">a</span><span class="special">)</span></code> completes in amortized constant time.
</p>
<a name="range.concepts.random_access_range.invariants"></a><h5>
<a name="id2917180"></a>
<a name="id3019239"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.invariants">Invariants</a>
</h5>
<div class="informaltable"><table class="table">

View File

@ -27,7 +27,7 @@
<a name="range.concepts.single_pass_range"></a><a class="link" href="single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</h3></div></div></div>
<a name="range.concepts.single_pass_range.notation"></a><h5>
<a name="id2913566"></a>
<a name="id3015625"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.notation">Notation</a>
</h5>
<div class="informaltable"><table class="table">
@ -65,15 +65,15 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.description"></a><h5>
<a name="id2913668"></a>
<a name="id3015727"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.description">Description</a>
</h5>
<p>
A range <code class="computeroutput"><span class="identifier">X</span></code> where <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <a href="../../../../libs/iterator/doc/new-iter-concepts.html#singls-pass-iterators-lib-single-pass-iterators" target="_top">Single
A range <code class="computeroutput"><span class="identifier">X</span></code> where <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <a href="../../../../../../libs/iterator/doc/new-iter-concepts.html#singls-pass-iterators-lib-single-pass-iterators" target="_top">Single
Pass Iterator</a>.
</p>
<a name="range.concepts.single_pass_range.associated_types"></a><h5>
<a name="id2913740"></a>
<a name="id3015799"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.associated_types">Associated
types</a>
</h5>
@ -126,7 +126,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.valid_expressions"></a><h5>
<a name="id2913914"></a>
<a name="id3015973"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.valid_expressions">Valid
expressions</a>
</h5>
@ -198,7 +198,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.expression_semantics"></a><h5>
<a name="id2914248"></a>
<a name="id3016307"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.expression_semantics">Expression
semantics</a>
</h5>
@ -266,7 +266,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.complexity_guarantees"></a><h5>
<a name="id2914519"></a>
<a name="id3016578"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.complexity_guarantees">Complexity
guarantees</a>
</h5>
@ -276,7 +276,7 @@
constant time.
</p>
<a name="range.concepts.single_pass_range.invariants"></a><h5>
<a name="id2914602"></a>
<a name="id3016661"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.invariants">Invariants</a>
</h5>
<div class="informaltable"><table class="table">
@ -316,7 +316,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.see_also"></a><h5>
<a name="id2914873"></a>
<a name="id3016932"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.see_also">See also</a>
</h5>
<p>

View File

@ -50,7 +50,7 @@
null terminated strings, <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pairs</span></code> of
iterators, and raw arrays (and more), such that the same generic code can work
with them all. The basic idea is to add another layer of indirection using
<a href="../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>
<a href="../../../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>
and free-standing functions so syntactic and/or semantic differences can be
removed.
</p>
@ -130,7 +130,7 @@
<p>
</p>
<p>
By using the free-standing functions and <a href="../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>,
By using the free-standing functions and <a href="../../../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>,
the code automatically works for all the types supported by this library; now
and in the future. Notice that we have to provide two versions of <code class="computeroutput"><span class="identifier">find</span><span class="special">()</span></code> since
we cannot forward a non-const rvalue with reference arguments (see this article

View File

@ -58,7 +58,9 @@
</td>
<td>
<p>
everything
everything from Boost.Range version 1 (Boost versions 1.42 and below).
Includes the core range functions and metafunctinos, but excludes
Range Adaptors and Range Algorithms.
</p>
</td>
<td>

View File

@ -34,7 +34,7 @@
<dt><span class="section"><a href="mfc_atl/references.html"> References</a></span></dt>
</dl></div>
<a name="range.mfc_atl.introduction"></a><h5>
<a name="id3026958"></a>
<a name="id3128780"></a>
<a class="link" href="mfc_atl.html#range.mfc_atl.introduction">Introduction</a>
</h5>
<p>
@ -100,7 +100,7 @@
</tbody>
</table></div>
<a name="range.mfc_atl.overview"></a><h5>
<a name="id3027096"></a>
<a name="id3128918"></a>
<a class="link" href="mfc_atl.html#range.mfc_atl.overview">Overview</a>
</h5>
<p>

View File

@ -122,7 +122,7 @@
situations, you will really appreciate the succinctness of <code class="computeroutput"><span class="keyword">operator</span><span class="special">|()</span></code>.
</p>
<a name="range.reference.adaptors.adaptors_introduction.composition_of_adaptors"></a><h6>
<a name="id2924577"></a>
<a name="id3026637"></a>
<a class="link" href="adaptors_introduction.html#range.reference.adaptors.adaptors_introduction.composition_of_adaptors">Composition
of Adaptors</a>
</h6>
@ -159,7 +159,7 @@
is the design solution to this problem.
</p>
<a name="range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_copy_if_algorithm"></a><h6>
<a name="id2924887"></a>
<a name="id3026947"></a>
<a class="link" href="adaptors_introduction.html#range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_copy_if_algorithm">Range
Adaptor alternative to copy_if algorithm</a>
</h6>
@ -176,7 +176,7 @@
<p>
</p>
<a name="range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_count_if_algorithm"></a><h6>
<a name="id2925056"></a>
<a name="id3027116"></a>
<a class="link" href="adaptors_introduction.html#range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_count_if_algorithm">Range
Adaptor alternative to count_if algorithm</a>
</h6>

View File

@ -33,6 +33,8 @@
pop_heap</a></span></dt>
<dt><span class="section"><a href="heap_algorithms/make_heap.html">
make_heap</a></span></dt>
<dt><span class="section"><a href="heap_algorithms/sort_heap.html">
sort_heap</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -7,7 +7,7 @@
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="prev" href="pop_heap.html" title="pop_heap">
<link rel="next" href="../permutation_algorithms.html" title="Permutation algorithms">
<link rel="next" href="sort_heap.html" title="sort_heap">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sort_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="make_heap">
<div class="titlepage"><div><div><h5 class="title">
@ -28,28 +28,28 @@
make_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.make_heap.prototype"></a><h6>
<a name="id2999078"></a>
<a name="id3099191"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.make_heap.description"></a><h6>
<a name="id2999429"></a>
<a name="id3099573"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.description">Description</a>
</h6>
<p>
@ -61,14 +61,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.make_heap.definition"></a><h6>
<a name="id2999509"></a>
<a name="id3099653"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.make_heap.requirements"></a><h6>
<a name="id2999583"></a>
<a name="id3099726"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.requirements">Requirements</a>
</h6>
<p>
@ -119,7 +119,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.make_heap.complexity"></a><h6>
<a name="id2999819"></a>
<a name="id3099962"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.complexity">Complexity</a>
</h6>
<p>
@ -138,7 +138,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sort_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -28,28 +28,28 @@
pop_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.prototype"></a><h6>
<a name="id2998100"></a>
<a name="id3098182"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.description"></a><h6>
<a name="id2998449"></a>
<a name="id3098562"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.description">Description</a>
</h6>
<p>
@ -63,14 +63,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.definition"></a><h6>
<a name="id2998609"></a>
<a name="id3098722"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.requirements"></a><h6>
<a name="id2998681"></a>
<a name="id3098795"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.requirements">Requirements</a>
</h6>
<p>
@ -121,7 +121,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.precondition_"></a><h6>
<a name="id2998918"></a>
<a name="id3099031"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -131,7 +131,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.complexity"></a><h6>
<a name="id2998989"></a>
<a name="id3099102"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,28 +28,28 @@
push_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.push_heap.prototype"></a><h6>
<a name="id2997080"></a>
<a name="id3097132"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.push_heap.description"></a><h6>
<a name="id2997430"></a>
<a name="id3097513"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.description">Description</a>
</h6>
<p>
@ -63,14 +63,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.push_heap.definition"></a><h6>
<a name="id2997595"></a>
<a name="id3097678"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.push_heap.requirements"></a><h6>
<a name="id2997669"></a>
<a name="id3097751"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.requirements">Requirements</a>
</h6>
<p>
@ -121,7 +121,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.push_heap.precondition_"></a><h6>
<a name="id2997905"></a>
<a name="id3097987"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -131,7 +131,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.push_heap.complexity"></a><h6>
<a name="id2998022"></a>
<a name="id3098104"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.complexity">Complexity</a>
</h6>
<p>

View File

@ -0,0 +1,153 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>sort_heap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="prev" href="make_heap.html" title="make_heap">
<link rel="next" href="../permutation_algorithms.html" title="Permutation algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="make_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="sort_heap">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.heap_algorithms.sort_heap"></a><a class="link" href="sort_heap.html" title="sort_heap">
sort_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.prototype"></a><h6>
<a name="id3100042"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.description"></a><h6>
<a name="id3100424"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">sort_heap</span></code> turns a heap
into a sorted range.
</p>
<p>
The ordering relationship is determined by using <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;</span></code> in the non-predicate versions, and
by evaluating <code class="computeroutput"><span class="identifier">pred</span></code> in
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.definition"></a><h6>
<a name="id3100494"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.requirements"></a><h6>
<a name="id3100567"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.precondition_"></a><h6>
<a name="id3100803"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.precondition_">Precondition:</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">rng</span></code> is a heap.
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.complexity"></a><h6>
<a name="id3100840"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.complexity">Complexity</a>
</h6>
<p>
At most <code class="computeroutput"><span class="identifier">N</span> <span class="special">*</span>
<span class="identifier">log</span><span class="special">(</span><span class="identifier">N</span><span class="special">)</span></code>
comparisons, where <code class="computeroutput"><span class="identifier">N</span></code>
is <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="make_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../algorithms.html" title="Range Algorithm">
<link rel="prev" href="heap_algorithms/make_heap.html" title="make_heap">
<link rel="prev" href="heap_algorithms/sort_heap.html" title="sort_heap">
<link rel="next" href="permutation_algorithms/next_permutation.html" title="next_permutation">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="heap_algorithms/make_heap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="permutation_algorithms/next_permutation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="heap_algorithms/sort_heap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="permutation_algorithms/next_permutation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Permutation algorithms">
<div class="titlepage"><div><div><h4 class="title">
@ -44,7 +44,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="heap_algorithms/make_heap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="permutation_algorithms/next_permutation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="heap_algorithms/sort_heap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="permutation_algorithms/next_permutation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -28,28 +28,28 @@
next_permutation</a>
</h5></div></div></div>
<a name="range.reference.algorithms.permutation_algorithms.next_permutation.prototype"></a><h6>
<a name="id2999919"></a>
<a name="id3100976"></a>
<a class="link" href="next_permutation.html#range.reference.algorithms.permutation_algorithms.next_permutation.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.permutation_algorithms.next_permutation.description"></a><h6>
<a name="id3000271"></a>
<a name="id3101328"></a>
<a class="link" href="next_permutation.html#range.reference.algorithms.permutation_algorithms.next_permutation.description">Description</a>
</h6>
<p>
@ -67,14 +67,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.permutation_algorithms.next_permutation.definition"></a><h6>
<a name="id3000379"></a>
<a name="id3101435"></a>
<a class="link" href="next_permutation.html#range.reference.algorithms.permutation_algorithms.next_permutation.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">permutation</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.permutation_algorithms.next_permutation.requirements"></a><h6>
<a name="id3000453"></a>
<a name="id3101510"></a>
<a class="link" href="next_permutation.html#range.reference.algorithms.permutation_algorithms.next_permutation.requirements">Requirements</a>
</h6>
<p>
@ -125,7 +125,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.permutation_algorithms.next_permutation.complexity"></a><h6>
<a name="id3000690"></a>
<a name="id3101746"></a>
<a class="link" href="next_permutation.html#range.reference.algorithms.permutation_algorithms.next_permutation.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,28 +28,28 @@
prev_permutation</a>
</h5></div></div></div>
<a name="range.reference.algorithms.permutation_algorithms.prev_permutation.prototype"></a><h6>
<a name="id3000774"></a>
<a name="id3101830"></a>
<a class="link" href="prev_permutation.html#range.reference.algorithms.permutation_algorithms.prev_permutation.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Compare</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">bool</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Compare</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.permutation_algorithms.prev_permutation.description"></a><h6>
<a name="id3001123"></a>
<a name="id3102182"></a>
<a class="link" href="prev_permutation.html#range.reference.algorithms.permutation_algorithms.prev_permutation.description">Description</a>
</h6>
<p>
@ -67,14 +67,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.permutation_algorithms.prev_permutation.definition"></a><h6>
<a name="id3001233"></a>
<a name="id3102290"></a>
<a class="link" href="prev_permutation.html#range.reference.algorithms.permutation_algorithms.prev_permutation.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">permutation</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.permutation_algorithms.prev_permutation.requirements"></a><h6>
<a name="id3001308"></a>
<a name="id3102364"></a>
<a class="link" href="prev_permutation.html#range.reference.algorithms.permutation_algorithms.prev_permutation.requirements">Requirements</a>
</h6>
<p>
@ -125,7 +125,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.permutation_algorithms.prev_permutation.complexity"></a><h6>
<a name="id3001544"></a>
<a name="id3102600"></a>
<a class="link" href="prev_permutation.html#range.reference.algorithms.permutation_algorithms.prev_permutation.complexity">Complexity</a>
</h6>
<p>

View File

@ -34,6 +34,8 @@
Range Algorithm - copy_backward</a></span></dt>
<dt><span class="section"><a href="range_algorithm_mutating_algorithms/fill.html">
Range Algorithm - fill</a></span></dt>
<dt><span class="section"><a href="range_algorithm_mutating_algorithms/fill_n.html">
Range Algorithm - fill_n</a></span></dt>
<dt><span class="section"><a href="range_algorithm_mutating_algorithms/generate.html">
Range Algorithm - generate</a></span></dt>
<dt><span class="section"><a href="range_algorithm_mutating_algorithms/inplace_merge.html">

View File

@ -28,7 +28,7 @@
Range Algorithm - copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy.prototype"></a><h6>
<a name="id2946077"></a>
<a name="id3048136"></a>
<a class="link" href="copy.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy.prototype">Prototype</a>
</h6>
<p>
@ -40,7 +40,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy.description"></a><h6>
<a name="id2946209"></a>
<a name="id3048268"></a>
<a class="link" href="copy.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy.description">Description</a>
</h6>
<p>
@ -51,14 +51,14 @@
<span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy.definition"></a><h6>
<a name="id2946343"></a>
<a name="id3048403"></a>
<a class="link" href="copy.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy.requirements"></a><h6>
<a name="id2946418"></a>
<a name="id3048477"></a>
<a class="link" href="copy.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -79,7 +79,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy.precondition_"></a><h6>
<a name="id2946528"></a>
<a name="id3048588"></a>
<a class="link" href="copy.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -93,7 +93,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy.complexity"></a><h6>
<a name="id2946635"></a>
<a name="id3048694"></a>
<a class="link" href="copy.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - copy_backward</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.prototype"></a><h6>
<a name="id2946707"></a>
<a name="id3048766"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.prototype">Prototype</a>
</h6>
<p>
@ -42,7 +42,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.description"></a><h6>
<a name="id2946840"></a>
<a name="id3048900"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.description">Description</a>
</h6>
<p>
@ -60,14 +60,14 @@
denotes the <span class="bold"><strong>end</strong></span> of the output sequence.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.definition"></a><h6>
<a name="id2947001"></a>
<a name="id3049060"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy_backward</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.requirements"></a><h6>
<a name="id2947075"></a>
<a name="id3049134"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -88,7 +88,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.precondition_"></a><h6>
<a name="id2947186"></a>
<a name="id3049245"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -102,7 +102,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.complexity"></a><h6>
<a name="id2947292"></a>
<a name="id3049352"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.complexity">Complexity</a>
</h6>
<p>

View File

@ -7,7 +7,7 @@
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="copy_backward.html" title="Range Algorithm - copy_backward">
<link rel="next" href="generate.html" title="Range Algorithm - generate">
<link rel="next" href="fill_n.html" title="Range Algorithm - fill_n">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fill_n.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - fill">
<div class="titlepage"><div><div><h5 class="title">
@ -28,22 +28,19 @@
Range Algorithm - fill</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.prototype"></a><h6>
<a name="id2947365"></a>
<a name="id3049424"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">fill</span><span class="special">(</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">val</span> <span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">fill</span><span class="special">(</span> <span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">val</span> <span class="special">);</span>
<span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">fill</span><span class="special">(</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">val</span> <span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.description"></a><h6>
<a name="id2947614"></a>
<a name="id3049568"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.description">Description</a>
</h6>
<p>
@ -52,14 +49,14 @@
in the range <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.definition"></a><h6>
<a name="id2947673"></a>
<a name="id3049627"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.requirements"></a><h6>
<a name="id2947747"></a>
<a name="id3049701"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -82,7 +79,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.complexity"></a><h6>
<a name="id2947862"></a>
<a name="id3049816"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.complexity">Complexity</a>
</h6>
<p>
@ -99,7 +96,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fill_n.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,102 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - fill_n</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="fill.html" title="Range Algorithm - fill">
<link rel="next" href="generate.html" title="Range Algorithm - generate">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - fill_n">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n"></a><a class="link" href="fill_n.html" title="Range Algorithm - fill_n">
Range Algorithm - fill_n</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.prototype"></a><h6>
<a name="id3049888"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Size</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">fill</span><span class="special">(</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Size</span> <span class="identifier">n</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">val</span> <span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.description"></a><h6>
<a name="id3050063"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">fill_n</span></code> assigns the value
<code class="computeroutput"><span class="identifier">val</span></code> to <code class="computeroutput"><span class="identifier">n</span></code> elements in the range <code class="computeroutput"><span class="identifier">rng</span></code> begining with <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.definition"></a><h6>
<a name="id3050167"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill_n</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.requirements"></a><h6>
<a name="id3050241"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.complexity"></a><h6>
<a name="id3050355"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">n</span></code> assignments
are performed.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="fill.html" title="Range Algorithm - fill">
<link rel="prev" href="fill_n.html" title="Range Algorithm - fill_n">
<link rel="next" href="inplace_merge.html" title="Range Algorithm - inplace_merge">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="fill_n.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - generate">
<div class="titlepage"><div><div><h5 class="title">
@ -28,7 +28,7 @@
Range Algorithm - generate</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.prototype"></a><h6>
<a name="id2947933"></a>
<a name="id3050413"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.prototype">Prototype</a>
</h6>
<p>
@ -43,7 +43,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.description"></a><h6>
<a name="id2948176"></a>
<a name="id3050656"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.description">Description</a>
</h6>
<p>
@ -53,14 +53,14 @@
Returns the resultant range.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.definition"></a><h6>
<a name="id2948241"></a>
<a name="id3050720"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">generate</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.requirements"></a><h6>
<a name="id2948315"></a>
<a name="id3050795"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -84,7 +84,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.precondition_"></a><h6>
<a name="id2948442"></a>
<a name="id3050922"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -98,7 +98,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.complexity"></a><h6>
<a name="id2948549"></a>
<a name="id3051028"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.complexity">Complexity</a>
</h6>
<p>
@ -115,7 +115,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="fill_n.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -28,7 +28,7 @@
Range Algorithm - inplace_merge</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.prototype"></a><h6>
<a name="id2948621"></a>
<a name="id3051100"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.prototype">Prototype</a>
</h6>
<p>
@ -59,7 +59,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.description"></a><h6>
<a name="id2949185"></a>
<a name="id3051664"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.description">Description</a>
</h6>
<p>
@ -72,14 +72,14 @@
input range is preserved.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.definition"></a><h6>
<a name="id2949412"></a>
<a name="id3051892"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">inplace_merge</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.requirements"></a><h6>
<a name="id2949487"></a>
<a name="id3051966"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.requirements">Requirements</a>
</h6>
<p>
@ -116,11 +116,11 @@
argument types.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.precondition_"></a><h6>
<a name="id2949742"></a>
<a name="id3052222"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.precondition_">Precondition:</a>
</h6>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_non_predicate_version_"></a><h6>
<a name="id2949767"></a>
<a name="id3052246"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_non_predicate_version_">For
the non-predicate version:</a>
</h6>
@ -143,7 +143,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_predicate_version_"></a><h6>
<a name="id2950029"></a>
<a name="id3052508"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_predicate_version_">For
the predicate version:</a>
</h6>
@ -164,7 +164,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.complexity"></a><h6>
<a name="id2950312"></a>
<a name="id3052791"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - merge</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.prototype"></a><h6>
<a name="id2950396"></a>
<a name="id3052876"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.prototype">Prototype</a>
</h6>
<p>
@ -57,7 +57,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.description"></a><h6>
<a name="id2950748"></a>
<a name="id3053227"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.description">Description</a>
</h6>
<p>
@ -76,14 +76,14 @@
version uses the predicate instead of <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;()</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.definition"></a><h6>
<a name="id2950931"></a>
<a name="id3053411"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">merge</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.requirements"></a><h6>
<a name="id2951005"></a>
<a name="id3053484"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.requirements">Requirements</a>
</h6>
<p>
@ -151,11 +151,11 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.precondition_"></a><h6>
<a name="id2951510"></a>
<a name="id3053989"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.precondition_">Precondition:</a>
</h6>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.for_the_non_predicate_version_"></a><h6>
<a name="id2951534"></a>
<a name="id3054013"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.for_the_non_predicate_version_">For
the non-predicate version:</a>
</h6>
@ -190,7 +190,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.for_the_predicate_version_"></a><h6>
<a name="id2951995"></a>
<a name="id3054474"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.for_the_predicate_version_">For
the predicate version:</a>
</h6>
@ -221,7 +221,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.merge.complexity"></a><h6>
<a name="id2952479"></a>
<a name="id3054959"></a>
<a class="link" href="merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.merge.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,34 +28,38 @@
Range Algorithm - nth_element</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.prototype"></a><h6>
<a name="id2952610"></a>
<a name="id3055090"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">nth_element</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">nth_element</span><span class="special">(</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">nth_element</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">nth_element</span><span class="special">(</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">nth_element</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">nth_element</span><span class="special">(</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">nth_element</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">nth_element</span><span class="special">(</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.description"></a><h6>
<a name="id2953103"></a>
<a name="id3055618"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.description">Description</a>
</h6>
<p>
@ -66,14 +70,14 @@
is the same as the element that would be in that position if <code class="computeroutput"><span class="identifier">rng</span></code> has been sorted.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.definition"></a><h6>
<a name="id2953187"></a>
<a name="id3055700"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">nth_element</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.requirements"></a><h6>
<a name="id2953261"></a>
<a name="id3055775"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.requirements">Requirements</a>
</h6>
<p>
@ -124,7 +128,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.complexity"></a><h6>
<a name="id2953497"></a>
<a name="id3056012"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,34 +28,38 @@
Range Algorithm - partial_sort</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.prototype"></a><h6>
<a name="id2953568"></a>
<a name="id3056083"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">partial_sort</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">partial_sort</span><span class="special">(</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">partial_sort</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">partial_sort</span><span class="special">(</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">partial_sort</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">partial_sort</span><span class="special">(</span>
<span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">partial_sort</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">partial_sort</span><span class="special">(</span>
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">sort_pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.description"></a><h6>
<a name="id2954062"></a>
<a name="id3056612"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.description">Description</a>
</h6>
<p>
@ -71,14 +75,14 @@
predicate instead.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.definition"></a><h6>
<a name="id2954249"></a>
<a name="id3056798"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partial_sort</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.requirements"></a><h6>
<a name="id2954324"></a>
<a name="id3056873"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.requirements">Requirements</a>
</h6>
<p>
@ -129,7 +133,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.complexity"></a><h6>
<a name="id2954561"></a>
<a name="id3057110"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - partition</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.prototype"></a><h6>
<a name="id2954685"></a>
<a name="id3057234"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.prototype">Prototype</a>
</h6>
<p>
@ -67,7 +67,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.description"></a><h6>
<a name="id2955271"></a>
<a name="id3057821"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.description">Description</a>
</h6>
<p>
@ -81,14 +81,14 @@
corresponds to the middle iterator.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.definition"></a><h6>
<a name="id2955358"></a>
<a name="id3057908"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partition</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.requirements"></a><h6>
<a name="id2955432"></a>
<a name="id3057981"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -108,7 +108,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.complexity"></a><h6>
<a name="id2955533"></a>
<a name="id3058084"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - random_shuffle</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.prototype"></a><h6>
<a name="id2955651"></a>
<a name="id3058202"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.prototype">Prototype</a>
</h6>
<p>
@ -49,7 +49,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.description"></a><h6>
<a name="id2956042"></a>
<a name="id3058593"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.description">Description</a>
</h6>
<p>
@ -61,14 +61,14 @@
the shuffles range.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.definition"></a><h6>
<a name="id2956138"></a>
<a name="id3058689"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">random_shuffle</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.requirements"></a><h6>
<a name="id2956213"></a>
<a name="id3058764"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.requirements">Requirements</a>
</h6>
<p>
@ -99,7 +99,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.precondition_"></a><h6>
<a name="id2956361"></a>
<a name="id3058911"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
@ -108,7 +108,7 @@
maximum value.
</li></ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.complexity"></a><h6>
<a name="id2956426"></a>
<a name="id3058977"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - remove</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.prototype"></a><h6>
<a name="id2956538"></a>
<a name="id3059089"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.prototype">Prototype</a>
</h6>
<p>
@ -67,7 +67,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.description"></a><h6>
<a name="id2957161"></a>
<a name="id3059711"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.description">Description</a>
</h6>
<p>
@ -84,14 +84,14 @@
are dereferenceable, but the elements are unspecified.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.definition"></a><h6>
<a name="id2957399"></a>
<a name="id3059949"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.requirements"></a><h6>
<a name="id2957473"></a>
<a name="id3060023"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -114,7 +114,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.complexity"></a><h6>
<a name="id2957588"></a>
<a name="id3060139"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - remove_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.prototype"></a><h6>
<a name="id2957672"></a>
<a name="id3060223"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.prototype">Prototype</a>
</h6>
<p>
@ -67,7 +67,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.description"></a><h6>
<a name="id2958256"></a>
<a name="id3060807"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.description">Description</a>
</h6>
<p>
@ -83,14 +83,14 @@
are unspecified.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.definition"></a><h6>
<a name="id2958488"></a>
<a name="id3061039"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.requirements"></a><h6>
<a name="id2958562"></a>
<a name="id3061113"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -113,7 +113,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.complexity"></a><h6>
<a name="id2958679"></a>
<a name="id3061230"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - replace</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.prototype"></a><h6>
<a name="id2958772"></a>
<a name="id3061322"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.prototype">Prototype</a>
</h6>
<p>
@ -49,7 +49,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.description"></a><h6>
<a name="id2959089"></a>
<a name="id3061640"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.description">Description</a>
</h6>
<p>
@ -58,14 +58,14 @@
Return a reference to <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.definition"></a><h6>
<a name="id2959171"></a>
<a name="id3061721"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.requirements"></a><h6>
<a name="id2959245"></a>
<a name="id3061795"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -94,7 +94,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.complexity"></a><h6>
<a name="id2959397"></a>
<a name="id3061947"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - replace_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.prototype"></a><h6>
<a name="id2959506"></a>
<a name="id3062057"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.prototype">Prototype</a>
</h6>
<p>
@ -43,7 +43,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.description"></a><h6>
<a name="id2959831"></a>
<a name="id3062382"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.description">Description</a>
</h6>
<p>
@ -52,14 +52,14 @@
Returns a reference to <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.definition"></a><h6>
<a name="id2959948"></a>
<a name="id3062499"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.requirements"></a><h6>
<a name="id2960024"></a>
<a name="id3062574"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -91,7 +91,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.complexity"></a><h6>
<a name="id2960192"></a>
<a name="id3062742"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - rotate</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.prototype"></a><h6>
<a name="id2960310"></a>
<a name="id3062861"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.prototype">Prototype</a>
</h6>
<p>
@ -45,7 +45,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.description"></a><h6>
<a name="id2960572"></a>
<a name="id3063123"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.description">Description</a>
</h6>
<p>
@ -54,14 +54,14 @@
and <code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>. Returns a reference to <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.definition"></a><h6>
<a name="id2960700"></a>
<a name="id3063250"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.requirements"></a><h6>
<a name="id2960774"></a>
<a name="id3063325"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -75,7 +75,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.precondition_"></a><h6>
<a name="id2960838"></a>
<a name="id3063389"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -87,7 +87,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.complexity"></a><h6>
<a name="id2960949"></a>
<a name="id3063500"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - sort</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.prototype"></a><h6>
<a name="id2961022"></a>
<a name="id3063573"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.prototype">Prototype</a>
</h6>
<p>
@ -49,7 +49,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.description"></a><h6>
<a name="id2961405"></a>
<a name="id3063955"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.description">Description</a>
</h6>
<p>
@ -72,14 +72,14 @@
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>, <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span> <span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.definition"></a><h6>
<a name="id2961659"></a>
<a name="id3064210"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.requirements"></a><h6>
<a name="id2961733"></a>
<a name="id3064284"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.requirements">Requirements</a>
</h6>
<p>
@ -130,7 +130,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.complexity"></a><h6>
<a name="id2961969"></a>
<a name="id3064520"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - stable_partition</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.prototype"></a><h6>
<a name="id2962090"></a>
<a name="id3064641"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.prototype">Prototype</a>
</h6>
<p>
@ -61,7 +61,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.description"></a><h6>
<a name="id2962672"></a>
<a name="id3065223"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.description">Description</a>
</h6>
<p>
@ -83,14 +83,14 @@
the iterator to the first element that fails to satisfy <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.definition"></a><h6>
<a name="id2962825"></a>
<a name="id3065376"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">stable_partition</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.requirements"></a><h6>
<a name="id2962900"></a>
<a name="id3065451"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -108,7 +108,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.complexity"></a><h6>
<a name="id2962991"></a>
<a name="id3065542"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - stable_sort</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.prototype"></a><h6>
<a name="id2963166"></a>
<a name="id3065717"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.prototype">Prototype</a>
</h6>
<p>
@ -49,7 +49,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.description"></a><h6>
<a name="id2963549"></a>
<a name="id3066100"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.description">Description</a>
</h6>
<p>
@ -72,14 +72,14 @@
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>, <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.definition"></a><h6>
<a name="id2963804"></a>
<a name="id3066355"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">stable_sort</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.requirements"></a><h6>
<a name="id2963879"></a>
<a name="id3066430"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.requirements">Requirements</a>
</h6>
<p>
@ -130,7 +130,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.complexity"></a><h6>
<a name="id2964116"></a>
<a name="id3066667"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - transform</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.prototype"></a><h6>
<a name="id2964305"></a>
<a name="id3066856"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.prototype">Prototype</a>
</h6>
<p>
@ -57,7 +57,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.description"></a><h6>
<a name="id2964646"></a>
<a name="id3067196"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.description">Description</a>
</h6>
<p>
@ -93,14 +93,14 @@
The return value is <code class="computeroutput"><span class="identifier">out</span> <span class="special">+</span> <span class="identifier">min</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">),</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.definition"></a><h6>
<a name="id2965199"></a>
<a name="id3067749"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.requirements"></a><h6>
<a name="id2965273"></a>
<a name="id3067824"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.requirements">Requirements</a>
</h6>
<p>
@ -170,7 +170,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.precondition_"></a><h6>
<a name="id2965628"></a>
<a name="id3068178"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.precondition_">Precondition:</a>
</h6>
<p>
@ -202,7 +202,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.complexity"></a><h6>
<a name="id2966044"></a>
<a name="id3068595"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - unique</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.prototype"></a><h6>
<a name="id2966171"></a>
<a name="id3068722"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.prototype">Prototype</a>
</h6>
<p>
@ -69,7 +69,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.description"></a><h6>
<a name="id2967204"></a>
<a name="id3069755"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.description">Description</a>
</h6>
<p>
@ -87,14 +87,14 @@
type.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.definition"></a><h6>
<a name="id2967328"></a>
<a name="id3069879"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.requirements"></a><h6>
<a name="id2967403"></a>
<a name="id3069954"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.requirements">Requirements</a>
</h6>
<p>
@ -138,7 +138,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.complexity"></a><h6>
<a name="id2967617"></a>
<a name="id3070168"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.complexity">Complexity</a>
</h6>
<p>

View File

@ -34,6 +34,8 @@
for_each</a></span></dt>
<dt><span class="section"><a href="range_algorithm_new_algorithms/insert.html">
insert</a></span></dt>
<dt><span class="section"><a href="range_algorithm_new_algorithms/iota.html">
iota</a></span></dt>
<dt><span class="section"><a href="range_algorithm_new_algorithms/overwrite.html">
overwrite</a></span></dt>
<dt><span class="section"><a href="range_algorithm_new_algorithms/push_back.html">

View File

@ -28,23 +28,21 @@
erase</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.erase.prototype"></a><h6>
<a name="id3001648"></a>
<a name="id3102704"></a>
<a class="link" href="erase.html#range.reference.algorithms.range_algorithm_new_algorithms.erase.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span>
<span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="identifier">iterator_range</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Container</span><span class="special">::</span><span class="identifier">iterator</span><span class="special">&gt;</span> <span class="identifier">to_erase</span><span class="special">);</span>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Container</span><span class="special">&gt;</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">erase</span><span class="special">(</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="identifier">iterator_range</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Container</span><span class="special">::</span><span class="identifier">iterator</span><span class="special">&gt;</span> <span class="identifier">to_erase</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.erase.description"></a><h6>
<a name="id3001804"></a>
<a name="id3102848"></a>
<a class="link" href="erase.html#range.reference.algorithms.range_algorithm_new_algorithms.erase.description">Description</a>
</h6>
<p>
@ -52,15 +50,23 @@
<code class="computeroutput"><span class="identifier">to_erase</span></code> from the container
<code class="computeroutput"><span class="identifier">target</span></code>.
</p>
<p>
<code class="computeroutput"><span class="identifier">remove_erase</span></code> performs
the frequently used combination equivalent to <code class="computeroutput"><span class="identifier">target</span><span class="special">.</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">remove</span><span class="special">(</span><span class="identifier">target</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">target</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="identifier">value</span><span class="special">),</span> <span class="identifier">target</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span></code>
</p>
<p>
<code class="computeroutput"><span class="identifier">remove_erase_if</span></code> performs
the frequently used combination equivalent to <code class="computeroutput"><span class="identifier">target</span><span class="special">.</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">remove_if</span><span class="special">(</span><span class="identifier">target</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">target</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="identifier">pred</span><span class="special">),</span> <span class="identifier">target</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.erase.definition"></a><h6>
<a name="id3001865"></a>
<a name="id3103154"></a>
<a class="link" href="erase.html#range.reference.algorithms.range_algorithm_new_algorithms.erase.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.erase.requirements"></a><h6>
<a name="id3001939"></a>
<a name="id3103229"></a>
<a class="link" href="erase.html#range.reference.algorithms.range_algorithm_new_algorithms.erase.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
@ -68,7 +74,7 @@
erase of an iterator range.
</li></ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.erase.complexity"></a><h6>
<a name="id3001985"></a>
<a name="id3103276"></a>
<a class="link" href="erase.html#range.reference.algorithms.range_algorithm_new_algorithms.erase.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
for_each</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.for_each.prototype"></a><h6>
<a name="id3002057"></a>
<a name="id3103348"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_new_algorithms.for_each.prototype">Prototype</a>
</h6>
<p>
@ -73,7 +73,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.for_each.description"></a><h6>
<a name="id3002641"></a>
<a name="id3103932"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_new_algorithms.for_each.description">Description</a>
</h6>
<p>
@ -89,14 +89,14 @@
It is safe to call this function with unequal length ranges.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.for_each.definition"></a><h6>
<a name="id3002805"></a>
<a name="id3104096"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_new_algorithms.for_each.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.for_each.requirements"></a><h6>
<a name="id3002880"></a>
<a name="id3104171"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_new_algorithms.for_each.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -126,7 +126,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.for_each.complexity"></a><h6>
<a name="id3003035"></a>
<a name="id3104326"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_new_algorithms.for_each.complexity">Complexity</a>
</h6>
<p>

View File

@ -7,7 +7,7 @@
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_new_algorithms.html" title="New algorithms">
<link rel="prev" href="for_each.html" title="for_each">
<link rel="next" href="overwrite.html" title="overwrite">
<link rel="next" href="iota.html" title="iota">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="for_each.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="overwrite.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="for_each.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iota.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="insert">
<div class="titlepage"><div><div><h5 class="title">
@ -28,7 +28,7 @@
insert</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.insert.prototype"></a><h6>
<a name="id3003146"></a>
<a name="id3104437"></a>
<a class="link" href="insert.html#range.reference.algorithms.range_algorithm_new_algorithms.insert.prototype">Prototype</a>
</h6>
<p>
@ -38,14 +38,14 @@
<span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span>
<span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">insert</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">Container</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">before</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">from</span><span class="special">);</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">insert</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">Container</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">before</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">from</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.insert.description"></a><h6>
<a name="id3003312"></a>
<a name="id3104610"></a>
<a class="link" href="insert.html#range.reference.algorithms.range_algorithm_new_algorithms.insert.description">Description</a>
</h6>
<p>
@ -55,14 +55,14 @@
<code class="computeroutput"><span class="identifier">target</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.insert.definition"></a><h6>
<a name="id3003385"></a>
<a name="id3104682"></a>
<a class="link" href="insert.html#range.reference.algorithms.range_algorithm_new_algorithms.insert.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.insert.requirements"></a><h6>
<a name="id3003459"></a>
<a name="id3104756"></a>
<a class="link" href="insert.html#range.reference.algorithms.range_algorithm_new_algorithms.insert.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -82,7 +82,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.insert.complexity"></a><h6>
<a name="id3003554"></a>
<a name="id3104850"></a>
<a class="link" href="insert.html#range.reference.algorithms.range_algorithm_new_algorithms.insert.complexity">Complexity</a>
</h6>
<p>
@ -100,7 +100,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="for_each.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="overwrite.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="for_each.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iota.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,96 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>iota</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_new_algorithms.html" title="New algorithms">
<link rel="prev" href="insert.html" title="insert">
<link rel="next" href="overwrite.html" title="overwrite">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="overwrite.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="iota">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_new_algorithms.iota"></a><a class="link" href="iota.html" title="iota">
iota</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.iota.prototype"></a><h6>
<a name="id3104923"></a>
<a class="link" href="iota.html#range.reference.algorithms.range_algorithm_new_algorithms.iota.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">iota</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">x</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.iota.description"></a><h6>
<a name="id3105053"></a>
<a class="link" href="iota.html#range.reference.algorithms.range_algorithm_new_algorithms.iota.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">iota</span></code> traverses forward
through <code class="computeroutput"><span class="identifier">rng</span></code>, each element
<code class="computeroutput"><span class="identifier">y</span></code> in <code class="computeroutput"><span class="identifier">rng</span></code>
is assigned a value equivalent to <code class="computeroutput"><span class="identifier">x</span>
<span class="special">+</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">it</span><span class="special">)</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.iota.definition"></a><h6>
<a name="id3105195"></a>
<a class="link" href="iota.html#range.reference.algorithms.range_algorithm_new_algorithms.iota.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">iota</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.iota.requirements"></a><h6>
<a name="id3105266"></a>
<a class="link" href="iota.html#range.reference.algorithms.range_algorithm_new_algorithms.iota.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">Incrementable</span></code> Concept.
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.iota.complexity"></a><h6>
<a name="id3105345"></a>
<a class="link" href="iota.html#range.reference.algorithms.range_algorithm_new_algorithms.iota.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> assignments into <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="overwrite.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_new_algorithms.html" title="New algorithms">
<link rel="prev" href="insert.html" title="insert">
<link rel="prev" href="iota.html" title="iota">
<link rel="next" href="push_back.html" title="push_back">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="iota.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="overwrite">
<div class="titlepage"><div><div><h5 class="title">
@ -28,7 +28,7 @@
overwrite</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.overwrite.prototype"></a><h6>
<a name="id3003628"></a>
<a name="id3105428"></a>
<a class="link" href="overwrite.html#range.reference.algorithms.range_algorithm_new_algorithms.overwrite.prototype">Prototype</a>
</h6>
<p>
@ -44,7 +44,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.overwrite.description"></a><h6>
<a name="id3003767"></a>
<a name="id3105567"></a>
<a class="link" href="overwrite.html#range.reference.algorithms.range_algorithm_new_algorithms.overwrite.description">Description</a>
</h6>
<p>
@ -53,14 +53,14 @@
into the range <code class="computeroutput"><span class="identifier">to</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.overwrite.definition"></a><h6>
<a name="id3003828"></a>
<a name="id3105628"></a>
<a class="link" href="overwrite.html#range.reference.algorithms.range_algorithm_new_algorithms.overwrite.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">overwrite</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.overwrite.requirements"></a><h6>
<a name="id3003902"></a>
<a name="id3105702"></a>
<a class="link" href="overwrite.html#range.reference.algorithms.range_algorithm_new_algorithms.overwrite.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -87,7 +87,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.overwrite.complexity"></a><h6>
<a name="id3004073"></a>
<a name="id3105873"></a>
<a class="link" href="overwrite.html#range.reference.algorithms.range_algorithm_new_algorithms.overwrite.complexity">Complexity</a>
</h6>
<p>
@ -105,7 +105,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="iota.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_new_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -28,7 +28,7 @@
push_back</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_back.prototype"></a><h6>
<a name="id3004146"></a>
<a name="id3105946"></a>
<a class="link" href="push_back.html#range.reference.algorithms.range_algorithm_new_algorithms.push_back.prototype">Prototype</a>
</h6>
<p>
@ -38,13 +38,13 @@
<span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span>
<span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">push_back</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">from</span><span class="special">);</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">push_back</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">from</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_back.description"></a><h6>
<a name="id3004285"></a>
<a name="id3106090"></a>
<a class="link" href="push_back.html#range.reference.algorithms.range_algorithm_new_algorithms.push_back.description">Description</a>
</h6>
<p>
@ -53,14 +53,14 @@
to the back of the container <code class="computeroutput"><span class="identifier">target</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_back.definition"></a><h6>
<a name="id3004346"></a>
<a name="id3106151"></a>
<a class="link" href="push_back.html#range.reference.algorithms.range_algorithm_new_algorithms.push_back.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">push_back</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_back.requirements"></a><h6>
<a name="id3004422"></a>
<a name="id3106226"></a>
<a class="link" href="push_back.html#range.reference.algorithms.range_algorithm_new_algorithms.push_back.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -80,7 +80,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_back.complexity"></a><h6>
<a name="id3004531"></a>
<a name="id3106336"></a>
<a class="link" href="push_back.html#range.reference.algorithms.range_algorithm_new_algorithms.push_back.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
push_front</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_front.prototype"></a><h6>
<a name="id3004604"></a>
<a name="id3106409"></a>
<a class="link" href="push_front.html#range.reference.algorithms.range_algorithm_new_algorithms.push_front.prototype">Prototype</a>
</h6>
<p>
@ -38,13 +38,13 @@
<span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span>
<span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">push_front</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">from</span><span class="special">);</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">push_front</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">from</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_front.description"></a><h6>
<a name="id3004742"></a>
<a name="id3106552"></a>
<a class="link" href="push_front.html#range.reference.algorithms.range_algorithm_new_algorithms.push_front.description">Description</a>
</h6>
<p>
@ -53,14 +53,14 @@
to the front of the container <code class="computeroutput"><span class="identifier">target</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_front.definition"></a><h6>
<a name="id3004804"></a>
<a name="id3106613"></a>
<a class="link" href="push_front.html#range.reference.algorithms.range_algorithm_new_algorithms.push_front.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">push_front</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_front.requirements"></a><h6>
<a name="id3004878"></a>
<a name="id3106688"></a>
<a class="link" href="push_front.html#range.reference.algorithms.range_algorithm_new_algorithms.push_front.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -80,7 +80,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.push_front.complexity"></a><h6>
<a name="id3004988"></a>
<a name="id3106797"></a>
<a class="link" href="push_front.html#range.reference.algorithms.range_algorithm_new_algorithms.push_front.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,40 +28,37 @@
remove_erase</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.prototype"></a><h6>
<a name="id3005062"></a>
<a name="id3106872"></a>
<a class="link" href="remove_erase.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">T</span>
<span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">remove_erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">remove_erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">value</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.description"></a><h6>
<a name="id3005199"></a>
<a name="id3107012"></a>
<a class="link" href="remove_erase.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">remove_erase</span></code> actually
eliminates the elements equal to <code class="computeroutput"><span class="identifier">val</span></code>
eliminates the elements equal to <code class="computeroutput"><span class="identifier">value</span></code>
from the container. This is in contrast to the <code class="computeroutput"><span class="identifier">remove</span></code>
algorithm which merely rearranges elements.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.definition"></a><h6>
<a name="id3005261"></a>
<a name="id3107074"></a>
<a class="link" href="remove_erase.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.requirements"></a><h6>
<a name="id3005336"></a>
<a name="id3107149"></a>
<a class="link" href="remove_erase.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
@ -69,7 +66,7 @@
erase of an iterator range.
</li></ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.complexity"></a><h6>
<a name="id3005383"></a>
<a name="id3107196"></a>
<a class="link" href="remove_erase.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,23 +28,20 @@
remove_erase_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.prototype"></a><h6>
<a name="id3005455"></a>
<a name="id3107269"></a>
<a class="link" href="remove_erase_if.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">Pred</span>
<span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">remove_erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="identifier">Pred</span> <span class="identifier">pred</span><span class="special">);</span>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Container</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Pred</span><span class="special">&gt;</span>
<span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">remove_erase_if</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&amp;</span> <span class="identifier">target</span><span class="special">,</span>
<span class="identifier">Pred</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.description"></a><h6>
<a name="id3005584"></a>
<a name="id3107400"></a>
<a class="link" href="remove_erase_if.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.description">Description</a>
</h6>
<p>
@ -55,14 +52,14 @@
algorithm which merely rearranges elements.
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.definition"></a><h6>
<a name="id3005671"></a>
<a name="id3107486"></a>
<a class="link" href="remove_erase_if.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.requirements"></a><h6>
<a name="id3005744"></a>
<a name="id3107560"></a>
<a class="link" href="remove_erase_if.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -76,7 +73,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.complexity"></a><h6>
<a name="id3005816"></a>
<a name="id3107632"></a>
<a class="link" href="remove_erase_if.html#range.reference.algorithms.range_algorithm_new_algorithms.remove_erase_if.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
Range Algorithm - adjacent_find</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.prototype"></a><h6>
<a name="id2967769"></a>
<a name="id3070320"></a>
<a class="link" href="adjacent_find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.prototype">Prototype</a>
</h6>
<p>
@ -77,7 +77,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.description"></a><h6>
<a name="id2968758"></a>
<a name="id3071309"></a>
<a class="link" href="adjacent_find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.description">Description</a>
</h6>
<p>
@ -98,14 +98,14 @@
is <code class="computeroutput"><span class="keyword">true</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.definition"></a><h6>
<a name="id2968973"></a>
<a name="id3071523"></a>
<a class="link" href="adjacent_find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">adjacent_find</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.requirements"></a><h6>
<a name="id2969047"></a>
<a name="id3071597"></a>
<a class="link" href="adjacent_find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.requirements">Requirements</a>
</h6>
<p>
@ -143,7 +143,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.complexity"></a><h6>
<a name="id2969233"></a>
<a name="id3071783"></a>
<a class="link" href="adjacent_find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.adjacent_find.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
binary_search</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.prototype"></a><h6>
<a name="id2969340"></a>
<a name="id3071892"></a>
<a class="link" href="binary_search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.prototype">Prototype</a>
</h6>
<p>
@ -43,7 +43,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.description"></a><h6>
<a name="id2969624"></a>
<a name="id3072176"></a>
<a class="link" href="binary_search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.description">Description</a>
</h6>
<p>
@ -53,14 +53,14 @@
range <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.definition"></a><h6>
<a name="id2969697"></a>
<a name="id3072248"></a>
<a class="link" href="binary_search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">binary_search</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.requirements"></a><h6>
<a name="id2969772"></a>
<a name="id3072323"></a>
<a class="link" href="binary_search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.requirements">Requirements</a>
</h6>
<p>
@ -111,7 +111,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.precondition_"></a><h6>
<a name="id2970031"></a>
<a name="id3072583"></a>
<a class="link" href="binary_search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.precondition_">Precondition:</a>
</h6>
<p>
@ -129,7 +129,7 @@
order according to the function object <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.complexity"></a><h6>
<a name="id2970130"></a>
<a name="id3072682"></a>
<a class="link" href="binary_search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.binary_search.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
count</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.prototype"></a><h6>
<a name="id2970306"></a>
<a name="id3072858"></a>
<a class="link" href="count.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.prototype">Prototype</a>
</h6>
<p>
@ -45,7 +45,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.description"></a><h6>
<a name="id2970606"></a>
<a name="id3073157"></a>
<a class="link" href="count.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.description">Description</a>
</h6>
<p>
@ -55,14 +55,14 @@
is <code class="computeroutput"><span class="keyword">true</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.definition"></a><h6>
<a name="id2970698"></a>
<a name="id3073249"></a>
<a class="link" href="count.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.requirements"></a><h6>
<a name="id2970772"></a>
<a name="id3073324"></a>
<a class="link" href="count.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -85,7 +85,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.complexity"></a><h6>
<a name="id2970901"></a>
<a name="id3073452"></a>
<a class="link" href="count.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.count.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
equal</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.prototype"></a><h6>
<a name="id2970973"></a>
<a name="id3073524"></a>
<a class="link" href="equal.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.prototype">Prototype</a>
</h6>
<p>
@ -53,7 +53,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.description"></a><h6>
<a name="id2971261"></a>
<a name="id3073812"></a>
<a class="link" href="equal.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.description">Description</a>
</h6>
<p>
@ -71,14 +71,14 @@
considered equal in the predicate version if <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">)</span></code> is <code class="computeroutput"><span class="keyword">true</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.definition"></a><h6>
<a name="id2971506"></a>
<a name="id3074057"></a>
<a class="link" href="equal.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">equal</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.requirements"></a><h6>
<a name="id2971581"></a>
<a name="id3074132"></a>
<a class="link" href="equal.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.requirements">Requirements</a>
</h6>
<p>
@ -139,7 +139,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.complexity"></a><h6>
<a name="id2971878"></a>
<a name="id3074430"></a>
<a class="link" href="equal.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
equal_range</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.prototype"></a><h6>
<a name="id2971979"></a>
<a name="id3074530"></a>
<a class="link" href="equal_range.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.prototype">Prototype</a>
</h6>
<p>
@ -71,7 +71,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.description"></a><h6>
<a name="id2972861"></a>
<a name="id3075412"></a>
<a class="link" href="equal_range.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.description">Description</a>
</h6>
<p>
@ -85,14 +85,14 @@
is determined by <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.definition"></a><h6>
<a name="id2973015"></a>
<a name="id3075566"></a>
<a class="link" href="equal_range.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">equal_range</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.requirements"></a><h6>
<a name="id2973089"></a>
<a name="id3075640"></a>
<a class="link" href="equal_range.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.requirements">Requirements</a>
</h6>
<p>
@ -143,7 +143,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.precondition_"></a><h6>
<a name="id2973348"></a>
<a name="id3075899"></a>
<a class="link" href="equal_range.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.precondition_">Precondition:</a>
</h6>
<p>
@ -155,7 +155,7 @@
is ordered in ascending order according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.complexity"></a><h6>
<a name="id2973430"></a>
<a name="id3075982"></a>
<a class="link" href="equal_range.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.equal_range.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
find</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.prototype"></a><h6>
<a name="id2974122"></a>
<a name="id3076673"></a>
<a class="link" href="find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.prototype">Prototype</a>
</h6>
<p>
@ -38,10 +38,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">SinglePassRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span>
@ -49,19 +45,11 @@
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">Value</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.description"></a><h6>
<a name="id2974701"></a>
<a name="id3076968"></a>
<a class="link" href="find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.description">Description</a>
</h6>
<p>
@ -72,14 +60,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.definition"></a><h6>
<a name="id2974827"></a>
<a name="id3077093"></a>
<a class="link" href="find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.requirements"></a><h6>
<a name="id2974902"></a>
<a name="id3077169"></a>
<a class="link" href="find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -100,7 +88,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.complexity"></a><h6>
<a name="id2975020"></a>
<a name="id3077286"></a>
<a class="link" href="find.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
find_end</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.prototype"></a><h6>
<a name="id2975092"></a>
<a name="id3077359"></a>
<a class="link" href="find_end.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.prototype">Prototype</a>
</h6>
<p>
@ -38,10 +38,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">ForwardRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
@ -50,15 +46,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">ForwardRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span>
@ -67,14 +54,6 @@
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span>
@ -83,20 +62,11 @@
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_end</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.description"></a><h6>
<a name="id2976440"></a>
<a name="id3078027"></a>
<a class="link" href="find_end.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.description">Description</a>
</h6>
<p>
@ -111,14 +81,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.definition"></a><h6>
<a name="id2976576"></a>
<a name="id3078162"></a>
<a class="link" href="find_end.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_end</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.requirements"></a><h6>
<a name="id2976650"></a>
<a name="id3078236"></a>
<a class="link" href="find_end.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.requirements">Requirements</a>
</h6>
<p>
@ -178,7 +148,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.complexity"></a><h6>
<a name="id2976949"></a>
<a name="id3078536"></a>
<a class="link" href="find_end.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_end.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
find_first_of</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.prototype"></a><h6>
<a name="id2977132"></a>
<a name="id3078718"></a>
<a class="link" href="find_first_of.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.prototype">Prototype</a>
</h6>
<p>
@ -38,10 +38,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
@ -50,15 +46,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
@ -67,14 +54,6 @@
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
@ -83,20 +62,11 @@
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange2</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_first_of</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.description"></a><h6>
<a name="id2978480"></a>
<a name="id3079387"></a>
<a class="link" href="find_first_of.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.description">Description</a>
</h6>
<p>
@ -116,14 +86,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.definition"></a><h6>
<a name="id2978621"></a>
<a name="id3079527"></a>
<a class="link" href="find_first_of.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_first_of</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.requirements"></a><h6>
<a name="id2978697"></a>
<a name="id3079602"></a>
<a class="link" href="find_first_of.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.requirements">Requirements</a>
</h6>
<p>
@ -177,7 +147,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.complexity"></a><h6>
<a name="id2978954"></a>
<a name="id3079860"></a>
<a class="link" href="find_first_of.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_first_of.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
find_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.prototype"></a><h6>
<a name="id2979052"></a>
<a name="id3079958"></a>
<a class="link" href="find_if.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.prototype">Prototype</a>
</h6>
<p>
@ -38,10 +38,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">SinglePassRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_if</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">UnaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">UnaryPredicate</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_if</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">UnaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span>
@ -49,19 +45,11 @@
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_if</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">UnaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">UnaryPredicate</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find_if</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">UnaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.description"></a><h6>
<a name="id2979633"></a>
<a name="id3080253"></a>
<a class="link" href="find_if.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.description">Description</a>
</h6>
<p>
@ -76,14 +64,14 @@
defines found in the same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.definition"></a><h6>
<a name="id2979770"></a>
<a name="id3080390"></a>
<a class="link" href="find_if.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.requirements"></a><h6>
<a name="id2979844"></a>
<a name="id3080464"></a>
<a class="link" href="find_if.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -102,7 +90,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.precondition_"></a><h6>
<a name="id2979947"></a>
<a name="id3080567"></a>
<a class="link" href="find_if.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.precondition_">Precondition:</a>
</h6>
<p>
@ -110,7 +98,7 @@
<code class="computeroutput"><span class="identifier">rng</span></code>, <code class="computeroutput"><span class="special">*</span><span class="identifier">i</span></code> is in the domain of <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.complexity"></a><h6>
<a name="id2980022"></a>
<a name="id3080643"></a>
<a class="link" href="find_if.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.find_if.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
for_each</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.prototype"></a><h6>
<a name="id2973533"></a>
<a name="id3076084"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.prototype">Prototype</a>
</h6>
<p>
@ -49,7 +49,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.description"></a><h6>
<a name="id2973762"></a>
<a name="id3076313"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.description">Description</a>
</h6>
<p>
@ -59,14 +59,14 @@
<code class="computeroutput"><span class="identifier">fun</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.definition"></a><h6>
<a name="id2973846"></a>
<a name="id3076397"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.requirements"></a><h6>
<a name="id2973920"></a>
<a name="id3076472"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
@ -90,7 +90,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.complexity"></a><h6>
<a name="id2974039"></a>
<a name="id3076590"></a>
<a class="link" href="for_each.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.for_each.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
lexicographical_compare</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.prototype"></a><h6>
<a name="id2980107"></a>
<a name="id3080727"></a>
<a class="link" href="lexicographical_compare.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.prototype">Prototype</a>
</h6>
<p>
@ -53,7 +53,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.description"></a><h6>
<a name="id2980398"></a>
<a name="id3081018"></a>
<a class="link" href="lexicographical_compare.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.description">Description</a>
</h6>
<p>
@ -73,14 +73,14 @@
predicate versions.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.definition"></a><h6>
<a name="id2980579"></a>
<a name="id3081200"></a>
<a class="link" href="lexicographical_compare.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">lexicographical_compare</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.requirements"></a><h6>
<a name="id2980656"></a>
<a name="id3081276"></a>
<a class="link" href="lexicographical_compare.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.requirements">Requirements</a>
</h6>
<p>
@ -145,7 +145,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.complexity"></a><h6>
<a name="id2981022"></a>
<a name="id3081642"></a>
<a class="link" href="lexicographical_compare.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lexicographical_compare.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
lower_bound</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.prototype"></a><h6>
<a name="id2981135"></a>
<a name="id3081755"></a>
<a class="link" href="lower_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.prototype">Prototype</a>
</h6>
<p>
@ -38,10 +38,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">lower_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">lower_bound</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span>
@ -49,19 +45,11 @@
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">lower_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">Value</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">lower_bound</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.description"></a><h6>
<a name="id2981715"></a>
<a name="id3082050"></a>
<a class="link" href="lower_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.description">Description</a>
</h6>
<p>
@ -84,14 +72,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.definition"></a><h6>
<a name="id2981915"></a>
<a name="id3082251"></a>
<a class="link" href="lower_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">lower_bound</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.requirements"></a><h6>
<a name="id2981990"></a>
<a name="id3082325"></a>
<a class="link" href="lower_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.requirements">Requirements</a>
</h6>
<p>
@ -142,7 +130,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.precondition_"></a><h6>
<a name="id2982250"></a>
<a name="id3082585"></a>
<a class="link" href="lower_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.precondition_">Precondition:</a>
</h6>
<p>
@ -160,7 +148,7 @@
order according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.complexity"></a><h6>
<a name="id2982349"></a>
<a name="id3082684"></a>
<a class="link" href="lower_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.lower_bound.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
max_element</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.prototype"></a><h6>
<a name="id2982499"></a>
<a name="id3082835"></a>
<a class="link" href="max_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.prototype">Prototype</a>
</h6>
<p>
@ -84,7 +84,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.description"></a><h6>
<a name="id2983495"></a>
<a name="id3083831"></a>
<a class="link" href="max_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.description">Description</a>
</h6>
<p>
@ -98,14 +98,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.definition"></a><h6>
<a name="id2983599"></a>
<a name="id3083934"></a>
<a class="link" href="max_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">max_element</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.requirements"></a><h6>
<a name="id2983673"></a>
<a name="id3084009"></a>
<a class="link" href="max_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.requirements">Requirements</a>
</h6>
<p>
@ -142,7 +142,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.complexity"></a><h6>
<a name="id2983846"></a>
<a name="id3084182"></a>
<a class="link" href="max_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.max_element.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
min_element</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.prototype"></a><h6>
<a name="id2983954"></a>
<a name="id3084290"></a>
<a class="link" href="min_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.prototype">Prototype</a>
</h6>
<p>
@ -84,7 +84,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.description"></a><h6>
<a name="id2984951"></a>
<a name="id3085286"></a>
<a class="link" href="min_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.description">Description</a>
</h6>
<p>
@ -98,14 +98,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.definition"></a><h6>
<a name="id2985055"></a>
<a name="id3085390"></a>
<a class="link" href="min_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">min_element</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.requirements"></a><h6>
<a name="id2985130"></a>
<a name="id3085465"></a>
<a class="link" href="min_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.requirements">Requirements</a>
</h6>
<p>
@ -142,7 +142,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.complexity"></a><h6>
<a name="id2985304"></a>
<a name="id3085639"></a>
<a class="link" href="min_element.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.min_element.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
mismatch</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.prototype"></a><h6>
<a name="id2985412"></a>
<a name="id3085747"></a>
<a class="link" href="mismatch.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.prototype">Prototype</a>
</h6>
<p>
@ -106,7 +106,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.description"></a><h6>
<a name="id2987131"></a>
<a name="id3087466"></a>
<a class="link" href="mismatch.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.description">Description</a>
</h6>
<p>
@ -124,14 +124,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.definition"></a><h6>
<a name="id2987273"></a>
<a name="id3087609"></a>
<a class="link" href="mismatch.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">mismatch</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.requirements"></a><h6>
<a name="id2987347"></a>
<a name="id3087682"></a>
<a class="link" href="mismatch.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.requirements">Requirements</a>
</h6>
<p>
@ -192,14 +192,14 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.precondition_"></a><h6>
<a name="id2987644"></a>
<a name="id3087980"></a>
<a class="link" href="mismatch.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.precondition_">Precondition:</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span> <span class="special">&gt;=</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.complexity"></a><h6>
<a name="id2987721"></a>
<a name="id3088056"></a>
<a class="link" href="mismatch.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.mismatch.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
search</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.prototype"></a><h6>
<a name="id2987794"></a>
<a name="id3088129"></a>
<a class="link" href="search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.prototype">Prototype</a>
</h6>
<p>
@ -96,7 +96,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.description"></a><h6>
<a name="id2989144"></a>
<a name="id3089479"></a>
<a class="link" href="search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.description">Description</a>
</h6>
<p>
@ -115,14 +115,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.definition"></a><h6>
<a name="id2989320"></a>
<a name="id3089656"></a>
<a class="link" href="search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">search</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.requirements"></a><h6>
<a name="id2989395"></a>
<a name="id3089731"></a>
<a class="link" href="search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.requirements">Requirements</a>
</h6>
<p>
@ -183,7 +183,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.complexity"></a><h6>
<a name="id2989693"></a>
<a name="id3090029"></a>
<a class="link" href="search.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.search.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
upper_bound</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.prototype"></a><h6>
<a name="id2989743"></a>
<a name="id3090079"></a>
<a class="link" href="upper_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.prototype">Prototype</a>
</h6>
<p>
@ -38,10 +38,6 @@
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">upper_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">upper_bound</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span>
@ -49,19 +45,11 @@
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">upper_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="identifier">range_return_value</span> <span class="identifier">re</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">Value</span>
<span class="special">&gt;</span>
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">upper_bound</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">Value</span> <span class="identifier">val</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.description"></a><h6>
<a name="id2990323"></a>
<a name="id3090374"></a>
<a class="link" href="upper_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.description">Description</a>
</h6>
<p>
@ -83,14 +71,14 @@
same manner as the returned iterator described above.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.definition"></a><h6>
<a name="id2990527"></a>
<a name="id3090578"></a>
<a class="link" href="upper_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">upper_bound</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.requirements"></a><h6>
<a name="id2990602"></a>
<a name="id3090654"></a>
<a class="link" href="upper_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.requirements">Requirements</a>
</h6>
<p>
@ -141,7 +129,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.precondition_"></a><h6>
<a name="id2990862"></a>
<a name="id3090913"></a>
<a class="link" href="upper_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.precondition_">Precondition:</a>
</h6>
<p>
@ -159,7 +147,7 @@
order according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.complexity"></a><h6>
<a name="id2990960"></a>
<a name="id3091011"></a>
<a class="link" href="upper_bound.html#range.reference.algorithms.range_algorithm_non_mutating_algorithms.upper_bound.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
accumulate</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_numeric.accumulate.prototype"></a><h6>
<a name="id3005906"></a>
<a name="id3107722"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.prototype">Prototype</a>
</h6>
<p>
@ -53,7 +53,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_numeric.accumulate.description"></a><h6>
<a name="id3006172"></a>
<a name="id3107987"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.description">Description</a>
</h6>
<p>
@ -64,18 +64,18 @@
The return value is the resultant value of the above algorithm.
</p>
<a name="range.reference.algorithms.range_numeric.accumulate.definition"></a><h6>
<a name="id3006252"></a>
<a name="id3108068"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">numeric</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_numeric.accumulate.requirements"></a><h6>
<a name="id3006316"></a>
<a name="id3108132"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.requirements">Requirements</a>
</h6>
<a name="range.reference.algorithms.range_numeric.accumulate.for_the_first_version"></a><h6>
<a name="id3006339"></a>
<a name="id3108156"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.for_the_first_version">For
the first version</a>
</h6>
@ -100,7 +100,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.accumulate.for_the_second_version"></a><h6>
<a name="id3006477"></a>
<a name="id3108294"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.for_the_second_version">For
the second version</a>
</h6>
@ -134,7 +134,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.accumulate.complexity"></a><h6>
<a name="id3006661"></a>
<a name="id3108477"></a>
<a class="link" href="accumulate.html#range.reference.algorithms.range_numeric.accumulate.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
adjacent_difference</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.prototype"></a><h6>
<a name="id3006732"></a>
<a name="id3108549"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.prototype">Prototype</a>
</h6>
<p>
@ -55,7 +55,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.description"></a><h6>
<a name="id3007000"></a>
<a name="id3108817"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.description">Description</a>
</h6>
<p>
@ -69,18 +69,18 @@
instead of <code class="computeroutput"><span class="keyword">operator</span><span class="special">-()</span></code>.
</p>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.definition"></a><h6>
<a name="id3007105"></a>
<a name="id3108923"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">numeric</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.requirements"></a><h6>
<a name="id3007170"></a>
<a name="id3108988"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.requirements">Requirements</a>
</h6>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.for_the_first_version"></a><h6>
<a name="id3007194"></a>
<a name="id3109012"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.for_the_first_version">For
the first version</a>
</h6>
@ -111,7 +111,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.for_the_second_version"></a><h6>
<a name="id3007397"></a>
<a name="id3109215"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.for_the_second_version">For
the second version</a>
</h6>
@ -146,7 +146,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.precondition_"></a><h6>
<a name="id3007585"></a>
<a name="id3109402"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.precondition_">Precondition:</a>
</h6>
<p>
@ -154,7 +154,7 @@
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</p>
<a name="range.reference.algorithms.range_numeric.adjacent_difference.complexity"></a><h6>
<a name="id3007662"></a>
<a name="id3109479"></a>
<a class="link" href="adjacent_difference.html#range.reference.algorithms.range_numeric.adjacent_difference.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
inner_product</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_numeric.inner_product.prototype"></a><h6>
<a name="id3007769"></a>
<a name="id3109586"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.prototype">Prototype</a>
</h6>
<p>
@ -54,7 +54,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_numeric.inner_product.description"></a><h6>
<a name="id3008135"></a>
<a name="id3109952"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.description">Description</a>
</h6>
<p>
@ -67,18 +67,18 @@
algorithm please see <a href="http://www.sgi.com/tech/stl/inner_product.html" target="_top">inner_product</a>.
</p>
<a name="range.reference.algorithms.range_numeric.inner_product.definition"></a><h6>
<a name="id3008217"></a>
<a name="id3110035"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">numeric</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_numeric.inner_product.requirements"></a><h6>
<a name="id3008282"></a>
<a name="id3110099"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.requirements">Requirements</a>
</h6>
<a name="range.reference.algorithms.range_numeric.inner_product.for_the_first_version"></a><h6>
<a name="id3008306"></a>
<a name="id3110124"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.for_the_first_version">For
the first version</a>
</h6>
@ -113,7 +113,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.inner_product.for_the_second_version"></a><h6>
<a name="id3008560"></a>
<a name="id3110378"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.for_the_second_version">For
the second version</a>
</h6>
@ -162,14 +162,14 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.inner_product.precondition_"></a><h6>
<a name="id3008846"></a>
<a name="id3110664"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.precondition_">Precondition:</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span> <span class="special">&gt;=</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span></code> is a valid range.
</p>
<a name="range.reference.algorithms.range_numeric.inner_product.complexity"></a><h6>
<a name="id3008923"></a>
<a name="id3110741"></a>
<a class="link" href="inner_product.html#range.reference.algorithms.range_numeric.inner_product.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
partial_sum</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_numeric.partial_sum.prototype"></a><h6>
<a name="id3008994"></a>
<a name="id3110811"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.prototype">Prototype</a>
</h6>
<p>
@ -49,7 +49,7 @@
<p>
</p>
<a name="range.reference.algorithms.range_numeric.partial_sum.description"></a><h6>
<a name="id3009255"></a>
<a name="id3111072"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.description">Description</a>
</h6>
<p>
@ -58,18 +58,18 @@
in the same manner as <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">partial_sum</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">out_it</span><span class="special">)</span></code>. See <a href="http://www.sgi.com/tech/stl/partial_sum.html" target="_top">partial_sum</a>.
</p>
<a name="range.reference.algorithms.range_numeric.partial_sum.definition"></a><h6>
<a name="id3009398"></a>
<a name="id3111216"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">numeric</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_numeric.partial_sum.requirements"></a><h6>
<a name="id3009462"></a>
<a name="id3111280"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.requirements">Requirements</a>
</h6>
<a name="range.reference.algorithms.range_numeric.partial_sum.for_the_first_version"></a><h6>
<a name="id3009486"></a>
<a name="id3111303"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.for_the_first_version">For
the first version</a>
</h6>
@ -99,7 +99,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.partial_sum.for_the_second_version"></a><h6>
<a name="id3009688"></a>
<a name="id3111505"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.for_the_second_version">For
the second version</a>
</h6>
@ -128,7 +128,7 @@
</li>
</ol></div>
<a name="range.reference.algorithms.range_numeric.partial_sum.precondition_"></a><h6>
<a name="id3009847"></a>
<a name="id3111664"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.precondition_">Precondition:</a>
</h6>
<p>
@ -136,7 +136,7 @@
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</p>
<a name="range.reference.algorithms.range_numeric.partial_sum.complexity"></a><h6>
<a name="id3009923"></a>
<a name="id3111741"></a>
<a class="link" href="partial_sum.html#range.reference.algorithms.range_numeric.partial_sum.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
includes</a>
</h5></div></div></div>
<a name="range.reference.algorithms.set_algorithms.includes.prototype"></a><h6>
<a name="id2991122"></a>
<a name="id3091173"></a>
<a class="link" href="includes.html#range.reference.algorithms.set_algorithms.includes.prototype">Prototype</a>
</h6>
<p>
@ -48,7 +48,7 @@
<p>
</p>
<a name="range.reference.algorithms.set_algorithms.includes.description"></a><h6>
<a name="id2991406"></a>
<a name="id3091457"></a>
<a class="link" href="includes.html#range.reference.algorithms.set_algorithms.includes.description">Description</a>
</h6>
<p>
@ -60,14 +60,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.set_algorithms.includes.definition"></a><h6>
<a name="id2991505"></a>
<a name="id3091556"></a>
<a class="link" href="includes.html#range.reference.algorithms.set_algorithms.includes.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.set_algorithms.includes.requirements"></a><h6>
<a name="id2991578"></a>
<a name="id3091629"></a>
<a class="link" href="includes.html#range.reference.algorithms.set_algorithms.includes.requirements">Requirements</a>
</h6>
<p>
@ -145,7 +145,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.set_algorithms.includes.precondition_"></a><h6>
<a name="id2991970"></a>
<a name="id3092021"></a>
<a class="link" href="includes.html#range.reference.algorithms.set_algorithms.includes.precondition_">Precondition:</a>
</h6>
<p>
@ -163,7 +163,7 @@
according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.set_algorithms.includes.complexity"></a><h6>
<a name="id2992089"></a>
<a name="id3092140"></a>
<a class="link" href="includes.html#range.reference.algorithms.set_algorithms.includes.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
set_difference</a>
</h5></div></div></div>
<a name="range.reference.algorithms.set_algorithms.set_difference.prototype"></a><h6>
<a name="id2994636"></a>
<a name="id3094687"></a>
<a class="link" href="set_difference.html#range.reference.algorithms.set_algorithms.set_difference.prototype">Prototype</a>
</h6>
<p>
@ -57,7 +57,7 @@
<p>
</p>
<a name="range.reference.algorithms.set_algorithms.set_difference.description"></a><h6>
<a name="id2994983"></a>
<a name="id3095038"></a>
<a class="link" href="set_difference.html#range.reference.algorithms.set_algorithms.set_difference.description">Description</a>
</h6>
<p>
@ -71,14 +71,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.set_algorithms.set_difference.definition"></a><h6>
<a name="id2995080"></a>
<a name="id3095131"></a>
<a class="link" href="set_difference.html#range.reference.algorithms.set_algorithms.set_difference.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.set_algorithms.set_difference.requirements"></a><h6>
<a name="id2995154"></a>
<a name="id3095205"></a>
<a class="link" href="set_difference.html#range.reference.algorithms.set_algorithms.set_difference.requirements">Requirements</a>
</h6>
<p>
@ -164,7 +164,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.set_algorithms.set_difference.precondition_"></a><h6>
<a name="id2995598"></a>
<a name="id3095649"></a>
<a class="link" href="set_difference.html#range.reference.algorithms.set_algorithms.set_difference.precondition_">Precondition:</a>
</h6>
<p>
@ -182,7 +182,7 @@
according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.set_algorithms.set_difference.complexity"></a><h6>
<a name="id2995717"></a>
<a name="id3095768"></a>
<a class="link" href="set_difference.html#range.reference.algorithms.set_algorithms.set_difference.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
set_intersection</a>
</h5></div></div></div>
<a name="range.reference.algorithms.set_algorithms.set_intersection.prototype"></a><h6>
<a name="id2993424"></a>
<a name="id3093475"></a>
<a class="link" href="set_intersection.html#range.reference.algorithms.set_algorithms.set_intersection.prototype">Prototype</a>
</h6>
<p>
@ -57,7 +57,7 @@
<p>
</p>
<a name="range.reference.algorithms.set_algorithms.set_intersection.description"></a><h6>
<a name="id2993776"></a>
<a name="id3093827"></a>
<a class="link" href="set_intersection.html#range.reference.algorithms.set_algorithms.set_intersection.description">Description</a>
</h6>
<p>
@ -71,14 +71,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.set_algorithms.set_intersection.definition"></a><h6>
<a name="id2993868"></a>
<a name="id3093920"></a>
<a class="link" href="set_intersection.html#range.reference.algorithms.set_algorithms.set_intersection.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.set_algorithms.set_intersection.requirements"></a><h6>
<a name="id2993942"></a>
<a name="id3093992"></a>
<a class="link" href="set_intersection.html#range.reference.algorithms.set_algorithms.set_intersection.requirements">Requirements</a>
</h6>
<p>
@ -164,7 +164,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.set_algorithms.set_intersection.precondition_"></a><h6>
<a name="id2994386"></a>
<a name="id3094437"></a>
<a class="link" href="set_intersection.html#range.reference.algorithms.set_algorithms.set_intersection.precondition_">Precondition:</a>
</h6>
<p>
@ -182,7 +182,7 @@
according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.set_algorithms.set_intersection.complexity"></a><h6>
<a name="id2994505"></a>
<a name="id3094556"></a>
<a class="link" href="set_intersection.html#range.reference.algorithms.set_algorithms.set_intersection.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
set_symmetric_difference</a>
</h5></div></div></div>
<a name="range.reference.algorithms.set_algorithms.set_symmetric_difference.prototype"></a><h6>
<a name="id2995848"></a>
<a name="id3095898"></a>
<a class="link" href="set_symmetric_difference.html#range.reference.algorithms.set_algorithms.set_symmetric_difference.prototype">Prototype</a>
</h6>
<p>
@ -59,7 +59,7 @@
<p>
</p>
<a name="range.reference.algorithms.set_algorithms.set_symmetric_difference.description"></a><h6>
<a name="id2996200"></a>
<a name="id3096249"></a>
<a class="link" href="set_symmetric_difference.html#range.reference.algorithms.set_algorithms.set_symmetric_difference.description">Description</a>
</h6>
<p>
@ -75,14 +75,14 @@
the predicate versions.
</p>
<a name="range.reference.algorithms.set_algorithms.set_symmetric_difference.definition"></a><h6>
<a name="id2996293"></a>
<a name="id3096344"></a>
<a class="link" href="set_symmetric_difference.html#range.reference.algorithms.set_algorithms.set_symmetric_difference.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.set_algorithms.set_symmetric_difference.requirements"></a><h6>
<a name="id2996367"></a>
<a name="id3096418"></a>
<a class="link" href="set_symmetric_difference.html#range.reference.algorithms.set_algorithms.set_symmetric_difference.requirements">Requirements</a>
</h6>
<p>
@ -168,7 +168,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.set_algorithms.set_symmetric_difference.precondition_"></a><h6>
<a name="id2996812"></a>
<a name="id3096863"></a>
<a class="link" href="set_symmetric_difference.html#range.reference.algorithms.set_algorithms.set_symmetric_difference.precondition_">Precondition:</a>
</h6>
<p>
@ -186,7 +186,7 @@
according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.set_algorithms.set_symmetric_difference.complexity"></a><h6>
<a name="id2996932"></a>
<a name="id3096983"></a>
<a class="link" href="set_symmetric_difference.html#range.reference.algorithms.set_algorithms.set_symmetric_difference.complexity">Complexity</a>
</h6>
<p>

View File

@ -28,7 +28,7 @@
set_union</a>
</h5></div></div></div>
<a name="range.reference.algorithms.set_algorithms.set_union.prototype"></a><h6>
<a name="id2992218"></a>
<a name="id3092269"></a>
<a class="link" href="set_union.html#range.reference.algorithms.set_algorithms.set_union.prototype">Prototype</a>
</h6>
<p>
@ -57,7 +57,7 @@
<p>
</p>
<a name="range.reference.algorithms.set_algorithms.set_union.description"></a><h6>
<a name="id2992569"></a>
<a name="id3092620"></a>
<a class="link" href="set_union.html#range.reference.algorithms.set_algorithms.set_union.description">Description</a>
</h6>
<p>
@ -70,14 +70,14 @@
in the predicate versions.
</p>
<a name="range.reference.algorithms.set_algorithms.set_union.definition"></a><h6>
<a name="id2992658"></a>
<a name="id3092710"></a>
<a class="link" href="set_union.html#range.reference.algorithms.set_algorithms.set_union.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.set_algorithms.set_union.requirements"></a><h6>
<a name="id2992731"></a>
<a name="id3092782"></a>
<a class="link" href="set_union.html#range.reference.algorithms.set_algorithms.set_union.requirements">Requirements</a>
</h6>
<p>
@ -163,7 +163,7 @@
</li>
</ul></div>
<a name="range.reference.algorithms.set_algorithms.set_union.precondition_"></a><h6>
<a name="id2993175"></a>
<a name="id3093226"></a>
<a class="link" href="set_union.html#range.reference.algorithms.set_algorithms.set_union.precondition_">Precondition:</a>
</h6>
<p>
@ -181,7 +181,7 @@
according to <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.set_algorithms.set_union.complexity"></a><h6>
<a name="id2993294"></a>
<a name="id3093345"></a>
<a class="link" href="set_union.html#range.reference.algorithms.set_algorithms.set_union.complexity">Complexity</a>
</h6>
<p>

View File

@ -34,7 +34,7 @@
</p>
<p>
The primary templates in this library are implemented such that standard
containers will work automatically and so will <a href="../../../../../libs/array/index.html" target="_top">boost::array</a>.
containers will work automatically and so will <a href="../../../../../../../libs/array/index.html" target="_top">boost::array</a>.
Below is given an overview of which member functions and member types a
class must specify to be useable as a certain Range concept.
</p>

View File

@ -1,257 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Introduction and motivation</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm.html" title="Range Algorithm">
<link rel="prev" href="../range_algorithm.html" title="Range Algorithm">
<link rel="next" href="range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="range_algorithm_mutating_algorithms.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Introduction and motivation">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.range_algorithm.range_algorithm_introduction"></a><a class="link" href="range_algorithm_introduction.html" title="Introduction and motivation">
Introduction and motivation</a>
</h4></div></div></div>
<p>
In its most simple form a <span class="bold"><strong>Range Algorithm</strong></span>
(or range-based algorithm) is simply an iterator-based algorithm where
the <span class="emphasis"><em>two</em></span> iterator arguments have been replaced by
<span class="emphasis"><em>one</em></span> range argument. For example, we may write
</p>
<p>
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">vector</span><span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span> <span class="special">=</span> <span class="special">...;</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">);</span>
</pre>
<p>
</p>
<p>
instead of
</p>
<p>
</p>
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
</pre>
<p>
</p>
<p>
However, the return type of range algorithms is almost always different
from that of existing iterator-based algorithms.
</p>
<p>
One group of algorithms, like <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">()</span></code>, will simply return the same range so
that we can continue to pass the range around and/or further modify it.
Because of this we may write
</p>
<pre class="programlisting"><span class="identifier">boost</span><span class="special">:</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
</pre>
<p>
to first sort the range and then run <code class="computeroutput"><span class="identifier">unique</span><span class="special">()</span></code> on the sorted range.
</p>
<p>
Algorithms like <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">()</span></code>
fall into another group of algorithms that return (potentially) narrowed
views of the original range. By default <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">found</span><span class="special">)</span></code>
where <code class="computeroutput"><span class="identifier">found</span></code> denotes the
iterator returned by <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
</p>
<p>
Therefore exactly the unique values can be copied by writing
</p>
<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream_iterator</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span><span class="special">));</span>
</pre>
<p>
</p>
<p>
Algorithms like <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span></code> usually return the same range:
<code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">found</span><span class="special">)</span></code>. However, this behaviour may be changed
by supplying the algorithms with a template argument:
</p>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Expression
</p>
</th>
<th>
<p>
Return
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns a single iterator like <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_found</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span>
<span class="identifier">found</span><span class="special">)</span></code>
(this is the default)
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_next</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">next</span><span class="special">(</span><span class="identifier">found</span><span class="special">))</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">found</span><span class="special">,</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_next_end</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">next</span><span class="special">(</span><span class="identifier">found</span><span class="special">),</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_end</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the entire original range.
</p>
</td>
</tr>
</tbody>
</table></div>
<p>
This functionality has the following advantages:
</p>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
it allows for <span class="emphasis"><em><span class="bold"><strong>seamless functional-style
programming</strong></span></em></span> where you do not need to use named
local variables to store intermediate results
</li>
<li class="listitem">
it is very <span class="emphasis"><em><span class="bold"><strong>safe</strong></span></em></span>
because the algorithm can verify out-of-bounds conditions and handle
tricky conditions that lead to empty ranges
</li>
</ol></div>
<p>
For example, consider how easy we may erase the duplicates in a sorted
container:
</p>
<p>
</p>
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span> <span class="special">=</span> <span class="special">...;</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span><span class="special">&gt;(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">)));</span>
</pre>
<p>
</p>
<p>
Notice the use of <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span></code>.
What if we wanted to erase all the duplicates except one of them? In old-fashined
STL-programming we might write
</p>
<p>
</p>
<pre class="programlisting"><span class="comment">// assume 'vec' is already sorted
</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">iterator</span> <span class="identifier">i</span> <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">vec</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
<span class="comment">// remember this check or you get into problems
</span><span class="keyword">if</span> <span class="special">(</span><span class="identifier">i</span> <span class="special">!=</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">())</span>
<span class="special">++</span><span class="identifier">i</span><span class="special">;</span>
<span class="identifier">vec</span><span class="special">.</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
</pre>
<p>
</p>
<p>
The same task may be accomplished simply with
</p>
<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_next_end</span><span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">));</span>
</pre>
<p>
and there is no need to worry about generating an invalid range. Furthermore,
if the container is complex, calling <code class="computeroutput"><span class="identifier">vec</span><span class="special">.</span><span class="identifier">begin</span><span class="special">()</span></code> several times will be more expensive
than using a range algorithm.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="range_algorithm_mutating_algorithms.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,50 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Mutating algorithms</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm.html" title="Range Algorithm">
<link rel="prev" href="range_algorithm_introduction.html" title="Introduction and motivation">
<link rel="next" href="range_algorithm_mutating_algorithms/copy.html" title="Range Algorithm - copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="range_algorithm_introduction.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="range_algorithm_mutating_algorithms/copy.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Mutating algorithms">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms"></a><a class="link" href="range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
Mutating algorithms</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="range_algorithm_mutating_algorithms/copy.html">
Range Algorithm - copy</a></span></dt>
<dt><span class="section"><a href="range_algorithm_mutating_algorithms/copy_backward.html">
Range Algorithm - copy_backward</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="range_algorithm_introduction.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="range_algorithm_mutating_algorithms/copy.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,115 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="next" href="copy_backward.html" title="Range Algorithm - copy_backward">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - copy">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy"></a><a class="link" href="copy.html" title="Range Algorithm - copy">
Range Algorithm - copy</a>
</h5></div></div></div>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.prototype"></a><h6>
<a name="id2722672"></a>
<a class="link" href="copy.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">source_rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out_it</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.description"></a><h6>
<a name="id2722804"></a>
<a class="link" href="copy.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">copy</span></code> copies all elements
from <code class="computeroutput"><span class="identifier">source_rng</span></code> to the
range <code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code>. The return value is <code class="computeroutput"><span class="identifier">out_it</span> <span class="special">+</span>
<span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code>
</p>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.definition"></a><h6>
<a name="id2722938"></a>
<a class="link" href="copy.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.requirements"></a><h6>
<a name="id2723012"></a>
<a class="link" href="copy.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
a model of the <code class="computeroutput"><span class="identifier">SinglePassRangeConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is a
model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.precondition_"></a><h6>
<a name="id2723128"></a>
<a class="link" href="copy.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an iterator
within the <code class="computeroutput"><span class="identifier">source_rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.complexity"></a><h6>
<a name="id2723234"></a>
<a class="link" href="copy.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code> assignments are performed.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,124 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - copy_backward</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="copy.html" title="Range Algorithm - copy">
<link rel="next" href="../range_algorithm_non_mutating_algorithms.html" title="Non-mutating algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../range_algorithm_non_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - copy_backward">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward"></a><a class="link" href="copy_backward.html" title="Range Algorithm - copy_backward">
Range Algorithm - copy_backward</a>
</h5></div></div></div>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.prototype"></a><h6>
<a name="id2723305"></a>
<a class="link" href="copy_backward.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BidirectionalOutputIterator</span><span class="special">&gt;</span>
<span class="identifier">BidirectionalOutputIterator</span>
<span class="identifier">copy_backward</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">source_rng</span><span class="special">,</span>
<span class="identifier">BidirectionalOutputIterator</span> <span class="identifier">out_it</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.description"></a><h6>
<a name="id2723438"></a>
<a class="link" href="copy_backward.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">copy_backward</span></code> copies
all elements from <code class="computeroutput"><span class="identifier">source_rng</span></code>
to the range <code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span>
<span class="special">-</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">),</span> <span class="identifier">out_it</span><span class="special">)</span></code>.
</p>
<p>
The values are copied in reverse order. The return value is <code class="computeroutput"><span class="identifier">out_it</span> <span class="special">-</span>
<span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code>.
</p>
<p>
Note well that unlike all other standard algorithms <code class="computeroutput"><span class="identifier">out_it</span></code>
denotes the <span class="bold"><strong>end</strong></span> of the output sequence.
</p>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.definition"></a><h6>
<a name="id2723599"></a>
<a class="link" href="copy_backward.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy_backward</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.requirements"></a><h6>
<a name="id2723674"></a>
<a class="link" href="copy_backward.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of the <code class="computeroutput"><span class="identifier">SinglePassRangeConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is a
model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.precondition_"></a><h6>
<a name="id2723791"></a>
<a class="link" href="copy_backward.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an iterator
within the <code class="computeroutput"><span class="identifier">source_rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.complexity"></a><h6>
<a name="id2723899"></a>
<a class="link" href="copy_backward.html#range.reference.range_algorithm.range_algorithm_mutating_algorithms.copy_backward.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code> assignments are performed.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../range_algorithm_non_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,41 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title></title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm.html" title="Range Algorithm">
<link rel="prev" href="range_algorithm_non_mutating_algorithms.html" title="Non-mutating algorithms">
<link rel="next" href="../extending.html" title="Extending the library">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="range_algorithm_non_mutating_algorithms.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../extending.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section"><div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.range_algorithm.range_algorithm_new_algorithms"></a><a class="link" href="range_algorithm_new_algorithms.html">???</a>
</h4></div></div></div></div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="range_algorithm_non_mutating_algorithms.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../extending.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,42 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Non-mutating algorithms</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm.html" title="Range Algorithm">
<link rel="prev" href="range_algorithm_mutating_algorithms/copy_backward.html" title="Range Algorithm - copy_backward">
<link rel="next" href="range_algorithm_new_algorithms.html" title="">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="range_algorithm_mutating_algorithms/copy_backward.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="range_algorithm_new_algorithms.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Non-mutating algorithms"><div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.range_algorithm.range_algorithm_non_mutating_algorithms"></a><a class="link" href="range_algorithm_non_mutating_algorithms.html" title="Non-mutating algorithms">
Non-mutating algorithms</a>
</h4></div></div></div></div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="range_algorithm_mutating_algorithms/copy_backward.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="range_algorithm_new_algorithms.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -27,7 +27,7 @@
<a name="range.reference.ranges.counting_range"></a><a class="link" href="counting_range.html" title="counting_range"> counting_range</a>
</h4></div></div></div>
<a name="range.reference.ranges.counting_range.prototype"></a><h6>
<a name="id3010045"></a>
<a name="id3111863"></a>
<a class="link" href="counting_range.html#range.reference.ranges.counting_range.prototype">Prototype</a>
</h6>
<p>
@ -48,7 +48,7 @@
<p>
</p>
<a name="range.reference.ranges.counting_range.description"></a><h6>
<a name="id3010430"></a>
<a name="id3112247"></a>
<a class="link" href="counting_range.html#range.reference.ranges.counting_range.description">Description</a>
</h6>
<p>
@ -58,14 +58,14 @@
(from Boost.Iterator).
</p>
<a name="range.reference.ranges.counting_range.definition"></a><h6>
<a name="id3010489"></a>
<a name="id3112306"></a>
<a class="link" href="counting_range.html#range.reference.ranges.counting_range.definition">Definition</a>
</h6>
<p>
Defined in header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">counting_range</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.ranges.counting_range.requirements"></a><h6>
<a name="id3010553"></a>
<a name="id3112370"></a>
<a class="link" href="counting_range.html#range.reference.ranges.counting_range.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">

View File

@ -27,7 +27,7 @@
<a name="range.reference.ranges.irange"></a><a class="link" href="irange.html" title="irange"> irange</a>
</h4></div></div></div>
<a name="range.reference.ranges.irange.prototype"></a><h6>
<a name="id3010994"></a>
<a name="id3112811"></a>
<a class="link" href="irange.html#range.reference.ranges.irange.prototype">Prototype</a>
</h6>
<p>
@ -44,7 +44,7 @@
<p>
</p>
<a name="range.reference.ranges.irange.description"></a><h6>
<a name="id3011289"></a>
<a name="id3113106"></a>
<a class="link" href="irange.html#range.reference.ranges.irange.description">Description</a>
</h6>
<p>
@ -58,14 +58,14 @@
parameters denoted a half-open range.
</p>
<a name="range.reference.ranges.irange.definition"></a><h6>
<a name="id3011370"></a>
<a name="id3113188"></a>
<a class="link" href="irange.html#range.reference.ranges.irange.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">irange</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.ranges.irange.requirements"></a><h6>
<a name="id3011433"></a>
<a name="id3113250"></a>
<a class="link" href="irange.html#range.reference.ranges.irange.requirements">Requirements</a>
</h6>
<div class="orderedlist"><ol class="orderedlist" type="1">
@ -79,7 +79,7 @@
</li>
</ol></div>
<a name="range.reference.ranges.irange.complexity"></a><h6>
<a name="id3011513"></a>
<a name="id3113330"></a>
<a class="link" href="irange.html#range.reference.ranges.irange.complexity">Complexity</a>
</h6>
<p>

View File

@ -27,7 +27,7 @@
<a name="range.reference.ranges.istream_range"></a><a class="link" href="istream_range.html" title="istream_range"> istream_range</a>
</h4></div></div></div>
<a name="range.reference.ranges.istream_range.prototype"></a><h6>
<a name="id3010627"></a>
<a name="id3112444"></a>
<a class="link" href="istream_range.html#range.reference.ranges.istream_range.prototype">Prototype</a>
</h6>
<p>
@ -40,7 +40,7 @@
<p>
</p>
<a name="range.reference.ranges.istream_range.description"></a><h6>
<a name="id3010846"></a>
<a name="id3112664"></a>
<a class="link" href="istream_range.html#range.reference.ranges.istream_range.description">Description</a>
</h6>
<p>
@ -49,7 +49,7 @@
wrapping a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">istream_iterator</span></code>.
</p>
<a name="range.reference.ranges.istream_range.definition"></a><h6>
<a name="id3010913"></a>
<a name="id3112731"></a>
<a class="link" href="istream_range.html#range.reference.ranges.istream_range.definition">Definition</a>
</h6>
<p>

View File

@ -31,7 +31,7 @@
<dt><span class="section"><a href="semantics/functions.html">Functions</a></span></dt>
</dl></div>
<a name="range.reference.semantics.notation"></a><h5>
<a name="id2919931"></a>
<a name="id3021991"></a>
<a class="link" href="semantics.html#range.reference.semantics.notation">notation</a>
</h5>
<div class="informaltable"><table class="table">

View File

@ -66,7 +66,7 @@
</li>
</ul></div>
<p>
Notice how we have used the categories from the <a href="../../../libs/iterator/doc/new-iter-concepts.html" target="_top">new
Notice how we have used the categories from the <a href="../../../../../libs/iterator/doc/new-iter-concepts.html" target="_top">new
style iterators</a>.
</p>
<p>

View File

@ -52,7 +52,7 @@
</ul></div>
<p>
The <code class="computeroutput"><span class="identifier">iterator_range</span></code> class is
templated on an <a href="../../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators" target="_top">Forward
templated on an <a href="../../../../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators" target="_top">Forward
Traversal Iterator</a> and should be used whenever fairly general code
is needed. The <code class="computeroutput"><span class="identifier">sub_range</span></code> class
is templated on an <a class="link" href="concepts/forward_range.html" title="Forward Range">Forward Range</a>

View File

@ -32,7 +32,7 @@
Range</a> concept. A few other functions are also provided for convenience.
</p>
<p>
If the template argument is not a model of <a href="../../../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators" target="_top">Forward
If the template argument is not a model of <a href="../../../../../../libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators" target="_top">Forward
Traversal Iterator</a>, one can still use a subset of the interface.
In particular, <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code>
requires Random Access Traversal Iterators whereas <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> only requires Single Pass Iterators.
@ -47,7 +47,7 @@
limitation is simply propogated from the underlying iterator type.
</p>
<a name="range.utilities.iterator_range.synopsis"></a><h5>
<a name="id3017779"></a>
<a name="id3119597"></a>
<a class="link" href="iterator_range.html#range.utilities.iterator_range.synopsis">Synopsis</a>
</h5>
<p>
@ -187,7 +187,7 @@
iterators from the same container.
</p>
<a name="range.utilities.iterator_range.details_member_functions"></a><h5>
<a name="id3021010"></a>
<a name="id3122828"></a>
<a class="link" href="iterator_range.html#range.utilities.iterator_range.details_member_functions">Details
member functions</a>
</h5>
@ -218,7 +218,7 @@
</p>
</blockquote></div>
<a name="range.utilities.iterator_range.details_functions"></a><h5>
<a name="id3021254"></a>
<a name="id3123073"></a>
<a class="link" href="iterator_range.html#range.utilities.iterator_range.details_functions">Details
functions</a>
</h5>

Some files were not shown because too many files have changed in this diff Show More