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

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

No files matched your search

@@ -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>begin</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 1. 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="../functions.html" title="Functions">
<link rel="next" href="end.html" title="end">
@@ -30,15 +38,65 @@
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.begin.description"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id449344"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.description">Description</a>
=======
<a name="id700544"></a>
=======
<a name="id660175"></a>
=======
<a name="id652529"></a>
=======
<a name="id675010"></a>
=======
<a name="id663672"></a>
=======
<a name="id660395"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.description">Description</a>
>>>>>>> .merge-right.r57125
</h6>
<p>
Returns an iterator pointing to the first element in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.begin.synopsis"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id449373"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.synopsis">Synopsis</a>
=======
<a name="id700561"></a>
=======
<a name="id660192"></a>
=======
<a name="id652546"></a>
=======
<a name="id675027"></a>
=======
<a name="id663688"></a>
=======
<a name="id660412"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.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/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</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">begin</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.begin.parameters"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id449647"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.parameters">Parameters</a>
=======
<a name="id700751"></a>
=======
<a name="id660381"></a>
=======
<a name="id652735"></a>
=======
<a name="id675216"></a>
=======
<a name="id663878"></a>
=======
<a name="id660601"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.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.begin.expression_semantics"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id449760"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.expression_semantics">Expression
=======
<a name="id700851"></a>
=======
<a name="id660471"></a>
=======
<a name="id652825"></a>
=======
<a name="id675306"></a>
=======
<a name="id663968"></a>
=======
<a name="id660691"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.expression_semantics">Expression
>>>>>>> .merge-right.r57125
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">begin</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 the first element in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.begin.header"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id449927"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.header">Header</a>
=======
<a name="id700953"></a>
=======
<a name="id660601"></a>
=======
<a name="id652955"></a>
=======
<a name="id675436"></a>
=======
<a name="id664098"></a>
=======
<a name="id660821"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.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">begin</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">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.begin.example"></a><h6>
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<<<<<<< .working
<a name="id450094"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.example">Example</a>
=======
<a name="id701068"></a>
=======
<a name="id660716"></a>
=======
<a name="id653070"></a>
=======
<a name="id675551"></a>
=======
<a name="id664213"></a>
=======
<a name="id660936"></a>
>>>>>>> .merge-right.r58559
>>>>>>> .merge-right.r58549
>>>>>>> .merge-right.r58299
>>>>>>> .merge-right.r57337
>>>>>>> .merge-right.r57242
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.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><span class="identifier">begin</span><span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">1</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 © 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>)