fusion: merge of associative iterators/views and the new fold interface

[SVN r58618]
This commit is contained in:
Christopher Schmidt
2010-01-01 22:00:21 +00:00
parent b605617c4f
commit cda74605fc
379 changed files with 28481 additions and 2185 deletions

View File

@ -1,10 +1,18 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>end</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<<<<<<< .working
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
=======
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<<<<<<< .working
>>>>>>> .merge-right.r57125
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
=======
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Fusion 2.0">
>>>>>>> .merge-right.r58299
<link rel="up" href="../functions.html" title="Functions">
<link rel="previous" href="begin.html" title="begin">
<link rel="next" href="empty.html" title="empty">
@ -30,15 +38,65 @@
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.end.description"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id450304"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.description">Description</a>
=======
<a name="id701214"></a>
=======
<a name="id660861"></a>
=======
<a name="id653215"></a>
=======
<a name="id675696"></a>
=======
<a name="id664358"></a>
=======
<a name="id661081"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.description">Description</a>
>>>>>>> .merge-right.r57125
</h6>
<p>
Returns an iterator pointing to one element past the end of the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.end.synopsis"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id450334"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.synopsis">Synopsis</a>
=======
<a name="id701230"></a>
=======
<a name="id660878"></a>
=======
<a name="id653232"></a>
=======
<a name="id675713"></a>
=======
<a name="id664375"></a>
=======
<a name="id661098"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.synopsis">Synopsis</a>
>>>>>>> .merge-right.r57125
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a href="../metafunctions/end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
@ -49,8 +107,33 @@
<span class="identifier">end</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.end.parameters"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id450606"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.parameters">Parameters</a>
=======
<a name="id701420"></a>
=======
<a name="id661068"></a>
=======
<a name="id653422"></a>
=======
<a name="id675903"></a>
=======
<a name="id664564"></a>
=======
<a name="id661288"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.parameters">Parameters</a>
>>>>>>> .merge-right.r57125
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -84,13 +167,39 @@
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.end.expression_semantics"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id450718"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.expression_semantics">Expression
=======
<a name="id701510"></a>
=======
<a name="id661158"></a>
=======
<a name="id653512"></a>
=======
<a name="id675993"></a>
=======
<a name="id664654"></a>
=======
<a name="id661378"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.expression_semantics">Expression
>>>>>>> .merge-right.r57125
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">end</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<<<<<<< .working
<span class="bold"><b>Return type</b></span>: <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
Iterator">Forward
Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
@ -107,21 +216,94 @@
is a <a href="../../concepts/random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a>.
=======
<span class="bold"><strong>Return type</strong></span>:
>>>>>>> .merge-right.r57242
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
A model of <a class="link" href="../../../iterator/concepts/forward_iterator.html" title="Forward Iterator">Forward
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
Sequence</a> else, <a class="link" href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
Sequence</a> else, <a class="link" href="../../../iterator/concepts/random_access_iterator.html" title="Random Access Iterator">Random
Access Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/random_access_sequence.html" title="Random Access Sequence">Random
Access Sequence</a>.
</li>
<li class="listitem">
A model of <a class="link" href="../../../iterator/concepts/associative_iterator.html" title="Associative Iterator">Associative
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is an <a class="link" href="../../concepts/associative_sequence.html" title="Associative Sequence">Associative
Sequence</a>.
</li>
</ul></div>
<p>
<span class="bold"><b>Semantics</b></span>: Returns an iterator pointing
to one element past the end of the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.end.header"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id450886"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.header">Header</a>
=======
<a name="id701612"></a>
=======
<a name="id661287"></a>
=======
<a name="id653641"></a>
=======
<a name="id676122"></a>
=======
<a name="id664784"></a>
=======
<a name="id661507"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.header">Header</a>
>>>>>>> .merge-right.r57125
</h6>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.end.example"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id451051"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.example">Example</a>
=======
<a name="id701727"></a>
=======
<a name="id661402"></a>
=======
<a name="id653756"></a>
=======
<a name="id676238"></a>
=======
<a name="id664899"></a>
=======
<a name="id661622"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.example">Example</a>
>>>>>>> .merge-right.r57125
</h6>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><a href="../../../iterator/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a><span class="special">(</span><a href="../../../iterator/functions/prior.html" title="prior"><tt class="computeroutput"><span class="identifier">prior</span></tt></a><span class="special">(</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
@ -129,7 +311,7 @@
</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 <EFBFBD> 2001-2007 Joel de Guzman, Dan Marsden, Tobias
<td align="right"><div class="copyright-footer">Copyright &#169; 2001-2007 Joel de Guzman, Dan Marsden, Tobias
Schwinger<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>)