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

@ -3,7 +3,11 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Algorithm</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">
>>>>>>> .merge-right.r57125
<link rel="home" href="../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="previous" href="adapted/adapt_assoc.html" title=" BOOST_FUSION_ADAPT_ASSOC_STRUCT">
@ -46,10 +50,17 @@
<dt><span class="section"><a href="algorithm/transformation/metafunctions.html">Metafunctions</a></span></dt>
</dl></dd>
</dl></div>
<<<<<<< .working
<a name="fusion.algorithm.lazy_evaluation"></a><h3>
<a name="id535132"></a>
<a href="algorithm.html#fusion.algorithm.lazy_evaluation">Lazy Evaluation</a>
</h3>
=======
<a name="fusion.algorithm.lazy_evaluation"></a><h4>
<a name="id742590"></a>
<a class="link" href="algorithm.html#fusion.algorithm.lazy_evaluation">Lazy Evaluation</a>
</h4>
>>>>>>> .merge-right.r57125
<p>
Unlike <a href="http://www.boost.org/libs/mpl/index.html" target="_top">MPL</a>, Fusion
algorithms are lazy and non sequence-type preserving. What does that mean?
@ -69,10 +80,17 @@
<span class="emphasis"><em>lazy</em></span> evaluation scheme allows us to chain as many algorithms
as we want without incurring a high runtime penalty.
</p>
<<<<<<< .working
<a name="fusion.algorithm.sequence_extension"></a><h3>
<a name="id535279"></a>
<a href="algorithm.html#fusion.algorithm.sequence_extension">Sequence Extension</a>
</h3>
=======
<a name="fusion.algorithm.sequence_extension"></a><h4>
<a name="id742667"></a>
<a class="link" href="algorithm.html#fusion.algorithm.sequence_extension">Sequence Extension</a>
</h4>
>>>>>>> .merge-right.r57125
<p>
The <span class="emphasis"><em>lazy</em></span> evaluation scheme where <a href="algorithm.html" title="Algorithm">Algorithms</a>
return <a href="view.html" title="View">Views</a> also allows operations such
@ -92,10 +110,17 @@
are provided. You may use one of the <a href="container/conversion/functions.html" title="Functions">Conversion</a>
functions to convert back to the original sequence type.
</p>
<<<<<<< .working
<a name="fusion.algorithm.header"></a><h3>
<a name="id535506"></a>
<a href="algorithm.html#fusion.algorithm.header">Header</a>
</h3>
=======
<a name="fusion.algorithm.header"></a><h4>
<a name="id742794"></a>
<a class="link" href="algorithm.html#fusion.algorithm.header">Header</a>
</h4>
>>>>>>> .merge-right.r57125
<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">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">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">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>