mirror of
https://github.com/boostorg/range.git
synced 2025-06-30 06:20:59 +02:00
Compare commits
19 Commits
boost-1.43
...
svn-branch
Author | SHA1 | Date | |
---|---|---|---|
c66b89736d | |||
f6c15771e2 | |||
4641e2e69d | |||
a1cb3d9795 | |||
4830359a93 | |||
cf63ba0dc9 | |||
22fcae4fcb | |||
47b40f66e1 | |||
350a1f8bfc | |||
cab01e8ba3 | |||
067b63da8e | |||
52c04e94f9 | |||
b573b6c9bf | |||
a24a69f38e | |||
6e2e1d592b | |||
704ce0186a | |||
3a6c6c6bcd | |||
c6c4634aca | |||
a420ef96bc |
@ -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)/
|
||||
;
|
||||
|
||||
|
@ -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<iterator,iterator></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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</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>& </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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_difference</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</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>& </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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
|
||||
</span><span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword></span><span class=keyword>typename </span><span class=identifier>range_difference</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</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>& </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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>></span>
|
||||
<span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
</span>
|
||||
<span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>></span>
|
||||
<span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
</span>
|
||||
<span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>></span>
|
||||
<span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);
|
||||
</span>
|
||||
<span class=keyword>template</span><span class=special>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>></span>
|
||||
<span class=keyword>typename </span><span class=identifier>range_reverse_iterator</span><span class=special><</span><span class=keyword>const </span><span class=identifier>T</span><span class=special>>::</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>& </span><span class=identifier>r </span><span class=special>);</span>
|
||||
|
||||
<span class=comment>//
|
||||
// String utilities
|
||||
//</span>
|
||||
|
||||
<span class=keyword>template</span><span class=special><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></span>
|
||||
<span class=identifier>iterator_range</span><span class=special><...</span><span class=identifier>see</span> <span class=identifier>below</span><span class=special>...></span>
|
||||
<span class=identifier><a href="#as_literal">as_literal</a></span><span class=special>(</span> <span class=identifier>T</span><span class=special>&</span> <span class=identifier>r</span> <span class=special>);</span>
|
||||
|
||||
<span class=keyword>template</span><span class=special><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></span>
|
||||
<span class=identifier>iterator_range</span><span class=special><...</span><span class=identifier>see</span> <span class=identifier>below</span><span class=special>...></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>&</span> <span class=identifier>r</span> <span class=special>);</span>
|
||||
|
||||
<span class=keyword>template</span><span class=special><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></span>
|
||||
<span class=identifier>iterator_range</span><span class=special><</span> <span class=keyword>typename</span> <span class=identifier>range_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</span><span class=identifier>type</span> <span class=special>></span>
|
||||
<span class=identifier><a href="#as_array">as_array</a></span><span class=special>(</span> <span class=identifier>T</span><span class=special>&</span> <span class=identifier>r</span> <span class=special>);</span>
|
||||
|
||||
<span class=keyword>template</span><span class=special><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></span>
|
||||
<span class=identifier>iterator_range</span><span class=special><</span> <span class=keyword>typename</span> <span class=identifier>range_iterator</span><span class=special><</span><span class=keyword>const</span> <span class=identifier>T</span><span class=special>>::</span><span class=identifier>type</span> <span class=special>></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>&</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<iterator,iterator></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<X>::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<const X>::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<X>::type</code></td>
|
||||
<td><code>boost::iterator_value<range_iterator<X>::type>::type</code>
|
||||
</td>
|
||||
<td>compile time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td><a name="range_reference"></a><code>range_reference<X>::type</code></td>
|
||||
<td><code>boost::iterator_reference<range_iterator<X>::type>::type</code>
|
||||
</td>
|
||||
<td>compile time</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<td><a name="range_pointer"></a><code>range_pointer<X>::type</code></td>
|
||||
<td><code>boost::iterator_pointer<range_iterator<X>::type>::type</code>
|
||||
</td>
|
||||
<td>compile time</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<td><a name="range_category"></a><code>range_category<X>::type</code></td>
|
||||
<td><code>boost::iterator_category<range_iterator<X>::type>::type</code>
|
||||
</td>
|
||||
<td>compile time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td><a name="range_difference"></a><code>range_difference<X>::type</code></td>
|
||||
<td>
|
||||
<code>boost::iterator_difference<range_iterator<X>::type>::type</code></td>
|
||||
|
||||
<td>compile time</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
<td><a name="range_reverse_iterator"></a><code>range_reverse_iterator<X>::type</code></td>
|
||||
<td><code>boost::reverse_iterator<range_iterator<X>::type></code><br>
|
||||
<td>compile time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td><a name="range_const_reverse_iterator"></a><code>range_reverse_iterator<const X>::type</code></td>
|
||||
<td><code>boost::reverse_iterator<range_iterator<const X>::type></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<X>::type</code></td>
|
||||
<td>
|
||||
<code>p.first</code> if <code>p</code> is of type <code>std::pair<T><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<X>::type</code></td>
|
||||
<td>
|
||||
<code>p.second</code> if <code>p</code> is of type <code>std::pair<T><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<X>::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<X>::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<X>::type</code></td>
|
||||
<td><code>range_reverse_iterator<X>::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<X>::type</code></td>
|
||||
<td><code>range_reverse_iterator<X>::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<const X>::type</code></td>
|
||||
<td><code>range_iterator<const X>::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<const X>::type</code></td>
|
||||
<td><code>range_iterator<const X>::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<const X>::type</code></td>
|
||||
<td><code>range_reverse_iterator<const X>::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<const X>::type</code></td>
|
||||
<td><code>range_reverse_iterator<const X>::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<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<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<X>::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<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><</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>></span>
|
||||
<span class=preprocessor>#include</span> <span class=special><</span><span class=identifier>iterator</span><span class=special>></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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></span>
|
||||
<span class=keyword>struct</span> <span class=identifier>range_mutable_iterator</span><span class=special><</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special><</span><span class=identifier>T</span><span class=special>></span> <span class=special>></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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></span>
|
||||
<span class=keyword>struct</span> <span class=identifier>range_const_iterator</span><span class=special><</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special><</span><span class=identifier>T</span><span class=special>></span> <span class=special>></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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></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><</span><span class=identifier>T</span><span class=special>>&</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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></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><</span><span class=identifier>T</span><span class=special>>&</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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></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><</span><span class=identifier>T</span><span class=special>>&</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><</span> <span class=keyword>class</span> <span class=identifier>T</span> <span class=special>></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><</span><span class=identifier>T</span><span class=special>>&</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><</span><span class=identifier>vector</span><span class=special>></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><</span><span class=keyword>int</span><span class=special>>::</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><</span><span class=keyword>int</span><span class=special>></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><</span><span class=identifier>iter</span><span class=special>></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><</span><span class=identifier>iter</span><span class=special>>&</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><</span> <span class=identifier>Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special><</span><span class=identifier>iter</span><span class=special>></span> <span class=special>>::</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><</span> <span class=identifier>const Foo</span><span class=special>::</span><span class=identifier>Pair</span><span class=special><</span><span class=identifier>iter</span><span class=special>></span> <span class=special>>::</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>
|
||||
© <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>
|
@ -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]]
|
||||
|
@ -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">< </span><span class="keyword">class </span><span class="identifier">Incrementable</span><span class="identifier"> </span><span class="special">> <span style="color: #0000ff">inline</span>
|
||||
</span><span class="keyword"></span><span class="identifier">range< counting_iterator<Incrementable> >
|
||||
counting_range(Incrementable first, Incrementable last);
|
||||
|
||||
<span class="keyword">template</span><span class="special">< </span><span class="keyword">class </span><span class="identifier">SinglePassRange</span><span class="identifier"> </span><span class="special">> </span><span class="keyword">inline
|
||||
</span><span class="identifier">range< counting_iterator<<span class="keyword">typename</span> range_iterator<SinglePassRange>::type >
|
||||
counting_range(<span class="keyword">const</span> Range& rng);
|
||||
|
||||
</span><span class="keyword">template</span><span class="special">< </span><span class="keyword">class </span><span class="identifier">SinglePassRange</span><span class="identifier"> </span><span class="special">> <span style="color: #0000ff">inline</span></span>
|
||||
<span class="identifier">range< counting_iterator<<span style="color: #0000ff">typename</span> range_iterator<SinglePassRange>::type >
|
||||
counting_range(Range& 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>
|
||||
© <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>
|
||||
|
@ -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>
|
||||
© <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>
|
||||
|
145
doc/faq.html
145
doc/faq.html
@ -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<C>::type</code>
|
||||
and <code >range_const_iterator<C>::type</code> for <code>std::pair<iterator, iterator></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<const_iterator,const_iterator></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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>:</span><span class=identifier>type </span><span class=identifier>begin</span><span class=special>( </span><span class=identifier>T</span><span class=special>& </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>< </span><span class=keyword>class </span><span class=identifier>T </span><span class=special>>
|
||||
</span><span class=keyword>typename </span><span class=identifier>range_iterator</span><span class=special><</span><span class=identifier>T</span><span class=special>>::</span><span class=identifier>type </span><span class=identifier>begin</span><span class=special>( </span><span class=identifier>T</span><span class=special>& </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>
|
||||
© <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>
|
||||
|
202
doc/headers.html
202
doc/headers.html
@ -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 ><boost/range.hpp></code></td>
|
||||
<td >everything</td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/metafunctions.hpp></code></td>
|
||||
<td >every metafunction</td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/functions.hpp></code></td>
|
||||
<td >every function</td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/value_type.hpp></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 ><boost/range/iterator.hpp></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 ><boost/range/mutable_iterator.hpp></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 ><boost/range/const_iterator.hpp></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 ><boost/range/difference_type.hpp></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 ><boost/range/pointer.hpp></code></td>
|
||||
<td ><a href="boost_range.html#range_pointer"
|
||||
>range_pointer</a></td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/category.hpp></code></td>
|
||||
<td ><a href="boost_range.html#range_category"
|
||||
>range_category</a></td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
|
||||
<tr >
|
||||
<td ><code ><boost/range/reverse_iterator.hpp></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 ><boost/range/begin.hpp></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 ><boost/range/end.hpp></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 ><boost/range/empty.hpp></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 ><boost/range/distance.hpp></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 ><boost/range/size.hpp></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 ><boost/range/rbegin.hpp></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 ><boost/range/rend.hpp></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 ><boost/range/as_array.hpp></code></td>
|
||||
<td >
|
||||
<a href="boost_range.html#as_array" >as_array</a>
|
||||
</td>
|
||||
<td>-</td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/as_literal.hpp></code></td>
|
||||
<td >
|
||||
<a href="boost_range.html#as_literal" >as_literal</a>
|
||||
</td>
|
||||
<td>-</td>
|
||||
</tr>
|
||||
|
||||
<tr >
|
||||
<td ><code ><boost/range/iterator_range.hpp></code></td>
|
||||
<td ><a href="utility_class.html#iter_range"
|
||||
>iterator_range</a></td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/sub_range.hpp></code></td>
|
||||
<td ><a href="utility_class.html#sub_range" >sub_range</a></td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
<tr >
|
||||
<td ><code ><boost/range/concepts.hpp></code></td>
|
||||
<td ><a href="range.html#concept_checking" >concept checks</a></td>
|
||||
<td>- </td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<br>
|
||||
</p>
|
||||
|
||||
|
||||
<hr>
|
||||
<p>
|
||||
© <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>
|
||||
|
@ -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__ ]]
|
||||
|
@ -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>
|
||||
© <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>
|
||||
|
@ -30,7 +30,7 @@
|
||||
</h3></div></div>
|
||||
<div><p class="copyright">Copyright © 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>
|
||||
|
@ -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
|
||||
|
@ -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"><</span><span class="identifier">X</span><span class="special">>::</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>
|
||||
|
@ -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"><</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">></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>
|
||||
|
@ -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"><</span><span class="identifier">X</span><span class="special">>::</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"><</span><span class="identifier">X</span><span class="special">>::</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>
|
||||
|
@ -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"><</span><span class="identifier">X</span><span class="special">>::</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"><</span><span class="identifier">X</span><span class="special">>::</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">
|
||||
|
@ -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"><</span><span class="identifier">X</span><span class="special">>::</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"><</span><span class="identifier">X</span><span class="special">>::</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>
|
||||
|
@ -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
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<link rel="home" href="../../../../index.html" title="Chapter 1. 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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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">&</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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"><</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">></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">&</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">&</span> <span class="identifier">make_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</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>
|
||||
|
@ -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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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">&</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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"><</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">></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">&</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">&</span> <span class="identifier">pop_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</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>
|
||||
|
@ -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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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">&</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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"><</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">></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">&</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">&</span> <span class="identifier">push_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</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>
|
||||
|
@ -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 1. 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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">sort_heap</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</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"><</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 © 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>
|
@ -6,7 +6,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
|
||||
<link rel="home" href="../../../index.html" title="Chapter 1. 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>
|
||||
|
@ -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"><</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&</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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">></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">&</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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">next_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&</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">&</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"><</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">></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">&</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">&</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>
|
||||
|
@ -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"><</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&</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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">></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">&</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">&</span> <span class="identifier">rng</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">prev_permutation</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&</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">&</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"><</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">></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">&</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">&</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>
|
||||
|
@ -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">
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<link rel="home" href="../../../../index.html" title="Chapter 1. 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"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">fill</span><span class="special">(</span> <span class="identifier">ForwardRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&</span> <span class="identifier">val</span> <span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</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">></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">&</span> <span class="identifier">rng</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&</span> <span class="identifier">val</span> <span class="special">);</span>
|
||||
<span class="identifier">ForwardRange</span><span class="special">&</span> <span class="identifier">fill</span><span class="special">(</span> <span class="identifier">ForwardRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&</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>
|
||||
|
@ -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 1. 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"><</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">></span>
|
||||
<span class="identifier">ForwardRange</span><span class="special">&</span> <span class="identifier">fill</span><span class="special">(</span> <span class="identifier">ForwardRange</span><span class="special">&</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">&</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 © 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>
|
@ -6,7 +6,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
|
||||
<link rel="home" href="../../../../index.html" title="Chapter 1. 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>
|
||||
|
@ -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>
|
||||
|
@ -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"><()</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>
|
||||
|
@ -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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">nth_element</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
|
||||
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">nth_element</span><span class="special">(</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</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">&</span> <span class="identifier">nth_element</span><span class="special">(</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">nth</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">nth_element</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</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">&</span> <span class="identifier">nth_element</span><span class="special">(</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</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">&</span> <span class="identifier">nth_element</span><span class="special">(</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</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>
|
||||
|
@ -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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">partial_sort</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
|
||||
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">partial_sort</span><span class="special">(</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</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">&</span> <span class="identifier">partial_sort</span><span class="special">(</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">partial_sort</span><span class="special">(</span><span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</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">&</span> <span class="identifier">partial_sort</span><span class="special">(</span>
|
||||
<span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">RandomAccessRange</span><span class="special">>::</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"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessRange</span><span class="special">></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">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</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">&</span> <span class="identifier">partial_sort</span><span class="special">(</span>
|
||||
<span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">&</span> <span class="identifier">rng</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">RandomAccessRange</span><span class="special">>::</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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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">
|
||||
|
@ -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"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="identifier">iterator_range</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="special">></span> <span class="identifier">to_erase</span><span class="special">);</span>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">Container</span><span class="special">></span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">erase</span><span class="special">(</span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="identifier">iterator_range</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="special">></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>
|
||||
|
@ -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>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<link rel="home" href="../../../../index.html" title="Chapter 1. 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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">insert</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</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">&</span> <span class="identifier">from</span><span class="special">);</span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">insert</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</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">&</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>
|
||||
|
@ -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 1. 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"><</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">></span>
|
||||
<span class="identifier">ForwardRange</span><span class="special">&</span> <span class="identifier">iota</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&</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 © 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>
|
@ -6,7 +6,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
|
||||
<link rel="home" href="../../../../index.html" title="Chapter 1. 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>
|
||||
|
@ -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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">push_back</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&</span> <span class="identifier">from</span><span class="special">);</span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">push_back</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&</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>
|
||||
|
@ -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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">push_front</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&</span> <span class="identifier">from</span><span class="special">);</span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">push_front</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&</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>
|
||||
|
@ -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"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">remove_erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="keyword">const</span> <span class="identifier">T</span><span class="special">&</span> <span class="identifier">val</span><span class="special">);</span>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">remove_erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</span> <span class="identifier">target</span><span class="special">,</span>
|
||||
<span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&</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>
|
||||
|
@ -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"><</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">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">remove_erase</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</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"><</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">></span>
|
||||
<span class="identifier">Container</span><span class="special">&</span> <span class="identifier">remove_erase_if</span><span class="special">(</span><span class="identifier">Container</span><span class="special">&</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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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"><</span><span class="identifier">SinglePassRange</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">>::</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">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</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>
|
||||
|
@ -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"><</span><span class="identifier">ForwardRange1</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</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">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</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>
|
||||
@ -50,15 +46,6 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">ForwardRange1</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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"><</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"><</span><span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find_end</span><span class="special">(</span><span class="identifier">ForwardRange1</span><span class="special">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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>
|
||||
|
@ -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"><</span><span class="identifier">SinglePassRange1</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</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">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</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>
|
||||
@ -50,15 +46,6 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="identifier">SinglePassRange1</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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"><</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"><</span><span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</span> <span class="identifier">rng2</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">ForwardRange2</span><span class="special">&</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>
|
||||
|
@ -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"><</span><span class="identifier">SinglePassRange</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find_if</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">>::</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">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">find_if</span><span class="special">(</span><span class="identifier">SinglePassRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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"><</span><span class="identifier">ForwardRange</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">lower_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">>::</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">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">lower_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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">>=</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>
|
||||
|
@ -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>
|
||||
|
@ -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"><</span><span class="identifier">ForwardRange</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">upper_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">>::</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">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">upper_bound</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&</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"><</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">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">range_return</span><span class="special"><</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="identifier">re</span><span class="special">>::</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">&</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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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">>=</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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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 1. 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"><</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">></span>
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">vector</span><span class="special">></span>
|
||||
|
||||
<span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span><span class="keyword">int</span><span class="special">></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"><</span><span class="keyword">int</span><span class="special">>(</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found</span><span class="special">>(</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_found</span><span class="special">>(</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_next</span><span class="special">>(</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span><span class="special">>(</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_next_end</span><span class="special">>(</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_end</span><span class="special">>(</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"><</span><span class="keyword">int</span><span class="special">></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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</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>
|
||||
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"><</span><span class="keyword">int</span><span class="special">>::</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"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_next_end</span><span class="special">>(</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 © 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>
|
@ -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 1. 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 © 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>
|
@ -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 1. 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"><</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">></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">&</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 © 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>
|
@ -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 1. 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"><</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">></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">&</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 © 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>
|
@ -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 1. 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 © 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>
|
@ -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 1. 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 © 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>
|
@ -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">
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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">
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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
Reference in New Issue
Block a user